From bd94fb3d6d109d602f783b9659bce29eff54c93f Mon Sep 17 00:00:00 2001 From: Felipe Novaes F Rocha Date: Fri, 20 Sep 2024 19:44:04 -0300 Subject: [PATCH 1/3] :zap: clean up --- pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol | 7 ------- 1 file changed, 7 deletions(-) diff --git a/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol b/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol index 220f645b..1ca5a2e2 100644 --- a/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol +++ b/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol @@ -3,13 +3,6 @@ pragma solidity ^0.8.19; import {BaseDiamond} from "./BaseDiamond.sol"; import {LibDiamond} from "./libraries/LibDiamond.sol"; -import {IDiamondCut} from "./interfaces/IDiamondCut.sol"; -import {IDiamondLoupe} from "./interfaces/IDiamondLoupe.sol"; -import {IERC173} from "./interfaces/IERC173.sol"; -//import { IERC165} from "./interfaces/IERC165.sol"; - -import {IERC1822Proxiable} from "@openzeppelin/contracts/interfaces/draft-IERC1822.sol"; -// When no function exists for function called struct CommunityInfo { uint256 fee; From 15b95c809de3bfee5c595d7af9c69dc73f78e4d4 Mon Sep 17 00:00:00 2001 From: Felipe Novaes F Rocha Date: Fri, 20 Sep 2024 23:44:12 -0300 Subject: [PATCH 2/3] :sparkles: genereator functions back :sparkles: Community diamond --- .../CVStrategyHelpers.json | 2 +- .../CVStrategyV0_0.sol/CVStrategyV0_0.json | 2 +- .../CVStrategyV0_0.sol/IPointStrategy.json | 2 +- .../CVStrategyV0_1.sol/CVStrategyV0_1.json | 2 +- .../RegistryCommunityFacet.json | 1 + .../RegistryCommunityV0_0.json | 2 +- .../RegistryCommunityV0_1.json | 2 +- .../RegistryFactoryDiamond.json | 2 +- .../RegistryFactoryFacet.json | 2 +- .../RegistryFactoryV0_0.json | 2 +- .../RegistryFactoryV0_1.json | 2 +- .../RegistryCommunityV0_0.sol | 5 +- .../RegistryFactory/RegistryFactoryV0_0.sol | 6 +- pkg/contracts/src/diamonds/BaseDiamond.sol | 10 +- .../src/diamonds/RegistryFactoryDiamond.sol | 13 +- .../src/diamonds/StorageCommunityDiamond.sol | 103 +++ .../facets/RegistryCommunityFacet.sol | 45 + .../diamonds/facets/RegistryFactoryFacet.sol | 138 +--- pkg/contracts/test/HelperContract.sol | 138 ++++ pkg/contracts/test/RegistryTest.t.sol | 133 ++- pkg/contracts/test/shared/strings.sol | 776 ++++++++++++++++++ 21 files changed, 1227 insertions(+), 161 deletions(-) create mode 100644 pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json create mode 100644 pkg/contracts/src/diamonds/StorageCommunityDiamond.sol create mode 100644 pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol create mode 100644 pkg/contracts/test/HelperContract.sol create mode 100644 pkg/contracts/test/shared/strings.sol diff --git a/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json b/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json index 81d8eeda..90266a24 100644 --- a/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json +++ b/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"DECIMALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PERCENTAGE_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"_calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getParams","inputs":[{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"stateMutability":"pure"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"metadata","inputs":[],"outputs":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"poolProfile_id1","inputs":[{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"pool_admin","type":"address","internalType":"address"},{"name":"pool_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x60016080908152610120604052602e60c081815260a09162001d4160e0399052805160099081556020820151600a906200003a9082620000f6565b5050503480156200004a57600080fd5b50620001c2565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007c57607f821691505b6020821081036200009d57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f157600081815260208120601f850160051c81016020861015620000cc5750805b601f850160051c820191505b81811015620000ed57828155600101620000d8565b5050505b505050565b81516001600160401b0381111562000112576200011262000051565b6200012a8162000123845462000067565b84620000a3565b602080601f831160018114620001625760008415620001495750858301515b600019600386901b1c1916600185901b178555620000ed565b600085815260208120601f198616915b82811015620001935788860151825594840194600190910190840162000172565b5085821015620001b25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611b6f80620001d26000396000f3fe608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea2646970667358221220bcb3fc0b8f75329eb7d27d299b3595794734d53d75f437e79cd253477d8e33ed64736f6c63430008130033516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","sourceMap":"1014:1:134:-:0;914:5508;994:82;;;;914:5508;994:82;;;;;;;;;;;;;967:109;;;;;;;;;;;;;;;;:::i;:::-;;;;914:5508;;;;;;;;;;;;14:127:142;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:380;225:1;221:12;;;;268;;;289:61;;343:4;335:6;331:17;321:27;;289:61;396:2;388:6;385:14;365:18;362:38;359:161;;442:10;437:3;433:20;430:1;423:31;477:4;474:1;467:15;505:4;502:1;495:15;359:161;;146:380;;;:::o;657:545::-;759:2;754:3;751:11;748:448;;;795:1;820:5;816:2;809:17;865:4;861:2;851:19;935:2;923:10;919:19;916:1;912:27;906:4;902:38;971:4;959:10;956:20;953:47;;;-1:-1:-1;994:4:142;953:47;1049:2;1044:3;1040:12;1037:1;1033:20;1027:4;1023:31;1013:41;;1104:82;1122:2;1115:5;1112:13;1104:82;;;1167:17;;;1148:1;1137:13;1104:82;;;1108:3;;;748:448;657:545;;;:::o;1378:1352::-;1498:10;;-1:-1:-1;;;;;1520:30:142;;1517:56;;;1553:18;;:::i;:::-;1582:97;1672:6;1632:38;1664:4;1658:11;1632:38;:::i;:::-;1626:4;1582:97;:::i;:::-;1734:4;;1798:2;1787:14;;1815:1;1810:663;;;;2517:1;2534:6;2531:89;;;-1:-1:-1;2586:19:142;;;2580:26;2531:89;-1:-1:-1;;1335:1:142;1331:11;;;1327:24;1323:29;1313:40;1359:1;1355:11;;;1310:57;2633:81;;1780:944;;1810:663;604:1;597:14;;;641:4;628:18;;-1:-1:-1;;1846:20:142;;;1964:236;1978:7;1975:1;1972:14;1964:236;;;2067:19;;;2061:26;2046:42;;2159:27;;;;2127:1;2115:14;;;;1994:19;;1964:236;;;1968:3;2228:6;2219:7;2216:19;2213:201;;;2289:19;;;2283:26;-1:-1:-1;;2372:1:142;2368:14;;;2384:3;2364:24;2360:37;2356:42;2341:58;2326:74;;2213:201;-1:-1:-1;;;;;2460:1:142;2444:14;;;2440:22;2427:36;;-1:-1:-1;1378:1352:142:o;:::-;914:5508:134;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea2646970667358221220bcb3fc0b8f75329eb7d27d299b3595794734d53d75f437e79cd253477d8e33ed64736f6c63430008130033","sourceMap":"914:5508:134:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;287:32:142;;;269:51;;257:2;242:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;3126:109;;;:::i;2554:113::-;;;:::i;1105:43:134:-;;1140:8;1105:43;;;;;477:25:142;;;465:2;450:18;1105:43:134;331:177:142;1503:437:134;;;;;;:::i;:::-;;:::i;967:109::-;;;:::i;:::-;;;;;;;;:::i;1154:50::-;;1197:7;1154:50;;1331:118:15;;;:::i;:::-;;;;;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;1876:107::-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;2673:113::-;;;:::i;439:101::-;;;:::i;4608:578:134:-;;;;;;:::i;:::-;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;4412:75:9:-;;4445:42;4412:75;;3604:241:15;;;:::i;3938:101::-;;;:::i;1946:1182:134:-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1644:113:15:-;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;3134:1468:134:-;;;;;;:::i;:::-;;:::i;6040:380::-;;;;;;:::i;:::-;;:::i;3241:119:15:-;;;:::i;1763:107::-;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;1503:437:134:-;1675:16;;1648:7;;1671:230;;1801:48;;;;;;;;1821:1;1801:48;;;;;;;;;;;;-1:-1:-1;;;1801:48:134;;;;;;;;;;;1740:150;;-1:-1:-1;;;1740:150:134;;-1:-1:-1;;;;;1740:22:134;;;;;:150;;1780:1;;1851:10;;1863:13;;1740:150;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1721:16;:169;1671:230;-1:-1:-1;1917:16:134;;1503:437;;;;;:::o;967:109::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;1876:107::-;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;4608:578:134:-;4899:14;4932:247;4956:4;4974:8;4996:17;5027:8;5049:5;5068:12;5094:11;5119:20;;;;;;;;5137:1;5119:20;;;5153:16;4932:10;:247::i;:::-;4925:254;4608:578;-1:-1:-1;;;;;;;;;4608:578:134:o;1537:101:15:-;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3604:241::-;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;1946:1182:134:-;2191:44;;:::i;:::-;2322:30;2336:15;2322:13;:30::i;:::-;2298:15;;:21;;:54;2406:24;2420:9;2406:13;:24::i;:::-;2379:15;;:51;2484:26;2498:11;2484:13;:26::i;:::-;2459:15;;:22;;;;:51;;;;2541:15;;2578:9;2541:34;;;;:46;-1:-1:-1;;;;;2604:44:134;;:24;;;:44;2658:19;;2680:12;2658:34;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2702:18:134;;;2723:11;2702:32;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2749:21:134;;;:26;2745:182;;2902:14;1140:8;2902:3;:14;:::i;:::-;2878:38;;2745:182;2936:18;;;:32;;;2978:23;;;:42;;;3056:16;;;3070:1;3056:16;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3030:23:134;;;:42;;;3082:26;;3119:1;;3030:42;3119:1;;3082:26;;;;:::i;:::-;;;;;;:39;-1:-1:-1;;;;;3082:39:134;;;-1:-1:-1;;;;;3082:39:134;;;;;1946:1182;;;;;;;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;3134:1468:134:-;3471:14;3548:44;3607:86;3617:17;3636:12;3650:11;3663;3676:16;3607:9;:86::i;:::-;3738:16;;;3752:1;3738:16;;;;;;;;3548:145;;-1:-1:-1;3704:31:134;;3738:16;;;;;;;;;;;;-1:-1:-1;3738:16:134;3704:50;;3792:4;3764:14;3779:1;3764:17;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;3764:33:134;;;-1:-1:-1;;;;;3764:33:134;;;;;3835:10;3807:14;3822:1;3807:17;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3807:39:134;;;:17;;;;;;;;;:39;4445:42:9;;4133:19:134;;;4129:64;;-1:-1:-1;4177:5:134;4129:64;4211:4;-1:-1:-1;;;;;4211:33:134;;4299:55;4315:8;4325:12;:10;:12::i;:::-;4339:14;4299:15;:55::i;:::-;4376:8;4410:6;4399:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;4431:6;4451:1;4466:8;4488:14;4211:301;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4202:310;;4582:12;4530:64;;;;;;;;:::i;:::-;4553:8;-1:-1:-1;;;;;4530:46:134;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:64;;;;;;;;:::i;:::-;;4523:72;;;;:::i;:::-;3487:1115;;;3134:1468;;;;;;;;;;;:::o;6040:380::-;6190:7;6225:11;6190:7;6266:27;6271:18;1381:7;6281:3;6272:12;;;6271:18;:::i;:::-;6291:1;6266:4;:27::i;:::-;6246:47;-1:-1:-1;6410:3:134;-1:-1:-1;;;6383:9:134;6387:5;1381:7;6383:9;:::i;:::-;6358:19;6368:9;-1:-1:-1;;;6358:19:134;:::i;:::-;6340:14;1381:7;6340:10;:14;:::i;:::-;:38;;;;:::i;:::-;6339:54;;;;:::i;:::-;6313:21;6325:9;6313;:21;:::i;:::-;6312:82;;;;:::i;:::-;6311:94;;;;:::i;:::-;6310:103;;;6040:380;-1:-1:-1;;;;;;;6040:380:134:o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;5192:114:134:-;5255:7;5281:18;5291:8;5281:7;:18;:::i;:::-;5274:25;5192:114;-1:-1:-1;;5192:114:134:o;5587:447::-;5648:15;-1:-1:-1;;;5683:2:134;:12;5675:53;;;;-1:-1:-1;;;5675:53:134;;18530:2:142;5675:53:134;;;18512:21:142;18569:2;18549:18;;;18542:30;-1:-1:-1;;;18588:18:142;;;18581:58;18656:18;;5675:53:134;;;;;;;;;-1:-1:-1;;;;5750:2:134;5774;5813:215;5820:5;;5813:215;;5845:1;5849;5845:5;5854:1;5845:10;5841:177;;5879:10;5884:1;5887;5879:4;:10::i;:::-;5875:14;-1:-1:-1;5913:1:134;5907:7;5813:215;;5841:177;5963:16;5968:7;5977:1;5963:4;:16::i;:::-;5953:26;-1:-1:-1;5997:6:134;6002:1;5997:6;;:::i;:::-;;;5813:215;;;5665:369;;5587:447;;;;:::o;20158:242:23:-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;477:25:142;;;20293:33:23;-1:-1:-1;20344:7:23;;;;450:18:142;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;5312:269:134:-;5373:15;-1:-1:-1;;;5408:2:134;:13;;5400:66;;;;-1:-1:-1;;;5400:66:134;;19770:2:142;5400:66:134;;;19752:21:142;19809:2;19789:18;;;19782:30;19848:34;19828:18;;;19821:62;-1:-1:-1;;;19899:18:142;;;19892:38;19947:19;;5400:66:134;19568:404:142;5400:66:134;-1:-1:-1;;;5484:2:134;:12;5476:53;;;;-1:-1:-1;;;5476:53:134;;20179:2:142;5476:53:134;;;20161:21:142;20218:2;20198:18;;;20191:30;-1:-1:-1;;;20237:18:142;;;20230:58;20305:18;;5476:53:134;19977:352:142;5476:53:134;5571:3;-1:-1:-1;;;5548:7:134;5553:2;5548;:7;:::i;:::-;5547:19;;;;:::i;:::-;5546:28;;;5312:269;-1:-1:-1;;;5312:269:134:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:104:142:-;-1:-1:-1;;;;;80:31:142;68:44;;14:104::o;513:142::-;-1:-1:-1;;;;;599:31:142;;589:42;;579:70;;645:1;642;635:12;579:70;513:142;:::o;660:127::-;721:10;716:3;712:20;709:1;702:31;752:4;749:1;742:15;776:4;773:1;766:15;792:275;863:2;857:9;928:2;909:13;;-1:-1:-1;;905:27:142;893:40;;-1:-1:-1;;;;;948:34:142;;984:22;;;945:62;942:88;;;1010:18;;:::i;:::-;1046:2;1039:22;792:275;;-1:-1:-1;792:275:142:o;1072:1354::-;1192:6;1200;1208;1261:2;1249:9;1240:7;1236:23;1232:32;1229:52;;;1277:1;1274;1267:12;1229:52;1316:9;1303:23;1335:42;1371:5;1335:42;:::i;:::-;1396:5;-1:-1:-1;1420:2:142;1459:18;;;1446:32;1487:44;1446:32;1487:44;:::i;:::-;1550:7;-1:-1:-1;1608:2:142;1593:18;;1580:32;-1:-1:-1;;;;;1661:14:142;;;1658:34;;;1688:1;1685;1678:12;1658:34;1726:6;1715:9;1711:22;1701:32;;1771:7;1764:4;1760:2;1756:13;1752:27;1742:55;;1793:1;1790;1783:12;1742:55;1829:2;1816:16;1851:2;1847;1844:10;1841:36;;;1857:18;;:::i;:::-;1903:2;1900:1;1896:10;1886:20;;1926:28;1950:2;1946;1942:11;1926:28;:::i;:::-;1988:15;;;2058:11;;;2054:20;;;2019:12;;;;2086:19;;;2083:39;;;2118:1;2115;2108:12;2083:39;2142:11;;;;2162:234;2178:6;2173:3;2170:15;2162:234;;;2260:3;2247:17;2232:32;;2277:44;2313:7;2277:44;:::i;:::-;2334:20;;;2195:12;;;;2374;;;;2162:234;;;2415:5;2405:15;;;;;;;;1072:1354;;;;;:::o;2768:250::-;2853:1;2863:113;2877:6;2874:1;2871:13;2863:113;;;2953:11;;;2947:18;2934:11;;;2927:39;2899:2;2892:10;2863:113;;;-1:-1:-1;;3010:1:142;2992:16;;2985:27;2768:250::o;3023:271::-;3065:3;3103:5;3097:12;3130:6;3125:3;3118:19;3146:76;3215:6;3208:4;3203:3;3199:14;3192:4;3185:5;3181:16;3146:76;:::i;:::-;3276:2;3255:15;-1:-1:-1;;3251:29:142;3242:39;;;;3283:4;3238:50;;3023:271;-1:-1:-1;;3023:271:142:o;3299:291::-;3476:6;3465:9;3458:25;3519:2;3514;3503:9;3499:18;3492:30;3439:4;3539:45;3580:2;3569:9;3565:18;3557:6;3539:45;:::i;:::-;3531:53;3299:291;-1:-1:-1;;;;3299:291:142:o;3595:461::-;3648:3;3686:5;3680:12;3713:6;3708:3;3701:19;3739:4;3768:2;3763:3;3759:12;3752:19;;3805:2;3798:5;3794:14;3826:1;3836:195;3850:6;3847:1;3844:13;3836:195;;;3915:13;;-1:-1:-1;;;;;3911:39:142;3899:52;;3971:12;;;;4006:15;;;;3947:1;3865:9;3836:195;;;-1:-1:-1;4047:3:142;;3595:461;-1:-1:-1;;;;;3595:461:142:o;4061:261::-;4240:2;4229:9;4222:21;4203:4;4260:56;4312:2;4301:9;4297:18;4289:6;4260:56;:::i;:::-;4252:64;4061:261;-1:-1:-1;;;4061:261:142:o;4327:111::-;4412:1;4405:5;4402:12;4392:40;;4428:1;4425;4418:12;4443:152;4520:20;;4569:1;4559:12;;4549:40;;4585:1;4582;4575:12;4549:40;4443:152;;;:::o;4600:917::-;4663:5;4711:4;4699:9;4694:3;4690:19;4686:30;4683:50;;;4729:1;4726;4719:12;4683:50;4762:2;4756:9;4804:4;4792:17;;-1:-1:-1;;;;;4824:34:142;;4860:22;;;4821:62;4818:88;;;4886:18;;:::i;:::-;4922:2;4915:22;4955:6;-1:-1:-1;4955:6:142;4985:23;;5017:44;4985:23;5017:44;:::i;:::-;5070:23;;5145:2;5130:18;;5117:32;5158:44;5117:32;5158:44;:::i;:::-;5235:7;5230:2;5222:6;5218:15;5211:32;;5304:2;5293:9;5289:18;5276:32;5271:2;5263:6;5259:15;5252:57;5370:2;5359:9;5355:18;5342:32;5337:2;5329:6;5325:15;5318:57;5437:3;5426:9;5422:19;5409:33;5403:3;5395:6;5391:16;5384:59;5505:3;5494:9;5490:19;5477:33;5471:3;5463:6;5459:16;5452:59;;4600:917;;;;:::o;5522:1305::-;5745:6;5753;5761;5769;5777;5785;5793;5801;5854:3;5842:9;5833:7;5829:23;5825:33;5822:53;;;5871:1;5868;5861:12;5822:53;5910:9;5897:23;5929:42;5965:5;5929:42;:::i;:::-;5990:5;-1:-1:-1;6047:2:142;6032:18;;6019:32;6060:44;6019:32;6060:44;:::i;:::-;6123:7;-1:-1:-1;6182:2:142;6167:18;;6154:32;6195:44;6154:32;6195:44;:::i;:::-;6258:7;-1:-1:-1;6317:2:142;6302:18;;6289:32;6330:44;6289:32;6330:44;:::i;:::-;6393:7;-1:-1:-1;6452:3:142;6437:19;;6424:33;6466:44;6424:33;6466:44;:::i;:::-;6529:7;-1:-1:-1;6588:3:142;6573:19;;6560:33;6602:43;6560:33;6602:43;:::i;:::-;6664:7;-1:-1:-1;6690:48:142;6733:3;6718:19;;6690:48;:::i;:::-;6680:58;;6757:64;6813:7;6807:3;6796:9;6792:19;6757:64;:::i;:::-;6747:74;;5522:1305;;;;;;;;;;;:::o;6832:416::-;6896:5;6944:4;6932:9;6927:3;6923:19;6919:30;6916:50;;;6962:1;6959;6952:12;6916:50;6995:2;6989:9;7037:4;7025:17;;-1:-1:-1;;;;;7057:34:142;;7093:22;;;7054:62;7051:88;;;7119:18;;:::i;:::-;7155:2;7148:22;7218:23;;7203:39;;-1:-1:-1;7188:6:142;6832:416;-1:-1:-1;6832:416:142:o;7253:799::-;7454:6;7462;7470;7478;7486;7539:3;7527:9;7518:7;7514:23;7510:33;7507:53;;;7556:1;7553;7546:12;7507:53;7595:9;7582:23;7614:42;7650:5;7614:42;:::i;:::-;7675:5;-1:-1:-1;7732:2:142;7717:18;;7704:32;7745:43;7704:32;7745:43;:::i;:::-;7807:7;-1:-1:-1;7833:47:142;7876:2;7861:18;;7833:47;:::i;:::-;7823:57;;7899:64;7955:7;7950:2;7939:9;7935:18;7899:64;:::i;:::-;7889:74;;7982:64;8038:7;8032:3;8021:9;8017:19;7982:64;:::i;:::-;7972:74;;7253:799;;;;;;;;:::o;8057:127::-;8118:10;8113:3;8109:20;8106:1;8099:31;8149:4;8146:1;8139:15;8173:4;8170:1;8163:15;8189:143;8273:1;8266:5;8263:12;8253:46;;8279:18;;:::i;:::-;8308;;8189:143::o;8337:142::-;8420:1;8413:5;8410:12;8400:46;;8426:18;;:::i;9498:1444::-;9725:2;9714:9;9707:21;9688:4;9753:6;9747:13;9802:2;9796:9;9791:2;9780:9;9776:18;9769:37;9856:2;9852;9848:11;9842:18;9837:2;9826:9;9822:18;9815:46;9911:2;9907;9903:11;9897:18;9892:2;9881:9;9877:18;9870:46;9967:2;9963;9959:11;9953:18;9947:3;9936:9;9932:19;9925:47;;10019:2;10011:6;10007:15;10001:22;10032:63;10090:3;10079:9;10075:19;10061:12;10032:63;:::i;:::-;;10144:2;10136:6;10132:15;10126:22;10157:64;10216:3;10205:9;10201:19;10185:14;10157:64;:::i;:::-;-1:-1:-1;10270:2:142;10258:15;;;10252:22;8559:12;10350:3;10335:19;;8547:25;10404:3;10392:16;;;10386:23;8703:12;;-1:-1:-1;;;;;8699:21:142;;;10484:3;10469:19;;8687:34;8774:4;8763:16;;8757:23;8753:32;8737:14;;;8730:56;8835:4;8824:16;;8818:23;8802:14;;;8795:47;8880:16;;;8874:23;8858:14;;;8851:47;8936:16;;8930:23;8914:14;;;8907:47;8667:3;8992:16;;;8986:23;8970:14;;;8963:47;10526:16;;10520:23;10552:55;10602:3;10587:19;;10520:23;10552:55;:::i;:::-;;10656:3;10648:6;10644:16;10638:23;10670:55;10720:3;10709:9;10705:19;10689:14;10670:55;:::i;:::-;-1:-1:-1;10774:3:142;10762:16;;10756:23;10798:6;10820:18;;;10813:30;10860:76;10931:3;10916:19;;10756:23;10860:76;:::i;11171:1442::-;11439:6;11447;11455;11463;11471;11479;11487;11495;11503;11556:3;11544:9;11535:7;11531:23;11527:33;11524:53;;;11573:1;11570;11563:12;11524:53;11612:9;11599:23;11631:42;11667:5;11631:42;:::i;:::-;11692:5;-1:-1:-1;11749:2:142;11734:18;;11721:32;11762:44;11721:32;11762:44;:::i;:::-;11825:7;-1:-1:-1;11884:2:142;11869:18;;11856:32;11897:44;11856:32;11897:44;:::i;:::-;11960:7;-1:-1:-1;12019:2:142;12004:18;;11991:32;12032:44;11991:32;12032:44;:::i;:::-;12095:7;-1:-1:-1;12154:3:142;12139:19;;12126:33;12168:44;12126:33;12168:44;:::i;:::-;12231:7;-1:-1:-1;12290:3:142;12275:19;;12262:33;12304:43;12262:33;12304:43;:::i;:::-;12366:7;-1:-1:-1;12392:48:142;12435:3;12420:19;;12392:48;:::i;:::-;12382:58;;12459:65;12516:7;12510:3;12499:9;12495:19;12459:65;:::i;:::-;12449:75;;12543:64;12599:7;12593:3;12582:9;12578:19;12543:64;:::i;:::-;12533:74;;11171:1442;;;;;;;;;;;:::o;12618:385::-;12704:6;12712;12720;12728;12781:3;12769:9;12760:7;12756:23;12752:33;12749:53;;;12798:1;12795;12788:12;12749:53;-1:-1:-1;;12821:23:142;;;12891:2;12876:18;;12863:32;;-1:-1:-1;12942:2:142;12927:18;;12914:32;;12993:2;12978:18;12965:32;;-1:-1:-1;12618:385:142;-1:-1:-1;12618:385:142:o;13008:1009::-;13432:6;13421:9;13414:25;13475:3;13470:2;13459:9;13455:18;13448:31;13516:2;13510:3;13499:9;13495:19;13488:31;-1:-1:-1;;;13550:3:142;13539:9;13535:19;13528:45;13609:3;13604:2;13593:9;13589:18;13582:31;13656:6;13650:13;13644:3;13633:9;13629:19;13622:42;13395:4;13711:2;13703:6;13699:15;13693:22;13752:2;13746:3;13735:9;13731:19;13724:31;13775:52;13822:3;13811:9;13807:19;13793:12;13775:52;:::i;:::-;-1:-1:-1;;;;;13863:32:142;;13858:2;13843:18;;13836:60;13933:19;;;13927:3;13912:19;;13905:48;13764:63;-1:-1:-1;13970:41:142;13764:63;13999:6;13970:41;:::i;:::-;13962:49;13008:1009;-1:-1:-1;;;;;;;13008:1009:142:o;14022:184::-;14092:6;14145:2;14133:9;14124:7;14120:23;14116:32;14113:52;;;14161:1;14158;14151:12;14113:52;-1:-1:-1;14184:16:142;;14022:184;-1:-1:-1;14022:184:142:o;14211:380::-;14290:1;14286:12;;;;14333;;;14354:61;;14408:4;14400:6;14396:17;14386:27;;14354:61;14461:2;14453:6;14450:14;14430:18;14427:38;14424:161;;14507:10;14502:3;14498:20;14495:1;14488:31;14542:4;14539:1;14532:15;14570:4;14567:1;14560:15;14424:161;;14211:380;;;:::o;14596:127::-;14657:10;14652:3;14648:20;14645:1;14638:31;14688:4;14685:1;14678:15;14712:4;14709:1;14702:15;14728:127;14789:10;14784:3;14780:20;14777:1;14770:31;14820:4;14817:1;14810:15;14844:4;14841:1;14834:15;14860:168;14933:9;;;14964;;14981:15;;;14975:22;;14961:37;14951:71;;15002:18;;:::i;15159:2074::-;15581:6;15570:9;15563:25;15544:4;15607:2;15645:1;15641;15636:3;15632:11;15628:19;15695:2;15687:6;15683:15;15678:2;15667:9;15663:18;15656:43;15735:3;15730:2;15719:9;15715:18;15708:31;15762:46;15803:3;15792:9;15788:19;15780:6;15762:46;:::i;:::-;15856:2;15848:6;15844:15;15839:2;15828:9;15824:18;15817:43;15897:6;15891:3;15880:9;15876:19;15869:35;15953:9;15945:6;15941:22;15935:3;15924:9;15920:19;15913:51;15994:6;15988:13;15980:6;15973:29;16021:4;16011:14;;16066:2;16058:6;16054:15;16102:2;16097;16089:6;16085:15;16078:27;16125:1;16158:12;16152:19;16194:3;16224:9;16220:2;16216:18;16206:28;;16284:2;16273:9;16269:18;16306;16296:61;;16350:4;16342:6;16338:17;16328:27;;16296:61;16403:2;16395:6;16392:14;16372:18;16369:38;16366:165;;-1:-1:-1;;;16430:33:142;;16486:4;16483:1;16476:15;16516:4;16437:3;16504:17;16366:165;16599:2;16587:15;;2700:19;;;2743:14;;;16540:71;-1:-1:-1;16627:18:142;16654:128;;;;16796:1;16791:321;;;;16620:492;;16654:128;-1:-1:-1;;16687:24:142;;16675:37;;16755:14;;16748:22;16745:1;16741:30;16732:40;;;-1:-1:-1;16654:128:142;;16791:321;15106:1;15099:14;;;15143:4;15130:18;;16892:1;16906:165;16920:6;16917:1;16914:13;16906:165;;;16998:14;;16985:11;;;16978:35;17041:16;;;;16935:10;;16906:165;;;17091:11;;;-1:-1:-1;;16620:492:142;;;;;17158:9;17153:3;17149:19;17143:3;17132:9;17128:19;17121:48;17186:41;17223:3;17215:6;17186:41;:::i;:::-;17178:49;15159:2074;-1:-1:-1;;;;;;;;;;;;;;15159:2074:142:o;17427:279::-;17515:6;17568:2;17556:9;17547:7;17543:23;17539:32;17536:52;;;17584:1;17581;17574:12;17536:52;17616:9;17610:16;17635:41;17670:5;17635:41;:::i;17711:127::-;17772:10;17767:3;17763:20;17760:1;17753:31;17803:4;17800:1;17793:15;17827:4;17824:1;17817:15;17843:217;17883:1;17909;17899:132;;17953:10;17948:3;17944:20;17941:1;17934:31;17988:4;17985:1;17978:15;18016:4;18013:1;18006:15;17899:132;-1:-1:-1;18045:9:142;;17843:217::o;18065:128::-;18132:9;;;18153:11;;;18150:37;;;18167:18;;:::i;18198:125::-;18263:9;;;18284:10;;;18281:36;;;18297:18;;:::i;18685:289::-;18816:3;18854:6;18848:13;18870:66;18929:6;18924:3;18917:4;18909:6;18905:17;18870:66;:::i;:::-;18952:16;;;;;18685:289;-1:-1:-1;;18685:289:142:o;18979:262::-;19049:6;19102:2;19090:9;19081:7;19077:23;19073:32;19070:52;;;19118:1;19115;19108:12;19070:52;19150:9;19144:16;19169:42;19205:5;19169:42;:::i;19246:317::-;-1:-1:-1;;;;;19423:32:142;;19405:51;;19492:2;19487;19472:18;;19465:30;;;-1:-1:-1;;19512:45:142;;19538:18;;19530:6;19512:45;:::i","linkReferences":{}},"methodIdentifiers":{"DECIMALS()":"2e0f2625","NATIVE()":"a0cf0aea","PERCENTAGE_SCALE()":"3f26479e","_calculateConviction(uint256,uint256,uint256,uint256)":"e99ce911","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","createPool(address,address,address,address,address,uint8,uint8,(address,address,uint256,uint256,uint256,uint256))":"85294f18","createPool(address,address,address,address,address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"e070e0ab","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"c36e336b","local()":"0f166ad4","metadata()":"392f37e9","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","poolProfile_id1(address,address,address[])":"37d1c404","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry_owner()":"dac4eb16"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"DECIMALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PERCENTAGE_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"}],\"name\":\"_calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"getParams\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"params\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"metadata\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"pool_admin\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"pool_managers\",\"type\":\"address[]\"}],\"name\":\"poolProfile_id1\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/test/CVStrategyHelpers.sol\":\"CVStrategyHelpers\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Allo.sol\":{\"keccak256\":\"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c\",\"dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd\"]},\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/auth/Ownable.sol\":{\"keccak256\":\"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30\",\"dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol\":{\"keccak256\":\"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f\",\"dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]},\"pkg/contracts/test/CVStrategyHelpers.sol\":{\"keccak256\":\"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e\",\"dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PERCENTAGE_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"}],"stateMutability":"pure","type":"function","name":"_calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"pure","type":"function","name":"getParams","outputs":[{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"metadata","outputs":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"pool_admin","type":"address"},{"internalType":"address[]","name":"pool_managers","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"poolProfile_id1","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/test/CVStrategyHelpers.sol":"CVStrategyHelpers"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Allo.sol":{"keccak256":"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a","urls":["bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c","dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/auth/Ownable.sol":{"keccak256":"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b","urls":["bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30","dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol":{"keccak256":"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f","urls":["bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f","dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"},"pkg/contracts/test/CVStrategyHelpers.sol":{"keccak256":"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d","urls":["bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e","dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw"],"license":"AGPL-3.0-or-later"}},"version":1},"storageLayout":{"storage":[{"astId":9278,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"gasMeteringOff","offset":0,"slot":"0","type":"t_bool"},{"astId":11315,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"stdstore","offset":0,"slot":"1","type":"t_struct(StdStorage)13196_storage"},{"astId":79381,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"metadata","offset":0,"slot":"9","type":"t_struct(Metadata)3098_storage"},{"astId":79393,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_poolProfileId1_","offset":0,"slot":"11","type":"t_bytes32"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/test/CVStrategyHelpers.sol","id":79906,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[65628],"CVStrategyHelpers":[79905],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"IRegistry":[2802],"Metadata":[3098],"Native":[3106],"PointSystem":[65545],"PointSystemConfig":[65614],"ProposalType":[65540],"console":[29510]},"nodeType":"SourceUnit","src":"46:6377:134","nodes":[{"id":79349,"nodeType":"PragmaDirective","src":"46:24:134","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":79350,"nodeType":"ImportDirective","src":"72:31:134","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":79906,"sourceUnit":29511,"symbolAliases":[],"unitAlias":""},{"id":79352,"nodeType":"ImportDirective","src":"104:53:134","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","file":"allo-v2-contracts/core/Allo.sol","nameLocation":"-1:-1:-1","scope":79906,"sourceUnit":1391,"symbolAliases":[{"foreign":{"id":79351,"name":"Allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1390,"src":"112:4:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":79361,"nodeType":"ImportDirective","src":"376:230:134","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"../src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":79906,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":79353,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"389:14:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79354,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"409:14:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79355,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"429:12:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79356,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"447:11:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79357,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"464:14:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79358,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"484:17:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79359,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"507:16:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79360,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"529:30:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":79363,"nodeType":"ImportDirective","src":"607:84:134","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":79906,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":79362,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"615:30:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":79365,"nodeType":"ImportDirective","src":"692:67:134","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"allo-v2-contracts/core/libraries/Native.sol","nameLocation":"-1:-1:-1","scope":79906,"sourceUnit":3107,"symbolAliases":[{"foreign":{"id":79364,"name":"Native","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3106,"src":"700:6:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":79368,"nodeType":"ImportDirective","src":"760:84:134","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":79906,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":79366,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"768:9:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":79367,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"779:8:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":79370,"nodeType":"ImportDirective","src":"846:66:134","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"allo-v2-test/foundry/shared/Accounts.sol","nameLocation":"-1:-1:-1","scope":79906,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":79369,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"854:8:134","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":79905,"nodeType":"ContractDefinition","src":"914:5508:134","nodes":[{"id":79381,"nodeType":"VariableDeclaration","src":"967:109:134","nodes":[],"constant":false,"functionSelector":"392f37e9","mutability":"mutable","name":"metadata","nameLocation":"983:8:134","scope":79905,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata"},"typeName":{"id":79376,"nodeType":"UserDefinedTypeName","pathNode":{"id":79375,"name":"Metadata","nameLocations":["967:8:134"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"967:8:134"},"referencedDeclaration":3098,"src":"967:8:134","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"value":{"arguments":[{"hexValue":"31","id":79378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1014:1:134","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","id":79379,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1026:48:134","typeDescriptions":{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""},"value":"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""}],"id":79377,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"994:8:134","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":79380,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1004:8:134","1017:7:134"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"994:82:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"visibility":"public"},{"id":79386,"nodeType":"VariableDeclaration","src":"1105:43:134","nodes":[],"constant":true,"functionSelector":"2e0f2625","mutability":"constant","name":"DECIMALS","nameLocation":"1129:8:134","scope":79905,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79382,"name":"uint256","nodeType":"ElementaryTypeName","src":"1105:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"id":79385,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":79383,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1140:2:134","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3138","id":79384,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1146:2:134","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"1140:8:134","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"}},"visibility":"public"},{"id":79391,"nodeType":"VariableDeclaration","src":"1154:50:134","nodes":[],"constant":true,"functionSelector":"3f26479e","mutability":"constant","name":"PERCENTAGE_SCALE","nameLocation":"1178:16:134","scope":79905,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79387,"name":"uint256","nodeType":"ElementaryTypeName","src":"1154:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":79390,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":79388,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1197:2:134","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":79389,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1203:1:134","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"1197:7:134","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":79393,"nodeType":"VariableDeclaration","src":"1211:33:134","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId1_","nameLocation":"1228:16:134","scope":79905,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":79392,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1211:7:134","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":79398,"nodeType":"VariableDeclaration","src":"1251:44:134","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"1277:7:134","scope":79905,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79394,"name":"uint256","nodeType":"ElementaryTypeName","src":"1251:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"id":79397,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":79395,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1287:1:134","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313237","id":79396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1292:3:134","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"127"},"src":"1287:8:134","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"}},"visibility":"internal"},{"id":79403,"nodeType":"VariableDeclaration","src":"1301:44:134","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"1327:7:134","scope":79905,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79399,"name":"uint256","nodeType":"ElementaryTypeName","src":"1301:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"id":79402,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":79400,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1337:1:134","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313238","id":79401,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1342:3:134","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"1337:8:134","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"}},"visibility":"internal"},{"id":79408,"nodeType":"VariableDeclaration","src":"1351:37:134","nodes":[],"constant":true,"mutability":"constant","name":"D","nameLocation":"1377:1:134","scope":79905,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79404,"name":"uint256","nodeType":"ElementaryTypeName","src":"1351:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":79407,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":79405,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1381:2:134","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":79406,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1387:1:134","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"1381:7:134","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"visibility":"internal"},{"id":79446,"nodeType":"FunctionDefinition","src":"1503:437:134","nodes":[],"body":{"id":79445,"nodeType":"Block","src":"1661:279:134","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":79426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79421,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79393,"src":"1675:16:134","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":79424,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1703:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":79423,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1695:7:134","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":79422,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1695:7:134","typeDescriptions":{}}},"id":79425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1695:10:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1675:30:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":79442,"nodeType":"IfStatement","src":"1671:230:134","trueBody":{"id":79441,"nodeType":"Block","src":"1707:194:134","statements":[{"expression":{"id":79439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79427,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79393,"src":"1721:16:134","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"32","id":79430,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1780:1:134","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"506f6f6c2050726f66696c652031","id":79431,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1783:16:134","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":79433,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1821:1:134","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":79434,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1833:14:134","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":79432,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1801:8:134","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":79435,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1811:8:134","1824:7:134"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1801:48:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":79436,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79413,"src":"1851:10:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":79437,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79416,"src":"1863:13:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":79428,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79411,"src":"1740:8:134","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":79429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1749:13:134","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"1740:22:134","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":79438,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1740:150:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1721:169:134","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":79440,"nodeType":"ExpressionStatement","src":"1721:169:134"}]}},{"expression":{"id":79443,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79393,"src":"1917:16:134","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":79420,"id":79444,"nodeType":"Return","src":"1910:23:134"}]},"functionSelector":"37d1c404","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id1","nameLocation":"1512:15:134","parameters":{"id":79417,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79411,"mutability":"mutable","name":"registry","nameLocation":"1538:8:134","nodeType":"VariableDeclaration","scope":79446,"src":"1528:18:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":79410,"nodeType":"UserDefinedTypeName","pathNode":{"id":79409,"name":"IRegistry","nameLocations":["1528:9:134"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"1528:9:134"},"referencedDeclaration":2802,"src":"1528:9:134","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":79413,"mutability":"mutable","name":"pool_admin","nameLocation":"1556:10:134","nodeType":"VariableDeclaration","scope":79446,"src":"1548:18:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79412,"name":"address","nodeType":"ElementaryTypeName","src":"1548:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79416,"mutability":"mutable","name":"pool_managers","nameLocation":"1585:13:134","nodeType":"VariableDeclaration","scope":79446,"src":"1568:30:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":79414,"name":"address","nodeType":"ElementaryTypeName","src":"1568:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79415,"nodeType":"ArrayTypeName","src":"1568:9:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1527:72:134"},"returnParameters":{"id":79420,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79419,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":79446,"src":"1648:7:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":79418,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1648:7:134","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1647:9:134"},"scope":79905,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":79570,"nodeType":"FunctionDefinition","src":"1946:1182:134","nodes":[],"body":{"id":79569,"nodeType":"Block","src":"2237:891:134","nodes":[],"statements":[{"expression":{"id":79474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":79466,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2298:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79469,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2305:8:134","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2298:15:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":79470,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2314:5:134","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"2298:21:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e39393939373939","id":79472,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2336:15:134","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"},"value":"0.9999799"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"}],"id":79471,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79749,"src":"2322:13:134","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":79473,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2322:30:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2298:54:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79475,"nodeType":"ExpressionStatement","src":"2298:54:134"},{"expression":{"id":79484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":79476,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2379:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2386:8:134","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2379:15:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":79480,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2395:8:134","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"2379:24:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e32","id":79482,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2420:9:134","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"}],"id":79481,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79749,"src":"2406:13:134","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":79483,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2406:24:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2379:51:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79485,"nodeType":"ExpressionStatement","src":"2379:51:134"},{"expression":{"id":79494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":79486,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2459:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2466:8:134","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2459:15:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":79490,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2475:6:134","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"2459:22:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e303031","id":79492,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2498:11:134","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"},"value":"0.001"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"}],"id":79491,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79749,"src":"2484:13:134","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":79493,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2484:26:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2459:51:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79495,"nodeType":"ExpressionStatement","src":"2459:51:134"},{"expression":{"id":79502,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":79496,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2541:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2548:8:134","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2541:15:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":79500,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2557:18:134","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"2541:34:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"302e32","id":79501,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2578:9:134","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"},"src":"2541:46:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79503,"nodeType":"ExpressionStatement","src":"2541:46:134"},{"expression":{"id":79508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":79504,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2604:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79506,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2611:17:134","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"2604:24:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":79507,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79448,"src":"2631:17:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2604:44:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79509,"nodeType":"ExpressionStatement","src":"2604:44:134"},{"expression":{"id":79514,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":79510,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2658:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79512,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2665:12:134","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"2658:19:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":79513,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79451,"src":"2680:12:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"2658:34:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":79515,"nodeType":"ExpressionStatement","src":"2658:34:134"},{"expression":{"id":79520,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":79516,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2702:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79518,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2709:11:134","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"2702:18:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":79519,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79454,"src":"2723:11:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"2702:32:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":79521,"nodeType":"ExpressionStatement","src":"2702:32:134"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79525,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":79522,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79457,"src":"2749:11:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":79523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2761:9:134","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2749:21:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":79524,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2774:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2749:26:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":79535,"nodeType":"IfStatement","src":"2745:182:134","trueBody":{"id":79534,"nodeType":"Block","src":"2777:150:134","statements":[{"expression":{"id":79532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":79526,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79457,"src":"2878:11:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":79528,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2890:9:134","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2878:21:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79531,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"323030","id":79529,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2902:3:134","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":79530,"name":"DECIMALS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79386,"src":"2908:8:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2902:14:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2878:38:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79533,"nodeType":"ExpressionStatement","src":"2878:38:134"}]}},{"expression":{"id":79540,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":79536,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2936:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2943:11:134","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"2936:18:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":79539,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79457,"src":"2957:11:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"2936:32:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":79541,"nodeType":"ExpressionStatement","src":"2936:32:134"},{"expression":{"id":79546,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":79542,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"2978:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79544,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2985:16:134","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"2978:23:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":79545,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79460,"src":"3004:16:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"2978:42:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":79547,"nodeType":"ExpressionStatement","src":"2978:42:134"},{"expression":{"id":79556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":79548,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"3030:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3037:16:134","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3030:23:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":79554,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3070:1:134","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":79553,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3056:13:134","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":79551,"name":"address","nodeType":"ElementaryTypeName","src":"3060:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79552,"nodeType":"ArrayTypeName","src":"3060:9:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":79555,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3056:16:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"3030:42:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":79557,"nodeType":"ExpressionStatement","src":"3030:42:134"},{"expression":{"id":79567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":79558,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79464,"src":"3082:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":79561,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3089:16:134","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3082:23:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":79562,"indexExpression":{"hexValue":"30","id":79560,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3106:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3082:26:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":79565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3119:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":79564,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3111:7:134","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":79563,"name":"address","nodeType":"ElementaryTypeName","src":"3111:7:134","typeDescriptions":{}}},"id":79566,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3111:10:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3082:39:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79568,"nodeType":"ExpressionStatement","src":"3082:39:134"}]},"functionSelector":"c36e336b","implemented":true,"kind":"function","modifiers":[],"name":"getParams","nameLocation":"1955:9:134","parameters":{"id":79461,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79448,"mutability":"mutable","name":"registryCommunity","nameLocation":"1982:17:134","nodeType":"VariableDeclaration","scope":79570,"src":"1974:25:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79447,"name":"address","nodeType":"ElementaryTypeName","src":"1974:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79451,"mutability":"mutable","name":"proposalType","nameLocation":"2022:12:134","nodeType":"VariableDeclaration","scope":79570,"src":"2009:25:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":79450,"nodeType":"UserDefinedTypeName","pathNode":{"id":79449,"name":"ProposalType","nameLocations":["2009:12:134"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"2009:12:134"},"referencedDeclaration":65540,"src":"2009:12:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":79454,"mutability":"mutable","name":"pointSystem","nameLocation":"2056:11:134","nodeType":"VariableDeclaration","scope":79570,"src":"2044:23:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":79453,"nodeType":"UserDefinedTypeName","pathNode":{"id":79452,"name":"PointSystem","nameLocations":["2044:11:134"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"2044:11:134"},"referencedDeclaration":65545,"src":"2044:11:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":79457,"mutability":"mutable","name":"pointConfig","nameLocation":"2102:11:134","nodeType":"VariableDeclaration","scope":79570,"src":"2077:36:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":79456,"nodeType":"UserDefinedTypeName","pathNode":{"id":79455,"name":"PointSystemConfig","nameLocations":["2077:17:134"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"2077:17:134"},"referencedDeclaration":65614,"src":"2077:17:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":79460,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"2147:16:134","nodeType":"VariableDeclaration","scope":79570,"src":"2123:40:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":79459,"nodeType":"UserDefinedTypeName","pathNode":{"id":79458,"name":"ArbitrableConfig","nameLocations":["2123:16:134"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"2123:16:134"},"referencedDeclaration":65628,"src":"2123:16:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"1964:205:134"},"returnParameters":{"id":79465,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79464,"mutability":"mutable","name":"params","nameLocation":"2229:6:134","nodeType":"VariableDeclaration","scope":79570,"src":"2191:44:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":79463,"nodeType":"UserDefinedTypeName","pathNode":{"id":79462,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2191:30:134"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2191:30:134"},"referencedDeclaration":69242,"src":"2191:30:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"2190:46:134"},"scope":79905,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":79694,"nodeType":"FunctionDefinition","src":"3134:1468:134","nodes":[],"body":{"id":79693,"nodeType":"Block","src":"3487:1115:134","nodes":[],"statements":[{"assignments":[79601],"declarations":[{"constant":false,"id":79601,"mutability":"mutable","name":"params","nameLocation":"3586:6:134","nodeType":"VariableDeclaration","scope":79693,"src":"3548:44:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":79600,"nodeType":"UserDefinedTypeName","pathNode":{"id":79599,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["3548:30:134"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"3548:30:134"},"referencedDeclaration":69242,"src":"3548:30:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":79609,"initialValue":{"arguments":[{"id":79603,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79577,"src":"3617:17:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":79604,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79585,"src":"3636:12:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":79605,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79588,"src":"3650:11:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"id":79606,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79591,"src":"3663:11:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":79607,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79594,"src":"3676:16:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":79602,"name":"getParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79570,"src":"3607:9:134","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$","typeString":"function (address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) pure returns (struct CVStrategyInitializeParamsV0_1 memory)"}},"id":79608,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3607:86:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"3548:145:134"},{"assignments":[79614],"declarations":[{"constant":false,"id":79614,"mutability":"mutable","name":"_pool_managers","nameLocation":"3721:14:134","nodeType":"VariableDeclaration","scope":79693,"src":"3704:31:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":79612,"name":"address","nodeType":"ElementaryTypeName","src":"3704:7:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79613,"nodeType":"ArrayTypeName","src":"3704:9:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":79620,"initialValue":{"arguments":[{"hexValue":"32","id":79618,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3752:1:134","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":79617,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3738:13:134","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":79615,"name":"address","nodeType":"ElementaryTypeName","src":"3742:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79616,"nodeType":"ArrayTypeName","src":"3742:9:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":79619,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3738:16:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3704:50:134"},{"expression":{"id":79628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":79621,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79614,"src":"3764:14:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":79623,"indexExpression":{"hexValue":"30","id":79622,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3779:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3764:17:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":79626,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3792:4:134","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyHelpers_$79905","typeString":"contract CVStrategyHelpers"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyHelpers_$79905","typeString":"contract CVStrategyHelpers"}],"id":79625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3784:7:134","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":79624,"name":"address","nodeType":"ElementaryTypeName","src":"3784:7:134","typeDescriptions":{}}},"id":79627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3784:13:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3764:33:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79629,"nodeType":"ExpressionStatement","src":"3764:33:134"},{"expression":{"id":79638,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":79630,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79614,"src":"3807:14:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":79632,"indexExpression":{"hexValue":"31","id":79631,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3822:1:134","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3807:17:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":79635,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3835:3:134","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":79636,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3839:6:134","memberName":"sender","nodeType":"MemberAccess","src":"3835:10:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":79634,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3827:7:134","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":79633,"name":"address","nodeType":"ElementaryTypeName","src":"3827:7:134","typeDescriptions":{}}},"id":79637,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3827:19:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3807:39:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79639,"nodeType":"ExpressionStatement","src":"3807:39:134"},{"assignments":[79641],"declarations":[{"constant":false,"id":79641,"mutability":"mutable","name":"_token","nameLocation":"4104:6:134","nodeType":"VariableDeclaration","scope":79693,"src":"4096:14:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79640,"name":"address","nodeType":"ElementaryTypeName","src":"4096:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":79643,"initialValue":{"id":79642,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"4113:6:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4096:23:134"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":79649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79644,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79582,"src":"4133:5:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":79647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4150:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":79646,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4142:7:134","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":79645,"name":"address","nodeType":"ElementaryTypeName","src":"4142:7:134","typeDescriptions":{}}},"id":79648,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4142:10:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4133:19:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":79655,"nodeType":"IfStatement","src":"4129:64:134","trueBody":{"id":79654,"nodeType":"Block","src":"4154:39:134","statements":[{"expression":{"id":79652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79650,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79641,"src":"4168:6:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":79651,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79582,"src":"4177:5:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4168:14:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":79653,"nodeType":"ExpressionStatement","src":"4168:14:134"}]}},{"expression":{"id":79678,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79656,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79597,"src":"4202:6:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":79660,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79580,"src":"4315:8:134","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"arguments":[],"expression":{"argumentTypes":[],"id":79661,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"4325:10:134","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":79662,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4325:12:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":79663,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79614,"src":"4339:14:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":79659,"name":"poolProfile_id1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79446,"src":"4299:15:134","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IRegistry_$2802_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (contract IRegistry,address,address[] memory) returns (bytes32)"}},"id":79664,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4299:55:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":79667,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79575,"src":"4376:8:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":79666,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4368:7:134","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":79665,"name":"address","nodeType":"ElementaryTypeName","src":"4368:7:134","typeDescriptions":{}}},"id":79668,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4368:17:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":79671,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79601,"src":"4410:6:134","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":79669,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4399:3:134","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":79670,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4403:6:134","memberName":"encode","nodeType":"MemberAccess","src":"4399:10:134","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":79672,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4399:18:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":79673,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79641,"src":"4431:6:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":79674,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4451:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":79675,"name":"metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79381,"src":"4466:8:134","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},{"id":79676,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79614,"src":"4488:14:134","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":79657,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79573,"src":"4211:4:134","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"id":79658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4216:28:134","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":175,"src":"4211:33:134","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":79677,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4211:301:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4202:310:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79679,"nodeType":"ExpressionStatement","src":"4202:310:134"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":79690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":79684,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79575,"src":"4553:8:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":79683,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4545:8:134","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":79682,"name":"address","nodeType":"ElementaryTypeName","src":"4545:8:134","stateMutability":"payable","typeDescriptions":{}}},"id":79685,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4545:17:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":79681,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"4530:14:134","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_1_$69756_$","typeString":"type(contract CVStrategyV0_1)"}},"id":79686,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:33:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}},"id":79687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4564:12:134","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65930,"src":"4530:46:134","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_enum$_ProposalType_$65540_$","typeString":"function () view external returns (enum ProposalType)"}},"id":79688,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:48:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":79689,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79585,"src":"4582:12:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"4530:64:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":79680,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"4523:6:134","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":79691,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4523:72:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":79692,"nodeType":"ExpressionStatement","src":"4523:72:134"}]},"functionSelector":"e070e0ab","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"3143:10:134","parameters":{"id":79595,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79573,"mutability":"mutable","name":"allo","nameLocation":"3168:4:134","nodeType":"VariableDeclaration","scope":79694,"src":"3163:9:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":79572,"nodeType":"UserDefinedTypeName","pathNode":{"id":79571,"name":"Allo","nameLocations":["3163:4:134"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"3163:4:134"},"referencedDeclaration":1390,"src":"3163:4:134","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":79575,"mutability":"mutable","name":"strategy","nameLocation":"3190:8:134","nodeType":"VariableDeclaration","scope":79694,"src":"3182:16:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79574,"name":"address","nodeType":"ElementaryTypeName","src":"3182:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79577,"mutability":"mutable","name":"registryCommunity","nameLocation":"3216:17:134","nodeType":"VariableDeclaration","scope":79694,"src":"3208:25:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79576,"name":"address","nodeType":"ElementaryTypeName","src":"3208:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79580,"mutability":"mutable","name":"registry","nameLocation":"3253:8:134","nodeType":"VariableDeclaration","scope":79694,"src":"3243:18:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":79579,"nodeType":"UserDefinedTypeName","pathNode":{"id":79578,"name":"IRegistry","nameLocations":["3243:9:134"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"3243:9:134"},"referencedDeclaration":2802,"src":"3243:9:134","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":79582,"mutability":"mutable","name":"token","nameLocation":"3279:5:134","nodeType":"VariableDeclaration","scope":79694,"src":"3271:13:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79581,"name":"address","nodeType":"ElementaryTypeName","src":"3271:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79585,"mutability":"mutable","name":"proposalType","nameLocation":"3307:12:134","nodeType":"VariableDeclaration","scope":79694,"src":"3294:25:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":79584,"nodeType":"UserDefinedTypeName","pathNode":{"id":79583,"name":"ProposalType","nameLocations":["3294:12:134"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3294:12:134"},"referencedDeclaration":65540,"src":"3294:12:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":79588,"mutability":"mutable","name":"pointSystem","nameLocation":"3341:11:134","nodeType":"VariableDeclaration","scope":79694,"src":"3329:23:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":79587,"nodeType":"UserDefinedTypeName","pathNode":{"id":79586,"name":"PointSystem","nameLocations":["3329:11:134"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3329:11:134"},"referencedDeclaration":65545,"src":"3329:11:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":79591,"mutability":"mutable","name":"pointConfig","nameLocation":"3387:11:134","nodeType":"VariableDeclaration","scope":79694,"src":"3362:36:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":79590,"nodeType":"UserDefinedTypeName","pathNode":{"id":79589,"name":"PointSystemConfig","nameLocations":["3362:17:134"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3362:17:134"},"referencedDeclaration":65614,"src":"3362:17:134","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":79594,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3432:16:134","nodeType":"VariableDeclaration","scope":79694,"src":"3408:40:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":79593,"nodeType":"UserDefinedTypeName","pathNode":{"id":79592,"name":"ArbitrableConfig","nameLocations":["3408:16:134"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3408:16:134"},"referencedDeclaration":65628,"src":"3408:16:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"3153:301:134"},"returnParameters":{"id":79598,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79597,"mutability":"mutable","name":"poolId","nameLocation":"3479:6:134","nodeType":"VariableDeclaration","scope":79694,"src":"3471:14:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79596,"name":"uint256","nodeType":"ElementaryTypeName","src":"3471:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3470:16:134"},"scope":79905,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":79735,"nodeType":"FunctionDefinition","src":"4608:578:134","nodes":[],"body":{"id":79734,"nodeType":"Block","src":"4915:271:134","nodes":[],"statements":[{"expression":{"arguments":[{"id":79721,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79697,"src":"4956:4:134","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},{"id":79722,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79699,"src":"4974:8:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":79723,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79701,"src":"4996:17:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":79724,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79704,"src":"5027:8:134","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"id":79725,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79706,"src":"5049:5:134","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":79726,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79709,"src":"5068:12:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":79727,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79712,"src":"5094:11:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"arguments":[{"hexValue":"30","id":79729,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5137:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":79728,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"5119:17:134","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_PointSystemConfig_$65614_storage_ptr_$","typeString":"type(struct PointSystemConfig storage pointer)"}},"id":79730,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5119:20:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":79731,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79715,"src":"5153:16:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":79720,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[79694,79735],"referencedDeclaration":79694,"src":"4932:10:134","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Allo_$1390_$_t_address_$_t_address_$_t_contract$_IRegistry_$2802_$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_uint256_$","typeString":"function (contract Allo,address,address,contract IRegistry,address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) returns (uint256)"}},"id":79732,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4932:247:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":79719,"id":79733,"nodeType":"Return","src":"4925:254:134"}]},"functionSelector":"85294f18","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"4617:10:134","parameters":{"id":79716,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79697,"mutability":"mutable","name":"allo","nameLocation":"4642:4:134","nodeType":"VariableDeclaration","scope":79735,"src":"4637:9:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":79696,"nodeType":"UserDefinedTypeName","pathNode":{"id":79695,"name":"Allo","nameLocations":["4637:4:134"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"4637:4:134"},"referencedDeclaration":1390,"src":"4637:4:134","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":79699,"mutability":"mutable","name":"strategy","nameLocation":"4664:8:134","nodeType":"VariableDeclaration","scope":79735,"src":"4656:16:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79698,"name":"address","nodeType":"ElementaryTypeName","src":"4656:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79701,"mutability":"mutable","name":"registryCommunity","nameLocation":"4690:17:134","nodeType":"VariableDeclaration","scope":79735,"src":"4682:25:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79700,"name":"address","nodeType":"ElementaryTypeName","src":"4682:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79704,"mutability":"mutable","name":"registry","nameLocation":"4727:8:134","nodeType":"VariableDeclaration","scope":79735,"src":"4717:18:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":79703,"nodeType":"UserDefinedTypeName","pathNode":{"id":79702,"name":"IRegistry","nameLocations":["4717:9:134"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"4717:9:134"},"referencedDeclaration":2802,"src":"4717:9:134","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":79706,"mutability":"mutable","name":"token","nameLocation":"4753:5:134","nodeType":"VariableDeclaration","scope":79735,"src":"4745:13:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":79705,"name":"address","nodeType":"ElementaryTypeName","src":"4745:7:134","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":79709,"mutability":"mutable","name":"proposalType","nameLocation":"4781:12:134","nodeType":"VariableDeclaration","scope":79735,"src":"4768:25:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":79708,"nodeType":"UserDefinedTypeName","pathNode":{"id":79707,"name":"ProposalType","nameLocations":["4768:12:134"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"4768:12:134"},"referencedDeclaration":65540,"src":"4768:12:134","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":79712,"mutability":"mutable","name":"pointSystem","nameLocation":"4815:11:134","nodeType":"VariableDeclaration","scope":79735,"src":"4803:23:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":79711,"nodeType":"UserDefinedTypeName","pathNode":{"id":79710,"name":"PointSystem","nameLocations":["4803:11:134"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"4803:11:134"},"referencedDeclaration":65545,"src":"4803:11:134","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":79715,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"4860:16:134","nodeType":"VariableDeclaration","scope":79735,"src":"4836:40:134","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":79714,"nodeType":"UserDefinedTypeName","pathNode":{"id":79713,"name":"ArbitrableConfig","nameLocations":["4836:16:134"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"4836:16:134"},"referencedDeclaration":65628,"src":"4836:16:134","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"4627:255:134"},"returnParameters":{"id":79719,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79718,"mutability":"mutable","name":"poolId","nameLocation":"4907:6:134","nodeType":"VariableDeclaration","scope":79735,"src":"4899:14:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79717,"name":"uint256","nodeType":"ElementaryTypeName","src":"4899:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4898:16:134"},"scope":79905,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":79749,"nodeType":"FunctionDefinition","src":"5192:114:134","nodes":[],"body":{"id":79748,"nodeType":"Block","src":"5264:42:134","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79746,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79742,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79737,"src":"5281:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":79745,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":79743,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5291:2:134","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":79744,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5297:2:134","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"5291:8:134","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"5281:18:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":79741,"id":79747,"nodeType":"Return","src":"5274:25:134"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_etherToFloat","nameLocation":"5201:13:134","parameters":{"id":79738,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79737,"mutability":"mutable","name":"_amount","nameLocation":"5223:7:134","nodeType":"VariableDeclaration","scope":79749,"src":"5215:15:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79736,"name":"uint256","nodeType":"ElementaryTypeName","src":"5215:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5214:17:134"},"returnParameters":{"id":79741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79740,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":79749,"src":"5255:7:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79739,"name":"uint256","nodeType":"ElementaryTypeName","src":"5255:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5254:9:134"},"scope":79905,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":79783,"nodeType":"FunctionDefinition","src":"5312:269:134","nodes":[],"body":{"id":79782,"nodeType":"Block","src":"5390:191:134","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79759,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79751,"src":"5408:2:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":79760,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79403,"src":"5414:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5408:13:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":79762,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5423:42:134","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":79758,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5400:7:134","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":79763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5400:66:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":79764,"nodeType":"ExpressionStatement","src":"5400:66:134"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79766,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79753,"src":"5484:2:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":79767,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79403,"src":"5489:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5484:12:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":79769,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5498:30:134","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":79765,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5476:7:134","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":79770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5476:53:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":79771,"nodeType":"ExpressionStatement","src":"5476:53:134"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79777,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79772,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79751,"src":"5548:2:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":79773,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79753,"src":"5553:2:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5548:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79775,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5547:9:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":79776,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79398,"src":"5559:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5547:19:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79778,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5546:21:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":79779,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5571:3:134","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"5546:28:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":79757,"id":79781,"nodeType":"Return","src":"5539:35:134"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"5321:4:134","parameters":{"id":79754,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79751,"mutability":"mutable","name":"_a","nameLocation":"5334:2:134","nodeType":"VariableDeclaration","scope":79783,"src":"5326:10:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79750,"name":"uint256","nodeType":"ElementaryTypeName","src":"5326:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":79753,"mutability":"mutable","name":"_b","nameLocation":"5346:2:134","nodeType":"VariableDeclaration","scope":79783,"src":"5338:10:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79752,"name":"uint256","nodeType":"ElementaryTypeName","src":"5338:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5325:24:134"},"returnParameters":{"id":79757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79756,"mutability":"mutable","name":"_result","nameLocation":"5381:7:134","nodeType":"VariableDeclaration","scope":79783,"src":"5373:15:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79755,"name":"uint256","nodeType":"ElementaryTypeName","src":"5373:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5372:17:134"},"scope":79905,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":79847,"nodeType":"FunctionDefinition","src":"5587:447:134","nodes":[],"body":{"id":79846,"nodeType":"Block","src":"5665:369:134","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79795,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79793,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79785,"src":"5683:2:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":79794,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79403,"src":"5688:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5683:12:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":79796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5697:30:134","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":79792,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5675:7:134","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":79797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5675:53:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":79798,"nodeType":"ExpressionStatement","src":"5675:53:134"},{"assignments":[79800],"declarations":[{"constant":false,"id":79800,"mutability":"mutable","name":"a","nameLocation":"5746:1:134","nodeType":"VariableDeclaration","scope":79846,"src":"5738:9:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79799,"name":"uint256","nodeType":"ElementaryTypeName","src":"5738:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":79802,"initialValue":{"id":79801,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79785,"src":"5750:2:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5738:14:134"},{"assignments":[79804],"declarations":[{"constant":false,"id":79804,"mutability":"mutable","name":"b","nameLocation":"5770:1:134","nodeType":"VariableDeclaration","scope":79846,"src":"5762:9:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79803,"name":"uint256","nodeType":"ElementaryTypeName","src":"5762:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":79806,"initialValue":{"id":79805,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79787,"src":"5774:2:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5762:14:134"},{"expression":{"id":79809,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79807,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79790,"src":"5786:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":79808,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79403,"src":"5796:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5786:17:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79810,"nodeType":"ExpressionStatement","src":"5786:17:134"},{"body":{"id":79844,"nodeType":"Block","src":"5827:201:134","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79818,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79814,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79804,"src":"5845:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":79815,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5849:1:134","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5845:5:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":79817,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5854:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5845:10:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":79842,"nodeType":"Block","src":"5935:83:134","statements":[{"expression":{"id":79836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79831,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79790,"src":"5953:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":79833,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79790,"src":"5968:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":79834,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79800,"src":"5977:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":79832,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79783,"src":"5963:4:134","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":79835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5963:16:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5953:26:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79837,"nodeType":"ExpressionStatement","src":"5953:26:134"},{"expression":{"id":79840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79838,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79804,"src":"5997:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":79839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6002:1:134","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5997:6:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79841,"nodeType":"ExpressionStatement","src":"5997:6:134"}]},"id":79843,"nodeType":"IfStatement","src":"5841:177:134","trueBody":{"id":79830,"nodeType":"Block","src":"5857:72:134","statements":[{"expression":{"id":79824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79819,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79800,"src":"5875:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":79821,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79800,"src":"5884:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":79822,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79800,"src":"5887:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":79820,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79783,"src":"5879:4:134","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":79823,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5879:10:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5875:14:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79825,"nodeType":"ExpressionStatement","src":"5875:14:134"},{"expression":{"id":79828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":79826,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79804,"src":"5907:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":79827,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5913:1:134","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5907:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":79829,"nodeType":"ExpressionStatement","src":"5907:7:134"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79811,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79804,"src":"5820:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":79812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5824:1:134","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5820:5:134","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":79845,"nodeType":"WhileStatement","src":"5813:215:134"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"5596:4:134","parameters":{"id":79788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79785,"mutability":"mutable","name":"_a","nameLocation":"5609:2:134","nodeType":"VariableDeclaration","scope":79847,"src":"5601:10:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79784,"name":"uint256","nodeType":"ElementaryTypeName","src":"5601:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":79787,"mutability":"mutable","name":"_b","nameLocation":"5621:2:134","nodeType":"VariableDeclaration","scope":79847,"src":"5613:10:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79786,"name":"uint256","nodeType":"ElementaryTypeName","src":"5613:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5600:24:134"},"returnParameters":{"id":79791,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79790,"mutability":"mutable","name":"_result","nameLocation":"5656:7:134","nodeType":"VariableDeclaration","scope":79847,"src":"5648:15:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79789,"name":"uint256","nodeType":"ElementaryTypeName","src":"5648:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5647:17:134"},"scope":79905,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":79904,"nodeType":"FunctionDefinition","src":"6040:380:134","nodes":[],"body":{"id":79903,"nodeType":"Block","src":"6203:217:134","nodes":[],"statements":[{"assignments":[79861],"declarations":[{"constant":false,"id":79861,"mutability":"mutable","name":"t","nameLocation":"6221:1:134","nodeType":"VariableDeclaration","scope":79903,"src":"6213:9:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79860,"name":"uint256","nodeType":"ElementaryTypeName","src":"6213:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":79863,"initialValue":{"id":79862,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79849,"src":"6225:11:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6213:23:134"},{"assignments":[79865],"declarations":[{"constant":false,"id":79865,"mutability":"mutable","name":"atTWO_128","nameLocation":"6254:9:134","nodeType":"VariableDeclaration","scope":79903,"src":"6246:17:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79864,"name":"uint256","nodeType":"ElementaryTypeName","src":"6246:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":79875,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79867,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79855,"src":"6272:5:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":79868,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6281:3:134","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6272:12:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79870,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6271:14:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":79871,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79408,"src":"6288:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6271:18:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":79873,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79861,"src":"6291:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":79866,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79847,"src":"6266:4:134","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":79874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6266:27:134","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6246:47:134"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79898,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79876,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79865,"src":"6313:9:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":79877,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79851,"src":"6325:9:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6313:21:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79879,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6312:23:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79880,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79853,"src":"6340:10:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":79881,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79408,"src":"6353:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:14:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79883,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79403,"src":"6358:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":79884,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79865,"src":"6368:9:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6358:19:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79886,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6357:21:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:38:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79888,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6339:40:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":79891,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":79889,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79408,"src":"6383:1:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":79890,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79855,"src":"6387:5:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6383:9:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79892,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6382:11:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6339:54:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79894,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6338:56:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6312:82:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79896,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6311:84:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":79897,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":79398,"src":"6398:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6311:94:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":79899,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6310:96:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":79900,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6410:3:134","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6310:103:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":79859,"id":79902,"nodeType":"Return","src":"6303:110:134"}]},"functionSelector":"e99ce911","implemented":true,"kind":"function","modifiers":[],"name":"_calculateConviction","nameLocation":"6049:20:134","parameters":{"id":79856,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79849,"mutability":"mutable","name":"_timePassed","nameLocation":"6078:11:134","nodeType":"VariableDeclaration","scope":79904,"src":"6070:19:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79848,"name":"uint256","nodeType":"ElementaryTypeName","src":"6070:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":79851,"mutability":"mutable","name":"_lastConv","nameLocation":"6099:9:134","nodeType":"VariableDeclaration","scope":79904,"src":"6091:17:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79850,"name":"uint256","nodeType":"ElementaryTypeName","src":"6091:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":79853,"mutability":"mutable","name":"_oldAmount","nameLocation":"6118:10:134","nodeType":"VariableDeclaration","scope":79904,"src":"6110:18:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79852,"name":"uint256","nodeType":"ElementaryTypeName","src":"6110:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":79855,"mutability":"mutable","name":"decay","nameLocation":"6138:5:134","nodeType":"VariableDeclaration","scope":79904,"src":"6130:13:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79854,"name":"uint256","nodeType":"ElementaryTypeName","src":"6130:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6069:75:134"},"returnParameters":{"id":79859,"nodeType":"ParameterList","parameters":[{"constant":false,"id":79858,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":79904,"src":"6190:7:134","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":79857,"name":"uint256","nodeType":"ElementaryTypeName","src":"6190:7:134","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6189:9:134"},"scope":79905,"stateMutability":"pure","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":79371,"name":"Native","nameLocations":["944:6:134"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"944:6:134"},"id":79372,"nodeType":"InheritanceSpecifier","src":"944:6:134"},{"baseName":{"id":79373,"name":"Accounts","nameLocations":["952:8:134"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"952:8:134"},"id":79374,"nodeType":"InheritanceSpecifier","src":"952:8:134"}],"canonicalName":"CVStrategyHelpers","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[79905,5026,12099,11306,3106],"name":"CVStrategyHelpers","nameLocation":"923:17:134","scope":79906,"usedErrors":[]}],"license":"AGPL-3.0-or-later"},"id":134} \ No newline at end of file +{"abi":[{"type":"function","name":"DECIMALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PERCENTAGE_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"_calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getParams","inputs":[{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"stateMutability":"pure"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"metadata","inputs":[],"outputs":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"poolProfile_id1","inputs":[{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"pool_admin","type":"address","internalType":"address"},{"name":"pool_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x60016080908152610120604052602e60c081815260a09162001d4160e0399052805160099081556020820151600a906200003a9082620000f6565b5050503480156200004a57600080fd5b50620001c2565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007c57607f821691505b6020821081036200009d57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f157600081815260208120601f850160051c81016020861015620000cc5750805b601f850160051c820191505b81811015620000ed57828155600101620000d8565b5050505b505050565b81516001600160401b0381111562000112576200011262000051565b6200012a8162000123845462000067565b84620000a3565b602080601f831160018114620001625760008415620001495750858301515b600019600386901b1c1916600185901b178555620000ed565b600085815260208120601f198616915b82811015620001935788860151825594840194600190910190840162000172565b5085821015620001b25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611b6f80620001d26000396000f3fe608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea2646970667358221220b7549f59d28ae8e47deced734799a7fc1ffa231b8c551216ad7ec26f525084c364736f6c63430008130033516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","sourceMap":"1014:1:125:-:0;914:5508;994:82;;;;914:5508;994:82;;;;;;;;;;;;;967:109;;;;;;;;;;;;;;;;:::i;:::-;;;;914:5508;;;;;;;;;;;;14:127:131;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:380;225:1;221:12;;;;268;;;289:61;;343:4;335:6;331:17;321:27;;289:61;396:2;388:6;385:14;365:18;362:38;359:161;;442:10;437:3;433:20;430:1;423:31;477:4;474:1;467:15;505:4;502:1;495:15;359:161;;146:380;;;:::o;657:545::-;759:2;754:3;751:11;748:448;;;795:1;820:5;816:2;809:17;865:4;861:2;851:19;935:2;923:10;919:19;916:1;912:27;906:4;902:38;971:4;959:10;956:20;953:47;;;-1:-1:-1;994:4:131;953:47;1049:2;1044:3;1040:12;1037:1;1033:20;1027:4;1023:31;1013:41;;1104:82;1122:2;1115:5;1112:13;1104:82;;;1167:17;;;1148:1;1137:13;1104:82;;;1108:3;;;748:448;657:545;;;:::o;1378:1352::-;1498:10;;-1:-1:-1;;;;;1520:30:131;;1517:56;;;1553:18;;:::i;:::-;1582:97;1672:6;1632:38;1664:4;1658:11;1632:38;:::i;:::-;1626:4;1582:97;:::i;:::-;1734:4;;1798:2;1787:14;;1815:1;1810:663;;;;2517:1;2534:6;2531:89;;;-1:-1:-1;2586:19:131;;;2580:26;2531:89;-1:-1:-1;;1335:1:131;1331:11;;;1327:24;1323:29;1313:40;1359:1;1355:11;;;1310:57;2633:81;;1780:944;;1810:663;604:1;597:14;;;641:4;628:18;;-1:-1:-1;;1846:20:131;;;1964:236;1978:7;1975:1;1972:14;1964:236;;;2067:19;;;2061:26;2046:42;;2159:27;;;;2127:1;2115:14;;;;1994:19;;1964:236;;;1968:3;2228:6;2219:7;2216:19;2213:201;;;2289:19;;;2283:26;-1:-1:-1;;2372:1:131;2368:14;;;2384:3;2364:24;2360:37;2356:42;2341:58;2326:74;;2213:201;-1:-1:-1;;;;;2460:1:131;2444:14;;;2440:22;2427:36;;-1:-1:-1;1378:1352:131:o;:::-;914:5508:125;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea2646970667358221220b7549f59d28ae8e47deced734799a7fc1ffa231b8c551216ad7ec26f525084c364736f6c63430008130033","sourceMap":"914:5508:125:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;287:32:131;;;269:51;;257:2;242:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;3126:109;;;:::i;2554:113::-;;;:::i;1105:43:125:-;;1140:8;1105:43;;;;;477:25:131;;;465:2;450:18;1105:43:125;331:177:131;1503:437:125;;;;;;:::i;:::-;;:::i;967:109::-;;;:::i;:::-;;;;;;;;:::i;1154:50::-;;1197:7;1154:50;;1331:118:15;;;:::i;:::-;;;;;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;1876:107::-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;2673:113::-;;;:::i;439:101::-;;;:::i;4608:578:125:-;;;;;;:::i;:::-;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;4412:75:9:-;;4445:42;4412:75;;3604:241:15;;;:::i;3938:101::-;;;:::i;1946:1182:125:-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1644:113:15:-;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;3134:1468:125:-;;;;;;:::i;:::-;;:::i;6040:380::-;;;;;;:::i;:::-;;:::i;3241:119:15:-;;;:::i;1763:107::-;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;1503:437:125:-;1675:16;;1648:7;;1671:230;;1801:48;;;;;;;;1821:1;1801:48;;;;;;;;;;;;-1:-1:-1;;;1801:48:125;;;;;;;;;;;1740:150;;-1:-1:-1;;;1740:150:125;;-1:-1:-1;;;;;1740:22:125;;;;;:150;;1780:1;;1851:10;;1863:13;;1740:150;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1721:16;:169;1671:230;-1:-1:-1;1917:16:125;;1503:437;;;;;:::o;967:109::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;1876:107::-;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;4608:578:125:-;4899:14;4932:247;4956:4;4974:8;4996:17;5027:8;5049:5;5068:12;5094:11;5119:20;;;;;;;;5137:1;5119:20;;;5153:16;4932:10;:247::i;:::-;4925:254;4608:578;-1:-1:-1;;;;;;;;;4608:578:125:o;1537:101:15:-;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3604:241::-;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;1946:1182:125:-;2191:44;;:::i;:::-;2322:30;2336:15;2322:13;:30::i;:::-;2298:15;;:21;;:54;2406:24;2420:9;2406:13;:24::i;:::-;2379:15;;:51;2484:26;2498:11;2484:13;:26::i;:::-;2459:15;;:22;;;;:51;;;;2541:15;;2578:9;2541:34;;;;:46;-1:-1:-1;;;;;2604:44:125;;:24;;;:44;2658:19;;2680:12;2658:34;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2702:18:125;;;2723:11;2702:32;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2749:21:125;;;:26;2745:182;;2902:14;1140:8;2902:3;:14;:::i;:::-;2878:38;;2745:182;2936:18;;;:32;;;2978:23;;;:42;;;3056:16;;;3070:1;3056:16;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3030:23:125;;;:42;;;3082:26;;3119:1;;3030:42;3119:1;;3082:26;;;;:::i;:::-;;;;;;:39;-1:-1:-1;;;;;3082:39:125;;;-1:-1:-1;;;;;3082:39:125;;;;;1946:1182;;;;;;;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;3134:1468:125:-;3471:14;3548:44;3607:86;3617:17;3636:12;3650:11;3663;3676:16;3607:9;:86::i;:::-;3738:16;;;3752:1;3738:16;;;;;;;;3548:145;;-1:-1:-1;3704:31:125;;3738:16;;;;;;;;;;;;-1:-1:-1;3738:16:125;3704:50;;3792:4;3764:14;3779:1;3764:17;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;3764:33:125;;;-1:-1:-1;;;;;3764:33:125;;;;;3835:10;3807:14;3822:1;3807:17;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3807:39:125;;;:17;;;;;;;;;:39;4445:42:9;;4133:19:125;;;4129:64;;-1:-1:-1;4177:5:125;4129:64;4211:4;-1:-1:-1;;;;;4211:33:125;;4299:55;4315:8;4325:12;:10;:12::i;:::-;4339:14;4299:15;:55::i;:::-;4376:8;4410:6;4399:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;4431:6;4451:1;4466:8;4488:14;4211:301;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4202:310;;4582:12;4530:64;;;;;;;;:::i;:::-;4553:8;-1:-1:-1;;;;;4530:46:125;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:64;;;;;;;;:::i;:::-;;4523:72;;;;:::i;:::-;3487:1115;;;3134:1468;;;;;;;;;;;:::o;6040:380::-;6190:7;6225:11;6190:7;6266:27;6271:18;1381:7;6281:3;6272:12;;;6271:18;:::i;:::-;6291:1;6266:4;:27::i;:::-;6246:47;-1:-1:-1;6410:3:125;-1:-1:-1;;;6383:9:125;6387:5;1381:7;6383:9;:::i;:::-;6358:19;6368:9;-1:-1:-1;;;6358:19:125;:::i;:::-;6340:14;1381:7;6340:10;:14;:::i;:::-;:38;;;;:::i;:::-;6339:54;;;;:::i;:::-;6313:21;6325:9;6313;:21;:::i;:::-;6312:82;;;;:::i;:::-;6311:94;;;;:::i;:::-;6310:103;;;6040:380;-1:-1:-1;;;;;;;6040:380:125:o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;5192:114:125:-;5255:7;5281:18;5291:8;5281:7;:18;:::i;:::-;5274:25;5192:114;-1:-1:-1;;5192:114:125:o;5587:447::-;5648:15;-1:-1:-1;;;5683:2:125;:12;5675:53;;;;-1:-1:-1;;;5675:53:125;;18530:2:131;5675:53:125;;;18512:21:131;18569:2;18549:18;;;18542:30;-1:-1:-1;;;18588:18:131;;;18581:58;18656:18;;5675:53:125;;;;;;;;;-1:-1:-1;;;;5750:2:125;5774;5813:215;5820:5;;5813:215;;5845:1;5849;5845:5;5854:1;5845:10;5841:177;;5879:10;5884:1;5887;5879:4;:10::i;:::-;5875:14;-1:-1:-1;5913:1:125;5907:7;5813:215;;5841:177;5963:16;5968:7;5977:1;5963:4;:16::i;:::-;5953:26;-1:-1:-1;5997:6:125;6002:1;5997:6;;:::i;:::-;;;5813:215;;;5665:369;;5587:447;;;;:::o;20158:242:23:-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;477:25:131;;;20293:33:23;-1:-1:-1;20344:7:23;;;;450:18:131;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;5312:269:125:-;5373:15;-1:-1:-1;;;5408:2:125;:13;;5400:66;;;;-1:-1:-1;;;5400:66:125;;19770:2:131;5400:66:125;;;19752:21:131;19809:2;19789:18;;;19782:30;19848:34;19828:18;;;19821:62;-1:-1:-1;;;19899:18:131;;;19892:38;19947:19;;5400:66:125;19568:404:131;5400:66:125;-1:-1:-1;;;5484:2:125;:12;5476:53;;;;-1:-1:-1;;;5476:53:125;;20179:2:131;5476:53:125;;;20161:21:131;20218:2;20198:18;;;20191:30;-1:-1:-1;;;20237:18:131;;;20230:58;20305:18;;5476:53:125;19977:352:131;5476:53:125;5571:3;-1:-1:-1;;;5548:7:125;5553:2;5548;:7;:::i;:::-;5547:19;;;;:::i;:::-;5546:28;;;5312:269;-1:-1:-1;;;5312:269:125:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:104:131:-;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;513:142::-;-1:-1:-1;;;;;599:31:131;;589:42;;579:70;;645:1;642;635:12;579:70;513:142;:::o;660:127::-;721:10;716:3;712:20;709:1;702:31;752:4;749:1;742:15;776:4;773:1;766:15;792:275;863:2;857:9;928:2;909:13;;-1:-1:-1;;905:27:131;893:40;;-1:-1:-1;;;;;948:34:131;;984:22;;;945:62;942:88;;;1010:18;;:::i;:::-;1046:2;1039:22;792:275;;-1:-1:-1;792:275:131:o;1072:1354::-;1192:6;1200;1208;1261:2;1249:9;1240:7;1236:23;1232:32;1229:52;;;1277:1;1274;1267:12;1229:52;1316:9;1303:23;1335:42;1371:5;1335:42;:::i;:::-;1396:5;-1:-1:-1;1420:2:131;1459:18;;;1446:32;1487:44;1446:32;1487:44;:::i;:::-;1550:7;-1:-1:-1;1608:2:131;1593:18;;1580:32;-1:-1:-1;;;;;1661:14:131;;;1658:34;;;1688:1;1685;1678:12;1658:34;1726:6;1715:9;1711:22;1701:32;;1771:7;1764:4;1760:2;1756:13;1752:27;1742:55;;1793:1;1790;1783:12;1742:55;1829:2;1816:16;1851:2;1847;1844:10;1841:36;;;1857:18;;:::i;:::-;1903:2;1900:1;1896:10;1886:20;;1926:28;1950:2;1946;1942:11;1926:28;:::i;:::-;1988:15;;;2058:11;;;2054:20;;;2019:12;;;;2086:19;;;2083:39;;;2118:1;2115;2108:12;2083:39;2142:11;;;;2162:234;2178:6;2173:3;2170:15;2162:234;;;2260:3;2247:17;2232:32;;2277:44;2313:7;2277:44;:::i;:::-;2334:20;;;2195:12;;;;2374;;;;2162:234;;;2415:5;2405:15;;;;;;;;1072:1354;;;;;:::o;2768:250::-;2853:1;2863:113;2877:6;2874:1;2871:13;2863:113;;;2953:11;;;2947:18;2934:11;;;2927:39;2899:2;2892:10;2863:113;;;-1:-1:-1;;3010:1:131;2992:16;;2985:27;2768:250::o;3023:271::-;3065:3;3103:5;3097:12;3130:6;3125:3;3118:19;3146:76;3215:6;3208:4;3203:3;3199:14;3192:4;3185:5;3181:16;3146:76;:::i;:::-;3276:2;3255:15;-1:-1:-1;;3251:29:131;3242:39;;;;3283:4;3238:50;;3023:271;-1:-1:-1;;3023:271:131:o;3299:291::-;3476:6;3465:9;3458:25;3519:2;3514;3503:9;3499:18;3492:30;3439:4;3539:45;3580:2;3569:9;3565:18;3557:6;3539:45;:::i;:::-;3531:53;3299:291;-1:-1:-1;;;;3299:291:131:o;3595:461::-;3648:3;3686:5;3680:12;3713:6;3708:3;3701:19;3739:4;3768:2;3763:3;3759:12;3752:19;;3805:2;3798:5;3794:14;3826:1;3836:195;3850:6;3847:1;3844:13;3836:195;;;3915:13;;-1:-1:-1;;;;;3911:39:131;3899:52;;3971:12;;;;4006:15;;;;3947:1;3865:9;3836:195;;;-1:-1:-1;4047:3:131;;3595:461;-1:-1:-1;;;;;3595:461:131:o;4061:261::-;4240:2;4229:9;4222:21;4203:4;4260:56;4312:2;4301:9;4297:18;4289:6;4260:56;:::i;:::-;4252:64;4061:261;-1:-1:-1;;;4061:261:131:o;4327:111::-;4412:1;4405:5;4402:12;4392:40;;4428:1;4425;4418:12;4443:152;4520:20;;4569:1;4559:12;;4549:40;;4585:1;4582;4575:12;4549:40;4443:152;;;:::o;4600:917::-;4663:5;4711:4;4699:9;4694:3;4690:19;4686:30;4683:50;;;4729:1;4726;4719:12;4683:50;4762:2;4756:9;4804:4;4792:17;;-1:-1:-1;;;;;4824:34:131;;4860:22;;;4821:62;4818:88;;;4886:18;;:::i;:::-;4922:2;4915:22;4955:6;-1:-1:-1;4955:6:131;4985:23;;5017:44;4985:23;5017:44;:::i;:::-;5070:23;;5145:2;5130:18;;5117:32;5158:44;5117:32;5158:44;:::i;:::-;5235:7;5230:2;5222:6;5218:15;5211:32;;5304:2;5293:9;5289:18;5276:32;5271:2;5263:6;5259:15;5252:57;5370:2;5359:9;5355:18;5342:32;5337:2;5329:6;5325:15;5318:57;5437:3;5426:9;5422:19;5409:33;5403:3;5395:6;5391:16;5384:59;5505:3;5494:9;5490:19;5477:33;5471:3;5463:6;5459:16;5452:59;;4600:917;;;;:::o;5522:1305::-;5745:6;5753;5761;5769;5777;5785;5793;5801;5854:3;5842:9;5833:7;5829:23;5825:33;5822:53;;;5871:1;5868;5861:12;5822:53;5910:9;5897:23;5929:42;5965:5;5929:42;:::i;:::-;5990:5;-1:-1:-1;6047:2:131;6032:18;;6019:32;6060:44;6019:32;6060:44;:::i;:::-;6123:7;-1:-1:-1;6182:2:131;6167:18;;6154:32;6195:44;6154:32;6195:44;:::i;:::-;6258:7;-1:-1:-1;6317:2:131;6302:18;;6289:32;6330:44;6289:32;6330:44;:::i;:::-;6393:7;-1:-1:-1;6452:3:131;6437:19;;6424:33;6466:44;6424:33;6466:44;:::i;:::-;6529:7;-1:-1:-1;6588:3:131;6573:19;;6560:33;6602:43;6560:33;6602:43;:::i;:::-;6664:7;-1:-1:-1;6690:48:131;6733:3;6718:19;;6690:48;:::i;:::-;6680:58;;6757:64;6813:7;6807:3;6796:9;6792:19;6757:64;:::i;:::-;6747:74;;5522:1305;;;;;;;;;;;:::o;6832:416::-;6896:5;6944:4;6932:9;6927:3;6923:19;6919:30;6916:50;;;6962:1;6959;6952:12;6916:50;6995:2;6989:9;7037:4;7025:17;;-1:-1:-1;;;;;7057:34:131;;7093:22;;;7054:62;7051:88;;;7119:18;;:::i;:::-;7155:2;7148:22;7218:23;;7203:39;;-1:-1:-1;7188:6:131;6832:416;-1:-1:-1;6832:416:131:o;7253:799::-;7454:6;7462;7470;7478;7486;7539:3;7527:9;7518:7;7514:23;7510:33;7507:53;;;7556:1;7553;7546:12;7507:53;7595:9;7582:23;7614:42;7650:5;7614:42;:::i;:::-;7675:5;-1:-1:-1;7732:2:131;7717:18;;7704:32;7745:43;7704:32;7745:43;:::i;:::-;7807:7;-1:-1:-1;7833:47:131;7876:2;7861:18;;7833:47;:::i;:::-;7823:57;;7899:64;7955:7;7950:2;7939:9;7935:18;7899:64;:::i;:::-;7889:74;;7982:64;8038:7;8032:3;8021:9;8017:19;7982:64;:::i;:::-;7972:74;;7253:799;;;;;;;;:::o;8057:127::-;8118:10;8113:3;8109:20;8106:1;8099:31;8149:4;8146:1;8139:15;8173:4;8170:1;8163:15;8189:143;8273:1;8266:5;8263:12;8253:46;;8279:18;;:::i;:::-;8308;;8189:143::o;8337:142::-;8420:1;8413:5;8410:12;8400:46;;8426:18;;:::i;9498:1444::-;9725:2;9714:9;9707:21;9688:4;9753:6;9747:13;9802:2;9796:9;9791:2;9780:9;9776:18;9769:37;9856:2;9852;9848:11;9842:18;9837:2;9826:9;9822:18;9815:46;9911:2;9907;9903:11;9897:18;9892:2;9881:9;9877:18;9870:46;9967:2;9963;9959:11;9953:18;9947:3;9936:9;9932:19;9925:47;;10019:2;10011:6;10007:15;10001:22;10032:63;10090:3;10079:9;10075:19;10061:12;10032:63;:::i;:::-;;10144:2;10136:6;10132:15;10126:22;10157:64;10216:3;10205:9;10201:19;10185:14;10157:64;:::i;:::-;-1:-1:-1;10270:2:131;10258:15;;;10252:22;8559:12;10350:3;10335:19;;8547:25;10404:3;10392:16;;;10386:23;8703:12;;-1:-1:-1;;;;;8699:21:131;;;10484:3;10469:19;;8687:34;8774:4;8763:16;;8757:23;8753:32;8737:14;;;8730:56;8835:4;8824:16;;8818:23;8802:14;;;8795:47;8880:16;;;8874:23;8858:14;;;8851:47;8936:16;;8930:23;8914:14;;;8907:47;8667:3;8992:16;;;8986:23;8970:14;;;8963:47;10526:16;;10520:23;10552:55;10602:3;10587:19;;10520:23;10552:55;:::i;:::-;;10656:3;10648:6;10644:16;10638:23;10670:55;10720:3;10709:9;10705:19;10689:14;10670:55;:::i;:::-;-1:-1:-1;10774:3:131;10762:16;;10756:23;10798:6;10820:18;;;10813:30;10860:76;10931:3;10916:19;;10756:23;10860:76;:::i;11171:1442::-;11439:6;11447;11455;11463;11471;11479;11487;11495;11503;11556:3;11544:9;11535:7;11531:23;11527:33;11524:53;;;11573:1;11570;11563:12;11524:53;11612:9;11599:23;11631:42;11667:5;11631:42;:::i;:::-;11692:5;-1:-1:-1;11749:2:131;11734:18;;11721:32;11762:44;11721:32;11762:44;:::i;:::-;11825:7;-1:-1:-1;11884:2:131;11869:18;;11856:32;11897:44;11856:32;11897:44;:::i;:::-;11960:7;-1:-1:-1;12019:2:131;12004:18;;11991:32;12032:44;11991:32;12032:44;:::i;:::-;12095:7;-1:-1:-1;12154:3:131;12139:19;;12126:33;12168:44;12126:33;12168:44;:::i;:::-;12231:7;-1:-1:-1;12290:3:131;12275:19;;12262:33;12304:43;12262:33;12304:43;:::i;:::-;12366:7;-1:-1:-1;12392:48:131;12435:3;12420:19;;12392:48;:::i;:::-;12382:58;;12459:65;12516:7;12510:3;12499:9;12495:19;12459:65;:::i;:::-;12449:75;;12543:64;12599:7;12593:3;12582:9;12578:19;12543:64;:::i;:::-;12533:74;;11171:1442;;;;;;;;;;;:::o;12618:385::-;12704:6;12712;12720;12728;12781:3;12769:9;12760:7;12756:23;12752:33;12749:53;;;12798:1;12795;12788:12;12749:53;-1:-1:-1;;12821:23:131;;;12891:2;12876:18;;12863:32;;-1:-1:-1;12942:2:131;12927:18;;12914:32;;12993:2;12978:18;12965:32;;-1:-1:-1;12618:385:131;-1:-1:-1;12618:385:131:o;13008:1009::-;13432:6;13421:9;13414:25;13475:3;13470:2;13459:9;13455:18;13448:31;13516:2;13510:3;13499:9;13495:19;13488:31;-1:-1:-1;;;13550:3:131;13539:9;13535:19;13528:45;13609:3;13604:2;13593:9;13589:18;13582:31;13656:6;13650:13;13644:3;13633:9;13629:19;13622:42;13395:4;13711:2;13703:6;13699:15;13693:22;13752:2;13746:3;13735:9;13731:19;13724:31;13775:52;13822:3;13811:9;13807:19;13793:12;13775:52;:::i;:::-;-1:-1:-1;;;;;13863:32:131;;13858:2;13843:18;;13836:60;13933:19;;;13927:3;13912:19;;13905:48;13764:63;-1:-1:-1;13970:41:131;13764:63;13999:6;13970:41;:::i;:::-;13962:49;13008:1009;-1:-1:-1;;;;;;;13008:1009:131:o;14022:184::-;14092:6;14145:2;14133:9;14124:7;14120:23;14116:32;14113:52;;;14161:1;14158;14151:12;14113:52;-1:-1:-1;14184:16:131;;14022:184;-1:-1:-1;14022:184:131:o;14211:380::-;14290:1;14286:12;;;;14333;;;14354:61;;14408:4;14400:6;14396:17;14386:27;;14354:61;14461:2;14453:6;14450:14;14430:18;14427:38;14424:161;;14507:10;14502:3;14498:20;14495:1;14488:31;14542:4;14539:1;14532:15;14570:4;14567:1;14560:15;14424:161;;14211:380;;;:::o;14596:127::-;14657:10;14652:3;14648:20;14645:1;14638:31;14688:4;14685:1;14678:15;14712:4;14709:1;14702:15;14728:127;14789:10;14784:3;14780:20;14777:1;14770:31;14820:4;14817:1;14810:15;14844:4;14841:1;14834:15;14860:168;14933:9;;;14964;;14981:15;;;14975:22;;14961:37;14951:71;;15002:18;;:::i;15159:2074::-;15581:6;15570:9;15563:25;15544:4;15607:2;15645:1;15641;15636:3;15632:11;15628:19;15695:2;15687:6;15683:15;15678:2;15667:9;15663:18;15656:43;15735:3;15730:2;15719:9;15715:18;15708:31;15762:46;15803:3;15792:9;15788:19;15780:6;15762:46;:::i;:::-;15856:2;15848:6;15844:15;15839:2;15828:9;15824:18;15817:43;15897:6;15891:3;15880:9;15876:19;15869:35;15953:9;15945:6;15941:22;15935:3;15924:9;15920:19;15913:51;15994:6;15988:13;15980:6;15973:29;16021:4;16011:14;;16066:2;16058:6;16054:15;16102:2;16097;16089:6;16085:15;16078:27;16125:1;16158:12;16152:19;16194:3;16224:9;16220:2;16216:18;16206:28;;16284:2;16273:9;16269:18;16306;16296:61;;16350:4;16342:6;16338:17;16328:27;;16296:61;16403:2;16395:6;16392:14;16372:18;16369:38;16366:165;;-1:-1:-1;;;16430:33:131;;16486:4;16483:1;16476:15;16516:4;16437:3;16504:17;16366:165;16599:2;16587:15;;2700:19;;;2743:14;;;16540:71;-1:-1:-1;16627:18:131;16654:128;;;;16796:1;16791:321;;;;16620:492;;16654:128;-1:-1:-1;;16687:24:131;;16675:37;;16755:14;;16748:22;16745:1;16741:30;16732:40;;;-1:-1:-1;16654:128:131;;16791:321;15106:1;15099:14;;;15143:4;15130:18;;16892:1;16906:165;16920:6;16917:1;16914:13;16906:165;;;16998:14;;16985:11;;;16978:35;17041:16;;;;16935:10;;16906:165;;;17091:11;;;-1:-1:-1;;16620:492:131;;;;;17158:9;17153:3;17149:19;17143:3;17132:9;17128:19;17121:48;17186:41;17223:3;17215:6;17186:41;:::i;:::-;17178:49;15159:2074;-1:-1:-1;;;;;;;;;;;;;;15159:2074:131:o;17427:279::-;17515:6;17568:2;17556:9;17547:7;17543:23;17539:32;17536:52;;;17584:1;17581;17574:12;17536:52;17616:9;17610:16;17635:41;17670:5;17635:41;:::i;17711:127::-;17772:10;17767:3;17763:20;17760:1;17753:31;17803:4;17800:1;17793:15;17827:4;17824:1;17817:15;17843:217;17883:1;17909;17899:132;;17953:10;17948:3;17944:20;17941:1;17934:31;17988:4;17985:1;17978:15;18016:4;18013:1;18006:15;17899:132;-1:-1:-1;18045:9:131;;17843:217::o;18065:128::-;18132:9;;;18153:11;;;18150:37;;;18167:18;;:::i;18198:125::-;18263:9;;;18284:10;;;18281:36;;;18297:18;;:::i;18685:289::-;18816:3;18854:6;18848:13;18870:66;18929:6;18924:3;18917:4;18909:6;18905:17;18870:66;:::i;:::-;18952:16;;;;;18685:289;-1:-1:-1;;18685:289:131:o;18979:262::-;19049:6;19102:2;19090:9;19081:7;19077:23;19073:32;19070:52;;;19118:1;19115;19108:12;19070:52;19150:9;19144:16;19169:42;19205:5;19169:42;:::i;19246:317::-;-1:-1:-1;;;;;19423:32:131;;19405:51;;19492:2;19487;19472:18;;19465:30;;;-1:-1:-1;;19512:45:131;;19538:18;;19530:6;19512:45;:::i","linkReferences":{}},"methodIdentifiers":{"DECIMALS()":"2e0f2625","NATIVE()":"a0cf0aea","PERCENTAGE_SCALE()":"3f26479e","_calculateConviction(uint256,uint256,uint256,uint256)":"e99ce911","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","createPool(address,address,address,address,address,uint8,uint8,(address,address,uint256,uint256,uint256,uint256))":"85294f18","createPool(address,address,address,address,address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"e070e0ab","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"c36e336b","local()":"0f166ad4","metadata()":"392f37e9","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","poolProfile_id1(address,address,address[])":"37d1c404","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry_owner()":"dac4eb16"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"DECIMALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PERCENTAGE_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"}],\"name\":\"_calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"getParams\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"params\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"metadata\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"pool_admin\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"pool_managers\",\"type\":\"address[]\"}],\"name\":\"poolProfile_id1\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/test/CVStrategyHelpers.sol\":\"CVStrategyHelpers\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Allo.sol\":{\"keccak256\":\"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c\",\"dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd\"]},\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/auth/Ownable.sol\":{\"keccak256\":\"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30\",\"dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol\":{\"keccak256\":\"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f\",\"dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]},\"pkg/contracts/test/CVStrategyHelpers.sol\":{\"keccak256\":\"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e\",\"dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PERCENTAGE_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"}],"stateMutability":"pure","type":"function","name":"_calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"pure","type":"function","name":"getParams","outputs":[{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"metadata","outputs":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"pool_admin","type":"address"},{"internalType":"address[]","name":"pool_managers","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"poolProfile_id1","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/test/CVStrategyHelpers.sol":"CVStrategyHelpers"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Allo.sol":{"keccak256":"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a","urls":["bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c","dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/auth/Ownable.sol":{"keccak256":"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b","urls":["bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30","dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol":{"keccak256":"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f","urls":["bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f","dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"},"pkg/contracts/test/CVStrategyHelpers.sol":{"keccak256":"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d","urls":["bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e","dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw"],"license":"AGPL-3.0-or-later"}},"version":1},"storageLayout":{"storage":[{"astId":9278,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"gasMeteringOff","offset":0,"slot":"0","type":"t_bool"},{"astId":11315,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"stdstore","offset":0,"slot":"1","type":"t_struct(StdStorage)13196_storage"},{"astId":75295,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"metadata","offset":0,"slot":"9","type":"t_struct(Metadata)3098_storage"},{"astId":75307,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_poolProfileId1_","offset":0,"slot":"11","type":"t_bytes32"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/test/CVStrategyHelpers.sol","id":75820,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[65628],"CVStrategyHelpers":[75819],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"IRegistry":[2802],"Metadata":[3098],"Native":[3106],"PointSystem":[65545],"PointSystemConfig":[65614],"ProposalType":[65540],"console":[29510]},"nodeType":"SourceUnit","src":"46:6377:125","nodes":[{"id":75263,"nodeType":"PragmaDirective","src":"46:24:125","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":75264,"nodeType":"ImportDirective","src":"72:31:125","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":29511,"symbolAliases":[],"unitAlias":""},{"id":75266,"nodeType":"ImportDirective","src":"104:53:125","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","file":"allo-v2-contracts/core/Allo.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":1391,"symbolAliases":[{"foreign":{"id":75265,"name":"Allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1390,"src":"112:4:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75275,"nodeType":"ImportDirective","src":"376:230:125","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"../src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":75267,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"389:14:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75268,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"409:14:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75269,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"429:12:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75270,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"447:11:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75271,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"464:14:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75272,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"484:17:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75273,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"507:16:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75274,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"529:30:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75277,"nodeType":"ImportDirective","src":"607:84:125","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":75276,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"615:30:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75279,"nodeType":"ImportDirective","src":"692:67:125","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"allo-v2-contracts/core/libraries/Native.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":3107,"symbolAliases":[{"foreign":{"id":75278,"name":"Native","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3106,"src":"700:6:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75282,"nodeType":"ImportDirective","src":"760:84:125","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":75280,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"768:9:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75281,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"779:8:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75284,"nodeType":"ImportDirective","src":"846:66:125","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"allo-v2-test/foundry/shared/Accounts.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":75283,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"854:8:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75819,"nodeType":"ContractDefinition","src":"914:5508:125","nodes":[{"id":75295,"nodeType":"VariableDeclaration","src":"967:109:125","nodes":[],"constant":false,"functionSelector":"392f37e9","mutability":"mutable","name":"metadata","nameLocation":"983:8:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata"},"typeName":{"id":75290,"nodeType":"UserDefinedTypeName","pathNode":{"id":75289,"name":"Metadata","nameLocations":["967:8:125"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"967:8:125"},"referencedDeclaration":3098,"src":"967:8:125","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"value":{"arguments":[{"hexValue":"31","id":75292,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1014:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","id":75293,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1026:48:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""},"value":"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""}],"id":75291,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"994:8:125","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":75294,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1004:8:125","1017:7:125"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"994:82:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"visibility":"public"},{"id":75300,"nodeType":"VariableDeclaration","src":"1105:43:125","nodes":[],"constant":true,"functionSelector":"2e0f2625","mutability":"constant","name":"DECIMALS","nameLocation":"1129:8:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75296,"name":"uint256","nodeType":"ElementaryTypeName","src":"1105:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"id":75299,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1140:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3138","id":75298,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1146:2:125","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"1140:8:125","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"}},"visibility":"public"},{"id":75305,"nodeType":"VariableDeclaration","src":"1154:50:125","nodes":[],"constant":true,"functionSelector":"3f26479e","mutability":"constant","name":"PERCENTAGE_SCALE","nameLocation":"1178:16:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75301,"name":"uint256","nodeType":"ElementaryTypeName","src":"1154:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":75304,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75302,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1197:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":75303,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1203:1:125","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"1197:7:125","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":75307,"nodeType":"VariableDeclaration","src":"1211:33:125","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId1_","nameLocation":"1228:16:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":75306,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1211:7:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":75312,"nodeType":"VariableDeclaration","src":"1251:44:125","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"1277:7:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75308,"name":"uint256","nodeType":"ElementaryTypeName","src":"1251:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"id":75311,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":75309,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1287:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313237","id":75310,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1292:3:125","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"127"},"src":"1287:8:125","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"}},"visibility":"internal"},{"id":75317,"nodeType":"VariableDeclaration","src":"1301:44:125","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"1327:7:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75313,"name":"uint256","nodeType":"ElementaryTypeName","src":"1301:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"id":75316,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":75314,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1337:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313238","id":75315,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1342:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"1337:8:125","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"}},"visibility":"internal"},{"id":75322,"nodeType":"VariableDeclaration","src":"1351:37:125","nodes":[],"constant":true,"mutability":"constant","name":"D","nameLocation":"1377:1:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75318,"name":"uint256","nodeType":"ElementaryTypeName","src":"1351:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":75321,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75319,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1381:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":75320,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1387:1:125","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"1381:7:125","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"visibility":"internal"},{"id":75360,"nodeType":"FunctionDefinition","src":"1503:437:125","nodes":[],"body":{"id":75359,"nodeType":"Block","src":"1661:279:125","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":75340,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75335,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75307,"src":"1675:16:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":75338,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1703:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75337,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1695:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":75336,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1695:7:125","typeDescriptions":{}}},"id":75339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1695:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1675:30:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75356,"nodeType":"IfStatement","src":"1671:230:125","trueBody":{"id":75355,"nodeType":"Block","src":"1707:194:125","statements":[{"expression":{"id":75353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75341,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75307,"src":"1721:16:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"32","id":75344,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1780:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"506f6f6c2050726f66696c652031","id":75345,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1783:16:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":75347,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1821:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":75348,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1833:14:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":75346,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1801:8:125","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":75349,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1811:8:125","1824:7:125"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1801:48:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":75350,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75327,"src":"1851:10:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75351,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75330,"src":"1863:13:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":75342,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75325,"src":"1740:8:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":75343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1749:13:125","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"1740:22:125","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":75352,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1740:150:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1721:169:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":75354,"nodeType":"ExpressionStatement","src":"1721:169:125"}]}},{"expression":{"id":75357,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75307,"src":"1917:16:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":75334,"id":75358,"nodeType":"Return","src":"1910:23:125"}]},"functionSelector":"37d1c404","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id1","nameLocation":"1512:15:125","parameters":{"id":75331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75325,"mutability":"mutable","name":"registry","nameLocation":"1538:8:125","nodeType":"VariableDeclaration","scope":75360,"src":"1528:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75324,"nodeType":"UserDefinedTypeName","pathNode":{"id":75323,"name":"IRegistry","nameLocations":["1528:9:125"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"1528:9:125"},"referencedDeclaration":2802,"src":"1528:9:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75327,"mutability":"mutable","name":"pool_admin","nameLocation":"1556:10:125","nodeType":"VariableDeclaration","scope":75360,"src":"1548:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75326,"name":"address","nodeType":"ElementaryTypeName","src":"1548:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75330,"mutability":"mutable","name":"pool_managers","nameLocation":"1585:13:125","nodeType":"VariableDeclaration","scope":75360,"src":"1568:30:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":75328,"name":"address","nodeType":"ElementaryTypeName","src":"1568:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75329,"nodeType":"ArrayTypeName","src":"1568:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1527:72:125"},"returnParameters":{"id":75334,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75333,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75360,"src":"1648:7:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":75332,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1648:7:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1647:9:125"},"scope":75819,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75484,"nodeType":"FunctionDefinition","src":"1946:1182:125","nodes":[],"body":{"id":75483,"nodeType":"Block","src":"2237:891:125","nodes":[],"statements":[{"expression":{"id":75388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75380,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2298:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75383,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2305:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2298:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75384,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2314:5:125","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"2298:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e39393939373939","id":75386,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2336:15:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"},"value":"0.9999799"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"}],"id":75385,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75663,"src":"2322:13:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2322:30:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2298:54:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75389,"nodeType":"ExpressionStatement","src":"2298:54:125"},{"expression":{"id":75398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75390,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2379:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75393,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2386:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2379:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2395:8:125","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"2379:24:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e32","id":75396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2420:9:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"}],"id":75395,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75663,"src":"2406:13:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75397,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2406:24:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2379:51:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75399,"nodeType":"ExpressionStatement","src":"2379:51:125"},{"expression":{"id":75408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75400,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2459:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75403,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2466:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2459:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75404,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2475:6:125","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"2459:22:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e303031","id":75406,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2498:11:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"},"value":"0.001"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"}],"id":75405,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75663,"src":"2484:13:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2484:26:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2459:51:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75409,"nodeType":"ExpressionStatement","src":"2459:51:125"},{"expression":{"id":75416,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75410,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2541:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2548:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2541:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75414,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2557:18:125","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"2541:34:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"302e32","id":75415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2578:9:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"},"src":"2541:46:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75417,"nodeType":"ExpressionStatement","src":"2541:46:125"},{"expression":{"id":75422,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75418,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2604:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75420,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2611:17:125","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"2604:24:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75421,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75362,"src":"2631:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2604:44:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75423,"nodeType":"ExpressionStatement","src":"2604:44:125"},{"expression":{"id":75428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75424,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2658:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75426,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2665:12:125","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"2658:19:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75427,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75365,"src":"2680:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"2658:34:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":75429,"nodeType":"ExpressionStatement","src":"2658:34:125"},{"expression":{"id":75434,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75430,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2702:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2709:11:125","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"2702:18:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75433,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75368,"src":"2723:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"2702:32:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":75435,"nodeType":"ExpressionStatement","src":"2702:32:125"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":75436,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75371,"src":"2749:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75437,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2761:9:125","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2749:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":75438,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2774:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2749:26:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75449,"nodeType":"IfStatement","src":"2745:182:125","trueBody":{"id":75448,"nodeType":"Block","src":"2777:150:125","statements":[{"expression":{"id":75446,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75440,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75371,"src":"2878:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75442,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2890:9:125","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2878:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75445,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"323030","id":75443,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2902:3:125","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75444,"name":"DECIMALS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75300,"src":"2908:8:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2902:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2878:38:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75447,"nodeType":"ExpressionStatement","src":"2878:38:125"}]}},{"expression":{"id":75454,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75450,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2936:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75452,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2943:11:125","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"2936:18:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75453,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75371,"src":"2957:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"2936:32:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75455,"nodeType":"ExpressionStatement","src":"2936:32:125"},{"expression":{"id":75460,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75456,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2978:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75458,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2985:16:125","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"2978:23:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75459,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75374,"src":"3004:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"2978:42:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":75461,"nodeType":"ExpressionStatement","src":"2978:42:125"},{"expression":{"id":75470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75462,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"3030:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75464,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3037:16:125","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3030:23:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":75468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3070:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":75467,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3056:13:125","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":75465,"name":"address","nodeType":"ElementaryTypeName","src":"3060:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75466,"nodeType":"ArrayTypeName","src":"3060:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":75469,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3056:16:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"3030:42:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75471,"nodeType":"ExpressionStatement","src":"3030:42:125"},{"expression":{"id":75481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":75472,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"3082:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75475,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3089:16:125","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3082:23:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75476,"indexExpression":{"hexValue":"30","id":75474,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3106:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3082:26:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":75479,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3119:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75478,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3111:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75477,"name":"address","nodeType":"ElementaryTypeName","src":"3111:7:125","typeDescriptions":{}}},"id":75480,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3111:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3082:39:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75482,"nodeType":"ExpressionStatement","src":"3082:39:125"}]},"functionSelector":"c36e336b","implemented":true,"kind":"function","modifiers":[],"name":"getParams","nameLocation":"1955:9:125","parameters":{"id":75375,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75362,"mutability":"mutable","name":"registryCommunity","nameLocation":"1982:17:125","nodeType":"VariableDeclaration","scope":75484,"src":"1974:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75361,"name":"address","nodeType":"ElementaryTypeName","src":"1974:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75365,"mutability":"mutable","name":"proposalType","nameLocation":"2022:12:125","nodeType":"VariableDeclaration","scope":75484,"src":"2009:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":75364,"nodeType":"UserDefinedTypeName","pathNode":{"id":75363,"name":"ProposalType","nameLocations":["2009:12:125"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"2009:12:125"},"referencedDeclaration":65540,"src":"2009:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75368,"mutability":"mutable","name":"pointSystem","nameLocation":"2056:11:125","nodeType":"VariableDeclaration","scope":75484,"src":"2044:23:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":75367,"nodeType":"UserDefinedTypeName","pathNode":{"id":75366,"name":"PointSystem","nameLocations":["2044:11:125"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"2044:11:125"},"referencedDeclaration":65545,"src":"2044:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75371,"mutability":"mutable","name":"pointConfig","nameLocation":"2102:11:125","nodeType":"VariableDeclaration","scope":75484,"src":"2077:36:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":75370,"nodeType":"UserDefinedTypeName","pathNode":{"id":75369,"name":"PointSystemConfig","nameLocations":["2077:17:125"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"2077:17:125"},"referencedDeclaration":65614,"src":"2077:17:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":75374,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"2147:16:125","nodeType":"VariableDeclaration","scope":75484,"src":"2123:40:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75373,"nodeType":"UserDefinedTypeName","pathNode":{"id":75372,"name":"ArbitrableConfig","nameLocations":["2123:16:125"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"2123:16:125"},"referencedDeclaration":65628,"src":"2123:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"1964:205:125"},"returnParameters":{"id":75379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75378,"mutability":"mutable","name":"params","nameLocation":"2229:6:125","nodeType":"VariableDeclaration","scope":75484,"src":"2191:44:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":75377,"nodeType":"UserDefinedTypeName","pathNode":{"id":75376,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2191:30:125"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2191:30:125"},"referencedDeclaration":69242,"src":"2191:30:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"2190:46:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":75608,"nodeType":"FunctionDefinition","src":"3134:1468:125","nodes":[],"body":{"id":75607,"nodeType":"Block","src":"3487:1115:125","nodes":[],"statements":[{"assignments":[75515],"declarations":[{"constant":false,"id":75515,"mutability":"mutable","name":"params","nameLocation":"3586:6:125","nodeType":"VariableDeclaration","scope":75607,"src":"3548:44:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":75514,"nodeType":"UserDefinedTypeName","pathNode":{"id":75513,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["3548:30:125"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"3548:30:125"},"referencedDeclaration":69242,"src":"3548:30:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":75523,"initialValue":{"arguments":[{"id":75517,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75491,"src":"3617:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75518,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75499,"src":"3636:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":75519,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75502,"src":"3650:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"id":75520,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75505,"src":"3663:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":75521,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75508,"src":"3676:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":75516,"name":"getParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75484,"src":"3607:9:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$","typeString":"function (address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) pure returns (struct CVStrategyInitializeParamsV0_1 memory)"}},"id":75522,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3607:86:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"3548:145:125"},{"assignments":[75528],"declarations":[{"constant":false,"id":75528,"mutability":"mutable","name":"_pool_managers","nameLocation":"3721:14:125","nodeType":"VariableDeclaration","scope":75607,"src":"3704:31:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":75526,"name":"address","nodeType":"ElementaryTypeName","src":"3704:7:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75527,"nodeType":"ArrayTypeName","src":"3704:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":75534,"initialValue":{"arguments":[{"hexValue":"32","id":75532,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3752:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":75531,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3738:13:125","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":75529,"name":"address","nodeType":"ElementaryTypeName","src":"3742:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75530,"nodeType":"ArrayTypeName","src":"3742:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":75533,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3738:16:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3704:50:125"},{"expression":{"id":75542,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":75535,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"3764:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75537,"indexExpression":{"hexValue":"30","id":75536,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3779:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3764:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75540,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3792:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyHelpers_$75819","typeString":"contract CVStrategyHelpers"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyHelpers_$75819","typeString":"contract CVStrategyHelpers"}],"id":75539,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3784:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75538,"name":"address","nodeType":"ElementaryTypeName","src":"3784:7:125","typeDescriptions":{}}},"id":75541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3784:13:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3764:33:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75543,"nodeType":"ExpressionStatement","src":"3764:33:125"},{"expression":{"id":75552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":75544,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"3807:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75546,"indexExpression":{"hexValue":"31","id":75545,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3822:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3807:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":75549,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3835:3:125","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":75550,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3839:6:125","memberName":"sender","nodeType":"MemberAccess","src":"3835:10:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75548,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3827:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75547,"name":"address","nodeType":"ElementaryTypeName","src":"3827:7:125","typeDescriptions":{}}},"id":75551,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3827:19:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3807:39:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75553,"nodeType":"ExpressionStatement","src":"3807:39:125"},{"assignments":[75555],"declarations":[{"constant":false,"id":75555,"mutability":"mutable","name":"_token","nameLocation":"4104:6:125","nodeType":"VariableDeclaration","scope":75607,"src":"4096:14:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75554,"name":"address","nodeType":"ElementaryTypeName","src":"4096:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":75557,"initialValue":{"id":75556,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"4113:6:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4096:23:125"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":75563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75558,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75496,"src":"4133:5:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":75561,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4150:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75560,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4142:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75559,"name":"address","nodeType":"ElementaryTypeName","src":"4142:7:125","typeDescriptions":{}}},"id":75562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4142:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4133:19:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75569,"nodeType":"IfStatement","src":"4129:64:125","trueBody":{"id":75568,"nodeType":"Block","src":"4154:39:125","statements":[{"expression":{"id":75566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75564,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75555,"src":"4168:6:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75565,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75496,"src":"4177:5:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4168:14:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75567,"nodeType":"ExpressionStatement","src":"4168:14:125"}]}},{"expression":{"id":75592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75570,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75511,"src":"4202:6:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":75574,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75494,"src":"4315:8:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"arguments":[],"expression":{"argumentTypes":[],"id":75575,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"4325:10:125","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":75576,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4325:12:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75577,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"4339:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":75573,"name":"poolProfile_id1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75360,"src":"4299:15:125","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IRegistry_$2802_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (contract IRegistry,address,address[] memory) returns (bytes32)"}},"id":75578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4299:55:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":75581,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75489,"src":"4376:8:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75580,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4368:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75579,"name":"address","nodeType":"ElementaryTypeName","src":"4368:7:125","typeDescriptions":{}}},"id":75582,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4368:17:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":75585,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75515,"src":"4410:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":75583,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4399:3:125","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":75584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4403:6:125","memberName":"encode","nodeType":"MemberAccess","src":"4399:10:125","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":75586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4399:18:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":75587,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75555,"src":"4431:6:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":75588,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4451:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":75589,"name":"metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75295,"src":"4466:8:125","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},{"id":75590,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"4488:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":75571,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75487,"src":"4211:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"id":75572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4216:28:125","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":175,"src":"4211:33:125","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":75591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4211:301:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4202:310:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75593,"nodeType":"ExpressionStatement","src":"4202:310:125"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":75604,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":75598,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75489,"src":"4553:8:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75597,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4545:8:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":75596,"name":"address","nodeType":"ElementaryTypeName","src":"4545:8:125","stateMutability":"payable","typeDescriptions":{}}},"id":75599,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4545:17:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":75595,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"4530:14:125","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_1_$69756_$","typeString":"type(contract CVStrategyV0_1)"}},"id":75600,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:33:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}},"id":75601,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4564:12:125","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65930,"src":"4530:46:125","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_enum$_ProposalType_$65540_$","typeString":"function () view external returns (enum ProposalType)"}},"id":75602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:48:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":75603,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75499,"src":"4582:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"4530:64:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":75594,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"4523:6:125","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":75605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4523:72:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75606,"nodeType":"ExpressionStatement","src":"4523:72:125"}]},"functionSelector":"e070e0ab","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"3143:10:125","parameters":{"id":75509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75487,"mutability":"mutable","name":"allo","nameLocation":"3168:4:125","nodeType":"VariableDeclaration","scope":75608,"src":"3163:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":75486,"nodeType":"UserDefinedTypeName","pathNode":{"id":75485,"name":"Allo","nameLocations":["3163:4:125"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"3163:4:125"},"referencedDeclaration":1390,"src":"3163:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":75489,"mutability":"mutable","name":"strategy","nameLocation":"3190:8:125","nodeType":"VariableDeclaration","scope":75608,"src":"3182:16:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75488,"name":"address","nodeType":"ElementaryTypeName","src":"3182:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75491,"mutability":"mutable","name":"registryCommunity","nameLocation":"3216:17:125","nodeType":"VariableDeclaration","scope":75608,"src":"3208:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75490,"name":"address","nodeType":"ElementaryTypeName","src":"3208:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75494,"mutability":"mutable","name":"registry","nameLocation":"3253:8:125","nodeType":"VariableDeclaration","scope":75608,"src":"3243:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75493,"nodeType":"UserDefinedTypeName","pathNode":{"id":75492,"name":"IRegistry","nameLocations":["3243:9:125"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"3243:9:125"},"referencedDeclaration":2802,"src":"3243:9:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75496,"mutability":"mutable","name":"token","nameLocation":"3279:5:125","nodeType":"VariableDeclaration","scope":75608,"src":"3271:13:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75495,"name":"address","nodeType":"ElementaryTypeName","src":"3271:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75499,"mutability":"mutable","name":"proposalType","nameLocation":"3307:12:125","nodeType":"VariableDeclaration","scope":75608,"src":"3294:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":75498,"nodeType":"UserDefinedTypeName","pathNode":{"id":75497,"name":"ProposalType","nameLocations":["3294:12:125"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3294:12:125"},"referencedDeclaration":65540,"src":"3294:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75502,"mutability":"mutable","name":"pointSystem","nameLocation":"3341:11:125","nodeType":"VariableDeclaration","scope":75608,"src":"3329:23:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":75501,"nodeType":"UserDefinedTypeName","pathNode":{"id":75500,"name":"PointSystem","nameLocations":["3329:11:125"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3329:11:125"},"referencedDeclaration":65545,"src":"3329:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75505,"mutability":"mutable","name":"pointConfig","nameLocation":"3387:11:125","nodeType":"VariableDeclaration","scope":75608,"src":"3362:36:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":75504,"nodeType":"UserDefinedTypeName","pathNode":{"id":75503,"name":"PointSystemConfig","nameLocations":["3362:17:125"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3362:17:125"},"referencedDeclaration":65614,"src":"3362:17:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":75508,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3432:16:125","nodeType":"VariableDeclaration","scope":75608,"src":"3408:40:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75507,"nodeType":"UserDefinedTypeName","pathNode":{"id":75506,"name":"ArbitrableConfig","nameLocations":["3408:16:125"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3408:16:125"},"referencedDeclaration":65628,"src":"3408:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"3153:301:125"},"returnParameters":{"id":75512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75511,"mutability":"mutable","name":"poolId","nameLocation":"3479:6:125","nodeType":"VariableDeclaration","scope":75608,"src":"3471:14:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75510,"name":"uint256","nodeType":"ElementaryTypeName","src":"3471:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3470:16:125"},"scope":75819,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75649,"nodeType":"FunctionDefinition","src":"4608:578:125","nodes":[],"body":{"id":75648,"nodeType":"Block","src":"4915:271:125","nodes":[],"statements":[{"expression":{"arguments":[{"id":75635,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75611,"src":"4956:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},{"id":75636,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75613,"src":"4974:8:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75637,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75615,"src":"4996:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75638,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75618,"src":"5027:8:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"id":75639,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75620,"src":"5049:5:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75640,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75623,"src":"5068:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":75641,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75626,"src":"5094:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"arguments":[{"hexValue":"30","id":75643,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5137:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75642,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"5119:17:125","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_PointSystemConfig_$65614_storage_ptr_$","typeString":"type(struct PointSystemConfig storage pointer)"}},"id":75644,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5119:20:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":75645,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75629,"src":"5153:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":75634,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[75608,75649],"referencedDeclaration":75608,"src":"4932:10:125","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Allo_$1390_$_t_address_$_t_address_$_t_contract$_IRegistry_$2802_$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_uint256_$","typeString":"function (contract Allo,address,address,contract IRegistry,address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) returns (uint256)"}},"id":75646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4932:247:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75633,"id":75647,"nodeType":"Return","src":"4925:254:125"}]},"functionSelector":"85294f18","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"4617:10:125","parameters":{"id":75630,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75611,"mutability":"mutable","name":"allo","nameLocation":"4642:4:125","nodeType":"VariableDeclaration","scope":75649,"src":"4637:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":75610,"nodeType":"UserDefinedTypeName","pathNode":{"id":75609,"name":"Allo","nameLocations":["4637:4:125"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"4637:4:125"},"referencedDeclaration":1390,"src":"4637:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":75613,"mutability":"mutable","name":"strategy","nameLocation":"4664:8:125","nodeType":"VariableDeclaration","scope":75649,"src":"4656:16:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75612,"name":"address","nodeType":"ElementaryTypeName","src":"4656:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75615,"mutability":"mutable","name":"registryCommunity","nameLocation":"4690:17:125","nodeType":"VariableDeclaration","scope":75649,"src":"4682:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75614,"name":"address","nodeType":"ElementaryTypeName","src":"4682:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75618,"mutability":"mutable","name":"registry","nameLocation":"4727:8:125","nodeType":"VariableDeclaration","scope":75649,"src":"4717:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75617,"nodeType":"UserDefinedTypeName","pathNode":{"id":75616,"name":"IRegistry","nameLocations":["4717:9:125"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"4717:9:125"},"referencedDeclaration":2802,"src":"4717:9:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75620,"mutability":"mutable","name":"token","nameLocation":"4753:5:125","nodeType":"VariableDeclaration","scope":75649,"src":"4745:13:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75619,"name":"address","nodeType":"ElementaryTypeName","src":"4745:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75623,"mutability":"mutable","name":"proposalType","nameLocation":"4781:12:125","nodeType":"VariableDeclaration","scope":75649,"src":"4768:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":75622,"nodeType":"UserDefinedTypeName","pathNode":{"id":75621,"name":"ProposalType","nameLocations":["4768:12:125"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"4768:12:125"},"referencedDeclaration":65540,"src":"4768:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75626,"mutability":"mutable","name":"pointSystem","nameLocation":"4815:11:125","nodeType":"VariableDeclaration","scope":75649,"src":"4803:23:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":75625,"nodeType":"UserDefinedTypeName","pathNode":{"id":75624,"name":"PointSystem","nameLocations":["4803:11:125"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"4803:11:125"},"referencedDeclaration":65545,"src":"4803:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75629,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"4860:16:125","nodeType":"VariableDeclaration","scope":75649,"src":"4836:40:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75628,"nodeType":"UserDefinedTypeName","pathNode":{"id":75627,"name":"ArbitrableConfig","nameLocations":["4836:16:125"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"4836:16:125"},"referencedDeclaration":65628,"src":"4836:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"4627:255:125"},"returnParameters":{"id":75633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75632,"mutability":"mutable","name":"poolId","nameLocation":"4907:6:125","nodeType":"VariableDeclaration","scope":75649,"src":"4899:14:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75631,"name":"uint256","nodeType":"ElementaryTypeName","src":"4899:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4898:16:125"},"scope":75819,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75663,"nodeType":"FunctionDefinition","src":"5192:114:125","nodes":[],"body":{"id":75662,"nodeType":"Block","src":"5264:42:125","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75656,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75651,"src":"5281:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":75659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75657,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5291:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":75658,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5297:2:125","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"5291:8:125","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"5281:18:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75655,"id":75661,"nodeType":"Return","src":"5274:25:125"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_etherToFloat","nameLocation":"5201:13:125","parameters":{"id":75652,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75651,"mutability":"mutable","name":"_amount","nameLocation":"5223:7:125","nodeType":"VariableDeclaration","scope":75663,"src":"5215:15:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75650,"name":"uint256","nodeType":"ElementaryTypeName","src":"5215:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5214:17:125"},"returnParameters":{"id":75655,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75654,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75663,"src":"5255:7:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75653,"name":"uint256","nodeType":"ElementaryTypeName","src":"5255:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5254:9:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75697,"nodeType":"FunctionDefinition","src":"5312:269:125","nodes":[],"body":{"id":75696,"nodeType":"Block","src":"5390:191:125","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75673,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75665,"src":"5408:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":75674,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5414:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5408:13:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":75676,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5423:42:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":75672,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5400:7:125","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75677,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5400:66:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75678,"nodeType":"ExpressionStatement","src":"5400:66:125"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75680,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75667,"src":"5484:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":75681,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5489:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5484:12:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":75683,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5498:30:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":75679,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5476:7:125","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5476:53:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75685,"nodeType":"ExpressionStatement","src":"5476:53:125"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75694,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75691,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75686,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75665,"src":"5548:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75687,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75667,"src":"5553:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5548:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75689,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5547:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":75690,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75312,"src":"5559:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5547:19:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75692,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5546:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":75693,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5571:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"5546:28:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75671,"id":75695,"nodeType":"Return","src":"5539:35:125"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"5321:4:125","parameters":{"id":75668,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75665,"mutability":"mutable","name":"_a","nameLocation":"5334:2:125","nodeType":"VariableDeclaration","scope":75697,"src":"5326:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75664,"name":"uint256","nodeType":"ElementaryTypeName","src":"5326:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75667,"mutability":"mutable","name":"_b","nameLocation":"5346:2:125","nodeType":"VariableDeclaration","scope":75697,"src":"5338:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75666,"name":"uint256","nodeType":"ElementaryTypeName","src":"5338:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5325:24:125"},"returnParameters":{"id":75671,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75670,"mutability":"mutable","name":"_result","nameLocation":"5381:7:125","nodeType":"VariableDeclaration","scope":75697,"src":"5373:15:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75669,"name":"uint256","nodeType":"ElementaryTypeName","src":"5373:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5372:17:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75761,"nodeType":"FunctionDefinition","src":"5587:447:125","nodes":[],"body":{"id":75760,"nodeType":"Block","src":"5665:369:125","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75707,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75699,"src":"5683:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":75708,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5688:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5683:12:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":75710,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5697:30:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":75706,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5675:7:125","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5675:53:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75712,"nodeType":"ExpressionStatement","src":"5675:53:125"},{"assignments":[75714],"declarations":[{"constant":false,"id":75714,"mutability":"mutable","name":"a","nameLocation":"5746:1:125","nodeType":"VariableDeclaration","scope":75760,"src":"5738:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75713,"name":"uint256","nodeType":"ElementaryTypeName","src":"5738:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75716,"initialValue":{"id":75715,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75699,"src":"5750:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5738:14:125"},{"assignments":[75718],"declarations":[{"constant":false,"id":75718,"mutability":"mutable","name":"b","nameLocation":"5770:1:125","nodeType":"VariableDeclaration","scope":75760,"src":"5762:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75717,"name":"uint256","nodeType":"ElementaryTypeName","src":"5762:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75720,"initialValue":{"id":75719,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75701,"src":"5774:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5762:14:125"},{"expression":{"id":75723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75721,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75704,"src":"5786:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75722,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5796:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5786:17:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75724,"nodeType":"ExpressionStatement","src":"5786:17:125"},{"body":{"id":75758,"nodeType":"Block","src":"5827:201:125","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75730,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75728,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5845:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":75729,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5849:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5845:5:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":75731,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5854:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5845:10:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":75756,"nodeType":"Block","src":"5935:83:125","statements":[{"expression":{"id":75750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75745,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75704,"src":"5953:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75747,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75704,"src":"5968:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75748,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5977:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75746,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75697,"src":"5963:4:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5963:16:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5953:26:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75751,"nodeType":"ExpressionStatement","src":"5953:26:125"},{"expression":{"id":75754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75752,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5997:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":75753,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6002:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5997:6:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75755,"nodeType":"ExpressionStatement","src":"5997:6:125"}]},"id":75757,"nodeType":"IfStatement","src":"5841:177:125","trueBody":{"id":75744,"nodeType":"Block","src":"5857:72:125","statements":[{"expression":{"id":75738,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75733,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5875:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75735,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5884:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75736,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5887:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75734,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75697,"src":"5879:4:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5879:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5875:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75739,"nodeType":"ExpressionStatement","src":"5875:14:125"},{"expression":{"id":75742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75740,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5907:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":75741,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5913:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5907:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75743,"nodeType":"ExpressionStatement","src":"5907:7:125"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75727,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75725,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5820:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":75726,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5824:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5820:5:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75759,"nodeType":"WhileStatement","src":"5813:215:125"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"5596:4:125","parameters":{"id":75702,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75699,"mutability":"mutable","name":"_a","nameLocation":"5609:2:125","nodeType":"VariableDeclaration","scope":75761,"src":"5601:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75698,"name":"uint256","nodeType":"ElementaryTypeName","src":"5601:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75701,"mutability":"mutable","name":"_b","nameLocation":"5621:2:125","nodeType":"VariableDeclaration","scope":75761,"src":"5613:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75700,"name":"uint256","nodeType":"ElementaryTypeName","src":"5613:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5600:24:125"},"returnParameters":{"id":75705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75704,"mutability":"mutable","name":"_result","nameLocation":"5656:7:125","nodeType":"VariableDeclaration","scope":75761,"src":"5648:15:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75703,"name":"uint256","nodeType":"ElementaryTypeName","src":"5648:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5647:17:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75818,"nodeType":"FunctionDefinition","src":"6040:380:125","nodes":[],"body":{"id":75817,"nodeType":"Block","src":"6203:217:125","nodes":[],"statements":[{"assignments":[75775],"declarations":[{"constant":false,"id":75775,"mutability":"mutable","name":"t","nameLocation":"6221:1:125","nodeType":"VariableDeclaration","scope":75817,"src":"6213:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75774,"name":"uint256","nodeType":"ElementaryTypeName","src":"6213:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75777,"initialValue":{"id":75776,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75763,"src":"6225:11:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6213:23:125"},{"assignments":[75779],"declarations":[{"constant":false,"id":75779,"mutability":"mutable","name":"atTWO_128","nameLocation":"6254:9:125","nodeType":"VariableDeclaration","scope":75817,"src":"6246:17:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75778,"name":"uint256","nodeType":"ElementaryTypeName","src":"6246:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75789,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75786,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75781,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75769,"src":"6272:5:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":75782,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6281:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6272:12:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75784,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6271:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":75785,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"6288:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6271:18:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75787,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75775,"src":"6291:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75780,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75761,"src":"6266:4:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6266:27:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6246:47:125"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75815,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75809,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75790,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75779,"src":"6313:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75791,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75765,"src":"6325:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6313:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75793,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6312:23:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75807,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75796,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75794,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75767,"src":"6340:10:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75795,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"6353:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75797,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"6358:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":75798,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75779,"src":"6368:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6358:19:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75800,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6357:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:38:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75802,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6339:40:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75805,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75803,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"6383:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":75804,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75769,"src":"6387:5:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6383:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75806,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6382:11:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6339:54:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75808,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6338:56:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6312:82:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75810,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6311:84:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":75811,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75312,"src":"6398:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6311:94:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75813,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6310:96:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":75814,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6410:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6310:103:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75773,"id":75816,"nodeType":"Return","src":"6303:110:125"}]},"functionSelector":"e99ce911","implemented":true,"kind":"function","modifiers":[],"name":"_calculateConviction","nameLocation":"6049:20:125","parameters":{"id":75770,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75763,"mutability":"mutable","name":"_timePassed","nameLocation":"6078:11:125","nodeType":"VariableDeclaration","scope":75818,"src":"6070:19:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75762,"name":"uint256","nodeType":"ElementaryTypeName","src":"6070:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75765,"mutability":"mutable","name":"_lastConv","nameLocation":"6099:9:125","nodeType":"VariableDeclaration","scope":75818,"src":"6091:17:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75764,"name":"uint256","nodeType":"ElementaryTypeName","src":"6091:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75767,"mutability":"mutable","name":"_oldAmount","nameLocation":"6118:10:125","nodeType":"VariableDeclaration","scope":75818,"src":"6110:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75766,"name":"uint256","nodeType":"ElementaryTypeName","src":"6110:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75769,"mutability":"mutable","name":"decay","nameLocation":"6138:5:125","nodeType":"VariableDeclaration","scope":75818,"src":"6130:13:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75768,"name":"uint256","nodeType":"ElementaryTypeName","src":"6130:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6069:75:125"},"returnParameters":{"id":75773,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75772,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75818,"src":"6190:7:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75771,"name":"uint256","nodeType":"ElementaryTypeName","src":"6190:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6189:9:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":75285,"name":"Native","nameLocations":["944:6:125"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"944:6:125"},"id":75286,"nodeType":"InheritanceSpecifier","src":"944:6:125"},{"baseName":{"id":75287,"name":"Accounts","nameLocations":["952:8:125"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"952:8:125"},"id":75288,"nodeType":"InheritanceSpecifier","src":"952:8:125"}],"canonicalName":"CVStrategyHelpers","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[75819,5026,12099,11306,3106],"name":"CVStrategyHelpers","nameLocation":"923:17:125","scope":75820,"usedErrors":[]}],"license":"AGPL-3.0-or-later"},"id":125} \ No newline at end of file diff --git a/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json b/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json index 52883237..269081f0 100644 --- a/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json +++ b/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json @@ -1 +1 @@ -{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516167766200004d60003960008181611840015281816118800152818161191f0152818161195f01526119d701526167766000f3fe60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212200f490344a7e957b1d8cb28c160c049b05404f64f215654b3a346d983afece98364736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;1088:4:64;1045:48;;3782:50033:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212200f490344a7e957b1d8cb28c160c049b05404f64f215654b3a346d983afece98364736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:142;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:142;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:142;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:142;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9672:25:142;;;9660:2;9645:18;21565:107:98;9526:177:142;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;10968:25:142;;;11024:2;11009:18;;11002:34;;;;11052:18;;;11045:34;11110:2;11095:18;;11088:34;10955:3;10940:19;8833:24:98;10737:391:142;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:105:-;;;;;;;;;;;;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;15532:31:142;;;15514:50;;15502:2;15487:18;8639:26:98;15370:200:142;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;30100:191;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:105;;;;;;;;;;-1:-1:-1;404:115:105;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;10318:799:98:-;;;;;;;;;;-1:-1:-1;10318:799:98;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22599:2:142;3325:201:47;;;22581:21:142;22638:2;22618:18;;;22611:30;22677:34;22657:18;;;22650:62;-1:-1:-1;;;22728:18:142;;;22721:44;22782:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;22964:36:142;;3721:14:47;;22952:2:142;22937:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9672:25:142;;;9645:18;;46534:29:98;9526:177:142;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9672:25:142;;;9645:18;;50531:29:98;9526:177:142;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9672:25:142;;;9645:18;;50657:31:98;9526:177:142;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9672:25:142;;9660:2;9645:18;;9526:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;26595:2:142;2064:92:64;;;26577:21:142;26634:2;26614:18;;;26607:30;26673:34;26653:18;;;26646:62;-1:-1:-1;;;26724:18:142;;;26717:54;26788:19;;2064:92:64;26393:420:142;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;17286:1025:98:-:0;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:105:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:105;591:49;;715:12;-1:-1:-1;;;;;707:33:105;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:105:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:105;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:105;;;;;;;;-1:-1:-1;;876:40:105;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:105:o;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;30100:191::-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9672:25:142;;;9645:18;;48528:29:98;9526:177:142;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9672:25:142;;;9645:18;;48652:29:98;9526:177:142;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:105:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:105::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9672:25:142;;;9645:18;;53238:29:98;9526:177:142;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9672:25:142;;;53745:29:98;;-1:-1:-1;9645:18:142;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;10318:799;2435:16:97;:14;:16::i;:::-;10411:28:98::1;10431:7;10411:19;:28::i;:::-;10503:23;::::0;10528:10:::1;:12:::0;;10485:56:::1;::::0;-1:-1:-1;;;;;10503:23:98::1;::::0;::::1;10528:12;::::0;::::1;:::i;:::-;;;;;10485:17;:56::i;:::-;10450:15;:92:::0;;-1:-1:-1;;;;;;10450:92:98::1;-1:-1:-1::0;;;;;10450:92:98;;;::::1;::::0;;::::1;::::0;;10552:28:::1;::::0;;-1:-1:-1;;;10552:28:98;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;10552:28:98;;;;;;;;-1:-1:-1;10450:92:98;10552:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10591:40;10645:5;10634:51;;;;;;;;;;;;:::i;:::-;10700:20;::::0;::::1;::::0;10591:94;;-1:-1:-1;;;;;;10700:34:98::1;10696:94;;10757:22;;-1:-1:-1::0;;;10757:22:98::1;;;;;;;;;;;10696:94;10820:20;::::0;::::1;::::0;10800:17:::1;:40:::0;;-1:-1:-1;;;;;;10800:40:98::1;-1:-1:-1::0;;;;;10800:40:98;;::::1;::::0;;;::::1;::::0;;10866:15:::1;::::0;::::1;::::0;10851:12:::1;:30:::0;;-1:-1:-1;;10851:30:98::1;-1:-1:-1::0;10866:15:98;10851:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10905:14:98::1;::::0;::::1;::::0;10891:11:::1;:28:::0;;-1:-1:-1;;10891:28:98::1;;10905:14:::0;10891:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10943:14:98::1;::::0;::::1;::::0;10929:28;:11:::1;:28:::0;10994:14:::1;::::0;::::1;::::0;10967:11:::1;:42:::0;;-1:-1:-1;;;;;;10967:42:98::1;-1:-1:-1::0;;;;;10967:42:98;;::::1;::::0;;;::::1;::::0;;11035:19:::1;::::0;::::1;::::0;11056:11;;11020:48:::1;::::0;11035:19;11020:14:::1;:48::i;:::-;11084:26;11098:7;11107:2;11084:26;;;;;;;:::i;:::-;;;;;;;;10401:716;10318:799:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7055:25:::2;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35144:2:142;2415:73:45::1;::::0;::::1;35126:21:142::0;35183:2;35163:18;;;35156:30;35222:34;35202:18;;;35195:62;-1:-1:-1;;;35273:18:142;;;35266:36;35319:19;;2415:73:45::1;34942:402:142::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;35607:15:142;;;35589:34;;35659:15;;;35654:2;35639:18;;35632:43;35711:15;;;35706:2;35691:18;;35684:43;35539:2;35524:18;;35349:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;36074:25:142;;;36153:18;;;36146:43;;;;36205:18;;;36198:43;;;;36257:18;;36250:34;36300:19;;;36293:35;36344:19;;;36337:35;;;;36403:3;36388:19;;36381:35;;;;45815:407:98;;36061:3:142;36046:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9672:25:142;;;9645:18;;23722:29:98;9526:177:142;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9672:25:142;;;9645:18;;24025:29:98;9526:177:142;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9672:25:142;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9645:18:142;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9672:25:142;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9645:18:142;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;44441:2:142;42048:53:98;;;44423:21:142;44480:2;44460:18;;;44453:30;-1:-1:-1;;;44499:18:142;;;44492:58;44567:18;;42048:53:98;44239:352:142;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:105:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:105;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:105;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;44987:2:142;3262:56:60;;;44969:21:142;45026:2;45006:18;;;44999:30;45065:34;45045:18;;;45038:62;-1:-1:-1;;;45116:18:142;;;45109:44;45170:19;;3262:56:60;44785:410:142;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;45402:2:142;3140:82:60;;;45384:21:142;45441:2;45421:18;;;45414:30;45480:34;45460:18;;;45453:62;-1:-1:-1;;;45531:18:142;;;45524:39;45580:19;;3140:82:60;45200:405:142;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;45812:2:142;1675:68:45;;;45794:21:142;;;45831:18;;;45824:30;45890:34;45870:18;;;45863:62;45942:18;;1675:68:45;45610:356:142;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;12805:296:98:-;12894:48;;;;;;;;;;;;-1:-1:-1;;;12894:48:98;;;;12929:11;;12878:4;;12894:48;;-1:-1:-1;;;;;12929:11:98;12894;:48::i;:::-;12964:11;;-1:-1:-1;;;;;12964:11:98;12952:76;;-1:-1:-1;13013:4:98;;12805:296;-1:-1:-1;12805:296:98:o;12952:76::-;13044:11;;:50;;-1:-1:-1;;;13044:50:98;;-1:-1:-1;;;;;13044:11:98;;;;:28;;:50;;13073:5;;13088:4;;13044:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637::-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;12473:141::-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:142;;;11071:19:97;;3276:2:142;3261:18;11071:19:97;3148:187:142;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;46305:2:142;46276:15;46272:45;4867:36:6;;;46260:58:142;46334:12;;;46327:28;;;4823:7:6;;;;46371:12:142;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;22272:633:98:-;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9672:25:142;;;27095:28:98;;9660:2:142;9645:18;27095:28:98;9526:177:142;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;48420:2:142;41543:66:98;;;48402:21:142;48459:2;48439:18;;;48432:30;48498:34;48478:18;;;48471:62;-1:-1:-1;;;48549:18:142;;;48542:38;48597:19;;41543:66:98;48218:404:142;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;48829:2:142;41619:53:98;;;48811:21:142;48868:2;48848:18;;;48841:30;-1:-1:-1;;;48887:18:142;;;48880:58;48955:18;;41619:53:98;48627:352:142;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;49186:2:142;1479:95:60;;;49168:21:142;49225:2;49205:18;;;49198:30;49264:34;49244:18;;;49237:62;-1:-1:-1;;;49315:18:142;;;49308:43;49368:19;;1479:95:60;48984:409:142;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;6994:145:34:-;7061:71;7124:2;7128;7077:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;7077:54:34;;;;;;;;;;;;;;-1:-1:-1;;;;;7077:54:34;-1:-1:-1;;;7077:54:34;;;7061:15;:71::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;49922:2:142;2847:58:46;;;49904:21:142;49961:2;49941:18;;;49934:30;-1:-1:-1;;;49980:18:142;;;49973:53;50043:18;;2847:58:46;49720:347:142;11899:391:98;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9672:25:142;;;9645:18;;33311:29:98;9526:177:142;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;181:376:34:-;275:14;;131:42;448:2;435:16;;251:21;;275:14;435:16;131:42;484:5;473:68;464:77;;401:150;;181:376;:::o;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;51601:2:142;8113:60:76;;;51583:21:142;51640:2;51620:18;;;51613:30;51679:31;51659:18;;;51652:59;51728:18;;8113:60:76;51399:353:142;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:142:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:142;;14:180;-1:-1:-1;14:180:142:o;199:104::-;-1:-1:-1;;;;;265:31:142;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:142;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:142;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:142:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:142;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:142:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:142;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:142;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:142;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:253::-;4677:2;4671:9;4719:4;4707:17;;-1:-1:-1;;;;;4739:34:142;;4775:22;;;4736:62;4733:88;;;4801:18;;:::i;4863:257::-;4935:4;4929:11;;;4967:17;;-1:-1:-1;;;;;4999:34:142;;5035:22;;;4996:62;4993:88;;;5061:18;;:::i;5125:253::-;5197:2;5191:9;5239:4;5227:17;;-1:-1:-1;;;;;5259:34:142;;5295:22;;;5256:62;5253:88;;;5321:18;;:::i;5383:275::-;5454:2;5448:9;5519:2;5500:13;;-1:-1:-1;;5496:27:142;5484:40;;-1:-1:-1;;;;;5539:34:142;;5575:22;;;5536:62;5533:88;;;5601:18;;:::i;:::-;5637:2;5630:22;5383:275;;-1:-1:-1;5383:275:142:o;5663:144::-;-1:-1:-1;;;;;5751:31:142;;5741:42;;5731:70;;5797:1;5794;5787:12;5812:1289;5942:6;5950;5994:9;5985:7;5981:23;6024:3;6020:2;6016:12;6013:32;;;6041:1;6038;6031:12;6013:32;6065:4;6061:2;6057:13;6054:33;;;6083:1;6080;6073:12;6054:33;6109:22;;:::i;:::-;6168:9;6155:23;6187:46;6225:7;6187:46;:::i;:::-;6242:22;;6316:2;6301:18;;6288:32;6329:46;6288:32;6329:46;:::i;:::-;6402:2;6391:14;;6384:31;6475:2;6460:18;;;6447:32;6431:14;;;6424:56;6540:2;6525:18;;;6512:32;6496:14;;;6489:56;6606:3;6591:19;;;6578:33;6561:15;;;6554:58;6673:3;6658:19;;;6645:33;6628:15;;;6621:58;6395:5;;-1:-1:-1;;;6719:17:142;;6715:27;6712:47;;;6755:1;6752;6745:12;6712:47;;6783:22;;:::i;:::-;6858:4;6843:20;;6830:34;6814:51;;6927:3;6912:19;;6899:33;6894:2;6881:16;;6874:59;6995:3;6980:19;;6967:33;6962:2;6949:16;;6942:59;7063:3;7048:19;;;7035:33;7030:2;7017:16;;7010:59;-1:-1:-1;5812:1289:142;6821:7;;-1:-1:-1;5812:1289:142:o;7106:183::-;7166:4;-1:-1:-1;;;;;7188:30:142;;7185:56;;;7221:18;;:::i;:::-;-1:-1:-1;7266:1:142;7262:14;7278:4;7258:25;;7106:183::o;7294:750::-;7348:5;7401:3;7394:4;7386:6;7382:17;7378:27;7368:55;;7419:1;7416;7409:12;7368:55;7455:6;7442:20;7481:4;7505:60;7521:43;7561:2;7521:43;:::i;:::-;7505:60;:::i;:::-;7599:15;;;7685:1;7681:10;;;;7669:23;;7665:32;;;7630:12;;;;7709:15;;;7706:35;;;7737:1;7734;7727:12;7706:35;7773:2;7765:6;7761:15;7785:230;7801:6;7796:3;7793:15;7785:230;;;7881:3;7868:17;7898:44;7936:5;7898:44;:::i;:::-;7955:18;;7993:12;;;;7818;;7785:230;;;-1:-1:-1;8033:5:142;7294:750;-1:-1:-1;;;;;;7294:750:142:o;8049:186::-;8097:4;-1:-1:-1;;;;;8119:30:142;;8116:56;;;8152:18;;:::i;:::-;-1:-1:-1;8218:2:142;8197:15;-1:-1:-1;;8193:29:142;8224:4;8189:40;;8049:186::o;8240:336::-;8304:5;8333:52;8349:35;8377:6;8349:35;:::i;8333:52::-;8324:61;;8408:6;8401:5;8394:21;8448:3;8439:6;8434:3;8430:16;8427:25;8424:45;;;8465:1;8462;8455:12;8424:45;8514:6;8509:3;8502:4;8495:5;8491:16;8478:43;8568:1;8561:4;8552:6;8545:5;8541:18;8537:29;8530:40;8240:336;;;;;:::o;8581:220::-;8623:5;8676:3;8669:4;8661:6;8657:17;8653:27;8643:55;;8694:1;8691;8684:12;8643:55;8716:79;8791:3;8782:6;8769:20;8762:4;8754:6;8750:17;8716:79;:::i;8806:715::-;8917:6;8925;8933;8986:2;8974:9;8965:7;8961:23;8957:32;8954:52;;;9002:1;8999;8992:12;8954:52;9029:23;;-1:-1:-1;;;;;9101:14:142;;;9098:34;;;9128:1;9125;9118:12;9098:34;9151:61;9204:7;9195:6;9184:9;9180:22;9151:61;:::i;:::-;9141:71;;9265:2;9254:9;9250:18;9237:32;9221:48;;9294:2;9284:8;9281:16;9278:36;;;9310:1;9307;9300:12;9278:36;;9333:51;9376:7;9365:8;9354:9;9350:24;9333:51;:::i;:::-;9323:61;;;9434:2;9423:9;9419:18;9406:32;9447:44;9485:5;9447:44;:::i;:::-;9510:5;9500:15;;;8806:715;;;;;:::o;9708:229::-;-1:-1:-1;;;;;9898:32:142;;;;9880:51;;9868:2;9853:18;;9708:229::o;10164:568::-;10241:6;10249;10257;10310:2;10298:9;10289:7;10285:23;10281:32;10278:52;;;10326:1;10323;10316:12;10278:52;10365:9;10352:23;10384:44;10422:5;10384:44;:::i;:::-;10447:5;-1:-1:-1;10504:2:142;10489:18;;10476:32;10517:46;10476:32;10517:46;:::i;:::-;10582:7;-1:-1:-1;10641:2:142;10626:18;;10613:32;10654:46;10613:32;10654:46;:::i;11133:468::-;11210:6;11218;11271:2;11259:9;11250:7;11246:23;11242:32;11239:52;;;11287:1;11284;11277:12;11239:52;11314:23;;-1:-1:-1;;;;;11349:30:142;;11346:50;;;11392:1;11389;11382:12;11346:50;11415:49;11456:7;11447:6;11436:9;11432:22;11415:49;:::i;:::-;11405:59;;;11514:2;11503:9;11499:18;11486:32;11527:44;11565:5;11527:44;:::i;:::-;11590:5;11580:15;;;11133:468;;;;;:::o;11814:142::-;11897:1;11890:5;11887:12;11877:46;;11903:18;;:::i;:::-;11932;;11814:142::o;11961:213::-;12110:2;12095:18;;12122:46;12099:9;12150:6;12122:46;:::i;12179:328::-;12247:6;12255;12308:2;12296:9;12287:7;12283:23;12279:32;12276:52;;;12324:1;12321;12314:12;12276:52;12363:9;12350:23;12382:44;12420:5;12382:44;:::i;:::-;12445:5;12497:2;12482:18;;;;12469:32;;-1:-1:-1;;;12179:328:142:o;12512:248::-;12580:6;12588;12641:2;12629:9;12620:7;12616:23;12612:32;12609:52;;;12657:1;12654;12647:12;12609:52;-1:-1:-1;;12680:23:142;;;12750:2;12735:18;;;12722:32;;-1:-1:-1;12512:248:142:o;12765:316::-;12842:6;12850;12858;12911:2;12899:9;12890:7;12886:23;12882:32;12879:52;;;12927:1;12924;12917:12;12879:52;-1:-1:-1;;12950:23:142;;;13020:2;13005:18;;12992:32;;-1:-1:-1;13071:2:142;13056:18;;;13043:32;;12765:316;-1:-1:-1;12765:316:142:o;13086:143::-;13170:1;13163:5;13160:12;13150:46;;13176:18;;:::i;13234:215::-;13384:2;13369:18;;13396:47;13373:9;13425:6;13396:47;:::i;13454:260::-;13513:6;13566:2;13554:9;13545:7;13541:23;13537:32;13534:52;;;13582:1;13579;13572:12;13534:52;13621:9;13608:23;13640:44;13678:5;13640:44;:::i;14140:468::-;14217:6;14225;14278:2;14266:9;14257:7;14253:23;14249:32;14246:52;;;14294:1;14291;14284:12;14246:52;14333:9;14320:23;14352:44;14390:5;14352:44;:::i;:::-;14415:5;-1:-1:-1;14471:2:142;14456:18;;14443:32;-1:-1:-1;;;;;14487:30:142;;14484:50;;;14530:1;14527;14520:12;14484:50;14553:49;14594:7;14585:6;14574:9;14570:22;14553:49;:::i;:::-;14543:59;;;14140:468;;;;;:::o;14613:752::-;14700:6;14708;14716;14769:2;14757:9;14748:7;14744:23;14740:32;14737:52;;;14785:1;14782;14775:12;14737:52;14824:9;14811:23;14843:44;14881:5;14843:44;:::i;:::-;14906:5;-1:-1:-1;14962:2:142;14947:18;;14934:32;-1:-1:-1;;;;;14978:30:142;;14975:50;;;15021:1;15018;15011:12;14975:50;15044:22;;15097:4;15089:13;;15085:27;-1:-1:-1;15075:55:142;;15126:1;15123;15116:12;15075:55;15149:73;15214:7;15209:2;15196:16;15191:2;15187;15183:11;15149:73;:::i;15575:261::-;15756:2;15745:9;15738:21;15719:4;15776:54;15826:2;15815:9;15811:18;15803:6;15776:54;:::i;15841:1357::-;15968:6;15976;16029:2;16017:9;16008:7;16004:23;16000:32;15997:52;;;16045:1;16042;16035:12;15997:52;16072:23;;-1:-1:-1;;;;;16144:14:142;;;16141:34;;;16171:1;16168;16161:12;16141:34;16194:61;16247:7;16238:6;16227:9;16223:22;16194:61;:::i;:::-;16184:71;;16274:2;16264:12;;16329:2;16318:9;16314:18;16301:32;16358:2;16348:8;16345:16;16342:36;;;16374:1;16371;16364:12;16342:36;16397:24;;16452:4;16444:13;;16440:27;-1:-1:-1;16430:55:142;;16481:1;16478;16471:12;16430:55;16517:2;16504:16;16540:60;16556:43;16596:2;16556:43;:::i;16540:60::-;16634:15;;;16716:1;16712:10;;;;16704:19;;16700:28;;;16665:12;;;;16740:19;;;16737:39;;;16772:1;16769;16762:12;16737:39;16804:2;16800;16796:11;16816:352;16832:6;16827:3;16824:15;16816:352;;;16918:3;16905:17;16954:2;16941:11;16938:19;16935:109;;;16998:1;17027:2;17023;17016:14;16935:109;17069:56;17117:7;17112:2;17098:11;17094:2;17090:20;17086:29;17069:56;:::i;:::-;17057:69;;-1:-1:-1;17146:12:142;;;;16849;;16816:352;;;16820:3;17187:5;17177:15;;;;;;;;15841:1357;;;;;:::o;17203:826::-;17436:2;17488:21;;;17558:13;;17461:18;;;17580:22;;;17407:4;;17436:2;17621;;17639:18;;;;17680:15;;;17407:4;17723:280;17737:6;17734:1;17731:13;17723:280;;;17796:13;;17838:9;;-1:-1:-1;;;;;17834:35:142;17822:48;;17910:11;;17904:18;17890:12;;;17883:40;17943:12;;;;17978:15;;;;17866:1;17752:9;17723:280;;;-1:-1:-1;18020:3:142;;17203:826;-1:-1:-1;;;;;;;17203:826:142:o;18034:348::-;18086:8;18096:6;18150:3;18143:4;18135:6;18131:17;18127:27;18117:55;;18168:1;18165;18158:12;18117:55;-1:-1:-1;18191:20:142;;-1:-1:-1;;;;;18223:30:142;;18220:50;;;18266:1;18263;18256:12;18220:50;18303:4;18295:6;18291:17;18279:29;;18355:3;18348:4;18339:6;18331;18327:19;18323:30;18320:39;18317:59;;;18372:1;18369;18362:12;18387:788;18487:6;18495;18503;18511;18519;18572:2;18560:9;18551:7;18547:23;18543:32;18540:52;;;18588:1;18585;18578:12;18540:52;18611:23;;;-1:-1:-1;18685:2:142;18670:18;;18657:32;-1:-1:-1;;;;;18738:14:142;;;18735:34;;;18765:1;18762;18755:12;18735:34;18804:59;18855:7;18846:6;18835:9;18831:22;18804:59;:::i;:::-;18882:8;;-1:-1:-1;18778:85:142;-1:-1:-1;18970:2:142;18955:18;;18942:32;;-1:-1:-1;18986:16:142;;;18983:36;;;19015:1;19012;19005:12;18983:36;;19054:61;19107:7;19096:8;19085:9;19081:24;19054:61;:::i;:::-;18387:788;;;;-1:-1:-1;18387:788:142;;-1:-1:-1;19134:8:142;;19028:87;18387:788;-1:-1:-1;;;18387:788:142:o;19180:118::-;19266:5;19259:13;19252:21;19245:5;19242:32;19232:60;;19288:1;19285;19278:12;19303:241;19359:6;19412:2;19400:9;19391:7;19387:23;19383:32;19380:52;;;19428:1;19425;19418:12;19380:52;19467:9;19454:23;19486:28;19508:5;19486:28;:::i;19779:1033::-;-1:-1:-1;;;;;20281:15:142;;;20263:34;;20333:15;;;20328:2;20313:18;;20306:43;20385:15;;20380:2;20365:18;;20358:43;20432:2;20417:18;;20410:34;;;20475:3;20460:19;;20453:35;;;20212:3;20197:19;;20497:44;20534:6;20497:44;:::i;:::-;20578:6;20572:3;20561:9;20557:19;20550:35;20622:6;20616:3;20605:9;20601:19;20594:35;20666:6;20660:3;20649:9;20645:19;20638:35;20710:6;20704:3;20693:9;20689:19;20682:35;20754:6;20748:3;20737:9;20733:19;20726:35;20798:7;20792:3;20781:9;20777:19;20770:36;19779:1033;;;;;;;;;;;;;;:::o;20817:328::-;20885:6;20893;20946:2;20934:9;20925:7;20921:23;20917:32;20914:52;;;20962:1;20959;20952:12;20914:52;20998:9;20985:23;20975:33;;21058:2;21047:9;21043:18;21030:32;21071:44;21109:5;21071:44;:::i;21150:239::-;21293:2;21278:18;;21305:44;21342:6;21305:44;:::i;:::-;21358:25;;;21150:239;:::o;21394:388::-;21471:6;21479;21532:2;21520:9;21511:7;21507:23;21503:32;21500:52;;;21548:1;21545;21538:12;21500:52;21571:23;;;-1:-1:-1;21645:2:142;21630:18;;21617:32;-1:-1:-1;;;;;21661:30:142;;21658:50;;;21704:1;21701;21694:12;21787:220;21936:2;21925:9;21918:21;21899:4;21956:45;21997:2;21986:9;21982:18;21974:6;21956:45;:::i;22012:380::-;22091:1;22087:12;;;;22134;;;22155:61;;22209:4;22201:6;22197:17;22187:27;;22155:61;22262:2;22254:6;22251:14;22231:18;22228:38;22225:161;;22308:10;22303:3;22299:20;22296:1;22289:31;22343:4;22340:1;22333:15;22371:4;22368:1;22361:15;23011:127;23072:10;23067:3;23063:20;23060:1;23053:31;23103:4;23100:1;23093:15;23127:4;23124:1;23117:15;23143:128;23210:9;;;23231:11;;;23228:37;;;23245:18;;:::i;23276:345::-;-1:-1:-1;;;;;23496:32:142;;;;23478:51;;23560:2;23545:18;;23538:34;;;;23603:2;23588:18;;23581:34;23466:2;23451:18;;23276:345::o;23626:125::-;23691:9;;;23712:10;;;23709:36;;;23725:18;;:::i;23756:345::-;23958:25;;;-1:-1:-1;;;;;24019:32:142;;;;24014:2;23999:18;;23992:60;24083:2;24068:18;;24061:34;23946:2;23931:18;;23756:345::o;24106:279::-;24191:6;24244:2;24232:9;24223:7;24219:23;24215:32;24212:52;;;24260:1;24257;24250:12;24212:52;24292:9;24286:16;24311:44;24349:5;24311:44;:::i;24390:447::-;24621:25;;;-1:-1:-1;;;;;24720:15:142;;;24715:2;24700:18;;24693:43;24772:15;;24767:2;24752:18;;24745:43;24819:2;24804:18;;24797:34;24608:3;24593:19;;24390:447::o;24842:127::-;24903:10;24898:3;24894:20;24891:1;24884:31;24934:4;24931:1;24924:15;24958:4;24955:1;24948:15;24974:217;25014:1;25040;25030:132;;25084:10;25079:3;25075:20;25072:1;25065:31;25119:4;25116:1;25109:15;25147:4;25144:1;25137:15;25030:132;-1:-1:-1;25176:9:142;;24974:217::o;25196:193::-;25234:3;-1:-1:-1;;;;;25267:30:142;;;25306:41;;25327:18;;:::i;:::-;-1:-1:-1;;25363:20:142;;25196:193;-1:-1:-1;;25196:193:142:o;25394:168::-;25467:9;;;25498;;25515:15;;;25509:22;;25495:37;25485:71;;25536:18;;:::i;25567:408::-;25769:2;25751:21;;;25808:2;25788:18;;;25781:30;-1:-1:-1;;;;;;;;;;;25842:2:142;25827:18;;25820:62;-1:-1:-1;;;25913:2:142;25898:18;;25891:42;25965:3;25950:19;;25567:408::o;25980:::-;26182:2;26164:21;;;26221:2;26201:18;;;26194:30;-1:-1:-1;;;;;;;;;;;26255:2:142;26240:18;;26233:62;-1:-1:-1;;;26326:2:142;26311:18;;26304:42;26378:3;26363:19;;25980:408::o;26818:407::-;27020:2;27002:21;;;27059:2;27039:18;;;27032:30;27098:34;27093:2;27078:18;;27071:62;-1:-1:-1;;;27164:2:142;27149:18;;27142:41;27215:3;27200:19;;26818:407::o;27230:304::-;-1:-1:-1;;;;;27460:15:142;;;27442:34;;27512:15;;27507:2;27492:18;;27485:43;27392:2;27377:18;;27230:304::o;27539:245::-;27606:6;27659:2;27647:9;27638:7;27634:23;27630:32;27627:52;;;27675:1;27672;27665:12;27627:52;27707:9;27701:16;27726:28;27748:5;27726:28;:::i;27789:184::-;27859:6;27912:2;27900:9;27891:7;27887:23;27883:32;27880:52;;;27928:1;27925;27918:12;27880:52;-1:-1:-1;27951:16:142;;27789:184;-1:-1:-1;27789:184:142:o;27978:151::-;28057:13;;28079:44;28057:13;28079:44;:::i;:::-;27978:151;;;:::o;28403:248::-;28577:25;;;28633:2;28618:18;;28611:34;28565:2;28550:18;;28403:248::o;28656:274::-;28830:25;;;-1:-1:-1;;;;;28891:32:142;28886:2;28871:18;;28864:60;28818:2;28803:18;;28656:274::o;28935:266::-;29023:6;29018:3;29011:19;29075:6;29068:5;29061:4;29056:3;29052:14;29039:43;-1:-1:-1;29127:1:142;29102:16;;;29120:4;29098:27;;;29091:38;;;;29183:2;29162:15;;;-1:-1:-1;;29158:29:142;29149:39;;;29145:50;;28935:266::o;29206:315::-;29391:6;29380:9;29373:25;29434:2;29429;29418:9;29414:18;29407:30;29354:4;29454:61;29511:2;29500:9;29496:18;29488:6;29480;29454:61;:::i;:::-;29446:69;29206:315;-1:-1:-1;;;;;29206:315:142:o;29526:209::-;29564:3;-1:-1:-1;;;;;29634:14:142;;;-1:-1:-1;;;;;;29660:15:142;;29657:41;;29678:18;;:::i;:::-;29727:1;29714:15;;29526:209;-1:-1:-1;;;29526:209:142:o;29740:682::-;-1:-1:-1;;;;;30098:15:142;;;30080:34;;30145:2;30130:18;;30123:34;;;30188:2;30173:18;;30166:34;;;30236:15;;30231:2;30216:18;;30209:43;30289:3;30283;30268:19;;30261:32;;;30023:4;;30310:62;;30352:19;;30344:6;30336;30310:62;:::i;:::-;30302:70;;30409:6;30403:3;30392:9;30388:19;30381:35;29740:682;;;;;;;;;;:::o;30427:135::-;30466:3;30487:17;;;30484:43;;30507:18;;:::i;:::-;-1:-1:-1;30554:1:142;30543:13;;30427:135::o;30567:157::-;30656:13;;30698:1;30688:12;;30678:40;;30714:1;30711;30704:12;30729:156;30817:13;;30859:1;30849:12;;30839:40;;30875:1;30872;30865:12;30890:420;30965:5;31013:4;31001:9;30996:3;30992:19;30988:30;30985:50;;;31031:1;31028;31021:12;30985:50;31064:2;31058:9;31106:4;31094:17;;-1:-1:-1;;;;;31126:34:142;;31162:22;;;31123:62;31120:88;;;31188:18;;:::i;:::-;31224:2;31217:22;31287:16;;31272:32;;-1:-1:-1;31257:6:142;30890:420;-1:-1:-1;30890:420:142:o;31315:696::-;31389:5;31437:4;31425:9;31420:3;31416:19;31412:30;31409:50;;;31455:1;31452;31445:12;31409:50;31477:22;;:::i;:::-;31468:31;;31529:9;31523:16;31548:46;31586:7;31548:46;:::i;:::-;31603:22;;31670:2;31655:18;;31649:25;31683:46;31649:25;31683:46;:::i;:::-;31761:7;31756:2;31749:5;31745:14;31738:31;;31822:2;31811:9;31807:18;31801:25;31796:2;31789:5;31785:14;31778:49;31880:2;31869:9;31865:18;31859:25;31854:2;31847:5;31843:14;31836:49;31939:3;31928:9;31924:19;31918:26;31912:3;31905:5;31901:15;31894:51;31999:3;31988:9;31984:19;31978:26;31972:3;31965:5;31961:15;31954:51;31315:696;;;;:::o;32016:1203::-;32135:6;32179:9;32170:7;32166:23;32209:3;32205:2;32201:12;32198:32;;;32226:1;32223;32216:12;32198:32;32252:22;;:::i;:::-;32294:4;32290:2;32286:13;32283:33;;;32312:1;32309;32302:12;32283:33;32340:22;;:::i;:::-;32325:37;;32393:9;32387:16;32378:7;32371:33;32459:2;32448:9;32444:18;32438:25;32433:2;32424:7;32420:16;32413:51;32519:2;32508:9;32504:18;32498:25;32493:2;32484:7;32480:16;32473:51;32579:2;32568:9;32564:18;32558:25;32553:2;32544:7;32540:16;32533:51;32607:7;32600:5;32593:22;32647:61;32702:4;32691:9;32687:20;32647:61;:::i;:::-;32642:2;32635:5;32631:14;32624:85;32741:59;32795:3;32784:9;32780:19;32741:59;:::i;:::-;32736:2;32729:5;32725:14;32718:83;32833:76;32901:7;32895:3;32884:9;32880:19;32833:76;:::i;:::-;32828:2;32821:5;32817:14;32810:100;32944:76;33012:7;33005:4;32994:9;32990:20;32944:76;:::i;:::-;32937:4;32930:5;32926:16;32919:102;33054:50;33099:3;33088:9;33084:19;33054:50;:::i;:::-;33048:3;33041:5;33037:15;33030:75;33138:50;33183:3;33172:9;33168:19;33138:50;:::i;:::-;33132:3;33121:15;;33114:75;33125:5;32016:1203;-1:-1:-1;;;;32016:1203:142:o;33224:261::-;33304:5;33298:12;33293:3;33286:25;33360:4;33353:5;33349:16;33343:23;33336:4;33331:3;33327:14;33320:47;33416:4;33409:5;33405:16;33399:23;33392:4;33387:3;33383:14;33376:47;33472:4;33465:5;33461:16;33455:23;33448:4;33443:3;33439:14;33432:47;;;33224:261::o;33490:1447::-;33708:4;33750:3;33739:9;33735:19;33727:27;;33781:6;33770:9;33763:25;33797:61;33854:2;33843:9;33839:18;33830:6;33824:13;33797:61;:::i;:::-;33905:2;33897:6;33893:15;33887:22;33918:63;33976:3;33965:9;33961:19;33947:12;33918:63;:::i;:::-;;34030:4;34022:6;34018:17;34012:24;34045:64;34104:3;34093:9;34089:19;34073:14;34045:64;:::i;:::-;-1:-1:-1;34170:4:142;34158:17;;;34152:24;34146:31;34140:3;34125:19;;34118:60;34227:4;34215:17;;;34209:24;34312:21;;-1:-1:-1;;;;;34308:30:142;;;34302:3;34287:19;;34280:59;34406:2;34386:23;;34380:30;34376:39;34370:3;34355:19;;34348:68;34479:4;34459:25;;34453:32;34447:3;34432:19;;34425:61;34529:25;;;34523:32;34517:3;34502:19;;34495:61;34599:25;;34593:32;34587:3;34572:19;;34565:61;34260:3;34669:24;;;34663:31;34657:3;34642:19;;34635:60;34732:16;;34726:23;34758:55;34808:3;34793:19;;34726:23;34758:55;:::i;:::-;;34862:3;34854:6;34850:16;34844:23;34876:55;34926:3;34915:9;34911:19;34895:14;34876:55;:::i;36427:252::-;36615:3;36600:19;;36628:45;36604:9;36655:6;36628:45;:::i;36684:319::-;36886:25;;;36942:2;36927:18;;36920:34;;;;36985:2;36970:18;;36963:34;36874:2;36859:18;;36684:319::o;37008:726::-;37074:5;37122:4;37110:9;37105:3;37101:19;37097:30;37094:50;;;37140:1;37137;37130:12;37094:50;37162:22;;:::i;:::-;37207:16;;37193:31;;37268:2;37253:18;;37247:25;37153:31;;-1:-1:-1;;;;;;37284:30:142;;37281:50;;;37327:1;37324;37317:12;37281:50;37350:22;;37403:4;37395:13;;37391:23;-1:-1:-1;37381:51:142;;37428:1;37425;37418:12;37381:51;37457:2;37451:9;37482:48;37498:31;37526:2;37498:31;:::i;37482:48::-;37553:2;37546:5;37539:17;37593:3;37588:2;37583;37579;37575:11;37571:20;37568:29;37565:49;;;37610:1;37607;37600:12;37565:49;37623:67;37687:2;37682;37675:5;37671:14;37666:2;37662;37658:11;37623:67;:::i;:::-;37717:2;37706:14;;37699:29;-1:-1:-1;37710:5:142;;37008:726;-1:-1:-1;;;37008:726:142:o;37739:1054::-;37831:6;37884:2;37872:9;37863:7;37859:23;37855:32;37852:52;;;37900:1;37897;37890:12;37852:52;37927:16;;-1:-1:-1;;;;;37992:14:142;;;37989:34;;;38019:1;38016;38009:12;37989:34;38042:22;;;;38098:4;38080:16;;;38076:27;38073:47;;;38116:1;38113;38106:12;38073:47;38142:22;;:::i;:::-;38193:2;38187:9;38180:5;38173:24;38235:2;38231;38227:11;38221:18;38248:46;38286:7;38248:46;:::i;:::-;38321:2;38310:14;;38303:31;38372:2;38364:11;;38358:18;38385:46;38358:18;38385:46;:::i;:::-;38458:2;38447:14;;38440:31;38510:2;38502:11;;38496:18;38526:16;;;38523:36;;;38555:1;38552;38545:12;38523:36;38591:65;38648:7;38637:8;38633:2;38629:17;38591:65;:::i;:::-;38586:2;38579:5;38575:14;38568:89;;38704:3;38700:2;38696:12;38690:19;38684:3;38677:5;38673:15;38666:44;38757:3;38753:2;38749:12;38743:19;38737:3;38730:5;38726:15;38719:44;38782:5;38772:15;;;;;37739:1054;;;;:::o;38798:1012::-;38901:6;38954:2;38942:9;38933:7;38929:23;38925:32;38922:52;;;38970:1;38967;38960:12;38922:52;38997:16;;-1:-1:-1;;;;;39062:14:142;;;39059:34;;;39089:1;39086;39079:12;39059:34;39112:22;;;;39168:4;39150:16;;;39146:27;39143:47;;;39186:1;39183;39176:12;39143:47;39212:22;;:::i;:::-;39263:2;39257:9;39250:5;39243:24;39305:2;39301;39297:11;39291:18;39318:46;39356:7;39318:46;:::i;:::-;39391:2;39380:14;;39373:31;39450:2;39442:11;;;39436:18;39420:14;;;39413:42;39493:2;39485:11;;39479:18;39506:46;39479:18;39506:46;:::i;:::-;39579:2;39568:14;;39561:31;39631:3;39623:12;;39617:19;39648:16;;;39645:36;;;39677:1;39674;39667:12;39645:36;39714:65;39771:7;39760:8;39756:2;39752:17;39714:65;:::i;:::-;39708:3;39697:15;;39690:90;-1:-1:-1;39701:5:142;38798:1012;-1:-1:-1;;;;;38798:1012:142:o;40224:545::-;40326:2;40321:3;40318:11;40315:448;;;40362:1;40387:5;40383:2;40376:17;40432:4;40428:2;40418:19;40502:2;40490:10;40486:19;40483:1;40479:27;40473:4;40469:38;40538:4;40526:10;40523:20;40520:47;;;-1:-1:-1;40561:4:142;40520:47;40616:2;40611:3;40607:12;40604:1;40600:20;40594:4;40590:31;40580:41;;40671:82;40689:2;40682:5;40679:13;40671:82;;;40734:17;;;40715:1;40704:13;40671:82;;;40675:3;;;40224:545;;;:::o;40945:1352::-;41065:10;;-1:-1:-1;;;;;41087:30:142;;41084:56;;;41120:18;;:::i;:::-;41149:97;41239:6;41199:38;41231:4;41225:11;41199:38;:::i;:::-;41193:4;41149:97;:::i;:::-;41301:4;;41365:2;41354:14;;41382:1;41377:663;;;;42084:1;42101:6;42098:89;;;-1:-1:-1;42153:19:142;;;42147:26;42098:89;-1:-1:-1;;40902:1:142;40898:11;;;40894:24;40890:29;40880:40;40926:1;40922:11;;;40877:57;42200:81;;41347:944;;41377:663;40171:1;40164:14;;;40208:4;40195:18;;-1:-1:-1;;41413:20:142;;;41531:236;41545:7;41542:1;41539:14;41531:236;;;41634:19;;;41628:26;41613:42;;41726:27;;;;41694:1;41682:14;;;;41561:19;;41531:236;;;41535:3;41795:6;41786:7;41783:19;41780:201;;;41856:19;;;41850:26;-1:-1:-1;;41939:1:142;41935:14;;;41951:3;41931:24;41927:37;41923:42;41908:58;41893:74;;41780:201;-1:-1:-1;;;;;42027:1:142;42011:14;;;42007:22;41994:36;;-1:-1:-1;40945:1352:142:o;42587:273::-;42655:6;42708:2;42696:9;42687:7;42683:23;42679:32;42676:52;;;42724:1;42721;42714:12;42676:52;42756:9;42750:16;42806:4;42799:5;42795:16;42788:5;42785:27;42775:55;;42826:1;42823;42816:12;42865:422;42954:1;42997:5;42954:1;43011:270;43032:7;43022:8;43019:21;43011:270;;;43091:4;43087:1;43083:6;43079:17;43073:4;43070:27;43067:53;;;43100:18;;:::i;:::-;43150:7;43140:8;43136:22;43133:55;;;43170:16;;;;43133:55;43249:22;;;;43209:15;;;;43011:270;;;43015:3;42865:422;;;;;:::o;43292:806::-;43341:5;43371:8;43361:80;;-1:-1:-1;43412:1:142;43426:5;;43361:80;43460:4;43450:76;;-1:-1:-1;43497:1:142;43511:5;;43450:76;43542:4;43560:1;43555:59;;;;43628:1;43623:130;;;;43535:218;;43555:59;43585:1;43576:10;;43599:5;;;43623:130;43660:3;43650:8;43647:17;43644:43;;;43667:18;;:::i;:::-;-1:-1:-1;;43723:1:142;43709:16;;43738:5;;43535:218;;43837:2;43827:8;43824:16;43818:3;43812:4;43809:13;43805:36;43799:2;43789:8;43786:16;43781:2;43775:4;43772:12;43768:35;43765:77;43762:159;;;-1:-1:-1;43874:19:142;;;43906:5;;43762:159;43953:34;43978:8;43972:4;43953:34;:::i;:::-;44023:6;44019:1;44015:6;44011:19;44002:7;43999:32;43996:58;;;44034:18;;:::i;:::-;44072:20;;43292:806;-1:-1:-1;;;43292:806:142:o;44103:131::-;44163:5;44192:36;44219:8;44213:4;44192:36;:::i;45971:127::-;46032:10;46027:3;46023:20;46020:1;46013:31;46063:4;46060:1;46053:15;46087:4;46084:1;46077:15;46394:1185;46523:6;46554:2;46597;46585:9;46576:7;46572:23;46568:32;46565:52;;;46613:1;46610;46603:12;46565:52;46640:16;;-1:-1:-1;;;;;46668:30:142;;46665:50;;;46711:1;46708;46701:12;46665:50;46734:22;;46787:4;46779:13;;46775:27;-1:-1:-1;46765:55:142;;46816:1;46813;46806:12;46765:55;46845:2;46839:9;46868:60;46884:43;46924:2;46884:43;:::i;46868:60::-;46962:15;;;47044:1;47040:10;;;;47032:19;;47028:28;;;46993:12;;;;47068:19;;;47065:39;;;47100:1;47097;47090:12;47065:39;47124:11;;;;47144:405;47160:6;47155:3;47152:15;47144:405;;;47242:4;47236:3;47227:7;47223:17;47219:28;47216:118;;;47288:1;47317:2;47313;47306:14;47216:118;47360:22;;:::i;:::-;47409:10;;47395:25;;47462:12;;;47456:19;47440:14;;;47433:43;47489:18;;47186:4;47177:14;;;;47527:12;;;;47144:405;;47584:127;47645:10;47640:3;47636:20;47633:1;47626:31;47676:4;47673:1;47666:15;47700:4;47697:1;47690:15;47716:497;-1:-1:-1;;;;;48001:32:142;;;;47983:51;;48065:2;48050:18;;48043:34;;;;48108:2;48093:18;;48086:34;;;;48151:2;48136:18;;48129:34;48194:3;48179:19;;48172:35;47970:3;47955:19;;47716:497::o;49398:317::-;49575:2;49564:9;49557:21;49538:4;49595:45;49636:2;49625:9;49621:18;49613:6;49595:45;:::i;:::-;49587:53;;49705:1;49701;49696:3;49692:11;49688:19;49680:6;49676:32;49671:2;49660:9;49656:18;49649:60;49398:317;;;;;:::o;50072:216::-;50136:9;;;50164:11;;;50111:3;50194:9;;50222:10;;50218:19;;50247:10;;50239:19;;50215:44;50212:70;;;50262:18;;:::i;51107:287::-;51236:3;51274:6;51268:13;51290:66;51349:6;51344:3;51337:4;51329:6;51325:17;51290:66;:::i;:::-;51372:16;;;;;51107:287;-1:-1:-1;;51107:287:142:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6208,"length":32},{"start":6272,"length":32},{"start":6431,"length":32},{"start":6495,"length":32},{"start":6615,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"CVStrategyV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"CVStrategyV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)76358"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70122"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)76325":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)76358":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70122":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)76325"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[76221],"IArbitrator":[76325],"ICollateralVault":[76358],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70122],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70040],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72700],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72701,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":76326,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76325,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":76222,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76221,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70123,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70040,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":76359,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76358,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"3175:11:98"},"referencedDeclaration":76325,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"6863:11:98"},"referencedDeclaration":76325,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"7260:11:98"},"referencedDeclaration":76325,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":76358,"src":"9139:16:98"},"referencedDeclaration":76358,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70122,"src":"9184:12:98"},"referencedDeclaration":70122,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72700,"src":"9752:21:98"},"referencedDeclaration":72700,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76358,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$76358_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":76330,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70122_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":72317,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71024,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$76451_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70079,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76337,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71724,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71783,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71065,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72106,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71020,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71020,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72106,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71065,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$76325_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"31151:11:98"},"referencedDeclaration":76325,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72493,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":76324,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$76325_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70122_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76337,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":76272,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76325_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71024,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$76451_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76357,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76357,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71024,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$76451_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76357,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76212,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76325_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[76220],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76221,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,76221,65471,3089,3317,3106,2969,70711,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70634]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file +{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516167766200004d60003960008181611840015281816118800152818161191f0152818161195f01526119d701526167766000f3fe60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212200f75d48ef3c99ad939ae8097d1e2f2bbe3e3aa304a3a3d182314b380df17796e64736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;1088:4:64;1045:48;;3782:50033:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212200f75d48ef3c99ad939ae8097d1e2f2bbe3e3aa304a3a3d182314b380df17796e64736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:131;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:131;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:131;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:131;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9672:25:131;;;9660:2;9645:18;21565:107:98;9526:177:131;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;10968:25:131;;;11024:2;11009:18;;11002:34;;;;11052:18;;;11045:34;11110:2;11095:18;;11088:34;10955:3;10940:19;8833:24:98;10737:391:131;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;15532:31:131;;;15514:50;;15502:2;15487:18;8639:26:98;15370:200:131;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;30100:191;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:103;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;10318:799:98:-;;;;;;;;;;-1:-1:-1;10318:799:98;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22599:2:131;3325:201:47;;;22581:21:131;22638:2;22618:18;;;22611:30;22677:34;22657:18;;;22650:62;-1:-1:-1;;;22728:18:131;;;22721:44;22782:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;22964:36:131;;3721:14:47;;22952:2:131;22937:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9672:25:131;;;9645:18;;46534:29:98;9526:177:131;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9672:25:131;;;9645:18;;50531:29:98;9526:177:131;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9672:25:131;;;9645:18;;50657:31:98;9526:177:131;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9672:25:131;;9660:2;9645:18;;9526:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;26595:2:131;2064:92:64;;;26577:21:131;26634:2;26614:18;;;26607:30;26673:34;26653:18;;;26646:62;-1:-1:-1;;;26724:18:131;;;26717:54;26788:19;;2064:92:64;26393:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;17286:1025:98:-:0;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;30100:191::-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9672:25:131;;;9645:18;;48528:29:98;9526:177:131;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9672:25:131;;;9645:18;;48652:29:98;9526:177:131;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9672:25:131;;;9645:18;;53238:29:98;9526:177:131;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9672:25:131;;;53745:29:98;;-1:-1:-1;9645:18:131;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;10318:799;2435:16:97;:14;:16::i;:::-;10411:28:98::1;10431:7;10411:19;:28::i;:::-;10503:23;::::0;10528:10:::1;:12:::0;;10485:56:::1;::::0;-1:-1:-1;;;;;10503:23:98::1;::::0;::::1;10528:12;::::0;::::1;:::i;:::-;;;;;10485:17;:56::i;:::-;10450:15;:92:::0;;-1:-1:-1;;;;;;10450:92:98::1;-1:-1:-1::0;;;;;10450:92:98;;;::::1;::::0;;::::1;::::0;;10552:28:::1;::::0;;-1:-1:-1;;;10552:28:98;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;10552:28:98;;;;;;;;-1:-1:-1;10450:92:98;10552:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10591:40;10645:5;10634:51;;;;;;;;;;;;:::i;:::-;10700:20;::::0;::::1;::::0;10591:94;;-1:-1:-1;;;;;;10700:34:98::1;10696:94;;10757:22;;-1:-1:-1::0;;;10757:22:98::1;;;;;;;;;;;10696:94;10820:20;::::0;::::1;::::0;10800:17:::1;:40:::0;;-1:-1:-1;;;;;;10800:40:98::1;-1:-1:-1::0;;;;;10800:40:98;;::::1;::::0;;;::::1;::::0;;10866:15:::1;::::0;::::1;::::0;10851:12:::1;:30:::0;;-1:-1:-1;;10851:30:98::1;-1:-1:-1::0;10866:15:98;10851:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10905:14:98::1;::::0;::::1;::::0;10891:11:::1;:28:::0;;-1:-1:-1;;10891:28:98::1;;10905:14:::0;10891:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10943:14:98::1;::::0;::::1;::::0;10929:28;:11:::1;:28:::0;10994:14:::1;::::0;::::1;::::0;10967:11:::1;:42:::0;;-1:-1:-1;;;;;;10967:42:98::1;-1:-1:-1::0;;;;;10967:42:98;;::::1;::::0;;;::::1;::::0;;11035:19:::1;::::0;::::1;::::0;11056:11;;11020:48:::1;::::0;11035:19;11020:14:::1;:48::i;:::-;11084:26;11098:7;11107:2;11084:26;;;;;;;:::i;:::-;;;;;;;;10401:716;10318:799:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7055:25:::2;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35144:2:131;2415:73:45::1;::::0;::::1;35126:21:131::0;35183:2;35163:18;;;35156:30;35222:34;35202:18;;;35195:62;-1:-1:-1;;;35273:18:131;;;35266:36;35319:19;;2415:73:45::1;34942:402:131::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;35607:15:131;;;35589:34;;35659:15;;;35654:2;35639:18;;35632:43;35711:15;;;35706:2;35691:18;;35684:43;35539:2;35524:18;;35349:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;36074:25:131;;;36153:18;;;36146:43;;;;36205:18;;;36198:43;;;;36257:18;;36250:34;36300:19;;;36293:35;36344:19;;;36337:35;;;;36403:3;36388:19;;36381:35;;;;45815:407:98;;36061:3:131;36046:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9672:25:131;;;9645:18;;23722:29:98;9526:177:131;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9672:25:131;;;9645:18;;24025:29:98;9526:177:131;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9672:25:131;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9645:18:131;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9672:25:131;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9645:18:131;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;44441:2:131;42048:53:98;;;44423:21:131;44480:2;44460:18;;;44453:30;-1:-1:-1;;;44499:18:131;;;44492:58;44567:18;;42048:53:98;44239:352:131;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;44987:2:131;3262:56:60;;;44969:21:131;45026:2;45006:18;;;44999:30;45065:34;45045:18;;;45038:62;-1:-1:-1;;;45116:18:131;;;45109:44;45170:19;;3262:56:60;44785:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;45402:2:131;3140:82:60;;;45384:21:131;45441:2;45421:18;;;45414:30;45480:34;45460:18;;;45453:62;-1:-1:-1;;;45531:18:131;;;45524:39;45580:19;;3140:82:60;45200:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;45812:2:131;1675:68:45;;;45794:21:131;;;45831:18;;;45824:30;45890:34;45870:18;;;45863:62;45942:18;;1675:68:45;45610:356:131;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;12805:296:98:-;12894:48;;;;;;;;;;;;-1:-1:-1;;;12894:48:98;;;;12929:11;;12878:4;;12894:48;;-1:-1:-1;;;;;12929:11:98;12894;:48::i;:::-;12964:11;;-1:-1:-1;;;;;12964:11:98;12952:76;;-1:-1:-1;13013:4:98;;12805:296;-1:-1:-1;12805:296:98:o;12952:76::-;13044:11;;:50;;-1:-1:-1;;;13044:50:98;;-1:-1:-1;;;;;13044:11:98;;;;:28;;:50;;13073:5;;13088:4;;13044:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637::-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;12473:141::-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:131;;;11071:19:97;;3276:2:131;3261:18;11071:19:97;3148:187:131;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;46305:2:131;46276:15;46272:45;4867:36:6;;;46260:58:131;46334:12;;;46327:28;;;4823:7:6;;;;46371:12:131;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;22272:633:98:-;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9672:25:131;;;27095:28:98;;9660:2:131;9645:18;27095:28:98;9526:177:131;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;48420:2:131;41543:66:98;;;48402:21:131;48459:2;48439:18;;;48432:30;48498:34;48478:18;;;48471:62;-1:-1:-1;;;48549:18:131;;;48542:38;48597:19;;41543:66:98;48218:404:131;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;48829:2:131;41619:53:98;;;48811:21:131;48868:2;48848:18;;;48841:30;-1:-1:-1;;;48887:18:131;;;48880:58;48955:18;;41619:53:98;48627:352:131;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;49186:2:131;1479:95:60;;;49168:21:131;49225:2;49205:18;;;49198:30;49264:34;49244:18;;;49237:62;-1:-1:-1;;;49315:18:131;;;49308:43;49368:19;;1479:95:60;48984:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;6994:145:34:-;7061:71;7124:2;7128;7077:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;7077:54:34;;;;;;;;;;;;;;-1:-1:-1;;;;;7077:54:34;-1:-1:-1;;;7077:54:34;;;7061:15;:71::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;49922:2:131;2847:58:46;;;49904:21:131;49961:2;49941:18;;;49934:30;-1:-1:-1;;;49980:18:131;;;49973:53;50043:18;;2847:58:46;49720:347:131;11899:391:98;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9672:25:131;;;9645:18;;33311:29:98;9526:177:131;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;181:376:34:-;275:14;;131:42;448:2;435:16;;251:21;;275:14;435:16;131:42;484:5;473:68;464:77;;401:150;;181:376;:::o;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;51601:2:131;8113:60:76;;;51583:21:131;51640:2;51620:18;;;51613:30;51679:31;51659:18;;;51652:59;51728:18;;8113:60:76;51399:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:131:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:131;;14:180;-1:-1:-1;14:180:131:o;199:104::-;-1:-1:-1;;;;;265:31:131;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:131;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:131;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:131:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:131;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:131:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:131;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:131;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:131;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:253::-;4677:2;4671:9;4719:4;4707:17;;-1:-1:-1;;;;;4739:34:131;;4775:22;;;4736:62;4733:88;;;4801:18;;:::i;4863:257::-;4935:4;4929:11;;;4967:17;;-1:-1:-1;;;;;4999:34:131;;5035:22;;;4996:62;4993:88;;;5061:18;;:::i;5125:253::-;5197:2;5191:9;5239:4;5227:17;;-1:-1:-1;;;;;5259:34:131;;5295:22;;;5256:62;5253:88;;;5321:18;;:::i;5383:275::-;5454:2;5448:9;5519:2;5500:13;;-1:-1:-1;;5496:27:131;5484:40;;-1:-1:-1;;;;;5539:34:131;;5575:22;;;5536:62;5533:88;;;5601:18;;:::i;:::-;5637:2;5630:22;5383:275;;-1:-1:-1;5383:275:131:o;5663:144::-;-1:-1:-1;;;;;5751:31:131;;5741:42;;5731:70;;5797:1;5794;5787:12;5812:1289;5942:6;5950;5994:9;5985:7;5981:23;6024:3;6020:2;6016:12;6013:32;;;6041:1;6038;6031:12;6013:32;6065:4;6061:2;6057:13;6054:33;;;6083:1;6080;6073:12;6054:33;6109:22;;:::i;:::-;6168:9;6155:23;6187:46;6225:7;6187:46;:::i;:::-;6242:22;;6316:2;6301:18;;6288:32;6329:46;6288:32;6329:46;:::i;:::-;6402:2;6391:14;;6384:31;6475:2;6460:18;;;6447:32;6431:14;;;6424:56;6540:2;6525:18;;;6512:32;6496:14;;;6489:56;6606:3;6591:19;;;6578:33;6561:15;;;6554:58;6673:3;6658:19;;;6645:33;6628:15;;;6621:58;6395:5;;-1:-1:-1;;;6719:17:131;;6715:27;6712:47;;;6755:1;6752;6745:12;6712:47;;6783:22;;:::i;:::-;6858:4;6843:20;;6830:34;6814:51;;6927:3;6912:19;;6899:33;6894:2;6881:16;;6874:59;6995:3;6980:19;;6967:33;6962:2;6949:16;;6942:59;7063:3;7048:19;;;7035:33;7030:2;7017:16;;7010:59;-1:-1:-1;5812:1289:131;6821:7;;-1:-1:-1;5812:1289:131:o;7106:183::-;7166:4;-1:-1:-1;;;;;7188:30:131;;7185:56;;;7221:18;;:::i;:::-;-1:-1:-1;7266:1:131;7262:14;7278:4;7258:25;;7106:183::o;7294:750::-;7348:5;7401:3;7394:4;7386:6;7382:17;7378:27;7368:55;;7419:1;7416;7409:12;7368:55;7455:6;7442:20;7481:4;7505:60;7521:43;7561:2;7521:43;:::i;:::-;7505:60;:::i;:::-;7599:15;;;7685:1;7681:10;;;;7669:23;;7665:32;;;7630:12;;;;7709:15;;;7706:35;;;7737:1;7734;7727:12;7706:35;7773:2;7765:6;7761:15;7785:230;7801:6;7796:3;7793:15;7785:230;;;7881:3;7868:17;7898:44;7936:5;7898:44;:::i;:::-;7955:18;;7993:12;;;;7818;;7785:230;;;-1:-1:-1;8033:5:131;7294:750;-1:-1:-1;;;;;;7294:750:131:o;8049:186::-;8097:4;-1:-1:-1;;;;;8119:30:131;;8116:56;;;8152:18;;:::i;:::-;-1:-1:-1;8218:2:131;8197:15;-1:-1:-1;;8193:29:131;8224:4;8189:40;;8049:186::o;8240:336::-;8304:5;8333:52;8349:35;8377:6;8349:35;:::i;8333:52::-;8324:61;;8408:6;8401:5;8394:21;8448:3;8439:6;8434:3;8430:16;8427:25;8424:45;;;8465:1;8462;8455:12;8424:45;8514:6;8509:3;8502:4;8495:5;8491:16;8478:43;8568:1;8561:4;8552:6;8545:5;8541:18;8537:29;8530:40;8240:336;;;;;:::o;8581:220::-;8623:5;8676:3;8669:4;8661:6;8657:17;8653:27;8643:55;;8694:1;8691;8684:12;8643:55;8716:79;8791:3;8782:6;8769:20;8762:4;8754:6;8750:17;8716:79;:::i;8806:715::-;8917:6;8925;8933;8986:2;8974:9;8965:7;8961:23;8957:32;8954:52;;;9002:1;8999;8992:12;8954:52;9029:23;;-1:-1:-1;;;;;9101:14:131;;;9098:34;;;9128:1;9125;9118:12;9098:34;9151:61;9204:7;9195:6;9184:9;9180:22;9151:61;:::i;:::-;9141:71;;9265:2;9254:9;9250:18;9237:32;9221:48;;9294:2;9284:8;9281:16;9278:36;;;9310:1;9307;9300:12;9278:36;;9333:51;9376:7;9365:8;9354:9;9350:24;9333:51;:::i;:::-;9323:61;;;9434:2;9423:9;9419:18;9406:32;9447:44;9485:5;9447:44;:::i;:::-;9510:5;9500:15;;;8806:715;;;;;:::o;9708:229::-;-1:-1:-1;;;;;9898:32:131;;;;9880:51;;9868:2;9853:18;;9708:229::o;10164:568::-;10241:6;10249;10257;10310:2;10298:9;10289:7;10285:23;10281:32;10278:52;;;10326:1;10323;10316:12;10278:52;10365:9;10352:23;10384:44;10422:5;10384:44;:::i;:::-;10447:5;-1:-1:-1;10504:2:131;10489:18;;10476:32;10517:46;10476:32;10517:46;:::i;:::-;10582:7;-1:-1:-1;10641:2:131;10626:18;;10613:32;10654:46;10613:32;10654:46;:::i;11133:468::-;11210:6;11218;11271:2;11259:9;11250:7;11246:23;11242:32;11239:52;;;11287:1;11284;11277:12;11239:52;11314:23;;-1:-1:-1;;;;;11349:30:131;;11346:50;;;11392:1;11389;11382:12;11346:50;11415:49;11456:7;11447:6;11436:9;11432:22;11415:49;:::i;:::-;11405:59;;;11514:2;11503:9;11499:18;11486:32;11527:44;11565:5;11527:44;:::i;:::-;11590:5;11580:15;;;11133:468;;;;;:::o;11814:142::-;11897:1;11890:5;11887:12;11877:46;;11903:18;;:::i;:::-;11932;;11814:142::o;11961:213::-;12110:2;12095:18;;12122:46;12099:9;12150:6;12122:46;:::i;12179:328::-;12247:6;12255;12308:2;12296:9;12287:7;12283:23;12279:32;12276:52;;;12324:1;12321;12314:12;12276:52;12363:9;12350:23;12382:44;12420:5;12382:44;:::i;:::-;12445:5;12497:2;12482:18;;;;12469:32;;-1:-1:-1;;;12179:328:131:o;12512:248::-;12580:6;12588;12641:2;12629:9;12620:7;12616:23;12612:32;12609:52;;;12657:1;12654;12647:12;12609:52;-1:-1:-1;;12680:23:131;;;12750:2;12735:18;;;12722:32;;-1:-1:-1;12512:248:131:o;12765:316::-;12842:6;12850;12858;12911:2;12899:9;12890:7;12886:23;12882:32;12879:52;;;12927:1;12924;12917:12;12879:52;-1:-1:-1;;12950:23:131;;;13020:2;13005:18;;12992:32;;-1:-1:-1;13071:2:131;13056:18;;;13043:32;;12765:316;-1:-1:-1;12765:316:131:o;13086:143::-;13170:1;13163:5;13160:12;13150:46;;13176:18;;:::i;13234:215::-;13384:2;13369:18;;13396:47;13373:9;13425:6;13396:47;:::i;13454:260::-;13513:6;13566:2;13554:9;13545:7;13541:23;13537:32;13534:52;;;13582:1;13579;13572:12;13534:52;13621:9;13608:23;13640:44;13678:5;13640:44;:::i;14140:468::-;14217:6;14225;14278:2;14266:9;14257:7;14253:23;14249:32;14246:52;;;14294:1;14291;14284:12;14246:52;14333:9;14320:23;14352:44;14390:5;14352:44;:::i;:::-;14415:5;-1:-1:-1;14471:2:131;14456:18;;14443:32;-1:-1:-1;;;;;14487:30:131;;14484:50;;;14530:1;14527;14520:12;14484:50;14553:49;14594:7;14585:6;14574:9;14570:22;14553:49;:::i;:::-;14543:59;;;14140:468;;;;;:::o;14613:752::-;14700:6;14708;14716;14769:2;14757:9;14748:7;14744:23;14740:32;14737:52;;;14785:1;14782;14775:12;14737:52;14824:9;14811:23;14843:44;14881:5;14843:44;:::i;:::-;14906:5;-1:-1:-1;14962:2:131;14947:18;;14934:32;-1:-1:-1;;;;;14978:30:131;;14975:50;;;15021:1;15018;15011:12;14975:50;15044:22;;15097:4;15089:13;;15085:27;-1:-1:-1;15075:55:131;;15126:1;15123;15116:12;15075:55;15149:73;15214:7;15209:2;15196:16;15191:2;15187;15183:11;15149:73;:::i;15575:261::-;15756:2;15745:9;15738:21;15719:4;15776:54;15826:2;15815:9;15811:18;15803:6;15776:54;:::i;15841:1357::-;15968:6;15976;16029:2;16017:9;16008:7;16004:23;16000:32;15997:52;;;16045:1;16042;16035:12;15997:52;16072:23;;-1:-1:-1;;;;;16144:14:131;;;16141:34;;;16171:1;16168;16161:12;16141:34;16194:61;16247:7;16238:6;16227:9;16223:22;16194:61;:::i;:::-;16184:71;;16274:2;16264:12;;16329:2;16318:9;16314:18;16301:32;16358:2;16348:8;16345:16;16342:36;;;16374:1;16371;16364:12;16342:36;16397:24;;16452:4;16444:13;;16440:27;-1:-1:-1;16430:55:131;;16481:1;16478;16471:12;16430:55;16517:2;16504:16;16540:60;16556:43;16596:2;16556:43;:::i;16540:60::-;16634:15;;;16716:1;16712:10;;;;16704:19;;16700:28;;;16665:12;;;;16740:19;;;16737:39;;;16772:1;16769;16762:12;16737:39;16804:2;16800;16796:11;16816:352;16832:6;16827:3;16824:15;16816:352;;;16918:3;16905:17;16954:2;16941:11;16938:19;16935:109;;;16998:1;17027:2;17023;17016:14;16935:109;17069:56;17117:7;17112:2;17098:11;17094:2;17090:20;17086:29;17069:56;:::i;:::-;17057:69;;-1:-1:-1;17146:12:131;;;;16849;;16816:352;;;16820:3;17187:5;17177:15;;;;;;;;15841:1357;;;;;:::o;17203:826::-;17436:2;17488:21;;;17558:13;;17461:18;;;17580:22;;;17407:4;;17436:2;17621;;17639:18;;;;17680:15;;;17407:4;17723:280;17737:6;17734:1;17731:13;17723:280;;;17796:13;;17838:9;;-1:-1:-1;;;;;17834:35:131;17822:48;;17910:11;;17904:18;17890:12;;;17883:40;17943:12;;;;17978:15;;;;17866:1;17752:9;17723:280;;;-1:-1:-1;18020:3:131;;17203:826;-1:-1:-1;;;;;;;17203:826:131:o;18034:348::-;18086:8;18096:6;18150:3;18143:4;18135:6;18131:17;18127:27;18117:55;;18168:1;18165;18158:12;18117:55;-1:-1:-1;18191:20:131;;-1:-1:-1;;;;;18223:30:131;;18220:50;;;18266:1;18263;18256:12;18220:50;18303:4;18295:6;18291:17;18279:29;;18355:3;18348:4;18339:6;18331;18327:19;18323:30;18320:39;18317:59;;;18372:1;18369;18362:12;18387:788;18487:6;18495;18503;18511;18519;18572:2;18560:9;18551:7;18547:23;18543:32;18540:52;;;18588:1;18585;18578:12;18540:52;18611:23;;;-1:-1:-1;18685:2:131;18670:18;;18657:32;-1:-1:-1;;;;;18738:14:131;;;18735:34;;;18765:1;18762;18755:12;18735:34;18804:59;18855:7;18846:6;18835:9;18831:22;18804:59;:::i;:::-;18882:8;;-1:-1:-1;18778:85:131;-1:-1:-1;18970:2:131;18955:18;;18942:32;;-1:-1:-1;18986:16:131;;;18983:36;;;19015:1;19012;19005:12;18983:36;;19054:61;19107:7;19096:8;19085:9;19081:24;19054:61;:::i;:::-;18387:788;;;;-1:-1:-1;18387:788:131;;-1:-1:-1;19134:8:131;;19028:87;18387:788;-1:-1:-1;;;18387:788:131:o;19180:118::-;19266:5;19259:13;19252:21;19245:5;19242:32;19232:60;;19288:1;19285;19278:12;19303:241;19359:6;19412:2;19400:9;19391:7;19387:23;19383:32;19380:52;;;19428:1;19425;19418:12;19380:52;19467:9;19454:23;19486:28;19508:5;19486:28;:::i;19779:1033::-;-1:-1:-1;;;;;20281:15:131;;;20263:34;;20333:15;;;20328:2;20313:18;;20306:43;20385:15;;20380:2;20365:18;;20358:43;20432:2;20417:18;;20410:34;;;20475:3;20460:19;;20453:35;;;20212:3;20197:19;;20497:44;20534:6;20497:44;:::i;:::-;20578:6;20572:3;20561:9;20557:19;20550:35;20622:6;20616:3;20605:9;20601:19;20594:35;20666:6;20660:3;20649:9;20645:19;20638:35;20710:6;20704:3;20693:9;20689:19;20682:35;20754:6;20748:3;20737:9;20733:19;20726:35;20798:7;20792:3;20781:9;20777:19;20770:36;19779:1033;;;;;;;;;;;;;;:::o;20817:328::-;20885:6;20893;20946:2;20934:9;20925:7;20921:23;20917:32;20914:52;;;20962:1;20959;20952:12;20914:52;20998:9;20985:23;20975:33;;21058:2;21047:9;21043:18;21030:32;21071:44;21109:5;21071:44;:::i;21150:239::-;21293:2;21278:18;;21305:44;21342:6;21305:44;:::i;:::-;21358:25;;;21150:239;:::o;21394:388::-;21471:6;21479;21532:2;21520:9;21511:7;21507:23;21503:32;21500:52;;;21548:1;21545;21538:12;21500:52;21571:23;;;-1:-1:-1;21645:2:131;21630:18;;21617:32;-1:-1:-1;;;;;21661:30:131;;21658:50;;;21704:1;21701;21694:12;21787:220;21936:2;21925:9;21918:21;21899:4;21956:45;21997:2;21986:9;21982:18;21974:6;21956:45;:::i;22012:380::-;22091:1;22087:12;;;;22134;;;22155:61;;22209:4;22201:6;22197:17;22187:27;;22155:61;22262:2;22254:6;22251:14;22231:18;22228:38;22225:161;;22308:10;22303:3;22299:20;22296:1;22289:31;22343:4;22340:1;22333:15;22371:4;22368:1;22361:15;23011:127;23072:10;23067:3;23063:20;23060:1;23053:31;23103:4;23100:1;23093:15;23127:4;23124:1;23117:15;23143:128;23210:9;;;23231:11;;;23228:37;;;23245:18;;:::i;23276:345::-;-1:-1:-1;;;;;23496:32:131;;;;23478:51;;23560:2;23545:18;;23538:34;;;;23603:2;23588:18;;23581:34;23466:2;23451:18;;23276:345::o;23626:125::-;23691:9;;;23712:10;;;23709:36;;;23725:18;;:::i;23756:345::-;23958:25;;;-1:-1:-1;;;;;24019:32:131;;;;24014:2;23999:18;;23992:60;24083:2;24068:18;;24061:34;23946:2;23931:18;;23756:345::o;24106:279::-;24191:6;24244:2;24232:9;24223:7;24219:23;24215:32;24212:52;;;24260:1;24257;24250:12;24212:52;24292:9;24286:16;24311:44;24349:5;24311:44;:::i;24390:447::-;24621:25;;;-1:-1:-1;;;;;24720:15:131;;;24715:2;24700:18;;24693:43;24772:15;;24767:2;24752:18;;24745:43;24819:2;24804:18;;24797:34;24608:3;24593:19;;24390:447::o;24842:127::-;24903:10;24898:3;24894:20;24891:1;24884:31;24934:4;24931:1;24924:15;24958:4;24955:1;24948:15;24974:217;25014:1;25040;25030:132;;25084:10;25079:3;25075:20;25072:1;25065:31;25119:4;25116:1;25109:15;25147:4;25144:1;25137:15;25030:132;-1:-1:-1;25176:9:131;;24974:217::o;25196:193::-;25234:3;-1:-1:-1;;;;;25267:30:131;;;25306:41;;25327:18;;:::i;:::-;-1:-1:-1;;25363:20:131;;25196:193;-1:-1:-1;;25196:193:131:o;25394:168::-;25467:9;;;25498;;25515:15;;;25509:22;;25495:37;25485:71;;25536:18;;:::i;25567:408::-;25769:2;25751:21;;;25808:2;25788:18;;;25781:30;-1:-1:-1;;;;;;;;;;;25842:2:131;25827:18;;25820:62;-1:-1:-1;;;25913:2:131;25898:18;;25891:42;25965:3;25950:19;;25567:408::o;25980:::-;26182:2;26164:21;;;26221:2;26201:18;;;26194:30;-1:-1:-1;;;;;;;;;;;26255:2:131;26240:18;;26233:62;-1:-1:-1;;;26326:2:131;26311:18;;26304:42;26378:3;26363:19;;25980:408::o;26818:407::-;27020:2;27002:21;;;27059:2;27039:18;;;27032:30;27098:34;27093:2;27078:18;;27071:62;-1:-1:-1;;;27164:2:131;27149:18;;27142:41;27215:3;27200:19;;26818:407::o;27230:304::-;-1:-1:-1;;;;;27460:15:131;;;27442:34;;27512:15;;27507:2;27492:18;;27485:43;27392:2;27377:18;;27230:304::o;27539:245::-;27606:6;27659:2;27647:9;27638:7;27634:23;27630:32;27627:52;;;27675:1;27672;27665:12;27627:52;27707:9;27701:16;27726:28;27748:5;27726:28;:::i;27789:184::-;27859:6;27912:2;27900:9;27891:7;27887:23;27883:32;27880:52;;;27928:1;27925;27918:12;27880:52;-1:-1:-1;27951:16:131;;27789:184;-1:-1:-1;27789:184:131:o;27978:151::-;28057:13;;28079:44;28057:13;28079:44;:::i;:::-;27978:151;;;:::o;28403:248::-;28577:25;;;28633:2;28618:18;;28611:34;28565:2;28550:18;;28403:248::o;28656:274::-;28830:25;;;-1:-1:-1;;;;;28891:32:131;28886:2;28871:18;;28864:60;28818:2;28803:18;;28656:274::o;28935:266::-;29023:6;29018:3;29011:19;29075:6;29068:5;29061:4;29056:3;29052:14;29039:43;-1:-1:-1;29127:1:131;29102:16;;;29120:4;29098:27;;;29091:38;;;;29183:2;29162:15;;;-1:-1:-1;;29158:29:131;29149:39;;;29145:50;;28935:266::o;29206:315::-;29391:6;29380:9;29373:25;29434:2;29429;29418:9;29414:18;29407:30;29354:4;29454:61;29511:2;29500:9;29496:18;29488:6;29480;29454:61;:::i;:::-;29446:69;29206:315;-1:-1:-1;;;;;29206:315:131:o;29526:209::-;29564:3;-1:-1:-1;;;;;29634:14:131;;;-1:-1:-1;;;;;;29660:15:131;;29657:41;;29678:18;;:::i;:::-;29727:1;29714:15;;29526:209;-1:-1:-1;;;29526:209:131:o;29740:682::-;-1:-1:-1;;;;;30098:15:131;;;30080:34;;30145:2;30130:18;;30123:34;;;30188:2;30173:18;;30166:34;;;30236:15;;30231:2;30216:18;;30209:43;30289:3;30283;30268:19;;30261:32;;;30023:4;;30310:62;;30352:19;;30344:6;30336;30310:62;:::i;:::-;30302:70;;30409:6;30403:3;30392:9;30388:19;30381:35;29740:682;;;;;;;;;;:::o;30427:135::-;30466:3;30487:17;;;30484:43;;30507:18;;:::i;:::-;-1:-1:-1;30554:1:131;30543:13;;30427:135::o;30567:157::-;30656:13;;30698:1;30688:12;;30678:40;;30714:1;30711;30704:12;30729:156;30817:13;;30859:1;30849:12;;30839:40;;30875:1;30872;30865:12;30890:420;30965:5;31013:4;31001:9;30996:3;30992:19;30988:30;30985:50;;;31031:1;31028;31021:12;30985:50;31064:2;31058:9;31106:4;31094:17;;-1:-1:-1;;;;;31126:34:131;;31162:22;;;31123:62;31120:88;;;31188:18;;:::i;:::-;31224:2;31217:22;31287:16;;31272:32;;-1:-1:-1;31257:6:131;30890:420;-1:-1:-1;30890:420:131:o;31315:696::-;31389:5;31437:4;31425:9;31420:3;31416:19;31412:30;31409:50;;;31455:1;31452;31445:12;31409:50;31477:22;;:::i;:::-;31468:31;;31529:9;31523:16;31548:46;31586:7;31548:46;:::i;:::-;31603:22;;31670:2;31655:18;;31649:25;31683:46;31649:25;31683:46;:::i;:::-;31761:7;31756:2;31749:5;31745:14;31738:31;;31822:2;31811:9;31807:18;31801:25;31796:2;31789:5;31785:14;31778:49;31880:2;31869:9;31865:18;31859:25;31854:2;31847:5;31843:14;31836:49;31939:3;31928:9;31924:19;31918:26;31912:3;31905:5;31901:15;31894:51;31999:3;31988:9;31984:19;31978:26;31972:3;31965:5;31961:15;31954:51;31315:696;;;;:::o;32016:1203::-;32135:6;32179:9;32170:7;32166:23;32209:3;32205:2;32201:12;32198:32;;;32226:1;32223;32216:12;32198:32;32252:22;;:::i;:::-;32294:4;32290:2;32286:13;32283:33;;;32312:1;32309;32302:12;32283:33;32340:22;;:::i;:::-;32325:37;;32393:9;32387:16;32378:7;32371:33;32459:2;32448:9;32444:18;32438:25;32433:2;32424:7;32420:16;32413:51;32519:2;32508:9;32504:18;32498:25;32493:2;32484:7;32480:16;32473:51;32579:2;32568:9;32564:18;32558:25;32553:2;32544:7;32540:16;32533:51;32607:7;32600:5;32593:22;32647:61;32702:4;32691:9;32687:20;32647:61;:::i;:::-;32642:2;32635:5;32631:14;32624:85;32741:59;32795:3;32784:9;32780:19;32741:59;:::i;:::-;32736:2;32729:5;32725:14;32718:83;32833:76;32901:7;32895:3;32884:9;32880:19;32833:76;:::i;:::-;32828:2;32821:5;32817:14;32810:100;32944:76;33012:7;33005:4;32994:9;32990:20;32944:76;:::i;:::-;32937:4;32930:5;32926:16;32919:102;33054:50;33099:3;33088:9;33084:19;33054:50;:::i;:::-;33048:3;33041:5;33037:15;33030:75;33138:50;33183:3;33172:9;33168:19;33138:50;:::i;:::-;33132:3;33121:15;;33114:75;33125:5;32016:1203;-1:-1:-1;;;;32016:1203:131:o;33224:261::-;33304:5;33298:12;33293:3;33286:25;33360:4;33353:5;33349:16;33343:23;33336:4;33331:3;33327:14;33320:47;33416:4;33409:5;33405:16;33399:23;33392:4;33387:3;33383:14;33376:47;33472:4;33465:5;33461:16;33455:23;33448:4;33443:3;33439:14;33432:47;;;33224:261::o;33490:1447::-;33708:4;33750:3;33739:9;33735:19;33727:27;;33781:6;33770:9;33763:25;33797:61;33854:2;33843:9;33839:18;33830:6;33824:13;33797:61;:::i;:::-;33905:2;33897:6;33893:15;33887:22;33918:63;33976:3;33965:9;33961:19;33947:12;33918:63;:::i;:::-;;34030:4;34022:6;34018:17;34012:24;34045:64;34104:3;34093:9;34089:19;34073:14;34045:64;:::i;:::-;-1:-1:-1;34170:4:131;34158:17;;;34152:24;34146:31;34140:3;34125:19;;34118:60;34227:4;34215:17;;;34209:24;34312:21;;-1:-1:-1;;;;;34308:30:131;;;34302:3;34287:19;;34280:59;34406:2;34386:23;;34380:30;34376:39;34370:3;34355:19;;34348:68;34479:4;34459:25;;34453:32;34447:3;34432:19;;34425:61;34529:25;;;34523:32;34517:3;34502:19;;34495:61;34599:25;;34593:32;34587:3;34572:19;;34565:61;34260:3;34669:24;;;34663:31;34657:3;34642:19;;34635:60;34732:16;;34726:23;34758:55;34808:3;34793:19;;34726:23;34758:55;:::i;:::-;;34862:3;34854:6;34850:16;34844:23;34876:55;34926:3;34915:9;34911:19;34895:14;34876:55;:::i;36427:252::-;36615:3;36600:19;;36628:45;36604:9;36655:6;36628:45;:::i;36684:319::-;36886:25;;;36942:2;36927:18;;36920:34;;;;36985:2;36970:18;;36963:34;36874:2;36859:18;;36684:319::o;37008:726::-;37074:5;37122:4;37110:9;37105:3;37101:19;37097:30;37094:50;;;37140:1;37137;37130:12;37094:50;37162:22;;:::i;:::-;37207:16;;37193:31;;37268:2;37253:18;;37247:25;37153:31;;-1:-1:-1;;;;;;37284:30:131;;37281:50;;;37327:1;37324;37317:12;37281:50;37350:22;;37403:4;37395:13;;37391:23;-1:-1:-1;37381:51:131;;37428:1;37425;37418:12;37381:51;37457:2;37451:9;37482:48;37498:31;37526:2;37498:31;:::i;37482:48::-;37553:2;37546:5;37539:17;37593:3;37588:2;37583;37579;37575:11;37571:20;37568:29;37565:49;;;37610:1;37607;37600:12;37565:49;37623:67;37687:2;37682;37675:5;37671:14;37666:2;37662;37658:11;37623:67;:::i;:::-;37717:2;37706:14;;37699:29;-1:-1:-1;37710:5:131;;37008:726;-1:-1:-1;;;37008:726:131:o;37739:1054::-;37831:6;37884:2;37872:9;37863:7;37859:23;37855:32;37852:52;;;37900:1;37897;37890:12;37852:52;37927:16;;-1:-1:-1;;;;;37992:14:131;;;37989:34;;;38019:1;38016;38009:12;37989:34;38042:22;;;;38098:4;38080:16;;;38076:27;38073:47;;;38116:1;38113;38106:12;38073:47;38142:22;;:::i;:::-;38193:2;38187:9;38180:5;38173:24;38235:2;38231;38227:11;38221:18;38248:46;38286:7;38248:46;:::i;:::-;38321:2;38310:14;;38303:31;38372:2;38364:11;;38358:18;38385:46;38358:18;38385:46;:::i;:::-;38458:2;38447:14;;38440:31;38510:2;38502:11;;38496:18;38526:16;;;38523:36;;;38555:1;38552;38545:12;38523:36;38591:65;38648:7;38637:8;38633:2;38629:17;38591:65;:::i;:::-;38586:2;38579:5;38575:14;38568:89;;38704:3;38700:2;38696:12;38690:19;38684:3;38677:5;38673:15;38666:44;38757:3;38753:2;38749:12;38743:19;38737:3;38730:5;38726:15;38719:44;38782:5;38772:15;;;;;37739:1054;;;;:::o;38798:1012::-;38901:6;38954:2;38942:9;38933:7;38929:23;38925:32;38922:52;;;38970:1;38967;38960:12;38922:52;38997:16;;-1:-1:-1;;;;;39062:14:131;;;39059:34;;;39089:1;39086;39079:12;39059:34;39112:22;;;;39168:4;39150:16;;;39146:27;39143:47;;;39186:1;39183;39176:12;39143:47;39212:22;;:::i;:::-;39263:2;39257:9;39250:5;39243:24;39305:2;39301;39297:11;39291:18;39318:46;39356:7;39318:46;:::i;:::-;39391:2;39380:14;;39373:31;39450:2;39442:11;;;39436:18;39420:14;;;39413:42;39493:2;39485:11;;39479:18;39506:46;39479:18;39506:46;:::i;:::-;39579:2;39568:14;;39561:31;39631:3;39623:12;;39617:19;39648:16;;;39645:36;;;39677:1;39674;39667:12;39645:36;39714:65;39771:7;39760:8;39756:2;39752:17;39714:65;:::i;:::-;39708:3;39697:15;;39690:90;-1:-1:-1;39701:5:131;38798:1012;-1:-1:-1;;;;;38798:1012:131:o;40224:545::-;40326:2;40321:3;40318:11;40315:448;;;40362:1;40387:5;40383:2;40376:17;40432:4;40428:2;40418:19;40502:2;40490:10;40486:19;40483:1;40479:27;40473:4;40469:38;40538:4;40526:10;40523:20;40520:47;;;-1:-1:-1;40561:4:131;40520:47;40616:2;40611:3;40607:12;40604:1;40600:20;40594:4;40590:31;40580:41;;40671:82;40689:2;40682:5;40679:13;40671:82;;;40734:17;;;40715:1;40704:13;40671:82;;;40675:3;;;40224:545;;;:::o;40945:1352::-;41065:10;;-1:-1:-1;;;;;41087:30:131;;41084:56;;;41120:18;;:::i;:::-;41149:97;41239:6;41199:38;41231:4;41225:11;41199:38;:::i;:::-;41193:4;41149:97;:::i;:::-;41301:4;;41365:2;41354:14;;41382:1;41377:663;;;;42084:1;42101:6;42098:89;;;-1:-1:-1;42153:19:131;;;42147:26;42098:89;-1:-1:-1;;40902:1:131;40898:11;;;40894:24;40890:29;40880:40;40926:1;40922:11;;;40877:57;42200:81;;41347:944;;41377:663;40171:1;40164:14;;;40208:4;40195:18;;-1:-1:-1;;41413:20:131;;;41531:236;41545:7;41542:1;41539:14;41531:236;;;41634:19;;;41628:26;41613:42;;41726:27;;;;41694:1;41682:14;;;;41561:19;;41531:236;;;41535:3;41795:6;41786:7;41783:19;41780:201;;;41856:19;;;41850:26;-1:-1:-1;;41939:1:131;41935:14;;;41951:3;41931:24;41927:37;41923:42;41908:58;41893:74;;41780:201;-1:-1:-1;;;;;42027:1:131;42011:14;;;42007:22;41994:36;;-1:-1:-1;40945:1352:131:o;42587:273::-;42655:6;42708:2;42696:9;42687:7;42683:23;42679:32;42676:52;;;42724:1;42721;42714:12;42676:52;42756:9;42750:16;42806:4;42799:5;42795:16;42788:5;42785:27;42775:55;;42826:1;42823;42816:12;42865:422;42954:1;42997:5;42954:1;43011:270;43032:7;43022:8;43019:21;43011:270;;;43091:4;43087:1;43083:6;43079:17;43073:4;43070:27;43067:53;;;43100:18;;:::i;:::-;43150:7;43140:8;43136:22;43133:55;;;43170:16;;;;43133:55;43249:22;;;;43209:15;;;;43011:270;;;43015:3;42865:422;;;;;:::o;43292:806::-;43341:5;43371:8;43361:80;;-1:-1:-1;43412:1:131;43426:5;;43361:80;43460:4;43450:76;;-1:-1:-1;43497:1:131;43511:5;;43450:76;43542:4;43560:1;43555:59;;;;43628:1;43623:130;;;;43535:218;;43555:59;43585:1;43576:10;;43599:5;;;43623:130;43660:3;43650:8;43647:17;43644:43;;;43667:18;;:::i;:::-;-1:-1:-1;;43723:1:131;43709:16;;43738:5;;43535:218;;43837:2;43827:8;43824:16;43818:3;43812:4;43809:13;43805:36;43799:2;43789:8;43786:16;43781:2;43775:4;43772:12;43768:35;43765:77;43762:159;;;-1:-1:-1;43874:19:131;;;43906:5;;43762:159;43953:34;43978:8;43972:4;43953:34;:::i;:::-;44023:6;44019:1;44015:6;44011:19;44002:7;43999:32;43996:58;;;44034:18;;:::i;:::-;44072:20;;43292:806;-1:-1:-1;;;43292:806:131:o;44103:131::-;44163:5;44192:36;44219:8;44213:4;44192:36;:::i;45971:127::-;46032:10;46027:3;46023:20;46020:1;46013:31;46063:4;46060:1;46053:15;46087:4;46084:1;46077:15;46394:1185;46523:6;46554:2;46597;46585:9;46576:7;46572:23;46568:32;46565:52;;;46613:1;46610;46603:12;46565:52;46640:16;;-1:-1:-1;;;;;46668:30:131;;46665:50;;;46711:1;46708;46701:12;46665:50;46734:22;;46787:4;46779:13;;46775:27;-1:-1:-1;46765:55:131;;46816:1;46813;46806:12;46765:55;46845:2;46839:9;46868:60;46884:43;46924:2;46884:43;:::i;46868:60::-;46962:15;;;47044:1;47040:10;;;;47032:19;;47028:28;;;46993:12;;;;47068:19;;;47065:39;;;47100:1;47097;47090:12;47065:39;47124:11;;;;47144:405;47160:6;47155:3;47152:15;47144:405;;;47242:4;47236:3;47227:7;47223:17;47219:28;47216:118;;;47288:1;47317:2;47313;47306:14;47216:118;47360:22;;:::i;:::-;47409:10;;47395:25;;47462:12;;;47456:19;47440:14;;;47433:43;47489:18;;47186:4;47177:14;;;;47527:12;;;;47144:405;;47584:127;47645:10;47640:3;47636:20;47633:1;47626:31;47676:4;47673:1;47666:15;47700:4;47697:1;47690:15;47716:497;-1:-1:-1;;;;;48001:32:131;;;;47983:51;;48065:2;48050:18;;48043:34;;;;48108:2;48093:18;;48086:34;;;;48151:2;48136:18;;48129:34;48194:3;48179:19;;48172:35;47970:3;47955:19;;47716:497::o;49398:317::-;49575:2;49564:9;49557:21;49538:4;49595:45;49636:2;49625:9;49621:18;49613:6;49595:45;:::i;:::-;49587:53;;49705:1;49701;49696:3;49692:11;49688:19;49680:6;49676:32;49671:2;49660:9;49656:18;49649:60;49398:317;;;;;:::o;50072:216::-;50136:9;;;50164:11;;;50111:3;50194:9;;50222:10;;50218:19;;50247:10;;50239:19;;50215:44;50212:70;;;50262:18;;:::i;51107:287::-;51236:3;51274:6;51268:13;51290:66;51349:6;51344:3;51337:4;51329:6;51325:17;51290:66;:::i;:::-;51372:16;;;;;51107:287;-1:-1:-1;;51107:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6208,"length":32},{"start":6272,"length":32},{"start":6431,"length":32},{"start":6495,"length":32},{"start":6615,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"CVStrategyV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"CVStrategyV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)75152"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70106"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)75119":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)75152":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70106":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)75119"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[75015],"IArbitrator":[75119],"ICollateralVault":[75152],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70106],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72174],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75120,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75119,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75016,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75015,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75153,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"3175:11:98"},"referencedDeclaration":75119,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"6863:11:98"},"referencedDeclaration":75119,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"7260:11:98"},"referencedDeclaration":75119,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":75152,"src":"9139:16:98"},"referencedDeclaration":75152,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70106,"src":"9184:12:98"},"referencedDeclaration":70106,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"9752:21:98"},"referencedDeclaration":72174,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75152_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75124,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":71791,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71198,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71257,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"31151:11:98"},"referencedDeclaration":75119,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71967,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":75118,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":75066,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75006,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[75014],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75015,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,75015,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70122]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file diff --git a/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json b/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json index 6903d741..93f2e984 100644 --- a/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json +++ b/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUntake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","getPointSystem()":"c3292171","increasePower(address,uint256)":"782aadff"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUntake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"IPointStrategy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUntake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"IPointStrategy"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[76221],"IArbitrator":[76325],"ICollateralVault":[76358],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70122],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70040],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72700],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72701,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":76326,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76325,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":76222,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76221,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70123,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70040,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":76359,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76358,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"3175:11:98"},"referencedDeclaration":76325,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"6863:11:98"},"referencedDeclaration":76325,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"7260:11:98"},"referencedDeclaration":76325,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":76358,"src":"9139:16:98"},"referencedDeclaration":76358,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70122,"src":"9184:12:98"},"referencedDeclaration":70122,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72700,"src":"9752:21:98"},"referencedDeclaration":72700,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76358,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$76358_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":76330,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70122_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":72317,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71024,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$76451_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70079,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76337,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71724,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71783,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71065,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72106,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71020,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71020,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72106,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71065,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$76325_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76325,"src":"31151:11:98"},"referencedDeclaration":76325,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72493,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72093,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":76324,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$76325_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70122_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76337,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":76272,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76325_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71024,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$76451_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76357,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76357,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71024,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$76451_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76357,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76325","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76212,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76325_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[76220],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76346,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":76221,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,76221,65471,3089,3317,3106,2969,70711,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70634]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file +{"abi":[{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUntake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","getPointSystem()":"c3292171","increasePower(address,uint256)":"782aadff"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUntake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"IPointStrategy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUntake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"IPointStrategy"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[75015],"IArbitrator":[75119],"ICollateralVault":[75152],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70106],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72174],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75120,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75119,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75016,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75015,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75153,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"3175:11:98"},"referencedDeclaration":75119,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"6863:11:98"},"referencedDeclaration":75119,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"7260:11:98"},"referencedDeclaration":75119,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":75152,"src":"9139:16:98"},"referencedDeclaration":75152,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70106,"src":"9184:12:98"},"referencedDeclaration":70106,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"9752:21:98"},"referencedDeclaration":72174,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75152_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75124,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":71791,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71198,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71257,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"31151:11:98"},"referencedDeclaration":75119,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71967,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":75118,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":75066,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75006,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[75014],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75015,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,75015,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70122]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file diff --git a/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json b/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json index 22e67c06..bf83295c 100644 --- a/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json +++ b/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json @@ -1 +1 @@ -{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addToAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunityV0_1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_1"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeFromAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"membersToAdd","type":"address[]","internalType":"address[]"},{"name":"membersToRemove","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AllowlistMembersAdded","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"AllowlistMembersRemoved","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"InitializedCV2","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalInvalidForAllocation","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_proposalStatus","type":"uint8","internalType":"enum ProposalStatus"}]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161709d6200004d600039600081816118cc0152818161190c015281816119ab015281816119eb0152611a63015261709d6000f3fe6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122065cb38e54d9d57511a6b1f1604eda90387c8a1764eee5b2a8aa4ef9a6a878a2364736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;1088:4:64;1045:48;;1164:5287:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122065cb38e54d9d57511a6b1f1604eda90387c8a1764eee5b2a8aa4ef9a6a878a2364736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45:98;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:142;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:142;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:142;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:142;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9901:25:142;;;9889:2;9874:18;21565:107:98;9755:177:142;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;11197:25:142;;;11253:2;11238:18;;11231:34;;;;11281:18;;;11274:34;11339:2;11324:18;;11317:34;11184:3;11169:19;8833:24:98;10966:391:142;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;5083:125:99:-;;;;;;;;;;-1:-1:-1;5083:125:99;;;;;:::i;:::-;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:105:-;;;;;;;;;;;;;:::i;3906:332:99:-;;;;;;;;;;-1:-1:-1;3906:332:99;;;;;:::i;:::-;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;17209:31:142;;;17191:50;;17179:2;17164:18;8639:26:98;17047:200:142;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;5866:137:99;;;;;;;;;;-1:-1:-1;5866:137:99;;;;;:::i;:::-;;:::i;30100:191:98:-;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:105;;;;;;;;;;-1:-1:-1;404:115:105;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;2648:879:99:-;;;;;;;;;;-1:-1:-1;2648:879:99;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;24276:2:142;3325:201:47;;;24258:21:142;24315:2;24295:18;;;24288:30;24354:34;24334:18;;;24327:62;-1:-1:-1;;;24405:18:142;;;24398:44;24459:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;24641:36:142;;3721:14:47;;24629:2:142;24614:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9901:25:142;;;9874:18;;46534:29:98;9755:177:142;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9901:25:142;;;9874:18;;50531:29:98;9755:177:142;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9901:25:142;;;9874:18;;50657:31:98;9755:177:142;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9901:25:142;;9889:2;9874:18;;9755:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28272:2:142;2064:92:64;;;28254:21:142;28311:2;28291:18;;;28284:30;28350:34;28330:18;;;28323:62;-1:-1:-1;;;28401:18:142;;;28394:54;28465:19;;2064:92:64;28070:420:142;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;5083:125:99:-:0;5150:17;:15;:17::i;:::-;5177:24;5193:7;5177:15;:24::i;17286:1025:98:-;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:105:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:105;591:49;;715:12;-1:-1:-1;;;;;707:33:105;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:105:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:105;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:105;;;;;;;;-1:-1:-1;;876:40:105;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:105:o;3906:332:99:-;4129:17;:15;:17::i;:::-;4156:75;4171:17;4190:9;4201:12;4215:15;4156:14;:75::i;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;5866:137:99:-;5940:17;:15;:17::i;:::-;5967:29;5988:7;5967:20;:29::i;30100:191:98:-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9901:25:142;;;9874:18;;48528:29:98;9755:177:142;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9901:25:142;;;9874:18;;48652:29:98;9755:177:142;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:105:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:105::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9901:25:142;;;9874:18;;53238:29:98;9755:177:142;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9901:25:142;;;53745:29:98;;-1:-1:-1;9874:18:142;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;2648:879:99;2435:16:97;:14;:16::i;:::-;2742:28:99::1;2762:7;2742:19;:28::i;:::-;2834:23;::::0;2859:10:::1;:12:::0;;2816:56:::1;::::0;-1:-1:-1;;;;;2834:23:99::1;::::0;::::1;2859:12;::::0;::::1;:::i;:::-;;;;;2816:17;:56::i;:::-;2781:15;:92:::0;;-1:-1:-1;;;;;;2781:92:99::1;-1:-1:-1::0;;;;;2781:92:99;;;::::1;::::0;;::::1;::::0;;2883:28:::1;::::0;;-1:-1:-1;;;2883:28:99;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;2883:28:99;;;;;;;;-1:-1:-1;2781:92:99;2883:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2922:40;2976:5;2965:51;;;;;;;;;;;;:::i;:::-;3031:20;::::0;::::1;::::0;2922:94;;-1:-1:-1;;;;;;3031:34:99::1;3027:94;;3088:22;;-1:-1:-1::0;;;3088:22:99::1;;;;;;;;;;;3027:94;3195:20;::::0;::::1;::::0;3175:17:::1;:40:::0;;-1:-1:-1;;;;;;3175:40:99::1;-1:-1:-1::0;;;;;3175:40:99;;::::1;::::0;;;::::1;::::0;;3241:15:::1;::::0;::::1;::::0;3226:12:::1;:30:::0;;-1:-1:-1;;3226:30:99::1;-1:-1:-1::0;3241:15:99;3226:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3280:14:99::1;::::0;::::1;::::0;3266:11:::1;:28:::0;;-1:-1:-1;;3266:28:99::1;;3280:14:::0;3266:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3318:14:99::1;::::0;::::1;::::0;3304:28;:11:::1;:28:::0;3369:14:::1;::::0;::::1;::::0;3342:11:::1;:42:::0;;-1:-1:-1;;;;;;3342:42:99::1;-1:-1:-1::0;;;;;3342:42:99;;::::1;::::0;;;::::1;::::0;;3409:19:::1;::::0;::::1;::::0;3430:11;;3443:16:::1;::::0;;-1:-1:-1;3443:16:99;;;::::1;::::0;::::1;3461::::0;;;;;;;;;3394:84:::1;::::0;3409:19;3430:11;3394:14:::1;:84::i;:::-;3493:27;3508:7;3517:2;3493:27;;;;;;;:::i;:::-;;;;;;;;2732:795;2648:879:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7014:31:::2;7030:5;7037:7;7014:15;:31::i;:::-;7055:25;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;38780:2:142;2415:73:45::1;::::0;::::1;38762:21:142::0;38819:2;38799:18;;;38792:30;38858:34;38838:18;;;38831:62;-1:-1:-1;;;38909:18:142;;;38902:36;38955:19;;2415:73:45::1;38578:402:142::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;39243:15:142;;;39225:34;;39295:15;;;39290:2;39275:18;;39268:43;39347:15;;;39342:2;39327:18;;39320:43;39175:2;39160:18;;38985:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;39710:25:142;;;39789:18;;;39782:43;;;;39841:18;;;39834:43;;;;39893:18;;39886:34;39936:19;;;39929:35;39980:19;;;39973:35;;;;40039:3;40024:19;;40017:35;;;;45815:407:98;;39697:3:142;39682:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9901:25:142;;;9874:18;;23722:29:98;9755:177:142;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9901:25:142;;;9874:18;;24025:29:98;9755:177:142;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9901:25:142;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9874:18:142;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9901:25:142;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9874:18:142;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;48077:2:142;42048:53:98;;;48059:21:142;48116:2;48096:18;;;48089:30;-1:-1:-1;;;48135:18:142;;;48128:58;48203:18;;42048:53:98;47875:352:142;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:105:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:105;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:105;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;48623:2:142;3262:56:60;;;48605:21:142;48662:2;48642:18;;;48635:30;48701:34;48681:18;;;48674:62;-1:-1:-1;;;48752:18:142;;;48745:44;48806:19;;3262:56:60;48421:410:142;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;49038:2:142;3140:82:60;;;49020:21:142;49077:2;49057:18;;;49050:30;49116:34;49096:18;;;49089:62;-1:-1:-1;;;49167:18:142;;;49160:39;49216:19;;3140:82:60;48836:405:142;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;49448:2:142;1675:68:45;;;49430:21:142;;;49467:18;;;49460:30;49526:34;49506:18;;;49499:62;49578:18;;1675:68:45;49246:356:142;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;5214:646:99:-;5284:21;5348:6;;5318:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5308:48;;;;;;5284:72;;5371:26;:24;:26::i;:::-;-1:-1:-1;;;;;5371:34:99;;5406:13;5429:1;5371:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5367:156;;;5448:26;:24;:26::i;:::-;-1:-1:-1;;;;;5448:37:99;;5486:13;5509:1;5448:64;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5367:156;5537:9;5532:268;5556:7;:14;5552:1;:18;5532:268;;;5596:26;:24;:26::i;:::-;-1:-1:-1;;;;;5596:34:99;;5631:13;5646:7;5654:1;5646:10;;;;;;;;:::i;:::-;;;;;;;5596:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5591:199;;5677:26;:24;:26::i;:::-;-1:-1:-1;;;;;5677:36:99;;5754:6;;5724:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5714:48;;;;;;5764:7;5772:1;5764:10;;;;;;;;:::i;:::-;;;;;;;5677:98;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5591:199;5572:3;;;;:::i;:::-;;;;5532:268;;;;5815:38;5837:6;;5845:7;5815:38;;;;;;;:::i;4551:526::-;4653:11;;4625:4;;-1:-1:-1;;;;;4653:11:99;4641:363;;4695:21;4759:6;;4729:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;4719:48;;;;;;4695:72;;4785:26;:24;:26::i;:::-;-1:-1:-1;;;;;4785:34:99;;4820:13;4843:1;4785:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4781:213;;;-1:-1:-1;4873:4:99;;4551:526;-1:-1:-1;;4551:526:99:o;4781:213::-;4923:26;:24;:26::i;:::-;-1:-1:-1;;;;;4923:34:99;;4958:13;4973:5;4923:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;4641:363::-;5020:11;;:50;;-1:-1:-1;;;5020:50:99;;-1:-1:-1;;;;;5020:11:99;;;;:28;;:50;;5049:5;;5064:4;;5020:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637:98:-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;3533:367:99:-;3757:50;3778:17;3797:9;3757:20;:50::i;:::-;3817:29;3833:12;3817:15;:29::i;:::-;3856:37;3877:15;6009:440;6089:9;6084:303;6108:7;:14;6104:1;:18;6084:303;;;6147:26;:24;:26::i;:::-;-1:-1:-1;;;;;6147:34:99;;6222:6;;6192:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6182:48;;;;;;6232:7;6240:1;6232:10;;;;;;;;:::i;:::-;;;;;;;6147:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6143:234;;;6263:26;:24;:26::i;:::-;-1:-1:-1;;;;;6263:37:99;;6341:6;;6311:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6301:48;;;;;;6351:7;6359:1;6351:10;;;;;;;;:::i;:::-;;;;;;;6263:99;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6143:234;6124:3;;;;:::i;:::-;;;;6084:303;;;;6402:40;6426:6;;6434:7;6402:40;;;;;;;:::i;12473:141:98:-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:142;;;11071:19:97;;3276:2:142;3261:18;11071:19:97;3148:187:142;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;51018:2:142;50989:15;50985:45;4867:36:6;;;50973:58:142;51047:12;;;51040:28;;;4823:7:6;;;;51084:12:142;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;4244:301:99:-;4347:27;4388:5;4377:38;;;;;;;;;;;;:::i;:::-;4347:68;;4430:9;4425:114;4449:2;:9;4445:1;:13;4425:114;;;4479:49;4511:2;4514:1;4511:5;;;;;;;;:::i;:::-;;;;;;;:16;;;4479:31;:49::i;:::-;4460:3;;;;:::i;:::-;;;;4425:114;;22272:633:98;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9901:25:142;;;27095:28:98;;9889:2:142;9874:18;27095:28:98;9755:177:142;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;53001:2:142;41543:66:98;;;52983:21:142;53040:2;53020:18;;;53013:30;53079:34;53059:18;;;53052:62;-1:-1:-1;;;53130:18:142;;;53123:38;53178:19;;41543:66:98;52799:404:142;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;53410:2:142;41619:53:98;;;53392:21:142;53449:2;53429:18;;;53422:30;-1:-1:-1;;;53468:18:142;;;53461:58;53536:18;;41619:53:98;53208:352:142;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;53767:2:142;1479:95:60;;;53749:21:142;53806:2;53786:18;;;53779:30;53845:34;53825:18;;;53818:62;-1:-1:-1;;;53896:18:142;;;53889:43;53949:19;;1479:95:60;53565:409:142;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;54181:2:142;2847:58:46;;;54163:21:142;54220:2;54200:18;;;54193:30;-1:-1:-1;;;54239:18:142;;;54232:53;54302:18;;2847:58:46;53979:347:142;2019:473:99;2113:18;2134:22;;;:9;:22;;;;;;2183:16;;;;;;:43;;;;;;;;:::i;:::-;;:91;;;-1:-1:-1;2250:24:99;2230:16;;;;;;:44;;;;;;;;:::i;:::-;;2183:91;:154;;;-1:-1:-1;2314:23:99;2294:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:154;:201;;;-1:-1:-1;2361:23:99;2341:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:201;2166:320;;;2458:16;;;;2416:59;;-1:-1:-1;;;2416:59:99;;;;2445:11;;2458:16;;;;;2416:59;;;:::i;11899:391:98:-;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9901:25:142;;;9874:18;;33311:29:98;9755:177:142;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;56184:2:142;8113:60:76;;;56166:21:142;56223:2;56203:18;;;56196:30;56262:31;56242:18;;;56235:59;56311:18;;8113:60:76;55982:353:142;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:142:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:142;;14:180;-1:-1:-1;14:180:142:o;199:104::-;-1:-1:-1;;;;;265:31:142;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:142;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:142;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:142:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:142;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:142:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:142;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:142;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:142;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:255::-;4677:2;4671:9;4719:6;4707:19;;-1:-1:-1;;;;;4741:34:142;;4777:22;;;4738:62;4735:88;;;4803:18;;:::i;4865:257::-;4937:4;4931:11;;;4969:17;;-1:-1:-1;;;;;5001:34:142;;5037:22;;;4998:62;4995:88;;;5063:18;;:::i;5127:253::-;5199:2;5193:9;5241:4;5229:17;;-1:-1:-1;;;;;5261:34:142;;5297:22;;;5258:62;5255:88;;;5323:18;;:::i;5385:275::-;5456:2;5450:9;5521:2;5502:13;;-1:-1:-1;;5498:27:142;5486:40;;-1:-1:-1;;;;;5541:34:142;;5577:22;;;5538:62;5535:88;;;5603:18;;:::i;:::-;5639:2;5632:22;5385:275;;-1:-1:-1;5385:275:142:o;5665:144::-;-1:-1:-1;;;;;5753:31:142;;5743:42;;5733:70;;5799:1;5796;5789:12;5814:727;5877:5;5925:4;5913:9;5908:3;5904:19;5900:30;5897:50;;;5943:1;5940;5933:12;5897:50;5965:22;;:::i;:::-;5956:31;;6024:9;6011:23;6043:46;6081:7;6043:46;:::i;:::-;6098:22;;6172:2;6157:18;;6144:32;6185:46;6144:32;6185:46;:::i;:::-;6263:7;6258:2;6251:5;6247:14;6240:31;;6331:2;6320:9;6316:18;6303:32;6298:2;6291:5;6287:14;6280:56;6396:2;6385:9;6381:18;6368:32;6363:2;6356:5;6352:14;6345:56;6462:3;6451:9;6447:19;6434:33;6428:3;6421:5;6417:15;6410:58;6529:3;6518:9;6514:19;6501:33;6495:3;6488:5;6484:15;6477:58;5814:727;;;;:::o;6546:413::-;6601:5;6649:4;6637:9;6632:3;6628:19;6624:30;6621:50;;;6667:1;6664;6657:12;6621:50;6689:22;;:::i;:::-;6680:31;;6747:9;6734:23;6727:5;6720:38;6818:2;6807:9;6803:18;6790:32;6785:2;6778:5;6774:14;6767:56;6883:2;6872:9;6868:18;6855:32;6850:2;6843:5;6839:14;6832:56;6948:2;6937:9;6933:18;6920:32;6915:2;6908:5;6904:14;6897:56;6546:413;;;;:::o;6964:366::-;7094:6;7102;7155:3;7143:9;7134:7;7130:23;7126:33;7123:53;;;7172:1;7169;7162:12;7123:53;7195:54;7241:7;7230:9;7195:54;:::i;:::-;7185:64;;7268:56;7316:7;7310:3;7299:9;7295:19;7268:56;:::i;:::-;7258:66;;6964:366;;;;;:::o;7335:183::-;7395:4;-1:-1:-1;;;;;7417:30:142;;7414:56;;;7450:18;;:::i;:::-;-1:-1:-1;7495:1:142;7491:14;7507:4;7487:25;;7335:183::o;7523:750::-;7577:5;7630:3;7623:4;7615:6;7611:17;7607:27;7597:55;;7648:1;7645;7638:12;7597:55;7684:6;7671:20;7710:4;7734:60;7750:43;7790:2;7750:43;:::i;:::-;7734:60;:::i;:::-;7828:15;;;7914:1;7910:10;;;;7898:23;;7894:32;;;7859:12;;;;7938:15;;;7935:35;;;7966:1;7963;7956:12;7935:35;8002:2;7994:6;7990:15;8014:230;8030:6;8025:3;8022:15;8014:230;;;8110:3;8097:17;8127:44;8165:5;8127:44;:::i;:::-;8184:18;;8222:12;;;;8047;;8014:230;;;-1:-1:-1;8262:5:142;7523:750;-1:-1:-1;;;;;;7523:750:142:o;8278:186::-;8326:4;-1:-1:-1;;;;;8348:30:142;;8345:56;;;8381:18;;:::i;:::-;-1:-1:-1;8447:2:142;8426:15;-1:-1:-1;;8422:29:142;8453:4;8418:40;;8278:186::o;8469:336::-;8533:5;8562:52;8578:35;8606:6;8578:35;:::i;8562:52::-;8553:61;;8637:6;8630:5;8623:21;8677:3;8668:6;8663:3;8659:16;8656:25;8653:45;;;8694:1;8691;8684:12;8653:45;8743:6;8738:3;8731:4;8724:5;8720:16;8707:43;8797:1;8790:4;8781:6;8774:5;8770:18;8766:29;8759:40;8469:336;;;;;:::o;8810:220::-;8852:5;8905:3;8898:4;8890:6;8886:17;8882:27;8872:55;;8923:1;8920;8913:12;8872:55;8945:79;9020:3;9011:6;8998:20;8991:4;8983:6;8979:17;8945:79;:::i;9035:715::-;9146:6;9154;9162;9215:2;9203:9;9194:7;9190:23;9186:32;9183:52;;;9231:1;9228;9221:12;9183:52;9258:23;;-1:-1:-1;;;;;9330:14:142;;;9327:34;;;9357:1;9354;9347:12;9327:34;9380:61;9433:7;9424:6;9413:9;9409:22;9380:61;:::i;:::-;9370:71;;9494:2;9483:9;9479:18;9466:32;9450:48;;9523:2;9513:8;9510:16;9507:36;;;9539:1;9536;9529:12;9507:36;;9562:51;9605:7;9594:8;9583:9;9579:24;9562:51;:::i;:::-;9552:61;;;9663:2;9652:9;9648:18;9635:32;9676:44;9714:5;9676:44;:::i;:::-;9739:5;9729:15;;;9035:715;;;;;:::o;9937:229::-;-1:-1:-1;;;;;10127:32:142;;;;10109:51;;10097:2;10082:18;;9937:229::o;10393:568::-;10470:6;10478;10486;10539:2;10527:9;10518:7;10514:23;10510:32;10507:52;;;10555:1;10552;10545:12;10507:52;10594:9;10581:23;10613:44;10651:5;10613:44;:::i;:::-;10676:5;-1:-1:-1;10733:2:142;10718:18;;10705:32;10746:46;10705:32;10746:46;:::i;:::-;10811:7;-1:-1:-1;10870:2:142;10855:18;;10842:32;10883:46;10842:32;10883:46;:::i;11362:468::-;11439:6;11447;11500:2;11488:9;11479:7;11475:23;11471:32;11468:52;;;11516:1;11513;11506:12;11468:52;11543:23;;-1:-1:-1;;;;;11578:30:142;;11575:50;;;11621:1;11618;11611:12;11575:50;11644:49;11685:7;11676:6;11665:9;11661:22;11644:49;:::i;:::-;11634:59;;;11743:2;11732:9;11728:18;11715:32;11756:44;11794:5;11756:44;:::i;:::-;11819:5;11809:15;;;11362:468;;;;;:::o;12043:142::-;12126:1;12119:5;12116:12;12106:46;;12132:18;;:::i;:::-;12161;;12043:142::o;12190:213::-;12339:2;12324:18;;12351:46;12328:9;12379:6;12351:46;:::i;12408:328::-;12476:6;12484;12537:2;12525:9;12516:7;12512:23;12508:32;12505:52;;;12553:1;12550;12543:12;12505:52;12592:9;12579:23;12611:44;12649:5;12611:44;:::i;:::-;12674:5;12726:2;12711:18;;;;12698:32;;-1:-1:-1;;;12408:328:142:o;12741:248::-;12809:6;12817;12870:2;12858:9;12849:7;12845:23;12841:32;12838:52;;;12886:1;12883;12876:12;12838:52;-1:-1:-1;;12909:23:142;;;12979:2;12964:18;;;12951:32;;-1:-1:-1;12741:248:142:o;12994:316::-;13071:6;13079;13087;13140:2;13128:9;13119:7;13115:23;13111:32;13108:52;;;13156:1;13153;13146:12;13108:52;-1:-1:-1;;13179:23:142;;;13249:2;13234:18;;13221:32;;-1:-1:-1;13300:2:142;13285:18;;;13272:32;;12994:316;-1:-1:-1;12994:316:142:o;13315:143::-;13399:1;13392:5;13389:12;13379:46;;13405:18;;:::i;13463:215::-;13613:2;13598:18;;13625:47;13602:9;13654:6;13625:47;:::i;13683:260::-;13742:6;13795:2;13783:9;13774:7;13770:23;13766:32;13763:52;;;13811:1;13808;13801:12;13763:52;13850:9;13837:23;13869:44;13907:5;13869:44;:::i;14369:468::-;14446:6;14454;14507:2;14495:9;14486:7;14482:23;14478:32;14475:52;;;14523:1;14520;14513:12;14475:52;14562:9;14549:23;14581:44;14619:5;14581:44;:::i;:::-;14644:5;-1:-1:-1;14700:2:142;14685:18;;14672:32;-1:-1:-1;;;;;14716:30:142;;14713:50;;;14759:1;14756;14749:12;14713:50;14782:49;14823:7;14814:6;14803:9;14799:22;14782:49;:::i;:::-;14772:59;;;14369:468;;;;;:::o;14842:752::-;14929:6;14937;14945;14998:2;14986:9;14977:7;14973:23;14969:32;14966:52;;;15014:1;15011;15004:12;14966:52;15053:9;15040:23;15072:44;15110:5;15072:44;:::i;:::-;15135:5;-1:-1:-1;15191:2:142;15176:18;;15163:32;-1:-1:-1;;;;;15207:30:142;;15204:50;;;15250:1;15247;15240:12;15204:50;15273:22;;15326:4;15318:13;;15314:27;-1:-1:-1;15304:55:142;;15355:1;15352;15345:12;15304:55;15378:73;15443:7;15438:2;15425:16;15420:2;15416;15412:11;15378:73;:::i;15838:348::-;15922:6;15975:2;15963:9;15954:7;15950:23;15946:32;15943:52;;;15991:1;15988;15981:12;15943:52;16018:23;;-1:-1:-1;;;;;16053:30:142;;16050:50;;;16096:1;16093;16086:12;16050:50;16119:61;16172:7;16163:6;16152:9;16148:22;16119:61;:::i;16191:851::-;16389:6;16397;16405;16413;16466:3;16454:9;16445:7;16441:23;16437:33;16434:53;;;16483:1;16480;16473:12;16434:53;16506:54;16552:7;16541:9;16506:54;:::i;:::-;16496:64;;16579:56;16627:7;16621:3;16610:9;16606:19;16579:56;:::i;:::-;16569:66;-1:-1:-1;16686:3:142;16671:19;;16658:33;-1:-1:-1;;;;;16740:14:142;;;16737:34;;;16767:1;16764;16757:12;16737:34;16790:61;16843:7;16834:6;16823:9;16819:22;16790:61;:::i;:::-;16780:71;;16904:3;16893:9;16889:19;16876:33;16860:49;;16934:2;16924:8;16921:16;16918:36;;;16950:1;16947;16940:12;16918:36;;16973:63;17028:7;17017:8;17006:9;17002:24;16973:63;:::i;:::-;16963:73;;;16191:851;;;;;;;:::o;17252:261::-;17433:2;17422:9;17415:21;17396:4;17453:54;17503:2;17492:9;17488:18;17480:6;17453:54;:::i;17518:1357::-;17645:6;17653;17706:2;17694:9;17685:7;17681:23;17677:32;17674:52;;;17722:1;17719;17712:12;17674:52;17749:23;;-1:-1:-1;;;;;17821:14:142;;;17818:34;;;17848:1;17845;17838:12;17818:34;17871:61;17924:7;17915:6;17904:9;17900:22;17871:61;:::i;:::-;17861:71;;17951:2;17941:12;;18006:2;17995:9;17991:18;17978:32;18035:2;18025:8;18022:16;18019:36;;;18051:1;18048;18041:12;18019:36;18074:24;;18129:4;18121:13;;18117:27;-1:-1:-1;18107:55:142;;18158:1;18155;18148:12;18107:55;18194:2;18181:16;18217:60;18233:43;18273:2;18233:43;:::i;18217:60::-;18311:15;;;18393:1;18389:10;;;;18381:19;;18377:28;;;18342:12;;;;18417:19;;;18414:39;;;18449:1;18446;18439:12;18414:39;18481:2;18477;18473:11;18493:352;18509:6;18504:3;18501:15;18493:352;;;18595:3;18582:17;18631:2;18618:11;18615:19;18612:109;;;18675:1;18704:2;18700;18693:14;18612:109;18746:56;18794:7;18789:2;18775:11;18771:2;18767:20;18763:29;18746:56;:::i;:::-;18734:69;;-1:-1:-1;18823:12:142;;;;18526;;18493:352;;;18497:3;18864:5;18854:15;;;;;;;;17518:1357;;;;;:::o;18880:826::-;19113:2;19165:21;;;19235:13;;19138:18;;;19257:22;;;19084:4;;19113:2;19298;;19316:18;;;;19357:15;;;19084:4;19400:280;19414:6;19411:1;19408:13;19400:280;;;19473:13;;19515:9;;-1:-1:-1;;;;;19511:35:142;19499:48;;19587:11;;19581:18;19567:12;;;19560:40;19620:12;;;;19655:15;;;;19543:1;19429:9;19400:280;;;-1:-1:-1;19697:3:142;;18880:826;-1:-1:-1;;;;;;;18880:826:142:o;19711:348::-;19763:8;19773:6;19827:3;19820:4;19812:6;19808:17;19804:27;19794:55;;19845:1;19842;19835:12;19794:55;-1:-1:-1;19868:20:142;;-1:-1:-1;;;;;19900:30:142;;19897:50;;;19943:1;19940;19933:12;19897:50;19980:4;19972:6;19968:17;19956:29;;20032:3;20025:4;20016:6;20008;20004:19;20000:30;19997:39;19994:59;;;20049:1;20046;20039:12;20064:788;20164:6;20172;20180;20188;20196;20249:2;20237:9;20228:7;20224:23;20220:32;20217:52;;;20265:1;20262;20255:12;20217:52;20288:23;;;-1:-1:-1;20362:2:142;20347:18;;20334:32;-1:-1:-1;;;;;20415:14:142;;;20412:34;;;20442:1;20439;20432:12;20412:34;20481:59;20532:7;20523:6;20512:9;20508:22;20481:59;:::i;:::-;20559:8;;-1:-1:-1;20455:85:142;-1:-1:-1;20647:2:142;20632:18;;20619:32;;-1:-1:-1;20663:16:142;;;20660:36;;;20692:1;20689;20682:12;20660:36;;20731:61;20784:7;20773:8;20762:9;20758:24;20731:61;:::i;:::-;20064:788;;;;-1:-1:-1;20064:788:142;;-1:-1:-1;20811:8:142;;20705:87;20064:788;-1:-1:-1;;;20064:788:142:o;20857:118::-;20943:5;20936:13;20929:21;20922:5;20919:32;20909:60;;20965:1;20962;20955:12;20980:241;21036:6;21089:2;21077:9;21068:7;21064:23;21060:32;21057:52;;;21105:1;21102;21095:12;21057:52;21144:9;21131:23;21163:28;21185:5;21163:28;:::i;21456:1033::-;-1:-1:-1;;;;;21958:15:142;;;21940:34;;22010:15;;;22005:2;21990:18;;21983:43;22062:15;;22057:2;22042:18;;22035:43;22109:2;22094:18;;22087:34;;;22152:3;22137:19;;22130:35;;;21889:3;21874:19;;22174:44;22211:6;22174:44;:::i;:::-;22255:6;22249:3;22238:9;22234:19;22227:35;22299:6;22293:3;22282:9;22278:19;22271:35;22343:6;22337:3;22326:9;22322:19;22315:35;22387:6;22381:3;22370:9;22366:19;22359:35;22431:6;22425:3;22414:9;22410:19;22403:35;22475:7;22469:3;22458:9;22454:19;22447:36;21456:1033;;;;;;;;;;;;;;:::o;22494:328::-;22562:6;22570;22623:2;22611:9;22602:7;22598:23;22594:32;22591:52;;;22639:1;22636;22629:12;22591:52;22675:9;22662:23;22652:33;;22735:2;22724:9;22720:18;22707:32;22748:44;22786:5;22748:44;:::i;22827:239::-;22970:2;22955:18;;22982:44;23019:6;22982:44;:::i;:::-;23035:25;;;22827:239;:::o;23071:388::-;23148:6;23156;23209:2;23197:9;23188:7;23184:23;23180:32;23177:52;;;23225:1;23222;23215:12;23177:52;23248:23;;;-1:-1:-1;23322:2:142;23307:18;;23294:32;-1:-1:-1;;;;;23338:30:142;;23335:50;;;23381:1;23378;23371:12;23464:220;23613:2;23602:9;23595:21;23576:4;23633:45;23674:2;23663:9;23659:18;23651:6;23633:45;:::i;23689:380::-;23768:1;23764:12;;;;23811;;;23832:61;;23886:4;23878:6;23874:17;23864:27;;23832:61;23939:2;23931:6;23928:14;23908:18;23905:38;23902:161;;23985:10;23980:3;23976:20;23973:1;23966:31;24020:4;24017:1;24010:15;24048:4;24045:1;24038:15;24688:127;24749:10;24744:3;24740:20;24737:1;24730:31;24780:4;24777:1;24770:15;24804:4;24801:1;24794:15;24820:128;24887:9;;;24908:11;;;24905:37;;;24922:18;;:::i;24953:345::-;-1:-1:-1;;;;;25173:32:142;;;;25155:51;;25237:2;25222:18;;25215:34;;;;25280:2;25265:18;;25258:34;25143:2;25128:18;;24953:345::o;25303:125::-;25368:9;;;25389:10;;;25386:36;;;25402:18;;:::i;25433:345::-;25635:25;;;-1:-1:-1;;;;;25696:32:142;;;;25691:2;25676:18;;25669:60;25760:2;25745:18;;25738:34;25623:2;25608:18;;25433:345::o;25783:279::-;25868:6;25921:2;25909:9;25900:7;25896:23;25892:32;25889:52;;;25937:1;25934;25927:12;25889:52;25969:9;25963:16;25988:44;26026:5;25988:44;:::i;26067:447::-;26298:25;;;-1:-1:-1;;;;;26397:15:142;;;26392:2;26377:18;;26370:43;26449:15;;26444:2;26429:18;;26422:43;26496:2;26481:18;;26474:34;26285:3;26270:19;;26067:447::o;26519:127::-;26580:10;26575:3;26571:20;26568:1;26561:31;26611:4;26608:1;26601:15;26635:4;26632:1;26625:15;26651:217;26691:1;26717;26707:132;;26761:10;26756:3;26752:20;26749:1;26742:31;26796:4;26793:1;26786:15;26824:4;26821:1;26814:15;26707:132;-1:-1:-1;26853:9:142;;26651:217::o;26873:193::-;26911:3;-1:-1:-1;;;;;26944:30:142;;;26983:41;;27004:18;;:::i;:::-;-1:-1:-1;;27040:20:142;;26873:193;-1:-1:-1;;26873:193:142:o;27071:168::-;27144:9;;;27175;;27192:15;;;27186:22;;27172:37;27162:71;;27213:18;;:::i;27244:408::-;27446:2;27428:21;;;27485:2;27465:18;;;27458:30;-1:-1:-1;;;;;;;;;;;27519:2:142;27504:18;;27497:62;-1:-1:-1;;;27590:2:142;27575:18;;27568:42;27642:3;27627:19;;27244:408::o;27657:::-;27859:2;27841:21;;;27898:2;27878:18;;;27871:30;-1:-1:-1;;;;;;;;;;;27932:2:142;27917:18;;27910:62;-1:-1:-1;;;28003:2:142;27988:18;;27981:42;28055:3;28040:19;;27657:408::o;28495:407::-;28697:2;28679:21;;;28736:2;28716:18;;;28709:30;28775:34;28770:2;28755:18;;28748:62;-1:-1:-1;;;28841:2:142;28826:18;;28819:41;28892:3;28877:19;;28495:407::o;28907:304::-;-1:-1:-1;;;;;29137:15:142;;;29119:34;;29189:15;;29184:2;29169:18;;29162:43;29069:2;29054:18;;28907:304::o;29216:245::-;29283:6;29336:2;29324:9;29315:7;29311:23;29307:32;29304:52;;;29352:1;29349;29342:12;29304:52;29384:9;29378:16;29403:28;29425:5;29403:28;:::i;29466:184::-;29536:6;29589:2;29577:9;29568:7;29564:23;29560:32;29557:52;;;29605:1;29602;29595:12;29557:52;-1:-1:-1;29628:16:142;;29466:184;-1:-1:-1;29466:184:142:o;29655:151::-;29734:13;;29756:44;29734:13;29756:44;:::i;:::-;29655:151;;;:::o;30080:248::-;30254:25;;;30310:2;30295:18;;30288:34;30242:2;30227:18;;30080:248::o;30333:274::-;30507:25;;;-1:-1:-1;;;;;30568:32:142;30563:2;30548:18;;30541:60;30495:2;30480:18;;30333:274::o;30612:266::-;30700:6;30695:3;30688:19;30752:6;30745:5;30738:4;30733:3;30729:14;30716:43;-1:-1:-1;30804:1:142;30779:16;;;30797:4;30775:27;;;30768:38;;;;30860:2;30839:15;;;-1:-1:-1;;30835:29:142;30826:39;;;30822:50;;30612:266::o;30883:315::-;31068:6;31057:9;31050:25;31111:2;31106;31095:9;31091:18;31084:30;31031:4;31131:61;31188:2;31177:9;31173:18;31165:6;31157;31131:61;:::i;:::-;31123:69;30883:315;-1:-1:-1;;;;;30883:315:142:o;31203:209::-;31241:3;-1:-1:-1;;;;;31311:14:142;;;-1:-1:-1;;;;;;31337:15:142;;31334:41;;31355:18;;:::i;:::-;31404:1;31391:15;;31203:209;-1:-1:-1;;;31203:209:142:o;31417:682::-;-1:-1:-1;;;;;31775:15:142;;;31757:34;;31822:2;31807:18;;31800:34;;;31865:2;31850:18;;31843:34;;;31913:15;;31908:2;31893:18;;31886:43;31966:3;31960;31945:19;;31938:32;;;31700:4;;31987:62;;32029:19;;32021:6;32013;31987:62;:::i;:::-;31979:70;;32086:6;32080:3;32069:9;32065:19;32058:35;31417:682;;;;;;;;;;:::o;32104:135::-;32143:3;32164:17;;;32161:43;;32184:18;;:::i;:::-;-1:-1:-1;32231:1:142;32220:13;;32104:135::o;32244:396::-;32310:5;32358:4;32346:9;32341:3;32337:19;32333:30;32330:50;;;32376:1;32373;32366:12;32330:50;32398:22;;:::i;:::-;32389:31;;32449:9;32443:16;32436:5;32429:31;32513:2;32502:9;32498:18;32492:25;32487:2;32480:5;32476:14;32469:49;32571:2;32560:9;32556:18;32550:25;32545:2;32538:5;32534:14;32527:49;32629:2;32618:9;32614:18;32608:25;32603:2;32596:5;32592:14;32585:49;32244:396;;;;:::o;32645:157::-;32734:13;;32776:1;32766:12;;32756:40;;32792:1;32789;32782:12;32807:156;32895:13;;32937:1;32927:12;;32917:40;;32953:1;32950;32943:12;32968:420;33043:5;33091:4;33079:9;33074:3;33070:19;33066:30;33063:50;;;33109:1;33106;33099:12;33063:50;33142:2;33136:9;33184:4;33172:17;;-1:-1:-1;;;;;33204:34:142;;33240:22;;;33201:62;33198:88;;;33266:18;;:::i;:::-;33302:2;33295:22;33365:16;;33350:32;;-1:-1:-1;33335:6:142;32968:420;-1:-1:-1;32968:420:142:o;33393:696::-;33467:5;33515:4;33503:9;33498:3;33494:19;33490:30;33487:50;;;33533:1;33530;33523:12;33487:50;33555:22;;:::i;:::-;33546:31;;33607:9;33601:16;33626:46;33664:7;33626:46;:::i;:::-;33681:22;;33748:2;33733:18;;33727:25;33761:46;33727:25;33761:46;:::i;:::-;33839:7;33834:2;33827:5;33823:14;33816:31;;33900:2;33889:9;33885:18;33879:25;33874:2;33867:5;33863:14;33856:49;33958:2;33947:9;33943:18;33937:25;33932:2;33925:5;33921:14;33914:49;34017:3;34006:9;34002:19;33996:26;33990:3;33983:5;33979:15;33972:51;34077:3;34066:9;34062:19;34056:26;34050:3;34043:5;34039:15;34032:51;33393:696;;;;:::o;34094:747::-;34159:5;34212:3;34205:4;34197:6;34193:17;34189:27;34179:55;;34230:1;34227;34220:12;34179:55;34259:6;34253:13;34285:4;34309:60;34325:43;34365:2;34325:43;:::i;34309:60::-;34403:15;;;34489:1;34485:10;;;;34473:23;;34469:32;;;34434:12;;;;34513:15;;;34510:35;;;34541:1;34538;34531:12;34510:35;34577:2;34569:6;34565:15;34589:223;34605:6;34600:3;34597:15;34589:223;;;34678:3;34672:10;34695:44;34733:5;34695:44;:::i;:::-;34752:18;;34790:12;;;;34622;;34589:223;;34846:1281;34965:6;35018:2;35006:9;34997:7;34993:23;34989:32;34986:52;;;35034:1;35031;35024:12;34986:52;35061:16;;-1:-1:-1;;;;;35126:14:142;;;35123:34;;;35153:1;35150;35143:12;35123:34;35176:22;;;;35232:6;35214:16;;;35210:29;35207:49;;;35252:1;35249;35242:12;35207:49;35278:22;;:::i;:::-;35323:50;35365:7;35361:2;35323:50;:::i;:::-;35316:5;35309:65;35406:53;35454:3;35450:2;35446:12;35406:53;:::i;:::-;35401:2;35394:5;35390:14;35383:77;35494:52;35541:3;35537:2;35533:12;35494:52;:::i;:::-;35487:4;35480:5;35476:16;35469:78;35581:69;35642:7;35636:3;35632:2;35628:12;35581:69;:::i;:::-;35574:4;35567:5;35563:16;35556:95;35684:68;35744:7;35738:3;35734:2;35730:12;35684:68;:::i;:::-;35678:3;35671:5;35667:15;35660:93;35786:43;35824:3;35820:2;35816:12;35786:43;:::i;:::-;35780:3;35773:5;35769:15;35762:68;35863:43;35901:3;35897:2;35893:12;35863:43;:::i;:::-;35857:3;35850:5;35846:15;35839:68;35946:3;35942:2;35938:12;35932:19;35976:2;35966:8;35963:16;35960:36;;;35992:1;35989;35982:12;35960:36;36029:67;36088:7;36077:8;36073:2;36069:17;36029:67;:::i;:::-;36023:3;36012:15;;36005:92;-1:-1:-1;36016:5:142;34846:1281;-1:-1:-1;;;;;34846:1281:142:o;36132:261::-;36212:5;36206:12;36201:3;36194:25;36268:4;36261:5;36257:16;36251:23;36244:4;36239:3;36235:14;36228:47;36324:4;36317:5;36313:16;36307:23;36300:4;36295:3;36291:14;36284:47;36380:4;36373:5;36369:16;36363:23;36356:4;36351:3;36347:14;36340:47;;;36132:261::o;36840:461::-;36893:3;36931:5;36925:12;36958:6;36953:3;36946:19;36984:4;37013:2;37008:3;37004:12;36997:19;;37050:2;37043:5;37039:14;37071:1;37081:195;37095:6;37092:1;37089:13;37081:195;;;37160:13;;-1:-1:-1;;;;;37156:39:142;37144:52;;37216:12;;;;37251:15;;;;37192:1;37110:9;37081:195;;;-1:-1:-1;37292:3:142;;36840:461;-1:-1:-1;;;;;36840:461:142:o;37306:1267::-;37561:6;37550:9;37543:25;37604:2;37599;37588:9;37584:18;37577:30;37616:61;37673:2;37662:9;37658:18;37649:6;37643:13;37616:61;:::i;:::-;37524:4;37724:2;37716:6;37712:15;37706:22;37737:63;37795:3;37784:9;37780:19;37766:12;37737:63;:::i;:::-;;37849:2;37841:6;37837:15;37831:22;37862:64;37921:3;37910:9;37906:19;37890:14;37862:64;:::i;:::-;-1:-1:-1;37987:4:142;37975:17;;;37969:24;37963:31;37957:3;37942:19;;37935:60;38044:4;38032:17;;;38026:24;36522:12;;-1:-1:-1;;;;;36518:21:142;;;38125:3;38110:19;;36506:34;36593:4;36582:16;;36576:23;36572:32;36556:14;;;36549:56;36654:4;36643:16;;36637:23;36621:14;;;36614:47;36699:16;;;36693:23;36677:14;;;36670:47;36755:16;;36749:23;36733:14;;;36726:47;36486:3;36811:16;;;36805:23;36789:14;;;36782:47;38167:17;;38161:24;38194:55;38244:3;38229:19;;38161:24;38194:55;:::i;:::-;;38298:3;38290:6;38286:16;38280:23;38322:6;38337:54;38387:2;38376:9;38372:18;38356:14;38337:54;:::i;:::-;38440:3;38432:6;38428:16;38422:23;38400:45;;38482:2;38476:3;38465:9;38461:19;38454:31;;38502:65;38562:3;38551:9;38547:19;38531:14;38502:65;:::i;40063:252::-;40251:3;40236:19;;40264:45;40240:9;40291:6;40264:45;:::i;40320:319::-;40522:25;;;40578:2;40563:18;;40556:34;;;;40621:2;40606:18;;40599:34;40510:2;40495:18;;40320:319::o;40644:726::-;40710:5;40758:4;40746:9;40741:3;40737:19;40733:30;40730:50;;;40776:1;40773;40766:12;40730:50;40798:22;;:::i;:::-;40843:16;;40829:31;;40904:2;40889:18;;40883:25;40789:31;;-1:-1:-1;;;;;;40920:30:142;;40917:50;;;40963:1;40960;40953:12;40917:50;40986:22;;41039:4;41031:13;;41027:23;-1:-1:-1;41017:51:142;;41064:1;41061;41054:12;41017:51;41093:2;41087:9;41118:48;41134:31;41162:2;41134:31;:::i;41118:48::-;41189:2;41182:5;41175:17;41229:3;41224:2;41219;41215;41211:11;41207:20;41204:29;41201:49;;;41246:1;41243;41236:12;41201:49;41259:67;41323:2;41318;41311:5;41307:14;41302:2;41298;41294:11;41259:67;:::i;:::-;41353:2;41342:14;;41335:29;-1:-1:-1;41346:5:142;;40644:726;-1:-1:-1;;;40644:726:142:o;41375:1054::-;41467:6;41520:2;41508:9;41499:7;41495:23;41491:32;41488:52;;;41536:1;41533;41526:12;41488:52;41563:16;;-1:-1:-1;;;;;41628:14:142;;;41625:34;;;41655:1;41652;41645:12;41625:34;41678:22;;;;41734:4;41716:16;;;41712:27;41709:47;;;41752:1;41749;41742:12;41709:47;41778:22;;:::i;:::-;41829:2;41823:9;41816:5;41809:24;41871:2;41867;41863:11;41857:18;41884:46;41922:7;41884:46;:::i;:::-;41957:2;41946:14;;41939:31;42008:2;42000:11;;41994:18;42021:46;41994:18;42021:46;:::i;:::-;42094:2;42083:14;;42076:31;42146:2;42138:11;;42132:18;42162:16;;;42159:36;;;42191:1;42188;42181:12;42159:36;42227:65;42284:7;42273:8;42269:2;42265:17;42227:65;:::i;:::-;42222:2;42215:5;42211:14;42204:89;;42340:3;42336:2;42332:12;42326:19;42320:3;42313:5;42309:15;42302:44;42393:3;42389:2;42385:12;42379:19;42373:3;42366:5;42362:15;42355:44;42418:5;42408:15;;;;;41375:1054;;;;:::o;42434:1012::-;42537:6;42590:2;42578:9;42569:7;42565:23;42561:32;42558:52;;;42606:1;42603;42596:12;42558:52;42633:16;;-1:-1:-1;;;;;42698:14:142;;;42695:34;;;42725:1;42722;42715:12;42695:34;42748:22;;;;42804:4;42786:16;;;42782:27;42779:47;;;42822:1;42819;42812:12;42779:47;42848:22;;:::i;:::-;42899:2;42893:9;42886:5;42879:24;42941:2;42937;42933:11;42927:18;42954:46;42992:7;42954:46;:::i;:::-;43027:2;43016:14;;43009:31;43086:2;43078:11;;;43072:18;43056:14;;;43049:42;43129:2;43121:11;;43115:18;43142:46;43115:18;43142:46;:::i;:::-;43215:2;43204:14;;43197:31;43267:3;43259:12;;43253:19;43284:16;;;43281:36;;;43313:1;43310;43303:12;43281:36;43350:65;43407:7;43396:8;43392:2;43388:17;43350:65;:::i;:::-;43344:3;43333:15;;43326:90;-1:-1:-1;43337:5:142;42434:1012;-1:-1:-1;;;;;42434:1012:142:o;43860:545::-;43962:2;43957:3;43954:11;43951:448;;;43998:1;44023:5;44019:2;44012:17;44068:4;44064:2;44054:19;44138:2;44126:10;44122:19;44119:1;44115:27;44109:4;44105:38;44174:4;44162:10;44159:20;44156:47;;;-1:-1:-1;44197:4:142;44156:47;44252:2;44247:3;44243:12;44240:1;44236:20;44230:4;44226:31;44216:41;;44307:82;44325:2;44318:5;44315:13;44307:82;;;44370:17;;;44351:1;44340:13;44307:82;;;44311:3;;;43860:545;;;:::o;44581:1352::-;44701:10;;-1:-1:-1;;;;;44723:30:142;;44720:56;;;44756:18;;:::i;:::-;44785:97;44875:6;44835:38;44867:4;44861:11;44835:38;:::i;:::-;44829:4;44785:97;:::i;:::-;44937:4;;45001:2;44990:14;;45018:1;45013:663;;;;45720:1;45737:6;45734:89;;;-1:-1:-1;45789:19:142;;;45783:26;45734:89;-1:-1:-1;;44538:1:142;44534:11;;;44530:24;44526:29;44516:40;44562:1;44558:11;;;44513:57;45836:81;;44983:944;;45013:663;43807:1;43800:14;;;43844:4;43831:18;;-1:-1:-1;;45049:20:142;;;45167:236;45181:7;45178:1;45175:14;45167:236;;;45270:19;;;45264:26;45249:42;;45362:27;;;;45330:1;45318:14;;;;45197:19;;45167:236;;;45171:3;45431:6;45422:7;45419:19;45416:201;;;45492:19;;;45486:26;-1:-1:-1;;45575:1:142;45571:14;;;45587:3;45567:24;45563:37;45559:42;45544:58;45529:74;;45416:201;-1:-1:-1;;;;;45663:1:142;45647:14;;;45643:22;45630:36;;-1:-1:-1;44581:1352:142:o;46223:273::-;46291:6;46344:2;46332:9;46323:7;46319:23;46315:32;46312:52;;;46360:1;46357;46350:12;46312:52;46392:9;46386:16;46442:4;46435:5;46431:16;46424:5;46421:27;46411:55;;46462:1;46459;46452:12;46501:422;46590:1;46633:5;46590:1;46647:270;46668:7;46658:8;46655:21;46647:270;;;46727:4;46723:1;46719:6;46715:17;46709:4;46706:27;46703:53;;;46736:18;;:::i;:::-;46786:7;46776:8;46772:22;46769:55;;;46806:16;;;;46769:55;46885:22;;;;46845:15;;;;46647:270;;;46651:3;46501:422;;;;;:::o;46928:806::-;46977:5;47007:8;46997:80;;-1:-1:-1;47048:1:142;47062:5;;46997:80;47096:4;47086:76;;-1:-1:-1;47133:1:142;47147:5;;47086:76;47178:4;47196:1;47191:59;;;;47264:1;47259:130;;;;47171:218;;47191:59;47221:1;47212:10;;47235:5;;;47259:130;47296:3;47286:8;47283:17;47280:43;;;47303:18;;:::i;:::-;-1:-1:-1;;47359:1:142;47345:16;;47374:5;;47171:218;;47473:2;47463:8;47460:16;47454:3;47448:4;47445:13;47441:36;47435:2;47425:8;47422:16;47417:2;47411:4;47408:12;47404:35;47401:77;47398:159;;;-1:-1:-1;47510:19:142;;;47542:5;;47398:159;47589:34;47614:8;47608:4;47589:34;:::i;:::-;47659:6;47655:1;47651:6;47647:19;47638:7;47635:32;47632:58;;;47670:18;;:::i;:::-;47708:20;;46928:806;-1:-1:-1;;;46928:806:142:o;47739:131::-;47799:5;47828:36;47855:8;47849:4;47828:36;:::i;49607:324::-;-1:-1:-1;;;49837:24:142;;49886:1;49877:11;;49870:27;;;;49922:2;49913:12;;49607:324::o;50215:127::-;50276:10;50271:3;50267:20;50264:1;50257:31;50307:4;50304:1;50297:15;50331:4;50328:1;50321:15;50347:332;50554:6;50543:9;50536:25;50597:2;50592;50581:9;50577:18;50570:30;50517:4;50617:56;50669:2;50658:9;50654:18;50646:6;50617:56;:::i;50684:127::-;50745:10;50740:3;50736:20;50733:1;50726:31;50776:4;50773:1;50766:15;50800:4;50797:1;50790:15;51107:1185;51236:6;51267:2;51310;51298:9;51289:7;51285:23;51281:32;51278:52;;;51326:1;51323;51316:12;51278:52;51353:16;;-1:-1:-1;;;;;51381:30:142;;51378:50;;;51424:1;51421;51414:12;51378:50;51447:22;;51500:4;51492:13;;51488:27;-1:-1:-1;51478:55:142;;51529:1;51526;51519:12;51478:55;51558:2;51552:9;51581:60;51597:43;51637:2;51597:43;:::i;51581:60::-;51675:15;;;51757:1;51753:10;;;;51745:19;;51741:28;;;51706:12;;;;51781:19;;;51778:39;;;51813:1;51810;51803:12;51778:39;51837:11;;;;51857:405;51873:6;51868:3;51865:15;51857:405;;;51955:4;51949:3;51940:7;51936:17;51932:28;51929:118;;;52001:1;52030:2;52026;52019:14;51929:118;52073:22;;:::i;:::-;52122:10;;52108:25;;52175:12;;;52169:19;52153:14;;;52146:43;52202:18;;51899:4;51890:14;;;;52240:12;;;;51857:405;;52297:497;-1:-1:-1;;;;;52582:32:142;;;;52564:51;;52646:2;52631:18;;52624:34;;;;52689:2;52674:18;;52667:34;;;;52732:2;52717:18;;52710:34;52775:3;52760:19;;52753:35;52551:3;52536:19;;52297:497::o;54331:319::-;54523:25;;;54511:2;54496:18;;54557:44;54594:6;54557:44;:::i;:::-;54637:6;54632:2;54621:9;54617:18;54610:34;54331:319;;;;;:::o;54655:216::-;54719:9;;;54747:11;;;54694:3;54777:9;;54805:10;;54801:19;;54830:10;;54822:19;;54798:44;54795:70;;;54845:18;;:::i;55690:287::-;55819:3;55857:6;55851:13;55873:66;55932:6;55927:3;55920:4;55912:6;55908:17;55873:66;:::i;:::-;55955:16;;;;;55690:287;-1:-1:-1;;55690:287:142:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6348,"length":32},{"start":6412,"length":32},{"start":6571,"length":32},{"start":6635,"length":32},{"start":6755,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","addToAllowList(address[])":"7263cfe2","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getRegistryCommunityV0_1()":"6a6f69b4","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","removeFromAllowList(address[])":"a51312c8","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256),address[],address[])":"948e7a59","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"_proposalStatus\",\"type\":\"uint8\"}],\"name\":\"ProposalInvalidForAllocation\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV2\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"addToAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunityV0_1\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_1\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"removeFromAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"membersToAdd\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"membersToRemove\",\"type\":\"address[]\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":\"CVStrategyV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"enum ProposalStatus","name":"_proposalStatus","type":"uint8"}],"type":"error","name":"ProposalInvalidForAllocation"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersAdded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersRemoved","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}],"indexed":false}],"type":"event","name":"InitializedCV2","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"addToAllowList"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunityV0_1","outputs":[{"internalType":"contract RegistryCommunityV0_1","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"removeFromAllowList"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"address[]","name":"membersToAdd","type":"address[]"},{"internalType":"address[]","name":"membersToRemove","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":"CVStrategyV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)76358"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70122"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)76325":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)76358":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70122":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)76325"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","id":69757,"exportedSymbols":{"ArbitrableConfig":[65628],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"Clone":[3002],"CreateProposal":[65557],"IArbitrator":[76325],"ICollateralVault":[76358],"ISybilScorer":[70122],"PassportData":[70040],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_1":[72929]},"nodeType":"SourceUnit","src":"42:6410:99","nodes":[{"id":69196,"nodeType":"PragmaDirective","src":"42:24:99","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":69208,"nodeType":"ImportDirective","src":"68:263:99","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"./CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":69197,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"81:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69198,"name":"CVParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65637,"src":"101:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69199,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"115:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69200,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"133:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69201,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"150:17:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69202,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"173:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69203,"name":"Proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65606,"src":"195:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69204,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"209:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69205,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"229:15:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69206,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"250:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69207,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"270:30:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69211,"nodeType":"ImportDirective","src":"333:63:99","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":70123,"symbolAliases":[{"foreign":{"id":69209,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"341:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69210,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70040,"src":"355:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69213,"nodeType":"ImportDirective","src":"397:85:99","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":72930,"symbolAliases":[{"foreign":{"id":69212,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72929,"src":"405:21:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69215,"nodeType":"ImportDirective","src":"483:65:99","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":69214,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"491:5:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69217,"nodeType":"ImportDirective","src":"549:68:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":76359,"symbolAliases":[{"foreign":{"id":69216,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76358,"src":"557:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69219,"nodeType":"ImportDirective","src":"618:58:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":76326,"symbolAliases":[{"foreign":{"id":69218,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76325,"src":"626:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69242,"nodeType":"StructDefinition","src":"832:286:99","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":69222,"mutability":"mutable","name":"cvParams","nameLocation":"885:8:99","nodeType":"VariableDeclaration","scope":69242,"src":"876:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":69221,"nodeType":"UserDefinedTypeName","pathNode":{"id":69220,"name":"CVParams","nameLocations":["876:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"876:8:99"},"referencedDeclaration":65637,"src":"876:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69225,"mutability":"mutable","name":"proposalType","nameLocation":"912:12:99","nodeType":"VariableDeclaration","scope":69242,"src":"899:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":69224,"nodeType":"UserDefinedTypeName","pathNode":{"id":69223,"name":"ProposalType","nameLocations":["899:12:99"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"899:12:99"},"referencedDeclaration":65540,"src":"899:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":69228,"mutability":"mutable","name":"pointSystem","nameLocation":"942:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"930:23:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":69227,"nodeType":"UserDefinedTypeName","pathNode":{"id":69226,"name":"PointSystem","nameLocations":["930:11:99"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"930:11:99"},"referencedDeclaration":65545,"src":"930:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":69231,"mutability":"mutable","name":"pointConfig","nameLocation":"977:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"959:29:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":69230,"nodeType":"UserDefinedTypeName","pathNode":{"id":69229,"name":"PointSystemConfig","nameLocations":["959:17:99"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"959:17:99"},"referencedDeclaration":65614,"src":"959:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":69234,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"1011:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"994:33:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69233,"nodeType":"UserDefinedTypeName","pathNode":{"id":69232,"name":"ArbitrableConfig","nameLocations":["994:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"994:16:99"},"referencedDeclaration":65628,"src":"994:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69236,"mutability":"mutable","name":"registryCommunity","nameLocation":"1041:17:99","nodeType":"VariableDeclaration","scope":69242,"src":"1033:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69235,"name":"address","nodeType":"ElementaryTypeName","src":"1033:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69238,"mutability":"mutable","name":"sybilScorer","nameLocation":"1072:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"1064:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69237,"name":"address","nodeType":"ElementaryTypeName","src":"1064:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69241,"mutability":"mutable","name":"initialAllowlist","nameLocation":"1099:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"1089:26:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69239,"name":"address","nodeType":"ElementaryTypeName","src":"1089:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69240,"nodeType":"ArrayTypeName","src":"1089:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"839:30:99","scope":69757,"visibility":"public"},{"id":69756,"nodeType":"ContractDefinition","src":"1164:5287:99","nodes":[{"id":69252,"nodeType":"EventDefinition","src":"1377:65:99","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"1383:23:99","parameters":{"id":69251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69247,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1415:6:99","nodeType":"VariableDeclaration","scope":69252,"src":"1407:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69246,"name":"uint256","nodeType":"ElementaryTypeName","src":"1407:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69250,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1433:7:99","nodeType":"VariableDeclaration","scope":69252,"src":"1423:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69248,"name":"address","nodeType":"ElementaryTypeName","src":"1423:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69249,"nodeType":"ArrayTypeName","src":"1423:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1406:35:99"}},{"id":69259,"nodeType":"EventDefinition","src":"1447:63:99","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"1453:21:99","parameters":{"id":69258,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69254,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1483:6:99","nodeType":"VariableDeclaration","scope":69259,"src":"1475:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69253,"name":"uint256","nodeType":"ElementaryTypeName","src":"1475:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69257,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1501:7:99","nodeType":"VariableDeclaration","scope":69259,"src":"1491:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69255,"name":"address","nodeType":"ElementaryTypeName","src":"1491:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69256,"nodeType":"ArrayTypeName","src":"1491:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1474:35:99"}},{"id":69266,"nodeType":"EventDefinition","src":"1515:74:99","nodes":[],"anonymous":false,"eventSelector":"a489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf","name":"InitializedCV2","nameLocation":"1521:14:99","parameters":{"id":69265,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69261,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1544:6:99","nodeType":"VariableDeclaration","scope":69266,"src":"1536:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69260,"name":"uint256","nodeType":"ElementaryTypeName","src":"1536:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69264,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"1583:4:99","nodeType":"VariableDeclaration","scope":69266,"src":"1552:35:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69263,"nodeType":"UserDefinedTypeName","pathNode":{"id":69262,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1552:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1552:30:99"},"referencedDeclaration":69242,"src":"1552:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"1535:53:99"}},{"id":69273,"nodeType":"ErrorDefinition","src":"1760:88:99","nodes":[],"errorSelector":"94d57ead","name":"ProposalInvalidForAllocation","nameLocation":"1766:28:99","parameters":{"id":69272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69268,"mutability":"mutable","name":"_proposalId","nameLocation":"1803:11:99","nodeType":"VariableDeclaration","scope":69273,"src":"1795:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69267,"name":"uint256","nodeType":"ElementaryTypeName","src":"1795:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69271,"mutability":"mutable","name":"_proposalStatus","nameLocation":"1831:15:99","nodeType":"VariableDeclaration","scope":69273,"src":"1816:30:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":69270,"nodeType":"UserDefinedTypeName","pathNode":{"id":69269,"name":"ProposalStatus","nameLocations":["1816:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"1816:14:99"},"referencedDeclaration":65565,"src":"1816:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"}],"src":"1794:53:99"}},{"id":69317,"nodeType":"FunctionDefinition","src":"2019:473:99","nodes":[],"body":{"id":69316,"nodeType":"Block","src":"2103:389:99","nodes":[],"statements":[{"assignments":[69280],"declarations":[{"constant":false,"id":69280,"mutability":"mutable","name":"p","nameLocation":"2130:1:99","nodeType":"VariableDeclaration","scope":69316,"src":"2113:18:99","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69279,"nodeType":"UserDefinedTypeName","pathNode":{"id":69278,"name":"Proposal","nameLocations":["2113:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"2113:8:99"},"referencedDeclaration":65606,"src":"2113:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69284,"initialValue":{"baseExpression":{"id":69281,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"2134:9:99","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69283,"indexExpression":{"id":69282,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2144:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2134:22:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2113:43:99"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69301,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69295,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69285,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2183:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69286,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2185:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2183:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69287,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2203:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69288,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2218:8:99","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":65558,"src":"2203:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2183:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69290,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2230:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69291,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2232:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2230:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69292,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2250:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2265:9:99","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"2250:24:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2230:44:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:91:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69296,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2294:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2296:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2294:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69298,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2314:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69299,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2329:8:99","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"2314:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2294:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:154:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69306,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69302,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2341:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69303,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2343:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2341:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69304,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2361:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69305,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2376:8:99","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"2361:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2341:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:201:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69315,"nodeType":"IfStatement","src":"2166:320:99","trueBody":{"id":69314,"nodeType":"Block","src":"2395:91:99","statements":[{"errorCall":{"arguments":[{"id":69309,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2445:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69310,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2458:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69311,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2460:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2458:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}],"id":69308,"name":"ProposalInvalidForAllocation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69273,"src":"2416:28:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_enum$_ProposalStatus_$65565_$returns$__$","typeString":"function (uint256,enum ProposalStatus) pure"}},"id":69312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2416:59:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69313,"nodeType":"RevertStatement","src":"2409:66:99"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkProposalAllocationValidity","nameLocation":"2028:31:99","parameters":{"id":69276,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69275,"mutability":"mutable","name":"_proposalId","nameLocation":"2068:11:99","nodeType":"VariableDeclaration","scope":69317,"src":"2060:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69274,"name":"uint256","nodeType":"ElementaryTypeName","src":"2060:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2059:21:99"},"returnParameters":{"id":69277,"nodeType":"ParameterList","parameters":[],"src":"2103:0:99"},"scope":69756,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":69328,"nodeType":"FunctionDefinition","src":"2498:144:99","nodes":[],"body":{"id":69327,"nodeType":"Block","src":"2578:64:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69324,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"2617:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69323,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72929,"src":"2595:21:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":69325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2595:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"functionReturnParameters":69322,"id":69326,"nodeType":"Return","src":"2588:47:99"}]},"functionSelector":"6a6f69b4","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunityV0_1","nameLocation":"2507:24:99","parameters":{"id":69318,"nodeType":"ParameterList","parameters":[],"src":"2531:2:99"},"returnParameters":{"id":69322,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69321,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69328,"src":"2555:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":69320,"nodeType":"UserDefinedTypeName","pathNode":{"id":69319,"name":"RegistryCommunityV0_1","nameLocations":["2555:21:99"],"nodeType":"IdentifierPath","referencedDeclaration":72929,"src":"2555:21:99"},"referencedDeclaration":72929,"src":"2555:21:99","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"src":"2554:23:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":69430,"nodeType":"FunctionDefinition","src":"2648:879:99","nodes":[],"body":{"id":69429,"nodeType":"Block","src":"2732:795:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69339,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"2762:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69338,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"2742:19:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2742:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69341,"nodeType":"ExpressionStatement","src":"2742:28:99"},{"expression":{"id":69351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69342,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2781:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":69346,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"2834:23:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2859:12:99","subExpression":{"id":69347,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"2859:10:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69344,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"2816:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":69345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2822:11:99","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"2816:17:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":69349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2816:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69343,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76358,"src":"2799:16:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$76358_$","typeString":"type(contract ICollateralVault)"}},"id":69350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2799:74:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"src":"2781:92:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69352,"nodeType":"ExpressionStatement","src":"2781:92:99"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69353,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2883:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76358","typeString":"contract ICollateralVault"}},"id":69355,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2899:10:99","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":76330,"src":"2883:26:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":69356,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2883:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69357,"nodeType":"ExpressionStatement","src":"2883:28:99"},{"assignments":[69360],"declarations":[{"constant":false,"id":69360,"mutability":"mutable","name":"ip","nameLocation":"2960:2:99","nodeType":"VariableDeclaration","scope":69429,"src":"2922:40:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69359,"nodeType":"UserDefinedTypeName","pathNode":{"id":69358,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2922:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2922:30:99"},"referencedDeclaration":69242,"src":"2922:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":69367,"initialValue":{"arguments":[{"id":69363,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69332,"src":"2976:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":69364,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"2984:30:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":69365,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2983:32:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":69361,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2965:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69362,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2969:6:99","memberName":"decode","nodeType":"MemberAccess","src":"2965:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69366,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2965:51:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"2922:94:99"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69368,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3031:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69369,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3034:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3031:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69372,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3063:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69371,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3055:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69370,"name":"address","nodeType":"ElementaryTypeName","src":"3055:7:99","typeDescriptions":{}}},"id":69373,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3055:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3031:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69379,"nodeType":"IfStatement","src":"3027:94:99","trueBody":{"id":69378,"nodeType":"Block","src":"3067:54:99","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69375,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"3088:20:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69376,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3088:22:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69377,"nodeType":"RevertStatement","src":"3081:29:99"}]}},{"expression":{"id":69383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69380,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"3175:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69381,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3195:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3198:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3195:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3175:40:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69384,"nodeType":"ExpressionStatement","src":"3175:40:99"},{"expression":{"id":69388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69385,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"3226:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69386,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3241:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3244:12:99","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"3241:15:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"3226:30:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":69389,"nodeType":"ExpressionStatement","src":"3226:30:99"},{"expression":{"id":69393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69390,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"3266:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69391,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3280:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3283:11:99","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"3280:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"3266:28:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":69394,"nodeType":"ExpressionStatement","src":"3266:28:99"},{"expression":{"id":69398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69395,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"3304:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69396,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3318:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69397,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3321:11:99","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"3318:14:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"3304:28:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":69399,"nodeType":"ExpressionStatement","src":"3304:28:99"},{"expression":{"id":69405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69400,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"3342:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":69402,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3369:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69403,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3372:11:99","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"3369:14:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69401,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70122,"src":"3356:12:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70122_$","typeString":"type(contract ISybilScorer)"}},"id":69404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3356:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"src":"3342:42:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":69406,"nodeType":"ExpressionStatement","src":"3342:42:99"},{"expression":{"arguments":[{"expression":{"id":69408,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3409:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69409,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3412:16:99","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"3409:19:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":69410,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3430:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69411,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3433:8:99","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"3430:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":69415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3457:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69414,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3443:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69412,"name":"address","nodeType":"ElementaryTypeName","src":"3447:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69413,"nodeType":"ArrayTypeName","src":"3447:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69416,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3443:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":69420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3475:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3461:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69417,"name":"address","nodeType":"ElementaryTypeName","src":"3465:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69418,"nodeType":"ArrayTypeName","src":"3465:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69421,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3461:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69407,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"3394:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3394:84:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69423,"nodeType":"ExpressionStatement","src":"3394:84:99"},{"eventCall":{"arguments":[{"id":69425,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"3508:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69426,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3517:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":69424,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69266,"src":"3493:14:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":69427,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3493:27:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69428,"nodeType":"EmitStatement","src":"3488:32:99"}]},"baseFunctions":[66093],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":69336,"kind":"modifierInvocation","modifierName":{"id":69335,"name":"onlyAllo","nameLocations":["2723:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"2723:8:99"},"nodeType":"ModifierInvocation","src":"2723:8:99"}],"name":"initialize","nameLocation":"2657:10:99","overrides":{"id":69334,"nodeType":"OverrideSpecifier","overrides":[],"src":"2714:8:99"},"parameters":{"id":69333,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69330,"mutability":"mutable","name":"_poolId","nameLocation":"2676:7:99","nodeType":"VariableDeclaration","scope":69430,"src":"2668:15:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69329,"name":"uint256","nodeType":"ElementaryTypeName","src":"2668:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69332,"mutability":"mutable","name":"_data","nameLocation":"2698:5:99","nodeType":"VariableDeclaration","scope":69430,"src":"2685:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69331,"name":"bytes","nodeType":"ElementaryTypeName","src":"2685:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2667:37:99"},"returnParameters":{"id":69337,"nodeType":"ParameterList","parameters":[],"src":"2732:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69461,"nodeType":"FunctionDefinition","src":"3533:367:99","nodes":[],"body":{"id":69460,"nodeType":"Block","src":"3747:153:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69448,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69433,"src":"3778:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69449,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69436,"src":"3797:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"expression":{"id":69445,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"3757:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_1_$69756_$","typeString":"type(contract super CVStrategyV0_1)"}},"id":69447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3763:14:99","memberName":"_setPoolParams","nodeType":"MemberAccess","referencedDeclaration":68596,"src":"3757:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69450,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3757:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69451,"nodeType":"ExpressionStatement","src":"3757:50:99"},{"expression":{"arguments":[{"id":69453,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69439,"src":"3833:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69452,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"3817:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69454,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3817:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69455,"nodeType":"ExpressionStatement","src":"3817:29:99"},{"expression":{"arguments":[{"id":69457,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69442,"src":"3877:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69456,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"3856:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69458,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3856:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69459,"nodeType":"ExpressionStatement","src":"3856:37:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"3542:14:99","parameters":{"id":69443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69433,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3590:17:99","nodeType":"VariableDeclaration","scope":69461,"src":"3566:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69432,"nodeType":"UserDefinedTypeName","pathNode":{"id":69431,"name":"ArbitrableConfig","nameLocations":["3566:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3566:16:99"},"referencedDeclaration":65628,"src":"3566:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69436,"mutability":"mutable","name":"_cvParams","nameLocation":"3633:9:99","nodeType":"VariableDeclaration","scope":69461,"src":"3617:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69435,"nodeType":"UserDefinedTypeName","pathNode":{"id":69434,"name":"CVParams","nameLocations":["3617:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3617:8:99"},"referencedDeclaration":65637,"src":"3617:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69439,"mutability":"mutable","name":"membersToAdd","nameLocation":"3669:12:99","nodeType":"VariableDeclaration","scope":69461,"src":"3652:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69437,"name":"address","nodeType":"ElementaryTypeName","src":"3652:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69438,"nodeType":"ArrayTypeName","src":"3652:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69442,"mutability":"mutable","name":"membersToRemove","nameLocation":"3708:15:99","nodeType":"VariableDeclaration","scope":69461,"src":"3691:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69440,"name":"address","nodeType":"ElementaryTypeName","src":"3691:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69441,"nodeType":"ArrayTypeName","src":"3691:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3556:173:99"},"returnParameters":{"id":69444,"nodeType":"ParameterList","parameters":[],"src":"3747:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69487,"nodeType":"FunctionDefinition","src":"3906:332:99","nodes":[],"body":{"id":69486,"nodeType":"Block","src":"4119:119:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69476,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"4129:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4129:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69478,"nodeType":"ExpressionStatement","src":"4129:17:99"},{"expression":{"arguments":[{"id":69480,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"4171:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69481,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"4190:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"id":69482,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69470,"src":"4201:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":69483,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69473,"src":"4215:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69479,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"4156:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69484,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4156:75:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69485,"nodeType":"ExpressionStatement","src":"4156:75:99"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"3915:13:99","parameters":{"id":69474,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69464,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3962:17:99","nodeType":"VariableDeclaration","scope":69487,"src":"3938:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69463,"nodeType":"UserDefinedTypeName","pathNode":{"id":69462,"name":"ArbitrableConfig","nameLocations":["3938:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3938:16:99"},"referencedDeclaration":65628,"src":"3938:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69467,"mutability":"mutable","name":"_cvParams","nameLocation":"4005:9:99","nodeType":"VariableDeclaration","scope":69487,"src":"3989:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69466,"nodeType":"UserDefinedTypeName","pathNode":{"id":69465,"name":"CVParams","nameLocations":["3989:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3989:8:99"},"referencedDeclaration":65637,"src":"3989:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69470,"mutability":"mutable","name":"membersToAdd","nameLocation":"4041:12:99","nodeType":"VariableDeclaration","scope":69487,"src":"4024:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69468,"name":"address","nodeType":"ElementaryTypeName","src":"4024:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69469,"nodeType":"ArrayTypeName","src":"4024:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69473,"mutability":"mutable","name":"membersToRemove","nameLocation":"4080:15:99","nodeType":"VariableDeclaration","scope":69487,"src":"4063:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69471,"name":"address","nodeType":"ElementaryTypeName","src":"4063:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69472,"nodeType":"ArrayTypeName","src":"4063:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3928:173:99"},"returnParameters":{"id":69475,"nodeType":"ParameterList","parameters":[],"src":"4119:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69529,"nodeType":"FunctionDefinition","src":"4244:301:99","nodes":[],"body":{"id":69528,"nodeType":"Block","src":"4337:208:99","nodes":[],"statements":[{"assignments":[69499],"declarations":[{"constant":false,"id":69499,"mutability":"mutable","name":"pv","nameLocation":"4372:2:99","nodeType":"VariableDeclaration","scope":69528,"src":"4347:27:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":69497,"nodeType":"UserDefinedTypeName","pathNode":{"id":69496,"name":"ProposalSupport","nameLocations":["4347:15:99"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"4347:15:99"},"referencedDeclaration":65611,"src":"4347:15:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":69498,"nodeType":"ArrayTypeName","src":"4347:17:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":69507,"initialValue":{"arguments":[{"id":69502,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69489,"src":"4388:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":69503,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"4396:15:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":69504,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"4396:17:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":69505,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"4395:19:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":69500,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4377:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69501,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4381:6:99","memberName":"decode","nodeType":"MemberAccess","src":"4377:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4377:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4347:68:99"},{"body":{"id":69526,"nodeType":"Block","src":"4465:74:99","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":69520,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4511:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69522,"indexExpression":{"id":69521,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4514:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4511:5:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":69523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4517:10:99","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"4511:16:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69519,"name":"checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69317,"src":"4479:31:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":69524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4479:49:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69525,"nodeType":"ExpressionStatement","src":"4479:49:99"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69512,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4445:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69513,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4449:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69514,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4452:6:99","memberName":"length","nodeType":"MemberAccess","src":"4449:9:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4445:13:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69527,"initializationExpression":{"assignments":[69509],"declarations":[{"constant":false,"id":69509,"mutability":"mutable","name":"i","nameLocation":"4438:1:99","nodeType":"VariableDeclaration","scope":69527,"src":"4430:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69508,"name":"uint256","nodeType":"ElementaryTypeName","src":"4430:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69511,"initialValue":{"hexValue":"30","id":69510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4442:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"4430:13:99"},"loopExpression":{"expression":{"id":69517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4460:3:99","subExpression":{"id":69516,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4460:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69518,"nodeType":"ExpressionStatement","src":"4460:3:99"},"nodeType":"ForStatement","src":"4425:114:99"}]},"baseFunctions":[65437],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"4253:15:99","overrides":{"id":69493,"nodeType":"OverrideSpecifier","overrides":[],"src":"4328:8:99"},"parameters":{"id":69492,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69489,"mutability":"mutable","name":"_data","nameLocation":"4282:5:99","nodeType":"VariableDeclaration","scope":69529,"src":"4269:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69488,"name":"bytes","nodeType":"ElementaryTypeName","src":"4269:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":69491,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69529,"src":"4290:7:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69490,"name":"address","nodeType":"ElementaryTypeName","src":"4290:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4268:42:99"},"returnParameters":{"id":69494,"nodeType":"ParameterList","parameters":[],"src":"4337:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69589,"nodeType":"FunctionDefinition","src":"4551:526:99","nodes":[],"body":{"id":69588,"nodeType":"Block","src":"4631:446:99","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":69539,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"4653:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}],"id":69538,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4645:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69537,"name":"address","nodeType":"ElementaryTypeName","src":"4645:7:99","typeDescriptions":{}}},"id":69540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4645:20:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69543,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4677:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69542,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4669:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69541,"name":"address","nodeType":"ElementaryTypeName","src":"4669:7:99","typeDescriptions":{}}},"id":69544,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4669:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4645:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69578,"nodeType":"IfStatement","src":"4641:363:99","trueBody":{"id":69577,"nodeType":"Block","src":"4681:323:99","statements":[{"assignments":[69547],"declarations":[{"constant":false,"id":69547,"mutability":"mutable","name":"allowlistRole","nameLocation":"4703:13:99","nodeType":"VariableDeclaration","scope":69577,"src":"4695:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69546,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4695:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69555,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4746:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69552,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"4759:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69549,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4729:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4733:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"4729:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4729:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69548,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"4719:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69554,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4719:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"4695:72:99"},{"condition":{"arguments":[{"id":69559,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4820:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4843:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69561,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4835:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69560,"name":"address","nodeType":"ElementaryTypeName","src":"4835:7:99","typeDescriptions":{}}},"id":69563,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4835:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69556,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4785:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4812:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4785:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":69575,"nodeType":"Block","src":"4898:96:99","statements":[{"expression":{"arguments":[{"id":69571,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4958:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":69572,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"4973:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69568,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4923:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4950:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4923:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69574,"nodeType":"Return","src":"4916:63:99"}]},"id":69576,"nodeType":"IfStatement","src":"4781:213:99","trueBody":{"id":69567,"nodeType":"Block","src":"4848:44:99","statements":[{"expression":{"hexValue":"74727565","id":69565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4873:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":69536,"id":69566,"nodeType":"Return","src":"4866:11:99"}]}}]}},{"expression":{"arguments":[{"id":69581,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"5049:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":69584,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"5064:4:99","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}],"id":69583,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5056:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69582,"name":"address","nodeType":"ElementaryTypeName","src":"5056:7:99","typeDescriptions":{}}},"id":69585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5056:13:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":69579,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"5020:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70122","typeString":"contract ISybilScorer"}},"id":69580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5032:16:99","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70079,"src":"5020:28:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":69586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5020:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69587,"nodeType":"Return","src":"5013:57:99"}]},"baseFunctions":[66256],"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"4560:17:99","overrides":{"id":69533,"nodeType":"OverrideSpecifier","overrides":[],"src":"4607:8:99"},"parameters":{"id":69532,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69531,"mutability":"mutable","name":"_user","nameLocation":"4586:5:99","nodeType":"VariableDeclaration","scope":69589,"src":"4578:13:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69530,"name":"address","nodeType":"ElementaryTypeName","src":"4578:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4577:15:99"},"returnParameters":{"id":69536,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69535,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69589,"src":"4625:4:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69534,"name":"bool","nodeType":"ElementaryTypeName","src":"4625:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4624:6:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":69603,"nodeType":"FunctionDefinition","src":"5083:125:99","nodes":[],"body":{"id":69602,"nodeType":"Block","src":"5140:68:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69595,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5150:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69596,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5150:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69597,"nodeType":"ExpressionStatement","src":"5150:17:99"},{"expression":{"arguments":[{"id":69599,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69592,"src":"5193:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69598,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"5177:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69600,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5177:24:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69601,"nodeType":"ExpressionStatement","src":"5177:24:99"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"5092:14:99","parameters":{"id":69593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69592,"mutability":"mutable","name":"members","nameLocation":"5124:7:99","nodeType":"VariableDeclaration","scope":69603,"src":"5107:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69590,"name":"address","nodeType":"ElementaryTypeName","src":"5107:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69591,"nodeType":"ArrayTypeName","src":"5107:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5106:26:99"},"returnParameters":{"id":69594,"nodeType":"ParameterList","parameters":[],"src":"5140:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":69685,"nodeType":"FunctionDefinition","src":"5214:646:99","nodes":[],"body":{"id":69684,"nodeType":"Block","src":"5274:586:99","nodes":[],"statements":[{"assignments":[69610],"declarations":[{"constant":false,"id":69610,"mutability":"mutable","name":"allowlistRole","nameLocation":"5292:13:99","nodeType":"VariableDeclaration","scope":69684,"src":"5284:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69609,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5284:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69618,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69614,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5335:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69615,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5348:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69612,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5318:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69613,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5322:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5318:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5318:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69611,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5308:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5308:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"5284:72:99"},{"condition":{"arguments":[{"id":69622,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5406:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69625,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5429:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69624,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5421:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69623,"name":"address","nodeType":"ElementaryTypeName","src":"5421:7:99","typeDescriptions":{}}},"id":69626,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5421:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69619,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5371:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69620,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69621,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5398:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5371:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69639,"nodeType":"IfStatement","src":"5367:156:99","trueBody":{"id":69638,"nodeType":"Block","src":"5434:89:99","statements":[{"expression":{"arguments":[{"id":69631,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5486:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69634,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5509:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69633,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5501:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69632,"name":"address","nodeType":"ElementaryTypeName","src":"5501:7:99","typeDescriptions":{}}},"id":69635,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5501:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69628,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5448:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5475:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"5448:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69636,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:64:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69637,"nodeType":"ExpressionStatement","src":"5448:64:99"}]}},{"body":{"id":69677,"nodeType":"Block","src":"5577:223:99","statements":[{"condition":{"id":69659,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"5595:62:99","subExpression":{"arguments":[{"id":69654,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5631:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69655,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5646:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69657,"indexExpression":{"id":69656,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5654:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5646:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69651,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5596:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69652,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5623:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5596:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69658,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69676,"nodeType":"IfStatement","src":"5591:199:99","trueBody":{"id":69675,"nodeType":"Block","src":"5659:131:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69666,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5741:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69667,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5754:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69664,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5724:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69665,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5728:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5724:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69668,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5724:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69663,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5714:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5714:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69670,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5764:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69672,"indexExpression":{"id":69671,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5772:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5764:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69660,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5677:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69661,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5704:9:99","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":52543,"src":"5677:36:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:98:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69674,"nodeType":"ExpressionStatement","src":"5677:98:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69644,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5552:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69645,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5556:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5564:6:99","memberName":"length","nodeType":"MemberAccess","src":"5556:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5552:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69678,"initializationExpression":{"assignments":[69641],"declarations":[{"constant":false,"id":69641,"mutability":"mutable","name":"i","nameLocation":"5545:1:99","nodeType":"VariableDeclaration","scope":69678,"src":"5537:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69640,"name":"uint256","nodeType":"ElementaryTypeName","src":"5537:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69643,"initialValue":{"hexValue":"30","id":69642,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5549:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5537:13:99"},"loopExpression":{"expression":{"id":69649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5572:3:99","subExpression":{"id":69648,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5572:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69650,"nodeType":"ExpressionStatement","src":"5572:3:99"},"nodeType":"ForStatement","src":"5532:268:99"},{"eventCall":{"arguments":[{"id":69680,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5837:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69681,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5845:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69679,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69259,"src":"5815:21:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5815:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69683,"nodeType":"EmitStatement","src":"5810:43:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"5223:15:99","parameters":{"id":69607,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69606,"mutability":"mutable","name":"members","nameLocation":"5256:7:99","nodeType":"VariableDeclaration","scope":69685,"src":"5239:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69604,"name":"address","nodeType":"ElementaryTypeName","src":"5239:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69605,"nodeType":"ArrayTypeName","src":"5239:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5238:26:99"},"returnParameters":{"id":69608,"nodeType":"ParameterList","parameters":[],"src":"5274:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":69699,"nodeType":"FunctionDefinition","src":"5866:137:99","nodes":[],"body":{"id":69698,"nodeType":"Block","src":"5930:73:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69691,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5940:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5940:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69693,"nodeType":"ExpressionStatement","src":"5940:17:99"},{"expression":{"arguments":[{"id":69695,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69688,"src":"5988:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69694,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"5967:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69696,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5967:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69697,"nodeType":"ExpressionStatement","src":"5967:29:99"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"5875:19:99","parameters":{"id":69689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69688,"mutability":"mutable","name":"members","nameLocation":"5912:7:99","nodeType":"VariableDeclaration","scope":69699,"src":"5895:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69686,"name":"address","nodeType":"ElementaryTypeName","src":"5895:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69687,"nodeType":"ArrayTypeName","src":"5895:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5894:26:99"},"returnParameters":{"id":69690,"nodeType":"ParameterList","parameters":[],"src":"5930:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69755,"nodeType":"FunctionDefinition","src":"6009:440:99","nodes":[],"body":{"id":69754,"nodeType":"Block","src":"6074:375:99","nodes":[],"statements":[{"body":{"id":69747,"nodeType":"Block","src":"6129:258:99","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6209:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69723,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6222:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69720,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6192:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69721,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6196:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6192:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6192:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69719,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6182:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6182:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69726,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6232:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69728,"indexExpression":{"id":69727,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6240:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6232:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69716,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6147:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6174:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"6147:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69729,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:96:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69746,"nodeType":"IfStatement","src":"6143:234:99","trueBody":{"id":69745,"nodeType":"Block","src":"6245:132:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69736,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6328:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69737,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6341:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69734,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6311:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69735,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6315:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6311:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69738,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6311:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69733,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6301:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69739,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6301:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69740,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6351:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69742,"indexExpression":{"id":69741,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6359:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6351:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69730,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6263:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"id":69732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6290:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"6263:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:99:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69744,"nodeType":"ExpressionStatement","src":"6263:99:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69709,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6104:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69710,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6108:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6116:6:99","memberName":"length","nodeType":"MemberAccess","src":"6108:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6104:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69748,"initializationExpression":{"assignments":[69706],"declarations":[{"constant":false,"id":69706,"mutability":"mutable","name":"i","nameLocation":"6097:1:99","nodeType":"VariableDeclaration","scope":69748,"src":"6089:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69705,"name":"uint256","nodeType":"ElementaryTypeName","src":"6089:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69708,"initialValue":{"hexValue":"30","id":69707,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6101:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"6089:13:99"},"loopExpression":{"expression":{"id":69714,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"6124:3:99","subExpression":{"id":69713,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6124:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69715,"nodeType":"ExpressionStatement","src":"6124:3:99"},"nodeType":"ForStatement","src":"6084:303:99"},{"eventCall":{"arguments":[{"id":69750,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6426:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69751,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6434:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69749,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69252,"src":"6402:23:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6402:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69753,"nodeType":"EmitStatement","src":"6397:45:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"6018:20:99","parameters":{"id":69703,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69702,"mutability":"mutable","name":"members","nameLocation":"6056:7:99","nodeType":"VariableDeclaration","scope":69755,"src":"6039:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69700,"name":"address","nodeType":"ElementaryTypeName","src":"6039:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69701,"nodeType":"ArrayTypeName","src":"6039:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"6038:26:99"},"returnParameters":{"id":69704,"nodeType":"ParameterList","parameters":[],"src":"6074:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":69244,"name":"CVStrategyV0_0","nameLocations":["1191:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":69194,"src":"1191:14:99"},"id":69245,"nodeType":"InheritanceSpecifier","src":"1191:14:99"}],"canonicalName":"CVStrategyV0_1","contractDependencies":[],"contractKind":"contract","documentation":{"id":69243,"nodeType":"StructuredDocumentation","src":"1120:44:99","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69756,69194,57725,57931,65536,76221,65471,3089,3317,3106,2969,70711,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_1","nameLocation":"1173:14:99","scope":69757,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,69273,70634]}],"license":"AGPL-3.0-only"},"id":99} \ No newline at end of file +{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addToAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunityV0_1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_1"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeFromAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"membersToAdd","type":"address[]","internalType":"address[]"},{"name":"membersToRemove","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AllowlistMembersAdded","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"AllowlistMembersRemoved","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"InitializedCV2","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalInvalidForAllocation","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_proposalStatus","type":"uint8","internalType":"enum ProposalStatus"}]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161709d6200004d600039600081816118cc0152818161190c015281816119ab015281816119eb0152611a63015261709d6000f3fe6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220557ff5daa084b7da9aa590fc5a07cc075a1aa0a776bb9d04803a6f648f78d3ca64736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;1088:4:64;1045:48;;1164:5287:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220557ff5daa084b7da9aa590fc5a07cc075a1aa0a776bb9d04803a6f648f78d3ca64736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45:98;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:131;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:131;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:131;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:131;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9901:25:131;;;9889:2;9874:18;21565:107:98;9755:177:131;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;11197:25:131;;;11253:2;11238:18;;11231:34;;;;11281:18;;;11274:34;11339:2;11324:18;;11317:34;11184:3;11169:19;8833:24:98;10966:391:131;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;5083:125:99:-;;;;;;;;;;-1:-1:-1;5083:125:99;;;;;:::i;:::-;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;3906:332:99:-;;;;;;;;;;-1:-1:-1;3906:332:99;;;;;:::i;:::-;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;17209:31:131;;;17191:50;;17179:2;17164:18;8639:26:98;17047:200:131;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;5866:137:99;;;;;;;;;;-1:-1:-1;5866:137:99;;;;;:::i;:::-;;:::i;30100:191:98:-;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:103;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;2648:879:99:-;;;;;;;;;;-1:-1:-1;2648:879:99;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;24276:2:131;3325:201:47;;;24258:21:131;24315:2;24295:18;;;24288:30;24354:34;24334:18;;;24327:62;-1:-1:-1;;;24405:18:131;;;24398:44;24459:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;24641:36:131;;3721:14:47;;24629:2:131;24614:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9901:25:131;;;9874:18;;46534:29:98;9755:177:131;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9901:25:131;;;9874:18;;50531:29:98;9755:177:131;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9901:25:131;;;9874:18;;50657:31:98;9755:177:131;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9901:25:131;;9889:2;9874:18;;9755:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28272:2:131;2064:92:64;;;28254:21:131;28311:2;28291:18;;;28284:30;28350:34;28330:18;;;28323:62;-1:-1:-1;;;28401:18:131;;;28394:54;28465:19;;2064:92:64;28070:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;5083:125:99:-:0;5150:17;:15;:17::i;:::-;5177:24;5193:7;5177:15;:24::i;17286:1025:98:-;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;3906:332:99:-;4129:17;:15;:17::i;:::-;4156:75;4171:17;4190:9;4201:12;4215:15;4156:14;:75::i;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;5866:137:99:-;5940:17;:15;:17::i;:::-;5967:29;5988:7;5967:20;:29::i;30100:191:98:-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9901:25:131;;;9874:18;;48528:29:98;9755:177:131;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9901:25:131;;;9874:18;;48652:29:98;9755:177:131;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9901:25:131;;;9874:18;;53238:29:98;9755:177:131;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9901:25:131;;;53745:29:98;;-1:-1:-1;9874:18:131;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;2648:879:99;2435:16:97;:14;:16::i;:::-;2742:28:99::1;2762:7;2742:19;:28::i;:::-;2834:23;::::0;2859:10:::1;:12:::0;;2816:56:::1;::::0;-1:-1:-1;;;;;2834:23:99::1;::::0;::::1;2859:12;::::0;::::1;:::i;:::-;;;;;2816:17;:56::i;:::-;2781:15;:92:::0;;-1:-1:-1;;;;;;2781:92:99::1;-1:-1:-1::0;;;;;2781:92:99;;;::::1;::::0;;::::1;::::0;;2883:28:::1;::::0;;-1:-1:-1;;;2883:28:99;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;2883:28:99;;;;;;;;-1:-1:-1;2781:92:99;2883:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2922:40;2976:5;2965:51;;;;;;;;;;;;:::i;:::-;3031:20;::::0;::::1;::::0;2922:94;;-1:-1:-1;;;;;;3031:34:99::1;3027:94;;3088:22;;-1:-1:-1::0;;;3088:22:99::1;;;;;;;;;;;3027:94;3195:20;::::0;::::1;::::0;3175:17:::1;:40:::0;;-1:-1:-1;;;;;;3175:40:99::1;-1:-1:-1::0;;;;;3175:40:99;;::::1;::::0;;;::::1;::::0;;3241:15:::1;::::0;::::1;::::0;3226:12:::1;:30:::0;;-1:-1:-1;;3226:30:99::1;-1:-1:-1::0;3241:15:99;3226:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3280:14:99::1;::::0;::::1;::::0;3266:11:::1;:28:::0;;-1:-1:-1;;3266:28:99::1;;3280:14:::0;3266:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3318:14:99::1;::::0;::::1;::::0;3304:28;:11:::1;:28:::0;3369:14:::1;::::0;::::1;::::0;3342:11:::1;:42:::0;;-1:-1:-1;;;;;;3342:42:99::1;-1:-1:-1::0;;;;;3342:42:99;;::::1;::::0;;;::::1;::::0;;3409:19:::1;::::0;::::1;::::0;3430:11;;3443:16:::1;::::0;;-1:-1:-1;3443:16:99;;;::::1;::::0;::::1;3461::::0;;;;;;;;;3394:84:::1;::::0;3409:19;3430:11;3394:14:::1;:84::i;:::-;3493:27;3508:7;3517:2;3493:27;;;;;;;:::i;:::-;;;;;;;;2732:795;2648:879:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7014:31:::2;7030:5;7037:7;7014:15;:31::i;:::-;7055:25;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;38780:2:131;2415:73:45::1;::::0;::::1;38762:21:131::0;38819:2;38799:18;;;38792:30;38858:34;38838:18;;;38831:62;-1:-1:-1;;;38909:18:131;;;38902:36;38955:19;;2415:73:45::1;38578:402:131::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;39243:15:131;;;39225:34;;39295:15;;;39290:2;39275:18;;39268:43;39347:15;;;39342:2;39327:18;;39320:43;39175:2;39160:18;;38985:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;39710:25:131;;;39789:18;;;39782:43;;;;39841:18;;;39834:43;;;;39893:18;;39886:34;39936:19;;;39929:35;39980:19;;;39973:35;;;;40039:3;40024:19;;40017:35;;;;45815:407:98;;39697:3:131;39682:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9901:25:131;;;9874:18;;23722:29:98;9755:177:131;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9901:25:131;;;9874:18;;24025:29:98;9755:177:131;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9901:25:131;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9874:18:131;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9901:25:131;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9874:18:131;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;48077:2:131;42048:53:98;;;48059:21:131;48116:2;48096:18;;;48089:30;-1:-1:-1;;;48135:18:131;;;48128:58;48203:18;;42048:53:98;47875:352:131;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;48623:2:131;3262:56:60;;;48605:21:131;48662:2;48642:18;;;48635:30;48701:34;48681:18;;;48674:62;-1:-1:-1;;;48752:18:131;;;48745:44;48806:19;;3262:56:60;48421:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;49038:2:131;3140:82:60;;;49020:21:131;49077:2;49057:18;;;49050:30;49116:34;49096:18;;;49089:62;-1:-1:-1;;;49167:18:131;;;49160:39;49216:19;;3140:82:60;48836:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;49448:2:131;1675:68:45;;;49430:21:131;;;49467:18;;;49460:30;49526:34;49506:18;;;49499:62;49578:18;;1675:68:45;49246:356:131;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;5214:646:99:-;5284:21;5348:6;;5318:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5308:48;;;;;;5284:72;;5371:26;:24;:26::i;:::-;-1:-1:-1;;;;;5371:34:99;;5406:13;5429:1;5371:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5367:156;;;5448:26;:24;:26::i;:::-;-1:-1:-1;;;;;5448:37:99;;5486:13;5509:1;5448:64;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5367:156;5537:9;5532:268;5556:7;:14;5552:1;:18;5532:268;;;5596:26;:24;:26::i;:::-;-1:-1:-1;;;;;5596:34:99;;5631:13;5646:7;5654:1;5646:10;;;;;;;;:::i;:::-;;;;;;;5596:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5591:199;;5677:26;:24;:26::i;:::-;-1:-1:-1;;;;;5677:36:99;;5754:6;;5724:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5714:48;;;;;;5764:7;5772:1;5764:10;;;;;;;;:::i;:::-;;;;;;;5677:98;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5591:199;5572:3;;;;:::i;:::-;;;;5532:268;;;;5815:38;5837:6;;5845:7;5815:38;;;;;;;:::i;4551:526::-;4653:11;;4625:4;;-1:-1:-1;;;;;4653:11:99;4641:363;;4695:21;4759:6;;4729:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;4719:48;;;;;;4695:72;;4785:26;:24;:26::i;:::-;-1:-1:-1;;;;;4785:34:99;;4820:13;4843:1;4785:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4781:213;;;-1:-1:-1;4873:4:99;;4551:526;-1:-1:-1;;4551:526:99:o;4781:213::-;4923:26;:24;:26::i;:::-;-1:-1:-1;;;;;4923:34:99;;4958:13;4973:5;4923:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;4641:363::-;5020:11;;:50;;-1:-1:-1;;;5020:50:99;;-1:-1:-1;;;;;5020:11:99;;;;:28;;:50;;5049:5;;5064:4;;5020:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637:98:-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;3533:367:99:-;3757:50;3778:17;3797:9;3757:20;:50::i;:::-;3817:29;3833:12;3817:15;:29::i;:::-;3856:37;3877:15;6009:440;6089:9;6084:303;6108:7;:14;6104:1;:18;6084:303;;;6147:26;:24;:26::i;:::-;-1:-1:-1;;;;;6147:34:99;;6222:6;;6192:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6182:48;;;;;;6232:7;6240:1;6232:10;;;;;;;;:::i;:::-;;;;;;;6147:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6143:234;;;6263:26;:24;:26::i;:::-;-1:-1:-1;;;;;6263:37:99;;6341:6;;6311:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6301:48;;;;;;6351:7;6359:1;6351:10;;;;;;;;:::i;:::-;;;;;;;6263:99;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6143:234;6124:3;;;;:::i;:::-;;;;6084:303;;;;6402:40;6426:6;;6434:7;6402:40;;;;;;;:::i;12473:141:98:-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:131;;;11071:19:97;;3276:2:131;3261:18;11071:19:97;3148:187:131;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;51018:2:131;50989:15;50985:45;4867:36:6;;;50973:58:131;51047:12;;;51040:28;;;4823:7:6;;;;51084:12:131;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;4244:301:99:-;4347:27;4388:5;4377:38;;;;;;;;;;;;:::i;:::-;4347:68;;4430:9;4425:114;4449:2;:9;4445:1;:13;4425:114;;;4479:49;4511:2;4514:1;4511:5;;;;;;;;:::i;:::-;;;;;;;:16;;;4479:31;:49::i;:::-;4460:3;;;;:::i;:::-;;;;4425:114;;22272:633:98;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9901:25:131;;;27095:28:98;;9889:2:131;9874:18;27095:28:98;9755:177:131;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;53001:2:131;41543:66:98;;;52983:21:131;53040:2;53020:18;;;53013:30;53079:34;53059:18;;;53052:62;-1:-1:-1;;;53130:18:131;;;53123:38;53178:19;;41543:66:98;52799:404:131;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;53410:2:131;41619:53:98;;;53392:21:131;53449:2;53429:18;;;53422:30;-1:-1:-1;;;53468:18:131;;;53461:58;53536:18;;41619:53:98;53208:352:131;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;53767:2:131;1479:95:60;;;53749:21:131;53806:2;53786:18;;;53779:30;53845:34;53825:18;;;53818:62;-1:-1:-1;;;53896:18:131;;;53889:43;53949:19;;1479:95:60;53565:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;54181:2:131;2847:58:46;;;54163:21:131;54220:2;54200:18;;;54193:30;-1:-1:-1;;;54239:18:131;;;54232:53;54302:18;;2847:58:46;53979:347:131;2019:473:99;2113:18;2134:22;;;:9;:22;;;;;;2183:16;;;;;;:43;;;;;;;;:::i;:::-;;:91;;;-1:-1:-1;2250:24:99;2230:16;;;;;;:44;;;;;;;;:::i;:::-;;2183:91;:154;;;-1:-1:-1;2314:23:99;2294:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:154;:201;;;-1:-1:-1;2361:23:99;2341:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:201;2166:320;;;2458:16;;;;2416:59;;-1:-1:-1;;;2416:59:99;;;;2445:11;;2458:16;;;;;2416:59;;;:::i;11899:391:98:-;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9901:25:131;;;9874:18;;33311:29:98;9755:177:131;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;56184:2:131;8113:60:76;;;56166:21:131;56223:2;56203:18;;;56196:30;56262:31;56242:18;;;56235:59;56311:18;;8113:60:76;55982:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:131:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:131;;14:180;-1:-1:-1;14:180:131:o;199:104::-;-1:-1:-1;;;;;265:31:131;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:131;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:131;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:131:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:131;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:131:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:131;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:131;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:131;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:255::-;4677:2;4671:9;4719:6;4707:19;;-1:-1:-1;;;;;4741:34:131;;4777:22;;;4738:62;4735:88;;;4803:18;;:::i;4865:257::-;4937:4;4931:11;;;4969:17;;-1:-1:-1;;;;;5001:34:131;;5037:22;;;4998:62;4995:88;;;5063:18;;:::i;5127:253::-;5199:2;5193:9;5241:4;5229:17;;-1:-1:-1;;;;;5261:34:131;;5297:22;;;5258:62;5255:88;;;5323:18;;:::i;5385:275::-;5456:2;5450:9;5521:2;5502:13;;-1:-1:-1;;5498:27:131;5486:40;;-1:-1:-1;;;;;5541:34:131;;5577:22;;;5538:62;5535:88;;;5603:18;;:::i;:::-;5639:2;5632:22;5385:275;;-1:-1:-1;5385:275:131:o;5665:144::-;-1:-1:-1;;;;;5753:31:131;;5743:42;;5733:70;;5799:1;5796;5789:12;5814:727;5877:5;5925:4;5913:9;5908:3;5904:19;5900:30;5897:50;;;5943:1;5940;5933:12;5897:50;5965:22;;:::i;:::-;5956:31;;6024:9;6011:23;6043:46;6081:7;6043:46;:::i;:::-;6098:22;;6172:2;6157:18;;6144:32;6185:46;6144:32;6185:46;:::i;:::-;6263:7;6258:2;6251:5;6247:14;6240:31;;6331:2;6320:9;6316:18;6303:32;6298:2;6291:5;6287:14;6280:56;6396:2;6385:9;6381:18;6368:32;6363:2;6356:5;6352:14;6345:56;6462:3;6451:9;6447:19;6434:33;6428:3;6421:5;6417:15;6410:58;6529:3;6518:9;6514:19;6501:33;6495:3;6488:5;6484:15;6477:58;5814:727;;;;:::o;6546:413::-;6601:5;6649:4;6637:9;6632:3;6628:19;6624:30;6621:50;;;6667:1;6664;6657:12;6621:50;6689:22;;:::i;:::-;6680:31;;6747:9;6734:23;6727:5;6720:38;6818:2;6807:9;6803:18;6790:32;6785:2;6778:5;6774:14;6767:56;6883:2;6872:9;6868:18;6855:32;6850:2;6843:5;6839:14;6832:56;6948:2;6937:9;6933:18;6920:32;6915:2;6908:5;6904:14;6897:56;6546:413;;;;:::o;6964:366::-;7094:6;7102;7155:3;7143:9;7134:7;7130:23;7126:33;7123:53;;;7172:1;7169;7162:12;7123:53;7195:54;7241:7;7230:9;7195:54;:::i;:::-;7185:64;;7268:56;7316:7;7310:3;7299:9;7295:19;7268:56;:::i;:::-;7258:66;;6964:366;;;;;:::o;7335:183::-;7395:4;-1:-1:-1;;;;;7417:30:131;;7414:56;;;7450:18;;:::i;:::-;-1:-1:-1;7495:1:131;7491:14;7507:4;7487:25;;7335:183::o;7523:750::-;7577:5;7630:3;7623:4;7615:6;7611:17;7607:27;7597:55;;7648:1;7645;7638:12;7597:55;7684:6;7671:20;7710:4;7734:60;7750:43;7790:2;7750:43;:::i;:::-;7734:60;:::i;:::-;7828:15;;;7914:1;7910:10;;;;7898:23;;7894:32;;;7859:12;;;;7938:15;;;7935:35;;;7966:1;7963;7956:12;7935:35;8002:2;7994:6;7990:15;8014:230;8030:6;8025:3;8022:15;8014:230;;;8110:3;8097:17;8127:44;8165:5;8127:44;:::i;:::-;8184:18;;8222:12;;;;8047;;8014:230;;;-1:-1:-1;8262:5:131;7523:750;-1:-1:-1;;;;;;7523:750:131:o;8278:186::-;8326:4;-1:-1:-1;;;;;8348:30:131;;8345:56;;;8381:18;;:::i;:::-;-1:-1:-1;8447:2:131;8426:15;-1:-1:-1;;8422:29:131;8453:4;8418:40;;8278:186::o;8469:336::-;8533:5;8562:52;8578:35;8606:6;8578:35;:::i;8562:52::-;8553:61;;8637:6;8630:5;8623:21;8677:3;8668:6;8663:3;8659:16;8656:25;8653:45;;;8694:1;8691;8684:12;8653:45;8743:6;8738:3;8731:4;8724:5;8720:16;8707:43;8797:1;8790:4;8781:6;8774:5;8770:18;8766:29;8759:40;8469:336;;;;;:::o;8810:220::-;8852:5;8905:3;8898:4;8890:6;8886:17;8882:27;8872:55;;8923:1;8920;8913:12;8872:55;8945:79;9020:3;9011:6;8998:20;8991:4;8983:6;8979:17;8945:79;:::i;9035:715::-;9146:6;9154;9162;9215:2;9203:9;9194:7;9190:23;9186:32;9183:52;;;9231:1;9228;9221:12;9183:52;9258:23;;-1:-1:-1;;;;;9330:14:131;;;9327:34;;;9357:1;9354;9347:12;9327:34;9380:61;9433:7;9424:6;9413:9;9409:22;9380:61;:::i;:::-;9370:71;;9494:2;9483:9;9479:18;9466:32;9450:48;;9523:2;9513:8;9510:16;9507:36;;;9539:1;9536;9529:12;9507:36;;9562:51;9605:7;9594:8;9583:9;9579:24;9562:51;:::i;:::-;9552:61;;;9663:2;9652:9;9648:18;9635:32;9676:44;9714:5;9676:44;:::i;:::-;9739:5;9729:15;;;9035:715;;;;;:::o;9937:229::-;-1:-1:-1;;;;;10127:32:131;;;;10109:51;;10097:2;10082:18;;9937:229::o;10393:568::-;10470:6;10478;10486;10539:2;10527:9;10518:7;10514:23;10510:32;10507:52;;;10555:1;10552;10545:12;10507:52;10594:9;10581:23;10613:44;10651:5;10613:44;:::i;:::-;10676:5;-1:-1:-1;10733:2:131;10718:18;;10705:32;10746:46;10705:32;10746:46;:::i;:::-;10811:7;-1:-1:-1;10870:2:131;10855:18;;10842:32;10883:46;10842:32;10883:46;:::i;11362:468::-;11439:6;11447;11500:2;11488:9;11479:7;11475:23;11471:32;11468:52;;;11516:1;11513;11506:12;11468:52;11543:23;;-1:-1:-1;;;;;11578:30:131;;11575:50;;;11621:1;11618;11611:12;11575:50;11644:49;11685:7;11676:6;11665:9;11661:22;11644:49;:::i;:::-;11634:59;;;11743:2;11732:9;11728:18;11715:32;11756:44;11794:5;11756:44;:::i;:::-;11819:5;11809:15;;;11362:468;;;;;:::o;12043:142::-;12126:1;12119:5;12116:12;12106:46;;12132:18;;:::i;:::-;12161;;12043:142::o;12190:213::-;12339:2;12324:18;;12351:46;12328:9;12379:6;12351:46;:::i;12408:328::-;12476:6;12484;12537:2;12525:9;12516:7;12512:23;12508:32;12505:52;;;12553:1;12550;12543:12;12505:52;12592:9;12579:23;12611:44;12649:5;12611:44;:::i;:::-;12674:5;12726:2;12711:18;;;;12698:32;;-1:-1:-1;;;12408:328:131:o;12741:248::-;12809:6;12817;12870:2;12858:9;12849:7;12845:23;12841:32;12838:52;;;12886:1;12883;12876:12;12838:52;-1:-1:-1;;12909:23:131;;;12979:2;12964:18;;;12951:32;;-1:-1:-1;12741:248:131:o;12994:316::-;13071:6;13079;13087;13140:2;13128:9;13119:7;13115:23;13111:32;13108:52;;;13156:1;13153;13146:12;13108:52;-1:-1:-1;;13179:23:131;;;13249:2;13234:18;;13221:32;;-1:-1:-1;13300:2:131;13285:18;;;13272:32;;12994:316;-1:-1:-1;12994:316:131:o;13315:143::-;13399:1;13392:5;13389:12;13379:46;;13405:18;;:::i;13463:215::-;13613:2;13598:18;;13625:47;13602:9;13654:6;13625:47;:::i;13683:260::-;13742:6;13795:2;13783:9;13774:7;13770:23;13766:32;13763:52;;;13811:1;13808;13801:12;13763:52;13850:9;13837:23;13869:44;13907:5;13869:44;:::i;14369:468::-;14446:6;14454;14507:2;14495:9;14486:7;14482:23;14478:32;14475:52;;;14523:1;14520;14513:12;14475:52;14562:9;14549:23;14581:44;14619:5;14581:44;:::i;:::-;14644:5;-1:-1:-1;14700:2:131;14685:18;;14672:32;-1:-1:-1;;;;;14716:30:131;;14713:50;;;14759:1;14756;14749:12;14713:50;14782:49;14823:7;14814:6;14803:9;14799:22;14782:49;:::i;:::-;14772:59;;;14369:468;;;;;:::o;14842:752::-;14929:6;14937;14945;14998:2;14986:9;14977:7;14973:23;14969:32;14966:52;;;15014:1;15011;15004:12;14966:52;15053:9;15040:23;15072:44;15110:5;15072:44;:::i;:::-;15135:5;-1:-1:-1;15191:2:131;15176:18;;15163:32;-1:-1:-1;;;;;15207:30:131;;15204:50;;;15250:1;15247;15240:12;15204:50;15273:22;;15326:4;15318:13;;15314:27;-1:-1:-1;15304:55:131;;15355:1;15352;15345:12;15304:55;15378:73;15443:7;15438:2;15425:16;15420:2;15416;15412:11;15378:73;:::i;15838:348::-;15922:6;15975:2;15963:9;15954:7;15950:23;15946:32;15943:52;;;15991:1;15988;15981:12;15943:52;16018:23;;-1:-1:-1;;;;;16053:30:131;;16050:50;;;16096:1;16093;16086:12;16050:50;16119:61;16172:7;16163:6;16152:9;16148:22;16119:61;:::i;16191:851::-;16389:6;16397;16405;16413;16466:3;16454:9;16445:7;16441:23;16437:33;16434:53;;;16483:1;16480;16473:12;16434:53;16506:54;16552:7;16541:9;16506:54;:::i;:::-;16496:64;;16579:56;16627:7;16621:3;16610:9;16606:19;16579:56;:::i;:::-;16569:66;-1:-1:-1;16686:3:131;16671:19;;16658:33;-1:-1:-1;;;;;16740:14:131;;;16737:34;;;16767:1;16764;16757:12;16737:34;16790:61;16843:7;16834:6;16823:9;16819:22;16790:61;:::i;:::-;16780:71;;16904:3;16893:9;16889:19;16876:33;16860:49;;16934:2;16924:8;16921:16;16918:36;;;16950:1;16947;16940:12;16918:36;;16973:63;17028:7;17017:8;17006:9;17002:24;16973:63;:::i;:::-;16963:73;;;16191:851;;;;;;;:::o;17252:261::-;17433:2;17422:9;17415:21;17396:4;17453:54;17503:2;17492:9;17488:18;17480:6;17453:54;:::i;17518:1357::-;17645:6;17653;17706:2;17694:9;17685:7;17681:23;17677:32;17674:52;;;17722:1;17719;17712:12;17674:52;17749:23;;-1:-1:-1;;;;;17821:14:131;;;17818:34;;;17848:1;17845;17838:12;17818:34;17871:61;17924:7;17915:6;17904:9;17900:22;17871:61;:::i;:::-;17861:71;;17951:2;17941:12;;18006:2;17995:9;17991:18;17978:32;18035:2;18025:8;18022:16;18019:36;;;18051:1;18048;18041:12;18019:36;18074:24;;18129:4;18121:13;;18117:27;-1:-1:-1;18107:55:131;;18158:1;18155;18148:12;18107:55;18194:2;18181:16;18217:60;18233:43;18273:2;18233:43;:::i;18217:60::-;18311:15;;;18393:1;18389:10;;;;18381:19;;18377:28;;;18342:12;;;;18417:19;;;18414:39;;;18449:1;18446;18439:12;18414:39;18481:2;18477;18473:11;18493:352;18509:6;18504:3;18501:15;18493:352;;;18595:3;18582:17;18631:2;18618:11;18615:19;18612:109;;;18675:1;18704:2;18700;18693:14;18612:109;18746:56;18794:7;18789:2;18775:11;18771:2;18767:20;18763:29;18746:56;:::i;:::-;18734:69;;-1:-1:-1;18823:12:131;;;;18526;;18493:352;;;18497:3;18864:5;18854:15;;;;;;;;17518:1357;;;;;:::o;18880:826::-;19113:2;19165:21;;;19235:13;;19138:18;;;19257:22;;;19084:4;;19113:2;19298;;19316:18;;;;19357:15;;;19084:4;19400:280;19414:6;19411:1;19408:13;19400:280;;;19473:13;;19515:9;;-1:-1:-1;;;;;19511:35:131;19499:48;;19587:11;;19581:18;19567:12;;;19560:40;19620:12;;;;19655:15;;;;19543:1;19429:9;19400:280;;;-1:-1:-1;19697:3:131;;18880:826;-1:-1:-1;;;;;;;18880:826:131:o;19711:348::-;19763:8;19773:6;19827:3;19820:4;19812:6;19808:17;19804:27;19794:55;;19845:1;19842;19835:12;19794:55;-1:-1:-1;19868:20:131;;-1:-1:-1;;;;;19900:30:131;;19897:50;;;19943:1;19940;19933:12;19897:50;19980:4;19972:6;19968:17;19956:29;;20032:3;20025:4;20016:6;20008;20004:19;20000:30;19997:39;19994:59;;;20049:1;20046;20039:12;20064:788;20164:6;20172;20180;20188;20196;20249:2;20237:9;20228:7;20224:23;20220:32;20217:52;;;20265:1;20262;20255:12;20217:52;20288:23;;;-1:-1:-1;20362:2:131;20347:18;;20334:32;-1:-1:-1;;;;;20415:14:131;;;20412:34;;;20442:1;20439;20432:12;20412:34;20481:59;20532:7;20523:6;20512:9;20508:22;20481:59;:::i;:::-;20559:8;;-1:-1:-1;20455:85:131;-1:-1:-1;20647:2:131;20632:18;;20619:32;;-1:-1:-1;20663:16:131;;;20660:36;;;20692:1;20689;20682:12;20660:36;;20731:61;20784:7;20773:8;20762:9;20758:24;20731:61;:::i;:::-;20064:788;;;;-1:-1:-1;20064:788:131;;-1:-1:-1;20811:8:131;;20705:87;20064:788;-1:-1:-1;;;20064:788:131:o;20857:118::-;20943:5;20936:13;20929:21;20922:5;20919:32;20909:60;;20965:1;20962;20955:12;20980:241;21036:6;21089:2;21077:9;21068:7;21064:23;21060:32;21057:52;;;21105:1;21102;21095:12;21057:52;21144:9;21131:23;21163:28;21185:5;21163:28;:::i;21456:1033::-;-1:-1:-1;;;;;21958:15:131;;;21940:34;;22010:15;;;22005:2;21990:18;;21983:43;22062:15;;22057:2;22042:18;;22035:43;22109:2;22094:18;;22087:34;;;22152:3;22137:19;;22130:35;;;21889:3;21874:19;;22174:44;22211:6;22174:44;:::i;:::-;22255:6;22249:3;22238:9;22234:19;22227:35;22299:6;22293:3;22282:9;22278:19;22271:35;22343:6;22337:3;22326:9;22322:19;22315:35;22387:6;22381:3;22370:9;22366:19;22359:35;22431:6;22425:3;22414:9;22410:19;22403:35;22475:7;22469:3;22458:9;22454:19;22447:36;21456:1033;;;;;;;;;;;;;;:::o;22494:328::-;22562:6;22570;22623:2;22611:9;22602:7;22598:23;22594:32;22591:52;;;22639:1;22636;22629:12;22591:52;22675:9;22662:23;22652:33;;22735:2;22724:9;22720:18;22707:32;22748:44;22786:5;22748:44;:::i;22827:239::-;22970:2;22955:18;;22982:44;23019:6;22982:44;:::i;:::-;23035:25;;;22827:239;:::o;23071:388::-;23148:6;23156;23209:2;23197:9;23188:7;23184:23;23180:32;23177:52;;;23225:1;23222;23215:12;23177:52;23248:23;;;-1:-1:-1;23322:2:131;23307:18;;23294:32;-1:-1:-1;;;;;23338:30:131;;23335:50;;;23381:1;23378;23371:12;23464:220;23613:2;23602:9;23595:21;23576:4;23633:45;23674:2;23663:9;23659:18;23651:6;23633:45;:::i;23689:380::-;23768:1;23764:12;;;;23811;;;23832:61;;23886:4;23878:6;23874:17;23864:27;;23832:61;23939:2;23931:6;23928:14;23908:18;23905:38;23902:161;;23985:10;23980:3;23976:20;23973:1;23966:31;24020:4;24017:1;24010:15;24048:4;24045:1;24038:15;24688:127;24749:10;24744:3;24740:20;24737:1;24730:31;24780:4;24777:1;24770:15;24804:4;24801:1;24794:15;24820:128;24887:9;;;24908:11;;;24905:37;;;24922:18;;:::i;24953:345::-;-1:-1:-1;;;;;25173:32:131;;;;25155:51;;25237:2;25222:18;;25215:34;;;;25280:2;25265:18;;25258:34;25143:2;25128:18;;24953:345::o;25303:125::-;25368:9;;;25389:10;;;25386:36;;;25402:18;;:::i;25433:345::-;25635:25;;;-1:-1:-1;;;;;25696:32:131;;;;25691:2;25676:18;;25669:60;25760:2;25745:18;;25738:34;25623:2;25608:18;;25433:345::o;25783:279::-;25868:6;25921:2;25909:9;25900:7;25896:23;25892:32;25889:52;;;25937:1;25934;25927:12;25889:52;25969:9;25963:16;25988:44;26026:5;25988:44;:::i;26067:447::-;26298:25;;;-1:-1:-1;;;;;26397:15:131;;;26392:2;26377:18;;26370:43;26449:15;;26444:2;26429:18;;26422:43;26496:2;26481:18;;26474:34;26285:3;26270:19;;26067:447::o;26519:127::-;26580:10;26575:3;26571:20;26568:1;26561:31;26611:4;26608:1;26601:15;26635:4;26632:1;26625:15;26651:217;26691:1;26717;26707:132;;26761:10;26756:3;26752:20;26749:1;26742:31;26796:4;26793:1;26786:15;26824:4;26821:1;26814:15;26707:132;-1:-1:-1;26853:9:131;;26651:217::o;26873:193::-;26911:3;-1:-1:-1;;;;;26944:30:131;;;26983:41;;27004:18;;:::i;:::-;-1:-1:-1;;27040:20:131;;26873:193;-1:-1:-1;;26873:193:131:o;27071:168::-;27144:9;;;27175;;27192:15;;;27186:22;;27172:37;27162:71;;27213:18;;:::i;27244:408::-;27446:2;27428:21;;;27485:2;27465:18;;;27458:30;-1:-1:-1;;;;;;;;;;;27519:2:131;27504:18;;27497:62;-1:-1:-1;;;27590:2:131;27575:18;;27568:42;27642:3;27627:19;;27244:408::o;27657:::-;27859:2;27841:21;;;27898:2;27878:18;;;27871:30;-1:-1:-1;;;;;;;;;;;27932:2:131;27917:18;;27910:62;-1:-1:-1;;;28003:2:131;27988:18;;27981:42;28055:3;28040:19;;27657:408::o;28495:407::-;28697:2;28679:21;;;28736:2;28716:18;;;28709:30;28775:34;28770:2;28755:18;;28748:62;-1:-1:-1;;;28841:2:131;28826:18;;28819:41;28892:3;28877:19;;28495:407::o;28907:304::-;-1:-1:-1;;;;;29137:15:131;;;29119:34;;29189:15;;29184:2;29169:18;;29162:43;29069:2;29054:18;;28907:304::o;29216:245::-;29283:6;29336:2;29324:9;29315:7;29311:23;29307:32;29304:52;;;29352:1;29349;29342:12;29304:52;29384:9;29378:16;29403:28;29425:5;29403:28;:::i;29466:184::-;29536:6;29589:2;29577:9;29568:7;29564:23;29560:32;29557:52;;;29605:1;29602;29595:12;29557:52;-1:-1:-1;29628:16:131;;29466:184;-1:-1:-1;29466:184:131:o;29655:151::-;29734:13;;29756:44;29734:13;29756:44;:::i;:::-;29655:151;;;:::o;30080:248::-;30254:25;;;30310:2;30295:18;;30288:34;30242:2;30227:18;;30080:248::o;30333:274::-;30507:25;;;-1:-1:-1;;;;;30568:32:131;30563:2;30548:18;;30541:60;30495:2;30480:18;;30333:274::o;30612:266::-;30700:6;30695:3;30688:19;30752:6;30745:5;30738:4;30733:3;30729:14;30716:43;-1:-1:-1;30804:1:131;30779:16;;;30797:4;30775:27;;;30768:38;;;;30860:2;30839:15;;;-1:-1:-1;;30835:29:131;30826:39;;;30822:50;;30612:266::o;30883:315::-;31068:6;31057:9;31050:25;31111:2;31106;31095:9;31091:18;31084:30;31031:4;31131:61;31188:2;31177:9;31173:18;31165:6;31157;31131:61;:::i;:::-;31123:69;30883:315;-1:-1:-1;;;;;30883:315:131:o;31203:209::-;31241:3;-1:-1:-1;;;;;31311:14:131;;;-1:-1:-1;;;;;;31337:15:131;;31334:41;;31355:18;;:::i;:::-;31404:1;31391:15;;31203:209;-1:-1:-1;;;31203:209:131:o;31417:682::-;-1:-1:-1;;;;;31775:15:131;;;31757:34;;31822:2;31807:18;;31800:34;;;31865:2;31850:18;;31843:34;;;31913:15;;31908:2;31893:18;;31886:43;31966:3;31960;31945:19;;31938:32;;;31700:4;;31987:62;;32029:19;;32021:6;32013;31987:62;:::i;:::-;31979:70;;32086:6;32080:3;32069:9;32065:19;32058:35;31417:682;;;;;;;;;;:::o;32104:135::-;32143:3;32164:17;;;32161:43;;32184:18;;:::i;:::-;-1:-1:-1;32231:1:131;32220:13;;32104:135::o;32244:396::-;32310:5;32358:4;32346:9;32341:3;32337:19;32333:30;32330:50;;;32376:1;32373;32366:12;32330:50;32398:22;;:::i;:::-;32389:31;;32449:9;32443:16;32436:5;32429:31;32513:2;32502:9;32498:18;32492:25;32487:2;32480:5;32476:14;32469:49;32571:2;32560:9;32556:18;32550:25;32545:2;32538:5;32534:14;32527:49;32629:2;32618:9;32614:18;32608:25;32603:2;32596:5;32592:14;32585:49;32244:396;;;;:::o;32645:157::-;32734:13;;32776:1;32766:12;;32756:40;;32792:1;32789;32782:12;32807:156;32895:13;;32937:1;32927:12;;32917:40;;32953:1;32950;32943:12;32968:420;33043:5;33091:4;33079:9;33074:3;33070:19;33066:30;33063:50;;;33109:1;33106;33099:12;33063:50;33142:2;33136:9;33184:4;33172:17;;-1:-1:-1;;;;;33204:34:131;;33240:22;;;33201:62;33198:88;;;33266:18;;:::i;:::-;33302:2;33295:22;33365:16;;33350:32;;-1:-1:-1;33335:6:131;32968:420;-1:-1:-1;32968:420:131:o;33393:696::-;33467:5;33515:4;33503:9;33498:3;33494:19;33490:30;33487:50;;;33533:1;33530;33523:12;33487:50;33555:22;;:::i;:::-;33546:31;;33607:9;33601:16;33626:46;33664:7;33626:46;:::i;:::-;33681:22;;33748:2;33733:18;;33727:25;33761:46;33727:25;33761:46;:::i;:::-;33839:7;33834:2;33827:5;33823:14;33816:31;;33900:2;33889:9;33885:18;33879:25;33874:2;33867:5;33863:14;33856:49;33958:2;33947:9;33943:18;33937:25;33932:2;33925:5;33921:14;33914:49;34017:3;34006:9;34002:19;33996:26;33990:3;33983:5;33979:15;33972:51;34077:3;34066:9;34062:19;34056:26;34050:3;34043:5;34039:15;34032:51;33393:696;;;;:::o;34094:747::-;34159:5;34212:3;34205:4;34197:6;34193:17;34189:27;34179:55;;34230:1;34227;34220:12;34179:55;34259:6;34253:13;34285:4;34309:60;34325:43;34365:2;34325:43;:::i;34309:60::-;34403:15;;;34489:1;34485:10;;;;34473:23;;34469:32;;;34434:12;;;;34513:15;;;34510:35;;;34541:1;34538;34531:12;34510:35;34577:2;34569:6;34565:15;34589:223;34605:6;34600:3;34597:15;34589:223;;;34678:3;34672:10;34695:44;34733:5;34695:44;:::i;:::-;34752:18;;34790:12;;;;34622;;34589:223;;34846:1281;34965:6;35018:2;35006:9;34997:7;34993:23;34989:32;34986:52;;;35034:1;35031;35024:12;34986:52;35061:16;;-1:-1:-1;;;;;35126:14:131;;;35123:34;;;35153:1;35150;35143:12;35123:34;35176:22;;;;35232:6;35214:16;;;35210:29;35207:49;;;35252:1;35249;35242:12;35207:49;35278:22;;:::i;:::-;35323:50;35365:7;35361:2;35323:50;:::i;:::-;35316:5;35309:65;35406:53;35454:3;35450:2;35446:12;35406:53;:::i;:::-;35401:2;35394:5;35390:14;35383:77;35494:52;35541:3;35537:2;35533:12;35494:52;:::i;:::-;35487:4;35480:5;35476:16;35469:78;35581:69;35642:7;35636:3;35632:2;35628:12;35581:69;:::i;:::-;35574:4;35567:5;35563:16;35556:95;35684:68;35744:7;35738:3;35734:2;35730:12;35684:68;:::i;:::-;35678:3;35671:5;35667:15;35660:93;35786:43;35824:3;35820:2;35816:12;35786:43;:::i;:::-;35780:3;35773:5;35769:15;35762:68;35863:43;35901:3;35897:2;35893:12;35863:43;:::i;:::-;35857:3;35850:5;35846:15;35839:68;35946:3;35942:2;35938:12;35932:19;35976:2;35966:8;35963:16;35960:36;;;35992:1;35989;35982:12;35960:36;36029:67;36088:7;36077:8;36073:2;36069:17;36029:67;:::i;:::-;36023:3;36012:15;;36005:92;-1:-1:-1;36016:5:131;34846:1281;-1:-1:-1;;;;;34846:1281:131:o;36132:261::-;36212:5;36206:12;36201:3;36194:25;36268:4;36261:5;36257:16;36251:23;36244:4;36239:3;36235:14;36228:47;36324:4;36317:5;36313:16;36307:23;36300:4;36295:3;36291:14;36284:47;36380:4;36373:5;36369:16;36363:23;36356:4;36351:3;36347:14;36340:47;;;36132:261::o;36840:461::-;36893:3;36931:5;36925:12;36958:6;36953:3;36946:19;36984:4;37013:2;37008:3;37004:12;36997:19;;37050:2;37043:5;37039:14;37071:1;37081:195;37095:6;37092:1;37089:13;37081:195;;;37160:13;;-1:-1:-1;;;;;37156:39:131;37144:52;;37216:12;;;;37251:15;;;;37192:1;37110:9;37081:195;;;-1:-1:-1;37292:3:131;;36840:461;-1:-1:-1;;;;;36840:461:131:o;37306:1267::-;37561:6;37550:9;37543:25;37604:2;37599;37588:9;37584:18;37577:30;37616:61;37673:2;37662:9;37658:18;37649:6;37643:13;37616:61;:::i;:::-;37524:4;37724:2;37716:6;37712:15;37706:22;37737:63;37795:3;37784:9;37780:19;37766:12;37737:63;:::i;:::-;;37849:2;37841:6;37837:15;37831:22;37862:64;37921:3;37910:9;37906:19;37890:14;37862:64;:::i;:::-;-1:-1:-1;37987:4:131;37975:17;;;37969:24;37963:31;37957:3;37942:19;;37935:60;38044:4;38032:17;;;38026:24;36522:12;;-1:-1:-1;;;;;36518:21:131;;;38125:3;38110:19;;36506:34;36593:4;36582:16;;36576:23;36572:32;36556:14;;;36549:56;36654:4;36643:16;;36637:23;36621:14;;;36614:47;36699:16;;;36693:23;36677:14;;;36670:47;36755:16;;36749:23;36733:14;;;36726:47;36486:3;36811:16;;;36805:23;36789:14;;;36782:47;38167:17;;38161:24;38194:55;38244:3;38229:19;;38161:24;38194:55;:::i;:::-;;38298:3;38290:6;38286:16;38280:23;38322:6;38337:54;38387:2;38376:9;38372:18;38356:14;38337:54;:::i;:::-;38440:3;38432:6;38428:16;38422:23;38400:45;;38482:2;38476:3;38465:9;38461:19;38454:31;;38502:65;38562:3;38551:9;38547:19;38531:14;38502:65;:::i;40063:252::-;40251:3;40236:19;;40264:45;40240:9;40291:6;40264:45;:::i;40320:319::-;40522:25;;;40578:2;40563:18;;40556:34;;;;40621:2;40606:18;;40599:34;40510:2;40495:18;;40320:319::o;40644:726::-;40710:5;40758:4;40746:9;40741:3;40737:19;40733:30;40730:50;;;40776:1;40773;40766:12;40730:50;40798:22;;:::i;:::-;40843:16;;40829:31;;40904:2;40889:18;;40883:25;40789:31;;-1:-1:-1;;;;;;40920:30:131;;40917:50;;;40963:1;40960;40953:12;40917:50;40986:22;;41039:4;41031:13;;41027:23;-1:-1:-1;41017:51:131;;41064:1;41061;41054:12;41017:51;41093:2;41087:9;41118:48;41134:31;41162:2;41134:31;:::i;41118:48::-;41189:2;41182:5;41175:17;41229:3;41224:2;41219;41215;41211:11;41207:20;41204:29;41201:49;;;41246:1;41243;41236:12;41201:49;41259:67;41323:2;41318;41311:5;41307:14;41302:2;41298;41294:11;41259:67;:::i;:::-;41353:2;41342:14;;41335:29;-1:-1:-1;41346:5:131;;40644:726;-1:-1:-1;;;40644:726:131:o;41375:1054::-;41467:6;41520:2;41508:9;41499:7;41495:23;41491:32;41488:52;;;41536:1;41533;41526:12;41488:52;41563:16;;-1:-1:-1;;;;;41628:14:131;;;41625:34;;;41655:1;41652;41645:12;41625:34;41678:22;;;;41734:4;41716:16;;;41712:27;41709:47;;;41752:1;41749;41742:12;41709:47;41778:22;;:::i;:::-;41829:2;41823:9;41816:5;41809:24;41871:2;41867;41863:11;41857:18;41884:46;41922:7;41884:46;:::i;:::-;41957:2;41946:14;;41939:31;42008:2;42000:11;;41994:18;42021:46;41994:18;42021:46;:::i;:::-;42094:2;42083:14;;42076:31;42146:2;42138:11;;42132:18;42162:16;;;42159:36;;;42191:1;42188;42181:12;42159:36;42227:65;42284:7;42273:8;42269:2;42265:17;42227:65;:::i;:::-;42222:2;42215:5;42211:14;42204:89;;42340:3;42336:2;42332:12;42326:19;42320:3;42313:5;42309:15;42302:44;42393:3;42389:2;42385:12;42379:19;42373:3;42366:5;42362:15;42355:44;42418:5;42408:15;;;;;41375:1054;;;;:::o;42434:1012::-;42537:6;42590:2;42578:9;42569:7;42565:23;42561:32;42558:52;;;42606:1;42603;42596:12;42558:52;42633:16;;-1:-1:-1;;;;;42698:14:131;;;42695:34;;;42725:1;42722;42715:12;42695:34;42748:22;;;;42804:4;42786:16;;;42782:27;42779:47;;;42822:1;42819;42812:12;42779:47;42848:22;;:::i;:::-;42899:2;42893:9;42886:5;42879:24;42941:2;42937;42933:11;42927:18;42954:46;42992:7;42954:46;:::i;:::-;43027:2;43016:14;;43009:31;43086:2;43078:11;;;43072:18;43056:14;;;43049:42;43129:2;43121:11;;43115:18;43142:46;43115:18;43142:46;:::i;:::-;43215:2;43204:14;;43197:31;43267:3;43259:12;;43253:19;43284:16;;;43281:36;;;43313:1;43310;43303:12;43281:36;43350:65;43407:7;43396:8;43392:2;43388:17;43350:65;:::i;:::-;43344:3;43333:15;;43326:90;-1:-1:-1;43337:5:131;42434:1012;-1:-1:-1;;;;;42434:1012:131:o;43860:545::-;43962:2;43957:3;43954:11;43951:448;;;43998:1;44023:5;44019:2;44012:17;44068:4;44064:2;44054:19;44138:2;44126:10;44122:19;44119:1;44115:27;44109:4;44105:38;44174:4;44162:10;44159:20;44156:47;;;-1:-1:-1;44197:4:131;44156:47;44252:2;44247:3;44243:12;44240:1;44236:20;44230:4;44226:31;44216:41;;44307:82;44325:2;44318:5;44315:13;44307:82;;;44370:17;;;44351:1;44340:13;44307:82;;;44311:3;;;43860:545;;;:::o;44581:1352::-;44701:10;;-1:-1:-1;;;;;44723:30:131;;44720:56;;;44756:18;;:::i;:::-;44785:97;44875:6;44835:38;44867:4;44861:11;44835:38;:::i;:::-;44829:4;44785:97;:::i;:::-;44937:4;;45001:2;44990:14;;45018:1;45013:663;;;;45720:1;45737:6;45734:89;;;-1:-1:-1;45789:19:131;;;45783:26;45734:89;-1:-1:-1;;44538:1:131;44534:11;;;44530:24;44526:29;44516:40;44562:1;44558:11;;;44513:57;45836:81;;44983:944;;45013:663;43807:1;43800:14;;;43844:4;43831:18;;-1:-1:-1;;45049:20:131;;;45167:236;45181:7;45178:1;45175:14;45167:236;;;45270:19;;;45264:26;45249:42;;45362:27;;;;45330:1;45318:14;;;;45197:19;;45167:236;;;45171:3;45431:6;45422:7;45419:19;45416:201;;;45492:19;;;45486:26;-1:-1:-1;;45575:1:131;45571:14;;;45587:3;45567:24;45563:37;45559:42;45544:58;45529:74;;45416:201;-1:-1:-1;;;;;45663:1:131;45647:14;;;45643:22;45630:36;;-1:-1:-1;44581:1352:131:o;46223:273::-;46291:6;46344:2;46332:9;46323:7;46319:23;46315:32;46312:52;;;46360:1;46357;46350:12;46312:52;46392:9;46386:16;46442:4;46435:5;46431:16;46424:5;46421:27;46411:55;;46462:1;46459;46452:12;46501:422;46590:1;46633:5;46590:1;46647:270;46668:7;46658:8;46655:21;46647:270;;;46727:4;46723:1;46719:6;46715:17;46709:4;46706:27;46703:53;;;46736:18;;:::i;:::-;46786:7;46776:8;46772:22;46769:55;;;46806:16;;;;46769:55;46885:22;;;;46845:15;;;;46647:270;;;46651:3;46501:422;;;;;:::o;46928:806::-;46977:5;47007:8;46997:80;;-1:-1:-1;47048:1:131;47062:5;;46997:80;47096:4;47086:76;;-1:-1:-1;47133:1:131;47147:5;;47086:76;47178:4;47196:1;47191:59;;;;47264:1;47259:130;;;;47171:218;;47191:59;47221:1;47212:10;;47235:5;;;47259:130;47296:3;47286:8;47283:17;47280:43;;;47303:18;;:::i;:::-;-1:-1:-1;;47359:1:131;47345:16;;47374:5;;47171:218;;47473:2;47463:8;47460:16;47454:3;47448:4;47445:13;47441:36;47435:2;47425:8;47422:16;47417:2;47411:4;47408:12;47404:35;47401:77;47398:159;;;-1:-1:-1;47510:19:131;;;47542:5;;47398:159;47589:34;47614:8;47608:4;47589:34;:::i;:::-;47659:6;47655:1;47651:6;47647:19;47638:7;47635:32;47632:58;;;47670:18;;:::i;:::-;47708:20;;46928:806;-1:-1:-1;;;46928:806:131:o;47739:131::-;47799:5;47828:36;47855:8;47849:4;47828:36;:::i;49607:324::-;-1:-1:-1;;;49837:24:131;;49886:1;49877:11;;49870:27;;;;49922:2;49913:12;;49607:324::o;50215:127::-;50276:10;50271:3;50267:20;50264:1;50257:31;50307:4;50304:1;50297:15;50331:4;50328:1;50321:15;50347:332;50554:6;50543:9;50536:25;50597:2;50592;50581:9;50577:18;50570:30;50517:4;50617:56;50669:2;50658:9;50654:18;50646:6;50617:56;:::i;50684:127::-;50745:10;50740:3;50736:20;50733:1;50726:31;50776:4;50773:1;50766:15;50800:4;50797:1;50790:15;51107:1185;51236:6;51267:2;51310;51298:9;51289:7;51285:23;51281:32;51278:52;;;51326:1;51323;51316:12;51278:52;51353:16;;-1:-1:-1;;;;;51381:30:131;;51378:50;;;51424:1;51421;51414:12;51378:50;51447:22;;51500:4;51492:13;;51488:27;-1:-1:-1;51478:55:131;;51529:1;51526;51519:12;51478:55;51558:2;51552:9;51581:60;51597:43;51637:2;51597:43;:::i;51581:60::-;51675:15;;;51757:1;51753:10;;;;51745:19;;51741:28;;;51706:12;;;;51781:19;;;51778:39;;;51813:1;51810;51803:12;51778:39;51837:11;;;;51857:405;51873:6;51868:3;51865:15;51857:405;;;51955:4;51949:3;51940:7;51936:17;51932:28;51929:118;;;52001:1;52030:2;52026;52019:14;51929:118;52073:22;;:::i;:::-;52122:10;;52108:25;;52175:12;;;52169:19;52153:14;;;52146:43;52202:18;;51899:4;51890:14;;;;52240:12;;;;51857:405;;52297:497;-1:-1:-1;;;;;52582:32:131;;;;52564:51;;52646:2;52631:18;;52624:34;;;;52689:2;52674:18;;52667:34;;;;52732:2;52717:18;;52710:34;52775:3;52760:19;;52753:35;52551:3;52536:19;;52297:497::o;54331:319::-;54523:25;;;54511:2;54496:18;;54557:44;54594:6;54557:44;:::i;:::-;54637:6;54632:2;54621:9;54617:18;54610:34;54331:319;;;;;:::o;54655:216::-;54719:9;;;54747:11;;;54694:3;54777:9;;54805:10;;54801:19;;54830:10;;54822:19;;54798:44;54795:70;;;54845:18;;:::i;55690:287::-;55819:3;55857:6;55851:13;55873:66;55932:6;55927:3;55920:4;55912:6;55908:17;55873:66;:::i;:::-;55955:16;;;;;55690:287;-1:-1:-1;;55690:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6348,"length":32},{"start":6412,"length":32},{"start":6571,"length":32},{"start":6635,"length":32},{"start":6755,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","addToAllowList(address[])":"7263cfe2","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getRegistryCommunityV0_1()":"6a6f69b4","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","removeFromAllowList(address[])":"a51312c8","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256),address[],address[])":"948e7a59","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"_proposalStatus\",\"type\":\"uint8\"}],\"name\":\"ProposalInvalidForAllocation\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV2\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"addToAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunityV0_1\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_1\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"removeFromAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"membersToAdd\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"membersToRemove\",\"type\":\"address[]\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":\"CVStrategyV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"enum ProposalStatus","name":"_proposalStatus","type":"uint8"}],"type":"error","name":"ProposalInvalidForAllocation"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersAdded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersRemoved","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}],"indexed":false}],"type":"event","name":"InitializedCV2","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"addToAllowList"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunityV0_1","outputs":[{"internalType":"contract RegistryCommunityV0_1","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"removeFromAllowList"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"address[]","name":"membersToAdd","type":"address[]"},{"internalType":"address[]","name":"membersToRemove","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":"CVStrategyV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)75152"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70106"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)75119":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)75152":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70106":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)75119"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","id":69757,"exportedSymbols":{"ArbitrableConfig":[65628],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"Clone":[3002],"CreateProposal":[65557],"IArbitrator":[75119],"ICollateralVault":[75152],"ISybilScorer":[70106],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:6410:99","nodes":[{"id":69196,"nodeType":"PragmaDirective","src":"42:24:99","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":69208,"nodeType":"ImportDirective","src":"68:263:99","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"./CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":69197,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"81:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69198,"name":"CVParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65637,"src":"101:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69199,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"115:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69200,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"133:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69201,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"150:17:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69202,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"173:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69203,"name":"Proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65606,"src":"195:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69204,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"209:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69205,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"229:15:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69206,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"250:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69207,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"270:30:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69211,"nodeType":"ImportDirective","src":"333:63:99","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":69209,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"341:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69210,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"355:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69213,"nodeType":"ImportDirective","src":"397:85:99","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":69212,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"405:21:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69215,"nodeType":"ImportDirective","src":"483:65:99","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":69214,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"491:5:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69217,"nodeType":"ImportDirective","src":"549:68:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":75153,"symbolAliases":[{"foreign":{"id":69216,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"557:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69219,"nodeType":"ImportDirective","src":"618:58:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":75120,"symbolAliases":[{"foreign":{"id":69218,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75119,"src":"626:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69242,"nodeType":"StructDefinition","src":"832:286:99","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":69222,"mutability":"mutable","name":"cvParams","nameLocation":"885:8:99","nodeType":"VariableDeclaration","scope":69242,"src":"876:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":69221,"nodeType":"UserDefinedTypeName","pathNode":{"id":69220,"name":"CVParams","nameLocations":["876:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"876:8:99"},"referencedDeclaration":65637,"src":"876:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69225,"mutability":"mutable","name":"proposalType","nameLocation":"912:12:99","nodeType":"VariableDeclaration","scope":69242,"src":"899:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":69224,"nodeType":"UserDefinedTypeName","pathNode":{"id":69223,"name":"ProposalType","nameLocations":["899:12:99"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"899:12:99"},"referencedDeclaration":65540,"src":"899:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":69228,"mutability":"mutable","name":"pointSystem","nameLocation":"942:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"930:23:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":69227,"nodeType":"UserDefinedTypeName","pathNode":{"id":69226,"name":"PointSystem","nameLocations":["930:11:99"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"930:11:99"},"referencedDeclaration":65545,"src":"930:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":69231,"mutability":"mutable","name":"pointConfig","nameLocation":"977:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"959:29:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":69230,"nodeType":"UserDefinedTypeName","pathNode":{"id":69229,"name":"PointSystemConfig","nameLocations":["959:17:99"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"959:17:99"},"referencedDeclaration":65614,"src":"959:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":69234,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"1011:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"994:33:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69233,"nodeType":"UserDefinedTypeName","pathNode":{"id":69232,"name":"ArbitrableConfig","nameLocations":["994:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"994:16:99"},"referencedDeclaration":65628,"src":"994:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69236,"mutability":"mutable","name":"registryCommunity","nameLocation":"1041:17:99","nodeType":"VariableDeclaration","scope":69242,"src":"1033:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69235,"name":"address","nodeType":"ElementaryTypeName","src":"1033:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69238,"mutability":"mutable","name":"sybilScorer","nameLocation":"1072:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"1064:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69237,"name":"address","nodeType":"ElementaryTypeName","src":"1064:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69241,"mutability":"mutable","name":"initialAllowlist","nameLocation":"1099:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"1089:26:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69239,"name":"address","nodeType":"ElementaryTypeName","src":"1089:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69240,"nodeType":"ArrayTypeName","src":"1089:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"839:30:99","scope":69757,"visibility":"public"},{"id":69756,"nodeType":"ContractDefinition","src":"1164:5287:99","nodes":[{"id":69252,"nodeType":"EventDefinition","src":"1377:65:99","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"1383:23:99","parameters":{"id":69251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69247,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1415:6:99","nodeType":"VariableDeclaration","scope":69252,"src":"1407:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69246,"name":"uint256","nodeType":"ElementaryTypeName","src":"1407:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69250,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1433:7:99","nodeType":"VariableDeclaration","scope":69252,"src":"1423:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69248,"name":"address","nodeType":"ElementaryTypeName","src":"1423:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69249,"nodeType":"ArrayTypeName","src":"1423:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1406:35:99"}},{"id":69259,"nodeType":"EventDefinition","src":"1447:63:99","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"1453:21:99","parameters":{"id":69258,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69254,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1483:6:99","nodeType":"VariableDeclaration","scope":69259,"src":"1475:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69253,"name":"uint256","nodeType":"ElementaryTypeName","src":"1475:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69257,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1501:7:99","nodeType":"VariableDeclaration","scope":69259,"src":"1491:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69255,"name":"address","nodeType":"ElementaryTypeName","src":"1491:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69256,"nodeType":"ArrayTypeName","src":"1491:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1474:35:99"}},{"id":69266,"nodeType":"EventDefinition","src":"1515:74:99","nodes":[],"anonymous":false,"eventSelector":"a489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf","name":"InitializedCV2","nameLocation":"1521:14:99","parameters":{"id":69265,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69261,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1544:6:99","nodeType":"VariableDeclaration","scope":69266,"src":"1536:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69260,"name":"uint256","nodeType":"ElementaryTypeName","src":"1536:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69264,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"1583:4:99","nodeType":"VariableDeclaration","scope":69266,"src":"1552:35:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69263,"nodeType":"UserDefinedTypeName","pathNode":{"id":69262,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1552:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1552:30:99"},"referencedDeclaration":69242,"src":"1552:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"1535:53:99"}},{"id":69273,"nodeType":"ErrorDefinition","src":"1760:88:99","nodes":[],"errorSelector":"94d57ead","name":"ProposalInvalidForAllocation","nameLocation":"1766:28:99","parameters":{"id":69272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69268,"mutability":"mutable","name":"_proposalId","nameLocation":"1803:11:99","nodeType":"VariableDeclaration","scope":69273,"src":"1795:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69267,"name":"uint256","nodeType":"ElementaryTypeName","src":"1795:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69271,"mutability":"mutable","name":"_proposalStatus","nameLocation":"1831:15:99","nodeType":"VariableDeclaration","scope":69273,"src":"1816:30:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":69270,"nodeType":"UserDefinedTypeName","pathNode":{"id":69269,"name":"ProposalStatus","nameLocations":["1816:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"1816:14:99"},"referencedDeclaration":65565,"src":"1816:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"}],"src":"1794:53:99"}},{"id":69317,"nodeType":"FunctionDefinition","src":"2019:473:99","nodes":[],"body":{"id":69316,"nodeType":"Block","src":"2103:389:99","nodes":[],"statements":[{"assignments":[69280],"declarations":[{"constant":false,"id":69280,"mutability":"mutable","name":"p","nameLocation":"2130:1:99","nodeType":"VariableDeclaration","scope":69316,"src":"2113:18:99","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69279,"nodeType":"UserDefinedTypeName","pathNode":{"id":69278,"name":"Proposal","nameLocations":["2113:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"2113:8:99"},"referencedDeclaration":65606,"src":"2113:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69284,"initialValue":{"baseExpression":{"id":69281,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"2134:9:99","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69283,"indexExpression":{"id":69282,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2144:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2134:22:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2113:43:99"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69301,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69295,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69285,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2183:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69286,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2185:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2183:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69287,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2203:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69288,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2218:8:99","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":65558,"src":"2203:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2183:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69290,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2230:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69291,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2232:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2230:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69292,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2250:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2265:9:99","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"2250:24:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2230:44:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:91:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69296,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2294:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2296:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2294:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69298,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2314:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69299,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2329:8:99","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"2314:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2294:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:154:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69306,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69302,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2341:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69303,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2343:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2341:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69304,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2361:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69305,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2376:8:99","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"2361:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2341:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:201:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69315,"nodeType":"IfStatement","src":"2166:320:99","trueBody":{"id":69314,"nodeType":"Block","src":"2395:91:99","statements":[{"errorCall":{"arguments":[{"id":69309,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2445:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69310,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2458:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69311,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2460:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2458:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}],"id":69308,"name":"ProposalInvalidForAllocation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69273,"src":"2416:28:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_enum$_ProposalStatus_$65565_$returns$__$","typeString":"function (uint256,enum ProposalStatus) pure"}},"id":69312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2416:59:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69313,"nodeType":"RevertStatement","src":"2409:66:99"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkProposalAllocationValidity","nameLocation":"2028:31:99","parameters":{"id":69276,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69275,"mutability":"mutable","name":"_proposalId","nameLocation":"2068:11:99","nodeType":"VariableDeclaration","scope":69317,"src":"2060:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69274,"name":"uint256","nodeType":"ElementaryTypeName","src":"2060:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2059:21:99"},"returnParameters":{"id":69277,"nodeType":"ParameterList","parameters":[],"src":"2103:0:99"},"scope":69756,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":69328,"nodeType":"FunctionDefinition","src":"2498:144:99","nodes":[],"body":{"id":69327,"nodeType":"Block","src":"2578:64:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69324,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"2617:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69323,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"2595:21:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":69325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2595:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"functionReturnParameters":69322,"id":69326,"nodeType":"Return","src":"2588:47:99"}]},"functionSelector":"6a6f69b4","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunityV0_1","nameLocation":"2507:24:99","parameters":{"id":69318,"nodeType":"ParameterList","parameters":[],"src":"2531:2:99"},"returnParameters":{"id":69322,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69321,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69328,"src":"2555:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":69320,"nodeType":"UserDefinedTypeName","pathNode":{"id":69319,"name":"RegistryCommunityV0_1","nameLocations":["2555:21:99"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"2555:21:99"},"referencedDeclaration":72403,"src":"2555:21:99","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"src":"2554:23:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":69430,"nodeType":"FunctionDefinition","src":"2648:879:99","nodes":[],"body":{"id":69429,"nodeType":"Block","src":"2732:795:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69339,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"2762:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69338,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"2742:19:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2742:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69341,"nodeType":"ExpressionStatement","src":"2742:28:99"},{"expression":{"id":69351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69342,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2781:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":69346,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"2834:23:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2859:12:99","subExpression":{"id":69347,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"2859:10:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69344,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"2816:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":69345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2822:11:99","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"2816:17:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":69349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2816:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69343,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"2799:16:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75152_$","typeString":"type(contract ICollateralVault)"}},"id":69350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2799:74:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"src":"2781:92:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69352,"nodeType":"ExpressionStatement","src":"2781:92:99"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69353,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2883:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69355,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2899:10:99","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75124,"src":"2883:26:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":69356,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2883:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69357,"nodeType":"ExpressionStatement","src":"2883:28:99"},{"assignments":[69360],"declarations":[{"constant":false,"id":69360,"mutability":"mutable","name":"ip","nameLocation":"2960:2:99","nodeType":"VariableDeclaration","scope":69429,"src":"2922:40:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69359,"nodeType":"UserDefinedTypeName","pathNode":{"id":69358,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2922:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2922:30:99"},"referencedDeclaration":69242,"src":"2922:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":69367,"initialValue":{"arguments":[{"id":69363,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69332,"src":"2976:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":69364,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"2984:30:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":69365,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2983:32:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":69361,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2965:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69362,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2969:6:99","memberName":"decode","nodeType":"MemberAccess","src":"2965:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69366,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2965:51:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"2922:94:99"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69368,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3031:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69369,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3034:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3031:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69372,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3063:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69371,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3055:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69370,"name":"address","nodeType":"ElementaryTypeName","src":"3055:7:99","typeDescriptions":{}}},"id":69373,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3055:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3031:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69379,"nodeType":"IfStatement","src":"3027:94:99","trueBody":{"id":69378,"nodeType":"Block","src":"3067:54:99","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69375,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"3088:20:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69376,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3088:22:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69377,"nodeType":"RevertStatement","src":"3081:29:99"}]}},{"expression":{"id":69383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69380,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"3175:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69381,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3195:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3198:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3195:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3175:40:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69384,"nodeType":"ExpressionStatement","src":"3175:40:99"},{"expression":{"id":69388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69385,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"3226:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69386,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3241:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3244:12:99","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"3241:15:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"3226:30:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":69389,"nodeType":"ExpressionStatement","src":"3226:30:99"},{"expression":{"id":69393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69390,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"3266:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69391,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3280:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3283:11:99","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"3280:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"3266:28:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":69394,"nodeType":"ExpressionStatement","src":"3266:28:99"},{"expression":{"id":69398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69395,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"3304:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69396,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3318:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69397,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3321:11:99","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"3318:14:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"3304:28:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":69399,"nodeType":"ExpressionStatement","src":"3304:28:99"},{"expression":{"id":69405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69400,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"3342:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":69402,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3369:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69403,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3372:11:99","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"3369:14:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69401,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"3356:12:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":69404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3356:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"3342:42:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":69406,"nodeType":"ExpressionStatement","src":"3342:42:99"},{"expression":{"arguments":[{"expression":{"id":69408,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3409:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69409,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3412:16:99","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"3409:19:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":69410,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3430:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69411,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3433:8:99","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"3430:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":69415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3457:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69414,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3443:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69412,"name":"address","nodeType":"ElementaryTypeName","src":"3447:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69413,"nodeType":"ArrayTypeName","src":"3447:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69416,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3443:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":69420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3475:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3461:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69417,"name":"address","nodeType":"ElementaryTypeName","src":"3465:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69418,"nodeType":"ArrayTypeName","src":"3465:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69421,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3461:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69407,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"3394:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3394:84:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69423,"nodeType":"ExpressionStatement","src":"3394:84:99"},{"eventCall":{"arguments":[{"id":69425,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"3508:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69426,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3517:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":69424,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69266,"src":"3493:14:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":69427,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3493:27:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69428,"nodeType":"EmitStatement","src":"3488:32:99"}]},"baseFunctions":[66093],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":69336,"kind":"modifierInvocation","modifierName":{"id":69335,"name":"onlyAllo","nameLocations":["2723:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"2723:8:99"},"nodeType":"ModifierInvocation","src":"2723:8:99"}],"name":"initialize","nameLocation":"2657:10:99","overrides":{"id":69334,"nodeType":"OverrideSpecifier","overrides":[],"src":"2714:8:99"},"parameters":{"id":69333,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69330,"mutability":"mutable","name":"_poolId","nameLocation":"2676:7:99","nodeType":"VariableDeclaration","scope":69430,"src":"2668:15:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69329,"name":"uint256","nodeType":"ElementaryTypeName","src":"2668:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69332,"mutability":"mutable","name":"_data","nameLocation":"2698:5:99","nodeType":"VariableDeclaration","scope":69430,"src":"2685:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69331,"name":"bytes","nodeType":"ElementaryTypeName","src":"2685:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2667:37:99"},"returnParameters":{"id":69337,"nodeType":"ParameterList","parameters":[],"src":"2732:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69461,"nodeType":"FunctionDefinition","src":"3533:367:99","nodes":[],"body":{"id":69460,"nodeType":"Block","src":"3747:153:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69448,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69433,"src":"3778:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69449,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69436,"src":"3797:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"expression":{"id":69445,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"3757:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_1_$69756_$","typeString":"type(contract super CVStrategyV0_1)"}},"id":69447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3763:14:99","memberName":"_setPoolParams","nodeType":"MemberAccess","referencedDeclaration":68596,"src":"3757:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69450,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3757:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69451,"nodeType":"ExpressionStatement","src":"3757:50:99"},{"expression":{"arguments":[{"id":69453,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69439,"src":"3833:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69452,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"3817:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69454,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3817:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69455,"nodeType":"ExpressionStatement","src":"3817:29:99"},{"expression":{"arguments":[{"id":69457,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69442,"src":"3877:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69456,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"3856:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69458,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3856:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69459,"nodeType":"ExpressionStatement","src":"3856:37:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"3542:14:99","parameters":{"id":69443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69433,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3590:17:99","nodeType":"VariableDeclaration","scope":69461,"src":"3566:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69432,"nodeType":"UserDefinedTypeName","pathNode":{"id":69431,"name":"ArbitrableConfig","nameLocations":["3566:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3566:16:99"},"referencedDeclaration":65628,"src":"3566:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69436,"mutability":"mutable","name":"_cvParams","nameLocation":"3633:9:99","nodeType":"VariableDeclaration","scope":69461,"src":"3617:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69435,"nodeType":"UserDefinedTypeName","pathNode":{"id":69434,"name":"CVParams","nameLocations":["3617:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3617:8:99"},"referencedDeclaration":65637,"src":"3617:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69439,"mutability":"mutable","name":"membersToAdd","nameLocation":"3669:12:99","nodeType":"VariableDeclaration","scope":69461,"src":"3652:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69437,"name":"address","nodeType":"ElementaryTypeName","src":"3652:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69438,"nodeType":"ArrayTypeName","src":"3652:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69442,"mutability":"mutable","name":"membersToRemove","nameLocation":"3708:15:99","nodeType":"VariableDeclaration","scope":69461,"src":"3691:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69440,"name":"address","nodeType":"ElementaryTypeName","src":"3691:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69441,"nodeType":"ArrayTypeName","src":"3691:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3556:173:99"},"returnParameters":{"id":69444,"nodeType":"ParameterList","parameters":[],"src":"3747:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69487,"nodeType":"FunctionDefinition","src":"3906:332:99","nodes":[],"body":{"id":69486,"nodeType":"Block","src":"4119:119:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69476,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"4129:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4129:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69478,"nodeType":"ExpressionStatement","src":"4129:17:99"},{"expression":{"arguments":[{"id":69480,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"4171:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69481,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"4190:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"id":69482,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69470,"src":"4201:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":69483,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69473,"src":"4215:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69479,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"4156:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69484,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4156:75:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69485,"nodeType":"ExpressionStatement","src":"4156:75:99"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"3915:13:99","parameters":{"id":69474,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69464,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3962:17:99","nodeType":"VariableDeclaration","scope":69487,"src":"3938:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69463,"nodeType":"UserDefinedTypeName","pathNode":{"id":69462,"name":"ArbitrableConfig","nameLocations":["3938:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3938:16:99"},"referencedDeclaration":65628,"src":"3938:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69467,"mutability":"mutable","name":"_cvParams","nameLocation":"4005:9:99","nodeType":"VariableDeclaration","scope":69487,"src":"3989:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69466,"nodeType":"UserDefinedTypeName","pathNode":{"id":69465,"name":"CVParams","nameLocations":["3989:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3989:8:99"},"referencedDeclaration":65637,"src":"3989:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69470,"mutability":"mutable","name":"membersToAdd","nameLocation":"4041:12:99","nodeType":"VariableDeclaration","scope":69487,"src":"4024:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69468,"name":"address","nodeType":"ElementaryTypeName","src":"4024:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69469,"nodeType":"ArrayTypeName","src":"4024:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69473,"mutability":"mutable","name":"membersToRemove","nameLocation":"4080:15:99","nodeType":"VariableDeclaration","scope":69487,"src":"4063:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69471,"name":"address","nodeType":"ElementaryTypeName","src":"4063:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69472,"nodeType":"ArrayTypeName","src":"4063:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3928:173:99"},"returnParameters":{"id":69475,"nodeType":"ParameterList","parameters":[],"src":"4119:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69529,"nodeType":"FunctionDefinition","src":"4244:301:99","nodes":[],"body":{"id":69528,"nodeType":"Block","src":"4337:208:99","nodes":[],"statements":[{"assignments":[69499],"declarations":[{"constant":false,"id":69499,"mutability":"mutable","name":"pv","nameLocation":"4372:2:99","nodeType":"VariableDeclaration","scope":69528,"src":"4347:27:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":69497,"nodeType":"UserDefinedTypeName","pathNode":{"id":69496,"name":"ProposalSupport","nameLocations":["4347:15:99"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"4347:15:99"},"referencedDeclaration":65611,"src":"4347:15:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":69498,"nodeType":"ArrayTypeName","src":"4347:17:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":69507,"initialValue":{"arguments":[{"id":69502,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69489,"src":"4388:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":69503,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"4396:15:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":69504,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"4396:17:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":69505,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"4395:19:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":69500,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4377:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69501,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4381:6:99","memberName":"decode","nodeType":"MemberAccess","src":"4377:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4377:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4347:68:99"},{"body":{"id":69526,"nodeType":"Block","src":"4465:74:99","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":69520,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4511:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69522,"indexExpression":{"id":69521,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4514:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4511:5:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":69523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4517:10:99","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"4511:16:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69519,"name":"checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69317,"src":"4479:31:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":69524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4479:49:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69525,"nodeType":"ExpressionStatement","src":"4479:49:99"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69512,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4445:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69513,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4449:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69514,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4452:6:99","memberName":"length","nodeType":"MemberAccess","src":"4449:9:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4445:13:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69527,"initializationExpression":{"assignments":[69509],"declarations":[{"constant":false,"id":69509,"mutability":"mutable","name":"i","nameLocation":"4438:1:99","nodeType":"VariableDeclaration","scope":69527,"src":"4430:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69508,"name":"uint256","nodeType":"ElementaryTypeName","src":"4430:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69511,"initialValue":{"hexValue":"30","id":69510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4442:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"4430:13:99"},"loopExpression":{"expression":{"id":69517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4460:3:99","subExpression":{"id":69516,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4460:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69518,"nodeType":"ExpressionStatement","src":"4460:3:99"},"nodeType":"ForStatement","src":"4425:114:99"}]},"baseFunctions":[65437],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"4253:15:99","overrides":{"id":69493,"nodeType":"OverrideSpecifier","overrides":[],"src":"4328:8:99"},"parameters":{"id":69492,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69489,"mutability":"mutable","name":"_data","nameLocation":"4282:5:99","nodeType":"VariableDeclaration","scope":69529,"src":"4269:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69488,"name":"bytes","nodeType":"ElementaryTypeName","src":"4269:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":69491,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69529,"src":"4290:7:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69490,"name":"address","nodeType":"ElementaryTypeName","src":"4290:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4268:42:99"},"returnParameters":{"id":69494,"nodeType":"ParameterList","parameters":[],"src":"4337:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69589,"nodeType":"FunctionDefinition","src":"4551:526:99","nodes":[],"body":{"id":69588,"nodeType":"Block","src":"4631:446:99","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":69539,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"4653:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":69538,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4645:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69537,"name":"address","nodeType":"ElementaryTypeName","src":"4645:7:99","typeDescriptions":{}}},"id":69540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4645:20:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69543,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4677:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69542,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4669:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69541,"name":"address","nodeType":"ElementaryTypeName","src":"4669:7:99","typeDescriptions":{}}},"id":69544,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4669:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4645:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69578,"nodeType":"IfStatement","src":"4641:363:99","trueBody":{"id":69577,"nodeType":"Block","src":"4681:323:99","statements":[{"assignments":[69547],"declarations":[{"constant":false,"id":69547,"mutability":"mutable","name":"allowlistRole","nameLocation":"4703:13:99","nodeType":"VariableDeclaration","scope":69577,"src":"4695:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69546,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4695:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69555,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4746:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69552,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"4759:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69549,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4729:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4733:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"4729:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4729:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69548,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"4719:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69554,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4719:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"4695:72:99"},{"condition":{"arguments":[{"id":69559,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4820:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4843:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69561,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4835:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69560,"name":"address","nodeType":"ElementaryTypeName","src":"4835:7:99","typeDescriptions":{}}},"id":69563,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4835:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69556,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4785:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4812:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4785:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":69575,"nodeType":"Block","src":"4898:96:99","statements":[{"expression":{"arguments":[{"id":69571,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4958:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":69572,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"4973:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69568,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4923:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4950:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4923:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69574,"nodeType":"Return","src":"4916:63:99"}]},"id":69576,"nodeType":"IfStatement","src":"4781:213:99","trueBody":{"id":69567,"nodeType":"Block","src":"4848:44:99","statements":[{"expression":{"hexValue":"74727565","id":69565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4873:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":69536,"id":69566,"nodeType":"Return","src":"4866:11:99"}]}}]}},{"expression":{"arguments":[{"id":69581,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"5049:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":69584,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"5064:4:99","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}],"id":69583,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5056:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69582,"name":"address","nodeType":"ElementaryTypeName","src":"5056:7:99","typeDescriptions":{}}},"id":69585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5056:13:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":69579,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"5020:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":69580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5032:16:99","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"5020:28:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":69586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5020:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69587,"nodeType":"Return","src":"5013:57:99"}]},"baseFunctions":[66256],"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"4560:17:99","overrides":{"id":69533,"nodeType":"OverrideSpecifier","overrides":[],"src":"4607:8:99"},"parameters":{"id":69532,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69531,"mutability":"mutable","name":"_user","nameLocation":"4586:5:99","nodeType":"VariableDeclaration","scope":69589,"src":"4578:13:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69530,"name":"address","nodeType":"ElementaryTypeName","src":"4578:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4577:15:99"},"returnParameters":{"id":69536,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69535,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69589,"src":"4625:4:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69534,"name":"bool","nodeType":"ElementaryTypeName","src":"4625:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4624:6:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":69603,"nodeType":"FunctionDefinition","src":"5083:125:99","nodes":[],"body":{"id":69602,"nodeType":"Block","src":"5140:68:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69595,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5150:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69596,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5150:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69597,"nodeType":"ExpressionStatement","src":"5150:17:99"},{"expression":{"arguments":[{"id":69599,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69592,"src":"5193:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69598,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"5177:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69600,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5177:24:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69601,"nodeType":"ExpressionStatement","src":"5177:24:99"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"5092:14:99","parameters":{"id":69593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69592,"mutability":"mutable","name":"members","nameLocation":"5124:7:99","nodeType":"VariableDeclaration","scope":69603,"src":"5107:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69590,"name":"address","nodeType":"ElementaryTypeName","src":"5107:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69591,"nodeType":"ArrayTypeName","src":"5107:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5106:26:99"},"returnParameters":{"id":69594,"nodeType":"ParameterList","parameters":[],"src":"5140:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":69685,"nodeType":"FunctionDefinition","src":"5214:646:99","nodes":[],"body":{"id":69684,"nodeType":"Block","src":"5274:586:99","nodes":[],"statements":[{"assignments":[69610],"declarations":[{"constant":false,"id":69610,"mutability":"mutable","name":"allowlistRole","nameLocation":"5292:13:99","nodeType":"VariableDeclaration","scope":69684,"src":"5284:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69609,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5284:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69618,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69614,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5335:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69615,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5348:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69612,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5318:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69613,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5322:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5318:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5318:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69611,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5308:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5308:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"5284:72:99"},{"condition":{"arguments":[{"id":69622,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5406:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69625,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5429:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69624,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5421:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69623,"name":"address","nodeType":"ElementaryTypeName","src":"5421:7:99","typeDescriptions":{}}},"id":69626,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5421:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69619,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5371:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69620,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69621,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5398:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5371:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69639,"nodeType":"IfStatement","src":"5367:156:99","trueBody":{"id":69638,"nodeType":"Block","src":"5434:89:99","statements":[{"expression":{"arguments":[{"id":69631,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5486:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69634,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5509:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69633,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5501:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69632,"name":"address","nodeType":"ElementaryTypeName","src":"5501:7:99","typeDescriptions":{}}},"id":69635,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5501:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69628,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5448:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5475:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"5448:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69636,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:64:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69637,"nodeType":"ExpressionStatement","src":"5448:64:99"}]}},{"body":{"id":69677,"nodeType":"Block","src":"5577:223:99","statements":[{"condition":{"id":69659,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"5595:62:99","subExpression":{"arguments":[{"id":69654,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5631:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69655,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5646:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69657,"indexExpression":{"id":69656,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5654:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5646:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69651,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5596:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69652,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5623:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5596:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69658,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69676,"nodeType":"IfStatement","src":"5591:199:99","trueBody":{"id":69675,"nodeType":"Block","src":"5659:131:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69666,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5741:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69667,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5754:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69664,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5724:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69665,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5728:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5724:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69668,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5724:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69663,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5714:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5714:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69670,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5764:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69672,"indexExpression":{"id":69671,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5772:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5764:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69660,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5677:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69661,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5704:9:99","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":52543,"src":"5677:36:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:98:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69674,"nodeType":"ExpressionStatement","src":"5677:98:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69644,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5552:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69645,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5556:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5564:6:99","memberName":"length","nodeType":"MemberAccess","src":"5556:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5552:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69678,"initializationExpression":{"assignments":[69641],"declarations":[{"constant":false,"id":69641,"mutability":"mutable","name":"i","nameLocation":"5545:1:99","nodeType":"VariableDeclaration","scope":69678,"src":"5537:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69640,"name":"uint256","nodeType":"ElementaryTypeName","src":"5537:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69643,"initialValue":{"hexValue":"30","id":69642,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5549:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5537:13:99"},"loopExpression":{"expression":{"id":69649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5572:3:99","subExpression":{"id":69648,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5572:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69650,"nodeType":"ExpressionStatement","src":"5572:3:99"},"nodeType":"ForStatement","src":"5532:268:99"},{"eventCall":{"arguments":[{"id":69680,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5837:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69681,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5845:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69679,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69259,"src":"5815:21:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5815:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69683,"nodeType":"EmitStatement","src":"5810:43:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"5223:15:99","parameters":{"id":69607,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69606,"mutability":"mutable","name":"members","nameLocation":"5256:7:99","nodeType":"VariableDeclaration","scope":69685,"src":"5239:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69604,"name":"address","nodeType":"ElementaryTypeName","src":"5239:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69605,"nodeType":"ArrayTypeName","src":"5239:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5238:26:99"},"returnParameters":{"id":69608,"nodeType":"ParameterList","parameters":[],"src":"5274:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":69699,"nodeType":"FunctionDefinition","src":"5866:137:99","nodes":[],"body":{"id":69698,"nodeType":"Block","src":"5930:73:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69691,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5940:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5940:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69693,"nodeType":"ExpressionStatement","src":"5940:17:99"},{"expression":{"arguments":[{"id":69695,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69688,"src":"5988:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69694,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"5967:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69696,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5967:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69697,"nodeType":"ExpressionStatement","src":"5967:29:99"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"5875:19:99","parameters":{"id":69689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69688,"mutability":"mutable","name":"members","nameLocation":"5912:7:99","nodeType":"VariableDeclaration","scope":69699,"src":"5895:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69686,"name":"address","nodeType":"ElementaryTypeName","src":"5895:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69687,"nodeType":"ArrayTypeName","src":"5895:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5894:26:99"},"returnParameters":{"id":69690,"nodeType":"ParameterList","parameters":[],"src":"5930:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69755,"nodeType":"FunctionDefinition","src":"6009:440:99","nodes":[],"body":{"id":69754,"nodeType":"Block","src":"6074:375:99","nodes":[],"statements":[{"body":{"id":69747,"nodeType":"Block","src":"6129:258:99","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6209:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69723,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6222:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69720,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6192:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69721,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6196:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6192:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6192:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69719,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6182:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6182:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69726,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6232:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69728,"indexExpression":{"id":69727,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6240:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6232:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69716,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6147:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6174:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"6147:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69729,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:96:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69746,"nodeType":"IfStatement","src":"6143:234:99","trueBody":{"id":69745,"nodeType":"Block","src":"6245:132:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69736,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6328:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69737,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6341:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69734,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6311:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69735,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6315:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6311:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69738,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6311:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69733,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6301:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69739,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6301:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69740,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6351:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69742,"indexExpression":{"id":69741,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6359:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6351:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69730,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6263:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6290:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"6263:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:99:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69744,"nodeType":"ExpressionStatement","src":"6263:99:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69709,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6104:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69710,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6108:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6116:6:99","memberName":"length","nodeType":"MemberAccess","src":"6108:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6104:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69748,"initializationExpression":{"assignments":[69706],"declarations":[{"constant":false,"id":69706,"mutability":"mutable","name":"i","nameLocation":"6097:1:99","nodeType":"VariableDeclaration","scope":69748,"src":"6089:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69705,"name":"uint256","nodeType":"ElementaryTypeName","src":"6089:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69708,"initialValue":{"hexValue":"30","id":69707,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6101:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"6089:13:99"},"loopExpression":{"expression":{"id":69714,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"6124:3:99","subExpression":{"id":69713,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6124:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69715,"nodeType":"ExpressionStatement","src":"6124:3:99"},"nodeType":"ForStatement","src":"6084:303:99"},{"eventCall":{"arguments":[{"id":69750,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6426:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69751,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6434:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69749,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69252,"src":"6402:23:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6402:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69753,"nodeType":"EmitStatement","src":"6397:45:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"6018:20:99","parameters":{"id":69703,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69702,"mutability":"mutable","name":"members","nameLocation":"6056:7:99","nodeType":"VariableDeclaration","scope":69755,"src":"6039:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69700,"name":"address","nodeType":"ElementaryTypeName","src":"6039:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69701,"nodeType":"ArrayTypeName","src":"6039:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"6038:26:99"},"returnParameters":{"id":69704,"nodeType":"ParameterList","parameters":[],"src":"6074:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":69244,"name":"CVStrategyV0_0","nameLocations":["1191:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":69194,"src":"1191:14:99"},"id":69245,"nodeType":"InheritanceSpecifier","src":"1191:14:99"}],"canonicalName":"CVStrategyV0_1","contractDependencies":[],"contractKind":"contract","documentation":{"id":69243,"nodeType":"StructuredDocumentation","src":"1120:44:99","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69756,69194,57725,57931,65536,75015,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_1","nameLocation":"1173:14:99","scope":69757,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,69273,70122]}],"license":"AGPL-3.0-only"},"id":99} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json b/pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json new file mode 100644 index 00000000..8b98f24e --- /dev/null +++ b/pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json @@ -0,0 +1 @@ +{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"_interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161623b6200004d60003960008181611eed01528181611f300152818161202b0152818161206e01526121c0015261623b6000f3fe608060405260043610620003505760003560e01c806301ffc9a714620003555780630331383c14620003c757806308386eba14620003e85780630d12bbdb14620004005780630d4a8b491462000427578063175188e8146200044c5780631b71f0e414620004715780631f787d281462000496578063223e547914620004b157806322bcf99914620004d6578063248a9ca314620004fb57806328c309e914620005205780632b38c69c14620005385780632c3bb44a146200056c5780632c611c4a14620005915780632f2ff15d14620005cf57806331f61bca14620005f45780633396045914620006195780633419635514620006315780633517aa7d146200065657806336568abe146200066e5780633659cfe61462000693578063397e254314620006b85780633a871fe114620006dd578063477a5cc014620007125780634f1ef2861462000752578063524e59e8146200076957806352d1902d14620007ac578063559de05d14620007c4578063579eb7e514620007e95780635c94e4d2146200080e5780635ecf71c5146200083157806365e3864c14620008565780636871eb4d146200089357806368decabb14620008b85780636c53db9a14620008db578063715018a614620008fe57806373265c371462000916578063733a2d1f146200093b57806377122d5614620009605780637817ee4f146200098357806378a0b8a914620009a85780637b10399914620009c057806382d6a1e714620009e35780638659ffdd1462000a0857806388cfe6841462000a2d5780638961be6b1462000aa35780638da5cb5b1462000abb57806391d148541462000ad3578063a0cf0aea1462000af8578063a217fddf1462000b22578063a230c5241462000b39578063b0d3713a1462000b5e578063b3f006741462000b83578063b5058c501462000baa578063b64e39af1462000bc2578063b99b43701462000be9578063bc063e1a1462000c01578063c4d66de81462000c19578063c6d572ae1462000c3e578063d547741f1462000c56578063d6d8428d1462000c7b578063d7050f071462000c9e578063db61d65c1462000cb6578063e16d0e321462000cd9578063ebd7dc521462000cfe578063f2fde38b1462000d23578063f86c5f891462000d48578063ffa1ad741462000d6b575b600080fd5b3480156200036257600080fd5b50620003b26200037436600462004610565b6001600160e01b03191660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e602052604090205460ff1690565b60405190151581526020015b60405180910390f35b348015620003d457600080fd5b5060fb545b604051908152602001620003be565b348015620003f557600080fd5b50620003d960fe5481565b3480156200040d57600080fd5b50620004256200041f3660046200463c565b62000d99565b005b3480156200043457600080fd5b5062000425620004463660046200467e565b62000e0f565b3480156200045957600080fd5b50620004256200046b366004620046bc565b62001192565b3480156200047e57600080fd5b506200042562000490366004620046bc565b620011aa565b348015620004a357600080fd5b5060ff8054620003b2911681565b348015620004be57600080fd5b5062000425620004d0366004620046bc565b620011d7565b348015620004e357600080fd5b5062000425620004f53660046200467e565b620011ec565b3480156200050857600080fd5b50620003d96200051a3660046200463c565b620012e6565b3480156200052d57600080fd5b50620003d9620012fb565b3480156200054557600080fd5b506200055d62000557366004620046dc565b62001400565b604051620003be919062004718565b3480156200057957600080fd5b50620004256200058b3660046200472c565b6200143a565b3480156200059e57600080fd5b50620003d9620005b0366004620046bc565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005dc57600080fd5b5062000425620005ee3660046200477e565b62001537565b3480156200060157600080fd5b5062000425620006133660046200463c565b6200155e565b3480156200062657600080fd5b50620003d960fd5481565b3480156200063e57600080fd5b5062000425620006503660046200498e565b6200159e565b3480156200066357600080fd5b506200042562001c03565b3480156200067b57600080fd5b50620004256200068d3660046200477e565b62001e65565b348015620006a057600080fd5b5062000425620006b2366004620046bc565b62001ee3565b348015620006c557600080fd5b5062000425620006d7366004620046bc565b62001fb4565b348015620006ea57600080fd5b50620003b2620006fc366004620046bc565b61010a6020526000908152604090205460ff1681565b3480156200071f57600080fd5b50620003b2620007313660046200467e565b61010e60209081526000928352604080842090915290825290205460ff1681565b620004256200076336600462004b21565b62002021565b3480156200077657600080fd5b506200078e6200078836600462004da5565b620020e2565b604080519283526001600160a01b03909116602083015201620003be565b348015620007b957600080fd5b50620003d9620021b3565b348015620007d157600080fd5b5062000425620007e33660046200463c565b62002264565b348015620007f657600080fd5b506200078e6200080836600462004f86565b620024b0565b3480156200081b57600080fd5b50610102546200055d906001600160a01b031681565b3480156200083e57600080fd5b5062000425620008503660046200463c565b62002718565b3480156200086357600080fd5b50620003d9620008753660046200467e565b61010b60209081526000928352604080842090915290825290205481565b348015620008a057600080fd5b5062000425620008b23660046200467e565b62002ab2565b348015620008c557600080fd5b50610103546200055d906001600160a01b031681565b348015620008e857600080fd5b50610106546200055d906001600160a01b031681565b3480156200090b57600080fd5b506200042562002c05565b3480156200092357600080fd5b5062000425620009353660046200463c565b62002c1b565b3480156200094857600080fd5b50620003d96000805160206200615f83398151915281565b3480156200096d57600080fd5b50610101546200055d906001600160a01b031681565b3480156200099057600080fd5b50620003d9620009a23660046200467e565b62002cb7565b348015620009b557600080fd5b50620003d960fb5481565b348015620009cd57600080fd5b50610104546200055d906001600160a01b031681565b348015620009f057600080fd5b506200042562000a023660046200463c565b62002ce5565b34801562000a1557600080fd5b506200078e62000a2736600462004ffa565b62002da3565b34801562000a3a57600080fd5b5062000a7b62000a4c366004620046bc565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b0390941684526020840192909252151590820152606001620003be565b34801562000ab057600080fd5b50620003d960fc5481565b34801562000ac857600080fd5b506200055d62002f30565b34801562000ae057600080fd5b50620003b262000af23660046200477e565b62002fcb565b34801562000b0557600080fd5b506200055d73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000b2f57600080fd5b50620003d9600081565b34801562000b4657600080fd5b50620003b262000b58366004620046bc565b62002ff6565b34801562000b6b57600080fd5b506200042562000b7d366004620046bc565b62003040565b34801562000b9057600080fd5b5060ff546200055d9061010090046001600160a01b031681565b34801562000bb757600080fd5b50620004256200306d565b34801562000bcf57600080fd5b5062000bda620030a4565b604051620003be9190620050e1565b34801562000bf657600080fd5b50620004256200313b565b34801562000c0e57600080fd5b50620003d962003245565b34801562000c2657600080fd5b506200042562000c38366004620046bc565b62003257565b34801562000c4b57600080fd5b5062000bda6200328c565b34801562000c6357600080fd5b506200042562000c753660046200477e565b6200329c565b34801562000c8857600080fd5b50610107546200055d906001600160a01b031681565b34801562000cab57600080fd5b50620003d961271081565b34801562000cc357600080fd5b50610105546200055d906001600160a01b031681565b34801562000ce657600080fd5b506200078e62000cf8366004620050f6565b620032be565b34801562000d0b57600080fd5b50620003b262000d1d366004620046bc565b6200337f565b34801562000d3057600080fd5b506200042562000d42366004620046bc565b6200339c565b34801562000d5557600080fd5b50610100546200055d906001600160a01b031681565b34801562000d7857600080fd5b50604080518082019091526003815262302e3160e81b602082015262000bda565b62000da36200340d565b62000db2612710600a6200517f565b81111562000dd35760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e196200344a565b62000e2482620034a5565b62000e2f81620034ce565b62000e3a8162003509565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e8357604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f379190620051af565b600381111562000f4b5762000f4b62005199565b0362000fd05760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f82908890600090600401620051cf565b6020604051808303816000875af115801562000fa2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc89190620051e8565b9050620010cc565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001013573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010399190620051af565b60038111156200104d576200104d62005199565b14620010cc5760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010839088908690600401620051cf565b6020604051808303816000875af1158015620010a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c99190620051e8565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec90620011789087908790859062005202565b60405180910390a15050506200118e6001606555565b5050565b6200119c6200340d565b620011a78162003538565b50565b620011b462003596565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011e16200340d565b620011a781620035f9565b620011f782620034a5565b620012028162003509565b6200120e33826200368b565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200125657604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a88282620036be565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012da92919062005226565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b0316816200131b61271060646200517f565b60fc5460fb546200132d91906200517f565b62001339919062005240565b905060006200134c61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137a90309060040162004718565b602060405180830381865afa15801562001398573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013be9190620051e8565b60fb54620013cd91906200517f565b620013d9919062005240565b9050808260fb54620013ec919062005263565b620013f8919062005263565b935050505090565b61010d60205281600052604060002081815481106200141e57600080fd5b6000918252602090912001546001600160a01b03169150829050565b600054600290610100900460ff161580156200145d575060005460ff8083169116105b620014855760405162461bcd60e51b81526004016200147c9062005279565b60405180910390fd5b6000805461ffff191660ff831617610100179055620014a362003596565b620014ae8462003509565b620014b98362003509565b620014c48262003509565b620014cf846200339c565b61010280546001600160a01b038581166001600160a01b0319928316179092556101018054928516929091169190911790556000805461ff001916905560405160ff82168152600080516020620061bf8339815191529060200160405180910390a150505050565b6200154282620012e6565b6200154d81620037f4565b62001559838362003800565b505050565b620015686200340d565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000e04565b600054610100900460ff1615808015620015bf5750600054600160ff909116105b80620015e45750620015d1306200388a565b158015620015e4575060005460ff166001145b620016035760405162461bcd60e51b81526004016200147c9062005279565b6000805460ff19166001179055801562001627576000805461ff0019166101001790555b620016328262003257565b6200163c62003899565b62001646620038cd565b620016626000805160206200615f8339815191526000620038f7565b62001671856020015162003509565b6200168185610100015162003509565b84516200168e9062003509565b6200169d8560a0015162003509565b606085015115620016b757620016b78560c0015162003509565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001712576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200174f908262005355565b506101608501516101099062001766908262005355565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017db906000805160206200615f8339815191529062003800565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001856919062005421565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620018e2576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018bc57620018bc62005441565b60200260200101906001600160a01b031690816001600160a01b03168152505062001a1f565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200192d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001957919081019062005457565b90508051600262001969919062005263565b6001600160401b03811115620019835762001983620047a6565b604051908082528060200260200182016040528015620019ad578160200160208202803683370190505b50915060005b815181101562001a1c57818181518110620019d257620019d262005441565b6020026020010151838281518110620019ef57620019ef62005441565b6001600160a01b03909216602092830291909101909101528062001a1381620054f0565b915050620019b3565b50505b6101065481516001600160a01b0390911690829062001a41906001906200550c565b8151811062001a545762001a5462005441565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a8691906200550c565b8151811062001a995762001a9962005441565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001aec929161010891309088906004016200560e565b6020604051808303816000875af115801562001b0c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b329190620051e8565b60fe55805162001b4b9061010f9060208401906200456a565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001bbd92909161010891906200566e565b60405180910390a150801562001bfc576000805461ff001916905560405160018152600080516020620061bf8339815191529060200160405180910390a15b5050505050565b62001c0d6200344a565b33600081815261010c602052604081206101005490916001600160a01b039091169062001c3e61271060646200517f565b60fc5460fb5462001c5091906200517f565b62001c5c919062005240565b9050600062001c6f61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001c9d90309060040162004718565b602060405180830381865afa15801562001cbb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ce19190620051e8565b60fb5462001cf091906200517f565b62001cfc919062005240565b905062001d098562002ff6565b62001e535760028401805460ff1916600190811790915560fb5490850181905562001d639086903090849062001d4190879062005263565b62001d4d919062005263565b610105546001600160a01b03169291906200394c565b811562001d905760ff546101055462001d90916001600160a01b03918216916101009091041684620039a8565b801562001e155762001e15836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001dda573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e00919062005421565b610105546001600160a01b03169083620039a8565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001e4a929190620051cf565b60405180910390a15b505050505062001e636001606555565b565b6001600160a01b038116331462001ed75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200147c565b6200118e8282620039ca565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f2e5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f6262003a34565b6001600160a01b03161462001f8b5760405162461bcd60e51b81526004016200147c90620056d8565b62001f968162003a51565b60408051600080825260208201909252620011a79183919062003a93565b62001fbe6200340d565b62001fc98162003509565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e04939216919062005226565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200206c5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620020a062003a34565b6001600160a01b031614620020c95760405162461bcd60e51b81526004016200147c90620056d8565b620020d48262003a51565b6200118e8282600162003a93565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200211862002f30565b6040516024016200212c9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200216b90620045d0565b6200217892919062005736565b604051809103906000f08015801562002195573d6000803e3d6000fd5b509050620021a681878787620032be565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620022505760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200147c565b506000805160206200619f83398151915290565b6200226e6200344a565b6200227862003c0b565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620022dc57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620022bd575b50505050509050600080600090505b825181101562002417578281815181106200230a576200230a62005441565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002341929190620051cf565b6020604051808303816000875af115801562002361573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023879190620051e8565b9150811562002402576001600160a01b038416600090815261010b602052604081208451849290869085908110620023c357620023c362005441565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620023fc919062005263565b90915550505b806200240e81620054f0565b915050620022eb565b506101055462002433906001600160a01b03168430876200394c565b6001600160a01b038316600090815261010c6020526040812060010180548692906200246190849062005263565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200249a9085908790620051cf565b60405180910390a1505050620011a76001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b9281169116620024e662002f30565b604051602401620024fa9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200253990620045d0565b6200254692919062005736565b604051809103906000f08015801562002563573d6000803e3d6000fd5b509050620025748187878762002da3565b60c087015191945092506001600160a01b03166200267f576103e88560e00151511115620025fd5760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200147c565b6000836040516020016200261291906200575c565b60405160208183030381529060405280519060200120905060005b8660e00151518110156200267c5762002667828860e00151838151811062002659576200265962005441565b602002602001015162003800565b806200267381620054f0565b9150506200262d565b50505b620026db836040516020016200269691906200575c565b6040516020818303038152906040528051906020012084604051602001620026bf919062005779565b60405160208183030381529060405280519060200120620038f7565b6200270f83604051602001620026f2919062005779565b604051602081830303815290604052805190602001208362003800565b50935093915050565b620027226200344a565b6200272c62003c0b565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620027609086906200550c565b10156200278057604051634e23e81760e11b815260040160405180910390fd5b610105546200279a906001600160a01b03168486620039a8565b60005b825481101562002a4a576000838281548110620027be57620027be62005441565b6000918252602090912001546001600160a01b03169050620027e88163f1801e6160e01b62003c34565b156200296e57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b906200281e9088908a90600401620051cf565b6020604051808303816000875af11580156200283e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028649190620051e8565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620028a557620028a562005441565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620028f9576040516311423e6360e31b815260048101859052602481018290526044016200147c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200292c576200292c62005441565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620029629084906200550c565b90915550505062002a34565b8354849062002980906001906200550c565b8154811062002993576200299362005441565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029c657620029c662005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002a075762002a076200579c565b600082815260209020810160001990810180546001600160a01b031916905501905562002a348162003538565b508062002a4181620054f0565b9150506200279d565b506001600160a01b038316600090815261010c60205260408120600101805486929062002a799084906200550c565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200249a9085908790620051cf565b62002abc6200344a565b62002ac66200340d565b60ff80541662002ae9576040516365b1ee3960e11b815260040160405180910390fd5b62002af48262002ff6565b62002b1257604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002b638362003c5c565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002bb89216908490620039a8565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002bf19392919062005202565b60405180910390a1506200118e6001606555565b62002c0f62003596565b62001e63600062003d71565b62002c256200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c71573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c9b9190810190620057b2565b60200151905062002cac8162003509565b6200118e8162003538565b6001600160a01b03808316600090815261010b60209081526040808320938516835292905220545b92915050565b62002cef6200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002d3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002d659190810190620057b2565b60200151905062002d768162003509565b62002d926001600160a01b03821663f1801e6160e01b62003c34565b156200118e576200118e81620035f9565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dce5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b906020016200597d565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9c979695949392919062005a26565b6020604051808303816000875af115801562002ebc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee29190620051e8565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1d95949392919062005a97565b60405180910390a1505094509492505050565b60008062002f466033546001600160a01b031690565b9050806001600160a01b03163b60000362002f6057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002fbd575060408051601f3d908101601f1916820190925262002fba9181019062005421565b60015b62002cdf57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b6200304a62003596565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b031633146200309a576040516375e686b760e11b815260040160405180910390fd5b62001e6362003dc3565b6101098054620030b490620052c7565b80601f0160208091040260200160405190810160405280929190818152602001828054620030e290620052c7565b8015620031335780601f10620031075761010080835404028352916020019162003133565b820191906000526020600020905b8154815290600101906020018083116200311557829003601f168201915b505050505081565b620031456200344a565b336200315181620034a5565b6200315c8162003c5c565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620031d79190620045de565b602081015161010554620031f9916001600160a01b03909116908490620039a8565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003230929190620051cf565b60405180910390a1505062001e636001606555565b62003254612710600a6200517f565b81565b600054610100900460ff16620032815760405162461bcd60e51b81526004016200147c9062005ad3565b620011a78162003d71565b6101088054620030b490620052c7565b620032a782620012e6565b620032b281620037f4565b620015598383620039ca565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032e95750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200334757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003328575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b9060200162005b1e565b600062002cdf6000805160206200615f8339815191528362002fcb565b620033a662003596565b6001600160a01b038116620032815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200147c565b620034286000805160206200615f8339815191523362002fcb565b62001e63573360405163fc4be72f60e01b81526004016200147c919062004718565b6002606554036200349e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200147c565b6002606555565b620034b08162002ff6565b620011a757604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff16620011a7576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b038116620011a7576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620035438162003509565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e0490839062004718565b33620035a162002f30565b6001600160a01b03161462001e635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200147c565b6001600160a01b038116600090815261010a602052604090205460ff161562003635576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000e0490839062004718565b806001600160a01b0316826001600160a01b0316146200118e5760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b8154811015620037ee57826001600160a01b031682828154811062003702576200370262005441565b6000918252602090912001546001600160a01b031603620037d957815482906200372f906001906200550c565b8154811062003742576200374262005441565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003775576200377562005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620037b657620037b66200579c565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620037e581620054f0565b915050620036d9565b50505050565b620011a7813362003e27565b6200380c828262002fcb565b6200118e57600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620038463390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620038c35760405162461bcd60e51b81526004016200147c9062005ad3565b62001e6362003e8b565b600054610100900460ff1662001e635760405162461bcd60e51b81526004016200147c9062005ad3565b60006200390483620012e6565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b620037ee846323b872dd60e01b858585604051602401620039709392919062005202565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003eb5565b620015598363a9059cbb60e01b848460405160240162003970929190620051cf565b620039d6828262002fcb565b156200118e57600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200619f833981519152546001600160a01b031690565b3362003a5c62002f30565b6001600160a01b031614620011a7573362003a7662002f30565b60405163163678e960e01b81526004016200147c92919062005226565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003ac957620015598362003f91565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003b26575060408051601f3d908101601f1916820190925262003b2391810190620051e8565b60015b62003b8b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200147c565b6000805160206200619f833981519152811462003bfd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200147c565b506200155983838362004030565b62003c163362002ff6565b62001e6357604051636a5cfb6d60e01b815260040160405180910390fd5b600062003c41836200405b565b801562003c55575062003c55838362004093565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003cc957602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003caa575b5050505050905060005b8151811015620015595781818151811062003cf25762003cf262005441565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003d27919062004718565b600060405180830381600087803b15801562003d4257600080fd5b505af115801562003d57573d6000803e3d6000fd5b50505050808062003d6890620054f0565b91505062003cd3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003e1d9060009062004718565b60405180910390a1565b62003e33828262002fcb565b6200118e5762003e43816200411e565b62003e5083602062004131565b60405160200162003e6392919062005ba7565b60408051601f198184030181529082905262461bcd60e51b82526200147c91600401620050e1565b600054610100900460ff16620035315760405162461bcd60e51b81526004016200147c9062005ad3565b600062003f0c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042ea9092919063ffffffff16565b905080516000148062003f3057508080602001905181019062003f30919062005c1a565b620015595760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200147c565b62003f9c816200388a565b620040005760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200147c565b6000805160206200619f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200403b8362004303565b600082511180620040495750805b156200155957620037ee838362004345565b600062004070826301ffc9a760e01b62004093565b801562002cdf57506200408c826001600160e01b031962004093565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004106575060208210155b8015620041135750600081115b979650505050505050565b606062002cdf6001600160a01b03831660145b60606000620041428360026200517f565b6200414f90600262005263565b6001600160401b03811115620041695762004169620047a6565b6040519080825280601f01601f19166020018201604052801562004194576020820181803683370190505b509050600360fc1b81600081518110620041b257620041b262005441565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041e457620041e462005441565b60200101906001600160f81b031916908160001a90535060006200420a8460026200517f565b6200421790600162005263565b90505b600181111562004299576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200424f576200424f62005441565b1a60f81b82828151811062004268576200426862005441565b60200101906001600160f81b031916908160001a90535060049490941c93620042918162005c3a565b90506200421a565b50831562003c555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200147c565b6060620042fb84846000856200436d565b949350505050565b6200430e8162003f91565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003c558383604051806060016040528060278152602001620061df6027913962004445565b606082471015620043d05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200147c565b600080866001600160a01b03168587604051620043ee919062005c54565b60006040518083038185875af1925050503d80600081146200442d576040519150601f19603f3d011682016040523d82523d6000602084013e62004432565b606091505b50915091506200411387838387620044c3565b6060600080856001600160a01b03168560405162004464919062005c54565b600060405180830381855af49150503d8060008114620044a1576040519150601f19603f3d011682016040523d82523d6000602084013e620044a6565b606091505b5091509150620044b986838387620044c3565b9695505050505050565b60608315620045375782516000036200452f57620044e1856200388a565b6200452f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200147c565b5081620042fb565b620042fb83838151156200454e5781518083602001fd5b8060405162461bcd60e51b81526004016200147c9190620050e1565b828054828255906000526020600020908101928215620045c2579160200282015b82811115620045c257825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200458b565b5062002fc7929150620045f9565b6104ec8062005c7383390190565b5080546000825590600052602060002090810190620011a791905b5b8082111562002fc75760008155600101620045fa565b6000602082840312156200462357600080fd5b81356001600160e01b03198116811462003c5557600080fd5b6000602082840312156200464f57600080fd5b5035919050565b6001600160a01b0381168114620011a757600080fd5b8035620046798162004656565b919050565b600080604083850312156200469257600080fd5b82356200469f8162004656565b91506020830135620046b18162004656565b809150509250929050565b600060208284031215620046cf57600080fd5b813562003c558162004656565b60008060408385031215620046f057600080fd5b8235620046fd8162004656565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6000806000606084860312156200474257600080fd5b83356200474f8162004656565b92506020840135620047618162004656565b91506040840135620047738162004656565b809150509250925092565b600080604083850312156200479257600080fd5b823591506020830135620046b18162004656565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620047e157620047e1620047a6565b60405290565b60405161018081016001600160401b0381118282101715620047e157620047e1620047a6565b60405160c081016001600160401b0381118282101715620047e157620047e1620047a6565b60405161010081016001600160401b0381118282101715620047e157620047e1620047a6565b604051601f8201601f191681016001600160401b0381118282101715620048835762004883620047a6565b604052919050565b60006001600160401b03821115620048a757620048a7620047a6565b50601f01601f191660200190565b6000620048cc620048c6846200488b565b62004858565b9050828152838383011115620048e157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200490a57600080fd5b62003c5583833560208501620048b5565b6000604082840312156200492e57600080fd5b62004938620047bc565b82358152905060208201356001600160401b038111156200495857600080fd5b6200496684828501620048f8565b60208301525092915050565b8015158114620011a757600080fd5b8035620046798162004972565b60008060008060808587031215620049a557600080fd5b84356001600160401b0380821115620049bd57600080fd5b908601906101808289031215620049d357600080fd5b620049dd620047e7565b620049e8836200466c565b8152620049f8602084016200466c565b602082015260408301356040820152606083013560608201526080830135608082015262004a2960a084016200466c565b60a082015262004a3c60c084016200466c565b60c082015260e08301358281111562004a5457600080fd5b62004a628a8286016200491b565b60e08301525061010062004a788185016200466c565b90820152610120838101358381111562004a9157600080fd5b62004a9f8b828701620048f8565b82840152505061014062004ab581850162004981565b90820152610160838101358381111562004ace57600080fd5b62004adc8b828701620048f8565b82840152505080965050505062004af6602086016200466c565b925062004b06604086016200466c565b915062004b16606086016200466c565b905092959194509250565b6000806040838503121562004b3557600080fd5b823562004b428162004656565b915060208301356001600160401b0381111562004b5e57600080fd5b8301601f8101851362004b7057600080fd5b62004b8185823560208401620048b5565b9150509250929050565b60006080828403121562004b9e57600080fd5b604051608081016001600160401b038111828210171562004bc35762004bc3620047a6565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200467957600080fd5b60048110620011a757600080fd5b8035620046798162004c04565b60006020828403121562004c3257600080fd5b604051602081016001600160401b038111828210171562004c575762004c57620047a6565b6040529135825250919050565b600060c0828403121562004c7757600080fd5b62004c816200480d565b9050813562004c908162004656565b8152602082013562004ca28162004656565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004ceb57600080fd5b60405160e081016001600160401b038111828210171562004d105762004d10620047a6565b60405290508062004d22848462004b8b565b815262004d326080840162004bf4565b602082015260a083013562004d478162004c04565b604082015262004d5b8460c0850162004c1f565b606082015262004d6f8460e0850162004c64565b60808201526101a083013562004d858162004656565b60a082015262004d996101c084016200466c565b60c08201525092915050565b6000806000610220848603121562004dbc57600080fd5b833562004dc98162004656565b925062004dda856020860162004cd7565b91506102008401356001600160401b0381111562004df757600080fd5b62004e05868287016200491b565b9150509250925092565b60006001600160401b0382111562004e2b5762004e2b620047a6565b5060051b60200190565b600082601f83011262004e4757600080fd5b8135602062004e5a620048c68362004e0f565b82815260059290921b8401810191818101908684111562004e7a57600080fd5b8286015b8481101562004ea257803562004e948162004656565b835291830191830162004e7e565b509695505050505050565b6000610200828403121562004ec157600080fd5b62004ecb62004832565b905062004ed9838362004b8b565b815262004ee96080830162004bf4565b602082015262004efc60a0830162004c12565b604082015262004f108360c0840162004c1f565b606082015262004f248360e0840162004c64565b608082015262004f386101a083016200466c565b60a082015262004f4c6101c083016200466c565b60c08201526101e08201356001600160401b0381111562004f6c57600080fd5b62004f7a8482850162004e35565b60e08301525092915050565b60008060006060848603121562004f9c57600080fd5b833562004fa98162004656565b925060208401356001600160401b038082111562004fc657600080fd5b62004fd48783880162004ead565b9350604086013591508082111562004feb57600080fd5b5062004e05868287016200491b565b600080600080608085870312156200501157600080fd5b84356200501e8162004656565b93506020850135620050308162004656565b925060408501356001600160401b03808211156200504d57600080fd5b6200505b8883890162004ead565b935060608701359150808211156200507257600080fd5b5062005081878288016200491b565b91505092959194509250565b60005b83811015620050aa57818101518382015260200162005090565b50506000910152565b60008151808452620050cd8160208601602086016200508d565b601f01601f19169290920160200192915050565b60208152600062003c556020830184620050b3565b60008060008061024085870312156200510e57600080fd5b84356200511b8162004656565b935060208501356200512d8162004656565b92506200513e866040870162004cd7565b91506102208501356001600160401b038111156200515b57600080fd5b62005081878288016200491b565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762002cdf5762002cdf62005169565b634e487b7160e01b600052602160045260246000fd5b600060208284031215620051c257600080fd5b815162003c558162004c04565b6001600160a01b03929092168252602082015260400190565b600060208284031215620051fb57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200525e57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562002cdf5762002cdf62005169565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c90821680620052dc57607f821691505b602082108103620052fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200155957600081815260208120601f850160051c810160208610156200532c5750805b601f850160051c820191505b818110156200534d5782815560010162005338565b505050505050565b81516001600160401b03811115620053715762005371620047a6565b6200538981620053828454620052c7565b8462005303565b602080601f831160018114620053c15760008415620053a85750858301515b600019600386901b1c1916600185901b1785556200534d565b600085815260208120601f198616915b82811015620053f257888601518255948401946001909101908401620053d1565b5085821015620054115787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200543457600080fd5b815162003c558162004656565b634e487b7160e01b600052603260045260246000fd5b600060208083850312156200546b57600080fd5b82516001600160401b038111156200548257600080fd5b8301601f810185136200549457600080fd5b8051620054a5620048c68262004e0f565b81815260059190911b82018301908381019087831115620054c557600080fd5b928401925b8284101562004113578351620054e08162004656565b82529284019290840190620054ca565b60006001820162005505576200550562005169565b5060010190565b8181038181111562002cdf5762002cdf62005169565b600081546200553181620052c7565b8085526020600183811680156200555157600181146200556c576200559c565b60ff1985168884015283151560051b8801830195506200559c565b866000528260002060005b85811015620055945781548a820186015290830190840162005577565b890184019650505b505050505092915050565b805182526000602082015160406020850152620042fb6040850182620050b3565b600081518084526020808501945080840160005b83811015620056035781516001600160a01b031687529582019590820190600101620055dc565b509495945050505050565b85815260a0602082015260006200562960a083018762005522565b82810360408401526200563d8187620055a7565b6001600160a01b038616606085015283810360808501529050620056628185620055c8565b98975050505050505050565b83815260606020820152600062005689606083018562005522565b8281036040840152620044b98185620055a7565b6020808252602c908201526000805160206200617f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200617f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042fb90830184620050b3565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057c657600080fd5b82516001600160401b0380821115620057de57600080fd5b9084019060c08287031215620057f357600080fd5b620057fd6200480d565b8251815283830151620058108162004656565b818501526040830151620058248162004656565b60408201526060830151828111156200583c57600080fd5b8301604081890312156200584f57600080fd5b62005859620047bc565b8151815285820151848111156200586f57600080fd5b82019350601f840189136200588357600080fd5b8351915062005896620048c6836200488b565b8281528987848701011115620058ab57600080fd5b620058bc838883018988016200508d565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b6003811062005921576200592162005199565b9052565b6004811062005921576200592162005199565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b6020815262005991602082018351620058e8565b60006020830151620059a760a08401826200590e565b506040830151620059bc60c084018262005925565b5060608301515160e08301526080830151620059dd61010084018262005938565b5060a0830151620059f36101c08401826200470b565b5060c083015162005a096101e08401826200470b565b5060e083015161020083810152620042fb610220840182620055c8565b878152600060018060a01b03808916602084015260e0604084015262005a5060e0840189620050b3565b818816606085015286608085015283810360a085015262005a728187620055a7565b91505082810360c084015262005a898185620055c8565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200411390830184620055a7565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e08201905062005b34828451620058e8565b602083015162005b4860808401826200590e565b50604083015162005b5d60a084018262005925565b5060608301515160c0830152608083015162005b7d60e084018262005938565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005bdb8160178501602088016200508d565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005c0e8160288401602088016200508d565b01602801949350505050565b60006020828403121562005c2d57600080fd5b815162003c558162004972565b60008162005c4c5762005c4c62005169565b506000190190565b6000825162005c688184602087016200508d565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e0910e566be8360c1691430fc249ed379beac4d95da38df41d05cad036526e3764736f6c63430008130033","sourceMap":"446:1123:113:-:0;;;1088:4:64;1045:48;;446:1123:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003505760003560e01c806301ffc9a714620003555780630331383c14620003c757806308386eba14620003e85780630d12bbdb14620004005780630d4a8b491462000427578063175188e8146200044c5780631b71f0e414620004715780631f787d281462000496578063223e547914620004b157806322bcf99914620004d6578063248a9ca314620004fb57806328c309e914620005205780632b38c69c14620005385780632c3bb44a146200056c5780632c611c4a14620005915780632f2ff15d14620005cf57806331f61bca14620005f45780633396045914620006195780633419635514620006315780633517aa7d146200065657806336568abe146200066e5780633659cfe61462000693578063397e254314620006b85780633a871fe114620006dd578063477a5cc014620007125780634f1ef2861462000752578063524e59e8146200076957806352d1902d14620007ac578063559de05d14620007c4578063579eb7e514620007e95780635c94e4d2146200080e5780635ecf71c5146200083157806365e3864c14620008565780636871eb4d146200089357806368decabb14620008b85780636c53db9a14620008db578063715018a614620008fe57806373265c371462000916578063733a2d1f146200093b57806377122d5614620009605780637817ee4f146200098357806378a0b8a914620009a85780637b10399914620009c057806382d6a1e714620009e35780638659ffdd1462000a0857806388cfe6841462000a2d5780638961be6b1462000aa35780638da5cb5b1462000abb57806391d148541462000ad3578063a0cf0aea1462000af8578063a217fddf1462000b22578063a230c5241462000b39578063b0d3713a1462000b5e578063b3f006741462000b83578063b5058c501462000baa578063b64e39af1462000bc2578063b99b43701462000be9578063bc063e1a1462000c01578063c4d66de81462000c19578063c6d572ae1462000c3e578063d547741f1462000c56578063d6d8428d1462000c7b578063d7050f071462000c9e578063db61d65c1462000cb6578063e16d0e321462000cd9578063ebd7dc521462000cfe578063f2fde38b1462000d23578063f86c5f891462000d48578063ffa1ad741462000d6b575b600080fd5b3480156200036257600080fd5b50620003b26200037436600462004610565b6001600160e01b03191660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e602052604090205460ff1690565b60405190151581526020015b60405180910390f35b348015620003d457600080fd5b5060fb545b604051908152602001620003be565b348015620003f557600080fd5b50620003d960fe5481565b3480156200040d57600080fd5b50620004256200041f3660046200463c565b62000d99565b005b3480156200043457600080fd5b5062000425620004463660046200467e565b62000e0f565b3480156200045957600080fd5b50620004256200046b366004620046bc565b62001192565b3480156200047e57600080fd5b506200042562000490366004620046bc565b620011aa565b348015620004a357600080fd5b5060ff8054620003b2911681565b348015620004be57600080fd5b5062000425620004d0366004620046bc565b620011d7565b348015620004e357600080fd5b5062000425620004f53660046200467e565b620011ec565b3480156200050857600080fd5b50620003d96200051a3660046200463c565b620012e6565b3480156200052d57600080fd5b50620003d9620012fb565b3480156200054557600080fd5b506200055d62000557366004620046dc565b62001400565b604051620003be919062004718565b3480156200057957600080fd5b50620004256200058b3660046200472c565b6200143a565b3480156200059e57600080fd5b50620003d9620005b0366004620046bc565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005dc57600080fd5b5062000425620005ee3660046200477e565b62001537565b3480156200060157600080fd5b5062000425620006133660046200463c565b6200155e565b3480156200062657600080fd5b50620003d960fd5481565b3480156200063e57600080fd5b5062000425620006503660046200498e565b6200159e565b3480156200066357600080fd5b506200042562001c03565b3480156200067b57600080fd5b50620004256200068d3660046200477e565b62001e65565b348015620006a057600080fd5b5062000425620006b2366004620046bc565b62001ee3565b348015620006c557600080fd5b5062000425620006d7366004620046bc565b62001fb4565b348015620006ea57600080fd5b50620003b2620006fc366004620046bc565b61010a6020526000908152604090205460ff1681565b3480156200071f57600080fd5b50620003b2620007313660046200467e565b61010e60209081526000928352604080842090915290825290205460ff1681565b620004256200076336600462004b21565b62002021565b3480156200077657600080fd5b506200078e6200078836600462004da5565b620020e2565b604080519283526001600160a01b03909116602083015201620003be565b348015620007b957600080fd5b50620003d9620021b3565b348015620007d157600080fd5b5062000425620007e33660046200463c565b62002264565b348015620007f657600080fd5b506200078e6200080836600462004f86565b620024b0565b3480156200081b57600080fd5b50610102546200055d906001600160a01b031681565b3480156200083e57600080fd5b5062000425620008503660046200463c565b62002718565b3480156200086357600080fd5b50620003d9620008753660046200467e565b61010b60209081526000928352604080842090915290825290205481565b348015620008a057600080fd5b5062000425620008b23660046200467e565b62002ab2565b348015620008c557600080fd5b50610103546200055d906001600160a01b031681565b348015620008e857600080fd5b50610106546200055d906001600160a01b031681565b3480156200090b57600080fd5b506200042562002c05565b3480156200092357600080fd5b5062000425620009353660046200463c565b62002c1b565b3480156200094857600080fd5b50620003d96000805160206200615f83398151915281565b3480156200096d57600080fd5b50610101546200055d906001600160a01b031681565b3480156200099057600080fd5b50620003d9620009a23660046200467e565b62002cb7565b348015620009b557600080fd5b50620003d960fb5481565b348015620009cd57600080fd5b50610104546200055d906001600160a01b031681565b348015620009f057600080fd5b506200042562000a023660046200463c565b62002ce5565b34801562000a1557600080fd5b506200078e62000a2736600462004ffa565b62002da3565b34801562000a3a57600080fd5b5062000a7b62000a4c366004620046bc565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b0390941684526020840192909252151590820152606001620003be565b34801562000ab057600080fd5b50620003d960fc5481565b34801562000ac857600080fd5b506200055d62002f30565b34801562000ae057600080fd5b50620003b262000af23660046200477e565b62002fcb565b34801562000b0557600080fd5b506200055d73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000b2f57600080fd5b50620003d9600081565b34801562000b4657600080fd5b50620003b262000b58366004620046bc565b62002ff6565b34801562000b6b57600080fd5b506200042562000b7d366004620046bc565b62003040565b34801562000b9057600080fd5b5060ff546200055d9061010090046001600160a01b031681565b34801562000bb757600080fd5b50620004256200306d565b34801562000bcf57600080fd5b5062000bda620030a4565b604051620003be9190620050e1565b34801562000bf657600080fd5b50620004256200313b565b34801562000c0e57600080fd5b50620003d962003245565b34801562000c2657600080fd5b506200042562000c38366004620046bc565b62003257565b34801562000c4b57600080fd5b5062000bda6200328c565b34801562000c6357600080fd5b506200042562000c753660046200477e565b6200329c565b34801562000c8857600080fd5b50610107546200055d906001600160a01b031681565b34801562000cab57600080fd5b50620003d961271081565b34801562000cc357600080fd5b50610105546200055d906001600160a01b031681565b34801562000ce657600080fd5b506200078e62000cf8366004620050f6565b620032be565b34801562000d0b57600080fd5b50620003b262000d1d366004620046bc565b6200337f565b34801562000d3057600080fd5b506200042562000d42366004620046bc565b6200339c565b34801562000d5557600080fd5b50610100546200055d906001600160a01b031681565b34801562000d7857600080fd5b50604080518082019091526003815262302e3160e81b602082015262000bda565b62000da36200340d565b62000db2612710600a6200517f565b81111562000dd35760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e196200344a565b62000e2482620034a5565b62000e2f81620034ce565b62000e3a8162003509565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e8357604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f379190620051af565b600381111562000f4b5762000f4b62005199565b0362000fd05760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f82908890600090600401620051cf565b6020604051808303816000875af115801562000fa2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc89190620051e8565b9050620010cc565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001013573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010399190620051af565b60038111156200104d576200104d62005199565b14620010cc5760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010839088908690600401620051cf565b6020604051808303816000875af1158015620010a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c99190620051e8565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec90620011789087908790859062005202565b60405180910390a15050506200118e6001606555565b5050565b6200119c6200340d565b620011a78162003538565b50565b620011b462003596565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011e16200340d565b620011a781620035f9565b620011f782620034a5565b620012028162003509565b6200120e33826200368b565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200125657604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a88282620036be565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012da92919062005226565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b0316816200131b61271060646200517f565b60fc5460fb546200132d91906200517f565b62001339919062005240565b905060006200134c61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137a90309060040162004718565b602060405180830381865afa15801562001398573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013be9190620051e8565b60fb54620013cd91906200517f565b620013d9919062005240565b9050808260fb54620013ec919062005263565b620013f8919062005263565b935050505090565b61010d60205281600052604060002081815481106200141e57600080fd5b6000918252602090912001546001600160a01b03169150829050565b600054600290610100900460ff161580156200145d575060005460ff8083169116105b620014855760405162461bcd60e51b81526004016200147c9062005279565b60405180910390fd5b6000805461ffff191660ff831617610100179055620014a362003596565b620014ae8462003509565b620014b98362003509565b620014c48262003509565b620014cf846200339c565b61010280546001600160a01b038581166001600160a01b0319928316179092556101018054928516929091169190911790556000805461ff001916905560405160ff82168152600080516020620061bf8339815191529060200160405180910390a150505050565b6200154282620012e6565b6200154d81620037f4565b62001559838362003800565b505050565b620015686200340d565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000e04565b600054610100900460ff1615808015620015bf5750600054600160ff909116105b80620015e45750620015d1306200388a565b158015620015e4575060005460ff166001145b620016035760405162461bcd60e51b81526004016200147c9062005279565b6000805460ff19166001179055801562001627576000805461ff0019166101001790555b620016328262003257565b6200163c62003899565b62001646620038cd565b620016626000805160206200615f8339815191526000620038f7565b62001671856020015162003509565b6200168185610100015162003509565b84516200168e9062003509565b6200169d8560a0015162003509565b606085015115620016b757620016b78560c0015162003509565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001712576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200174f908262005355565b506101608501516101099062001766908262005355565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017db906000805160206200615f8339815191529062003800565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001856919062005421565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620018e2576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018bc57620018bc62005441565b60200260200101906001600160a01b031690816001600160a01b03168152505062001a1f565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200192d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001957919081019062005457565b90508051600262001969919062005263565b6001600160401b03811115620019835762001983620047a6565b604051908082528060200260200182016040528015620019ad578160200160208202803683370190505b50915060005b815181101562001a1c57818181518110620019d257620019d262005441565b6020026020010151838281518110620019ef57620019ef62005441565b6001600160a01b03909216602092830291909101909101528062001a1381620054f0565b915050620019b3565b50505b6101065481516001600160a01b0390911690829062001a41906001906200550c565b8151811062001a545762001a5462005441565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a8691906200550c565b8151811062001a995762001a9962005441565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001aec929161010891309088906004016200560e565b6020604051808303816000875af115801562001b0c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b329190620051e8565b60fe55805162001b4b9061010f9060208401906200456a565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001bbd92909161010891906200566e565b60405180910390a150801562001bfc576000805461ff001916905560405160018152600080516020620061bf8339815191529060200160405180910390a15b5050505050565b62001c0d6200344a565b33600081815261010c602052604081206101005490916001600160a01b039091169062001c3e61271060646200517f565b60fc5460fb5462001c5091906200517f565b62001c5c919062005240565b9050600062001c6f61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001c9d90309060040162004718565b602060405180830381865afa15801562001cbb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ce19190620051e8565b60fb5462001cf091906200517f565b62001cfc919062005240565b905062001d098562002ff6565b62001e535760028401805460ff1916600190811790915560fb5490850181905562001d639086903090849062001d4190879062005263565b62001d4d919062005263565b610105546001600160a01b03169291906200394c565b811562001d905760ff546101055462001d90916001600160a01b03918216916101009091041684620039a8565b801562001e155762001e15836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001dda573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e00919062005421565b610105546001600160a01b03169083620039a8565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001e4a929190620051cf565b60405180910390a15b505050505062001e636001606555565b565b6001600160a01b038116331462001ed75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200147c565b6200118e8282620039ca565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f2e5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f6262003a34565b6001600160a01b03161462001f8b5760405162461bcd60e51b81526004016200147c90620056d8565b62001f968162003a51565b60408051600080825260208201909252620011a79183919062003a93565b62001fbe6200340d565b62001fc98162003509565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e04939216919062005226565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200206c5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620020a062003a34565b6001600160a01b031614620020c95760405162461bcd60e51b81526004016200147c90620056d8565b620020d48262003a51565b6200118e8282600162003a93565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200211862002f30565b6040516024016200212c9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200216b90620045d0565b6200217892919062005736565b604051809103906000f08015801562002195573d6000803e3d6000fd5b509050620021a681878787620032be565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620022505760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200147c565b506000805160206200619f83398151915290565b6200226e6200344a565b6200227862003c0b565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620022dc57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620022bd575b50505050509050600080600090505b825181101562002417578281815181106200230a576200230a62005441565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002341929190620051cf565b6020604051808303816000875af115801562002361573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023879190620051e8565b9150811562002402576001600160a01b038416600090815261010b602052604081208451849290869085908110620023c357620023c362005441565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620023fc919062005263565b90915550505b806200240e81620054f0565b915050620022eb565b506101055462002433906001600160a01b03168430876200394c565b6001600160a01b038316600090815261010c6020526040812060010180548692906200246190849062005263565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200249a9085908790620051cf565b60405180910390a1505050620011a76001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b9281169116620024e662002f30565b604051602401620024fa9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200253990620045d0565b6200254692919062005736565b604051809103906000f08015801562002563573d6000803e3d6000fd5b509050620025748187878762002da3565b60c087015191945092506001600160a01b03166200267f576103e88560e00151511115620025fd5760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200147c565b6000836040516020016200261291906200575c565b60405160208183030381529060405280519060200120905060005b8660e00151518110156200267c5762002667828860e00151838151811062002659576200265962005441565b602002602001015162003800565b806200267381620054f0565b9150506200262d565b50505b620026db836040516020016200269691906200575c565b6040516020818303038152906040528051906020012084604051602001620026bf919062005779565b60405160208183030381529060405280519060200120620038f7565b6200270f83604051602001620026f2919062005779565b604051602081830303815290604052805190602001208362003800565b50935093915050565b620027226200344a565b6200272c62003c0b565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620027609086906200550c565b10156200278057604051634e23e81760e11b815260040160405180910390fd5b610105546200279a906001600160a01b03168486620039a8565b60005b825481101562002a4a576000838281548110620027be57620027be62005441565b6000918252602090912001546001600160a01b03169050620027e88163f1801e6160e01b62003c34565b156200296e57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b906200281e9088908a90600401620051cf565b6020604051808303816000875af11580156200283e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028649190620051e8565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620028a557620028a562005441565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620028f9576040516311423e6360e31b815260048101859052602481018290526044016200147c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200292c576200292c62005441565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620029629084906200550c565b90915550505062002a34565b8354849062002980906001906200550c565b8154811062002993576200299362005441565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029c657620029c662005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002a075762002a076200579c565b600082815260209020810160001990810180546001600160a01b031916905501905562002a348162003538565b508062002a4181620054f0565b9150506200279d565b506001600160a01b038316600090815261010c60205260408120600101805486929062002a799084906200550c565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200249a9085908790620051cf565b62002abc6200344a565b62002ac66200340d565b60ff80541662002ae9576040516365b1ee3960e11b815260040160405180910390fd5b62002af48262002ff6565b62002b1257604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002b638362003c5c565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002bb89216908490620039a8565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002bf19392919062005202565b60405180910390a1506200118e6001606555565b62002c0f62003596565b62001e63600062003d71565b62002c256200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c71573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c9b9190810190620057b2565b60200151905062002cac8162003509565b6200118e8162003538565b6001600160a01b03808316600090815261010b60209081526040808320938516835292905220545b92915050565b62002cef6200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002d3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002d659190810190620057b2565b60200151905062002d768162003509565b62002d926001600160a01b03821663f1801e6160e01b62003c34565b156200118e576200118e81620035f9565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dce5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b906020016200597d565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9c979695949392919062005a26565b6020604051808303816000875af115801562002ebc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee29190620051e8565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1d95949392919062005a97565b60405180910390a1505094509492505050565b60008062002f466033546001600160a01b031690565b9050806001600160a01b03163b60000362002f6057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002fbd575060408051601f3d908101601f1916820190925262002fba9181019062005421565b60015b62002cdf57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b6200304a62003596565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b031633146200309a576040516375e686b760e11b815260040160405180910390fd5b62001e6362003dc3565b6101098054620030b490620052c7565b80601f0160208091040260200160405190810160405280929190818152602001828054620030e290620052c7565b8015620031335780601f10620031075761010080835404028352916020019162003133565b820191906000526020600020905b8154815290600101906020018083116200311557829003601f168201915b505050505081565b620031456200344a565b336200315181620034a5565b6200315c8162003c5c565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620031d79190620045de565b602081015161010554620031f9916001600160a01b03909116908490620039a8565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003230929190620051cf565b60405180910390a1505062001e636001606555565b62003254612710600a6200517f565b81565b600054610100900460ff16620032815760405162461bcd60e51b81526004016200147c9062005ad3565b620011a78162003d71565b6101088054620030b490620052c7565b620032a782620012e6565b620032b281620037f4565b620015598383620039ca565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032e95750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200334757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003328575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b9060200162005b1e565b600062002cdf6000805160206200615f8339815191528362002fcb565b620033a662003596565b6001600160a01b038116620032815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200147c565b620034286000805160206200615f8339815191523362002fcb565b62001e63573360405163fc4be72f60e01b81526004016200147c919062004718565b6002606554036200349e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200147c565b6002606555565b620034b08162002ff6565b620011a757604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff16620011a7576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b038116620011a7576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620035438162003509565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e0490839062004718565b33620035a162002f30565b6001600160a01b03161462001e635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200147c565b6001600160a01b038116600090815261010a602052604090205460ff161562003635576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000e0490839062004718565b806001600160a01b0316826001600160a01b0316146200118e5760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b8154811015620037ee57826001600160a01b031682828154811062003702576200370262005441565b6000918252602090912001546001600160a01b031603620037d957815482906200372f906001906200550c565b8154811062003742576200374262005441565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003775576200377562005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620037b657620037b66200579c565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620037e581620054f0565b915050620036d9565b50505050565b620011a7813362003e27565b6200380c828262002fcb565b6200118e57600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620038463390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620038c35760405162461bcd60e51b81526004016200147c9062005ad3565b62001e6362003e8b565b600054610100900460ff1662001e635760405162461bcd60e51b81526004016200147c9062005ad3565b60006200390483620012e6565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b620037ee846323b872dd60e01b858585604051602401620039709392919062005202565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003eb5565b620015598363a9059cbb60e01b848460405160240162003970929190620051cf565b620039d6828262002fcb565b156200118e57600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200619f833981519152546001600160a01b031690565b3362003a5c62002f30565b6001600160a01b031614620011a7573362003a7662002f30565b60405163163678e960e01b81526004016200147c92919062005226565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003ac957620015598362003f91565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003b26575060408051601f3d908101601f1916820190925262003b2391810190620051e8565b60015b62003b8b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200147c565b6000805160206200619f833981519152811462003bfd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200147c565b506200155983838362004030565b62003c163362002ff6565b62001e6357604051636a5cfb6d60e01b815260040160405180910390fd5b600062003c41836200405b565b801562003c55575062003c55838362004093565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003cc957602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003caa575b5050505050905060005b8151811015620015595781818151811062003cf25762003cf262005441565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003d27919062004718565b600060405180830381600087803b15801562003d4257600080fd5b505af115801562003d57573d6000803e3d6000fd5b50505050808062003d6890620054f0565b91505062003cd3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003e1d9060009062004718565b60405180910390a1565b62003e33828262002fcb565b6200118e5762003e43816200411e565b62003e5083602062004131565b60405160200162003e6392919062005ba7565b60408051601f198184030181529082905262461bcd60e51b82526200147c91600401620050e1565b600054610100900460ff16620035315760405162461bcd60e51b81526004016200147c9062005ad3565b600062003f0c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042ea9092919063ffffffff16565b905080516000148062003f3057508080602001905181019062003f30919062005c1a565b620015595760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200147c565b62003f9c816200388a565b620040005760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200147c565b6000805160206200619f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200403b8362004303565b600082511180620040495750805b156200155957620037ee838362004345565b600062004070826301ffc9a760e01b62004093565b801562002cdf57506200408c826001600160e01b031962004093565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004106575060208210155b8015620041135750600081115b979650505050505050565b606062002cdf6001600160a01b03831660145b60606000620041428360026200517f565b6200414f90600262005263565b6001600160401b03811115620041695762004169620047a6565b6040519080825280601f01601f19166020018201604052801562004194576020820181803683370190505b509050600360fc1b81600081518110620041b257620041b262005441565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041e457620041e462005441565b60200101906001600160f81b031916908160001a90535060006200420a8460026200517f565b6200421790600162005263565b90505b600181111562004299576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200424f576200424f62005441565b1a60f81b82828151811062004268576200426862005441565b60200101906001600160f81b031916908160001a90535060049490941c93620042918162005c3a565b90506200421a565b50831562003c555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200147c565b6060620042fb84846000856200436d565b949350505050565b6200430e8162003f91565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003c558383604051806060016040528060278152602001620061df6027913962004445565b606082471015620043d05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200147c565b600080866001600160a01b03168587604051620043ee919062005c54565b60006040518083038185875af1925050503d80600081146200442d576040519150601f19603f3d011682016040523d82523d6000602084013e62004432565b606091505b50915091506200411387838387620044c3565b6060600080856001600160a01b03168560405162004464919062005c54565b600060405180830381855af49150503d8060008114620044a1576040519150601f19603f3d011682016040523d82523d6000602084013e620044a6565b606091505b5091509150620044b986838387620044c3565b9695505050505050565b60608315620045375782516000036200452f57620044e1856200388a565b6200452f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200147c565b5081620042fb565b620042fb83838151156200454e5781518083602001fd5b8060405162461bcd60e51b81526004016200147c9190620050e1565b828054828255906000526020600020908101928215620045c2579160200282015b82811115620045c257825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200458b565b5062002fc7929150620045f9565b6104ec8062005c7383390190565b5080546000825590600052602060002090810190620011a791905b5b8082111562002fc75760008155600101620045fa565b6000602082840312156200462357600080fd5b81356001600160e01b03198116811462003c5557600080fd5b6000602082840312156200464f57600080fd5b5035919050565b6001600160a01b0381168114620011a757600080fd5b8035620046798162004656565b919050565b600080604083850312156200469257600080fd5b82356200469f8162004656565b91506020830135620046b18162004656565b809150509250929050565b600060208284031215620046cf57600080fd5b813562003c558162004656565b60008060408385031215620046f057600080fd5b8235620046fd8162004656565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6000806000606084860312156200474257600080fd5b83356200474f8162004656565b92506020840135620047618162004656565b91506040840135620047738162004656565b809150509250925092565b600080604083850312156200479257600080fd5b823591506020830135620046b18162004656565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620047e157620047e1620047a6565b60405290565b60405161018081016001600160401b0381118282101715620047e157620047e1620047a6565b60405160c081016001600160401b0381118282101715620047e157620047e1620047a6565b60405161010081016001600160401b0381118282101715620047e157620047e1620047a6565b604051601f8201601f191681016001600160401b0381118282101715620048835762004883620047a6565b604052919050565b60006001600160401b03821115620048a757620048a7620047a6565b50601f01601f191660200190565b6000620048cc620048c6846200488b565b62004858565b9050828152838383011115620048e157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200490a57600080fd5b62003c5583833560208501620048b5565b6000604082840312156200492e57600080fd5b62004938620047bc565b82358152905060208201356001600160401b038111156200495857600080fd5b6200496684828501620048f8565b60208301525092915050565b8015158114620011a757600080fd5b8035620046798162004972565b60008060008060808587031215620049a557600080fd5b84356001600160401b0380821115620049bd57600080fd5b908601906101808289031215620049d357600080fd5b620049dd620047e7565b620049e8836200466c565b8152620049f8602084016200466c565b602082015260408301356040820152606083013560608201526080830135608082015262004a2960a084016200466c565b60a082015262004a3c60c084016200466c565b60c082015260e08301358281111562004a5457600080fd5b62004a628a8286016200491b565b60e08301525061010062004a788185016200466c565b90820152610120838101358381111562004a9157600080fd5b62004a9f8b828701620048f8565b82840152505061014062004ab581850162004981565b90820152610160838101358381111562004ace57600080fd5b62004adc8b828701620048f8565b82840152505080965050505062004af6602086016200466c565b925062004b06604086016200466c565b915062004b16606086016200466c565b905092959194509250565b6000806040838503121562004b3557600080fd5b823562004b428162004656565b915060208301356001600160401b0381111562004b5e57600080fd5b8301601f8101851362004b7057600080fd5b62004b8185823560208401620048b5565b9150509250929050565b60006080828403121562004b9e57600080fd5b604051608081016001600160401b038111828210171562004bc35762004bc3620047a6565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200467957600080fd5b60048110620011a757600080fd5b8035620046798162004c04565b60006020828403121562004c3257600080fd5b604051602081016001600160401b038111828210171562004c575762004c57620047a6565b6040529135825250919050565b600060c0828403121562004c7757600080fd5b62004c816200480d565b9050813562004c908162004656565b8152602082013562004ca28162004656565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004ceb57600080fd5b60405160e081016001600160401b038111828210171562004d105762004d10620047a6565b60405290508062004d22848462004b8b565b815262004d326080840162004bf4565b602082015260a083013562004d478162004c04565b604082015262004d5b8460c0850162004c1f565b606082015262004d6f8460e0850162004c64565b60808201526101a083013562004d858162004656565b60a082015262004d996101c084016200466c565b60c08201525092915050565b6000806000610220848603121562004dbc57600080fd5b833562004dc98162004656565b925062004dda856020860162004cd7565b91506102008401356001600160401b0381111562004df757600080fd5b62004e05868287016200491b565b9150509250925092565b60006001600160401b0382111562004e2b5762004e2b620047a6565b5060051b60200190565b600082601f83011262004e4757600080fd5b8135602062004e5a620048c68362004e0f565b82815260059290921b8401810191818101908684111562004e7a57600080fd5b8286015b8481101562004ea257803562004e948162004656565b835291830191830162004e7e565b509695505050505050565b6000610200828403121562004ec157600080fd5b62004ecb62004832565b905062004ed9838362004b8b565b815262004ee96080830162004bf4565b602082015262004efc60a0830162004c12565b604082015262004f108360c0840162004c1f565b606082015262004f248360e0840162004c64565b608082015262004f386101a083016200466c565b60a082015262004f4c6101c083016200466c565b60c08201526101e08201356001600160401b0381111562004f6c57600080fd5b62004f7a8482850162004e35565b60e08301525092915050565b60008060006060848603121562004f9c57600080fd5b833562004fa98162004656565b925060208401356001600160401b038082111562004fc657600080fd5b62004fd48783880162004ead565b9350604086013591508082111562004feb57600080fd5b5062004e05868287016200491b565b600080600080608085870312156200501157600080fd5b84356200501e8162004656565b93506020850135620050308162004656565b925060408501356001600160401b03808211156200504d57600080fd5b6200505b8883890162004ead565b935060608701359150808211156200507257600080fd5b5062005081878288016200491b565b91505092959194509250565b60005b83811015620050aa57818101518382015260200162005090565b50506000910152565b60008151808452620050cd8160208601602086016200508d565b601f01601f19169290920160200192915050565b60208152600062003c556020830184620050b3565b60008060008061024085870312156200510e57600080fd5b84356200511b8162004656565b935060208501356200512d8162004656565b92506200513e866040870162004cd7565b91506102208501356001600160401b038111156200515b57600080fd5b62005081878288016200491b565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762002cdf5762002cdf62005169565b634e487b7160e01b600052602160045260246000fd5b600060208284031215620051c257600080fd5b815162003c558162004c04565b6001600160a01b03929092168252602082015260400190565b600060208284031215620051fb57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200525e57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562002cdf5762002cdf62005169565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c90821680620052dc57607f821691505b602082108103620052fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200155957600081815260208120601f850160051c810160208610156200532c5750805b601f850160051c820191505b818110156200534d5782815560010162005338565b505050505050565b81516001600160401b03811115620053715762005371620047a6565b6200538981620053828454620052c7565b8462005303565b602080601f831160018114620053c15760008415620053a85750858301515b600019600386901b1c1916600185901b1785556200534d565b600085815260208120601f198616915b82811015620053f257888601518255948401946001909101908401620053d1565b5085821015620054115787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200543457600080fd5b815162003c558162004656565b634e487b7160e01b600052603260045260246000fd5b600060208083850312156200546b57600080fd5b82516001600160401b038111156200548257600080fd5b8301601f810185136200549457600080fd5b8051620054a5620048c68262004e0f565b81815260059190911b82018301908381019087831115620054c557600080fd5b928401925b8284101562004113578351620054e08162004656565b82529284019290840190620054ca565b60006001820162005505576200550562005169565b5060010190565b8181038181111562002cdf5762002cdf62005169565b600081546200553181620052c7565b8085526020600183811680156200555157600181146200556c576200559c565b60ff1985168884015283151560051b8801830195506200559c565b866000528260002060005b85811015620055945781548a820186015290830190840162005577565b890184019650505b505050505092915050565b805182526000602082015160406020850152620042fb6040850182620050b3565b600081518084526020808501945080840160005b83811015620056035781516001600160a01b031687529582019590820190600101620055dc565b509495945050505050565b85815260a0602082015260006200562960a083018762005522565b82810360408401526200563d8187620055a7565b6001600160a01b038616606085015283810360808501529050620056628185620055c8565b98975050505050505050565b83815260606020820152600062005689606083018562005522565b8281036040840152620044b98185620055a7565b6020808252602c908201526000805160206200617f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200617f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042fb90830184620050b3565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057c657600080fd5b82516001600160401b0380821115620057de57600080fd5b9084019060c08287031215620057f357600080fd5b620057fd6200480d565b8251815283830151620058108162004656565b818501526040830151620058248162004656565b60408201526060830151828111156200583c57600080fd5b8301604081890312156200584f57600080fd5b62005859620047bc565b8151815285820151848111156200586f57600080fd5b82019350601f840189136200588357600080fd5b8351915062005896620048c6836200488b565b8281528987848701011115620058ab57600080fd5b620058bc838883018988016200508d565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b6003811062005921576200592162005199565b9052565b6004811062005921576200592162005199565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b6020815262005991602082018351620058e8565b60006020830151620059a760a08401826200590e565b506040830151620059bc60c084018262005925565b5060608301515160e08301526080830151620059dd61010084018262005938565b5060a0830151620059f36101c08401826200470b565b5060c083015162005a096101e08401826200470b565b5060e083015161020083810152620042fb610220840182620055c8565b878152600060018060a01b03808916602084015260e0604084015262005a5060e0840189620050b3565b818816606085015286608085015283810360a085015262005a728187620055a7565b91505082810360c084015262005a898185620055c8565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200411390830184620055a7565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e08201905062005b34828451620058e8565b602083015162005b4860808401826200590e565b50604083015162005b5d60a084018262005925565b5060608301515160c0830152608083015162005b7d60e084018262005938565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005bdb8160178501602088016200508d565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005c0e8160288401602088016200508d565b01602801949350505050565b60006020828403121562005c2d57600080fd5b815162003c558162004972565b60008162005c4c5762005c4c62005169565b506000190190565b6000825162005c688184602087016200508d565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e0910e566be8360c1691430fc249ed379beac4d95da38df41d05cad036526e3764736f6c63430008130033","sourceMap":"446:1123:113:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1302:228;;;;;;;;;;-1:-1:-1;1302:228:113;;;;;:::i;:::-;-1:-1:-1;;;;;;1487:36:113;1388:4;1487:36;;;:22;:36;;;;;;;;;1302:228;;;;470:14:131;;463:22;445:41;;433:2;418:18;1302:228:113;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:131;;;631:2;616:18;23771:115:104;497:177:131;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;655:506:113:-;;;;;;;;;;-1:-1:-1;655:506:113;;;;;:::i;:::-;;:::i;19069:151:104:-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;13339:25:131;;;-1:-1:-1;;;;;13400:32:131;;;13395:2;13380:18;;13373:60;13312:18;12647:531:104;13165:274:131;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;584:1317:105:-;;;;;;;;;;-1:-1:-1;584:1317:105;;;;;:::i;:::-;;:::i;6550:31:104:-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;;:::i;5795:34::-;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;1907:660:105:-;;;;;;;;;;-1:-1:-1;1907:660:105;;;;;:::i;:::-;;:::i;7605:60:104:-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;17946:32:131;;;17928:51;;18010:2;17995:18;;17988:34;;;;18065:14;18058:22;18038:18;;;18031:50;17916:2;17901:18;7605:60:104;17732:355:131;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;1171:93:113;;;;;;;;;;-1:-1:-1;1245:12:113;;;;;;;;;;;;-1:-1:-1;;;1245:12:113;;;;1171:93;;24088:288:104;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:131;;;24332:37:104;;631:2:131;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;655:506:113:-;4882:13:47;;805:1:113;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;;;;;;;;;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;1355:13:45::1;:11;:13::i;:::-;828:26:113::2;847:6;828:18;:26::i;:::-;864:37;883:17;864:18;:37::i;:::-;911:44;930:24;911:18;:44::i;:::-;974:25;992:6;974:17;:25::i;:::-;1018:16;:36:::0;;-1:-1:-1;;;;;1018:36:113;;::::2;-1:-1:-1::0;;;;;;1018:36:113;;::::2;;::::0;;;1064:23:::2;:50:::0;;;;::::2;::::0;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;5055:21:47;;-1:-1:-1;;5055:21:47;;;5091:20;;23187:4:131;23175:17;;23157:36;;-1:-1:-1;;;;;;;;;;;5091:20:47;23145:2:131;23130:18;5091:20:47;;;;;;;655:506:113;;;;:::o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:131;;;24043:32:104;;631:2:131;616:18;24043:32:104;497:177:131;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;23157:36:131;;-1:-1:-1;;;;;;;;;;;3721:14:47;23145:2:131;23130:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;30819:2:131;6476:83:43;;;30801:21:131;30858:2;30838:18;;;30831:30;30897:34;30877:18;;;30870:62;-1:-1:-1;;;30948:18:131;;;30941:45;31003:19;;6476:83:43;30617:411:131;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;33087:2:131;2064:92:64;;;33069:21:131;33126:2;33106:18;;;33099:30;33165:34;33145:18;;;33138:62;-1:-1:-1;;;33216:18:131;;;33209:54;33280:19;;2064:92:64;32885:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;584:1317:105;877:16;;973:4;;980:23;;742:14;;;;;;-1:-1:-1;;;;;877:16:105;;;;-1:-1:-1;;;935:28:105;973:4;;;980:23;1005:7;:5;:7::i;:::-;912:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;912:101:105;;;;;;;;;;;;;;-1:-1:-1;;;;;912:101:105;-1:-1:-1;;;;;;912:101:105;;;;;;;;;;835:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;790:247;;1068:53;1079:13;1094:6;1102:7;1111:9;1068:10;:53::i;:::-;1144:19;;;;1047:74;;-1:-1:-1;1047:74:105;-1:-1:-1;;;;;;1136:42:105;1132:454;;1232:4;1198:7;:24;;;:31;:38;1194:134;;;1256:57;;-1:-1:-1;;;1256:57:105;;33512:2:131;1256:57:105;;;33494:21:131;33551:2;33531:18;;;33524:30;33590:34;33570:18;;;33563:62;-1:-1:-1;;;33641:18:131;;;33634:45;33696:19;;1256:57:105;33310:411:131;1194:134:105;1341:21;1405:6;1375:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1365:48;;;;;;1341:72;;1432:9;1427:149;1451:7;:24;;;:31;1447:1;:35;1427:149;;;1507:54;1518:13;1533:7;:24;;;1558:1;1533:27;;;;;;;;:::i;:::-;;;;;;;1507:10;:54::i;:::-;1484:3;;;;:::i;:::-;;;;1427:149;;;;1180:406;1132:454;1667:141;1734:6;1704:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1694:48;;;;;;1790:6;1754:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1744:54;;;;;;1667:13;:141::i;:::-;1818:76;1875:6;1839:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1829:54;;;;;;1885:8;1818:10;:76::i;:::-;780:1121;584:1317;;;;;;:::o;17322:1562:104:-;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;34565:25:131::0;;;34606:18;;;34599:34;;;34538:18;;18259:57:104::1;34391:248:131::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:131;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:131;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;18890:173::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;18890:173;;;;;:::o;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:131;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:131;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;1907:660:105:-;2098:14;;5412:42:104;-1:-1:-1;;;;;2178:20:105;;;2174:65;;-1:-1:-1;2222:6:105;2174:65;2259:9;2248:20;;2279:31;2313:14;2279:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2279:48:105;;;;;;;;;;;;;;;;-1:-1:-1;;2347:4:105;;2394:9;;2415:19;;2279:48;;-1:-1:-1;;;;;;2347:4:105;;;;:33;;-1:-1:-1;2394:9:105;;-1:-1:-1;2405:8:105;;-1:-1:-1;2415:19:105;;2426:7;;2415:19;;;:::i;:::-;;;;;;;;;;;;;2436:5;2443:1;2446:9;2457:14;2347:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2338:143;;2497:63;2509:6;2517:8;2535:4;2542:6;2550:9;2497:63;;;;;;;;;;:::i;:::-;;;;;;;;2132:435;;1907:660;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;41855:2:131;2415:73:45::1;::::0;::::1;41837:21:131::0;41894:2;41874:18;;;41867:30;41933:34;41913:18;;;41906:62;-1:-1:-1;;;41984:18:131;;;41977:36;42030:19;;2415:73:45::1;41653:402:131::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;42262:2:131;2725:63:48;;;42244:21:131;42301:2;42281:18;;;42274:30;42340:33;42320:18;;;42313:61;42391:18;;2725:63:48;42060:355:131;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;42622:2:131;1675:68:45;;;42604:21:131;;;42641:18;;;42634:30;42700:34;42680:18;;;42673:62;42752:18;;1675:68:45;42420:356:131;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;42983:2:131;3262:56:60;;;42965:21:131;43022:2;43002:18;;;42995:30;43061:34;43041:18;;;43034:62;-1:-1:-1;;;43112:18:131;;;43105:44;43166:19;;3262:56:60;42781:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;43398:2:131;3140:82:60;;;43380:21:131;43437:2;43417:18;;;43410:30;43476:34;43456:18;;;43449:62;-1:-1:-1;;;43527:18:131;;;43520:39;43576:19;;3140:82:60;43196:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;45091:2:131;5697:111:73;;;45073:21:131;45130:2;45110:18;;;45103:30;45169:34;45149:18;;;45142:62;-1:-1:-1;;;45220:18:131;;;45213:40;45270:19;;5697:111:73;44889:406:131;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;45502:2:131;1479:95:60;;;45484:21:131;45541:2;45521:18;;;45514:30;45580:34;45560:18;;;45553:62;-1:-1:-1;;;45631:18:131;;;45624:43;45684:19;;1479:95:60;45300:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;45876:33:131;;4592:71:81;;;;45858:52:131;;;;4592:71:81;;;;;;;;;;45831:18:131;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;46264:2:131;2228:55:52;;;46246:21:131;;;46283:18;;;46276:30;46342:34;46322:18;;;46315:62;46394:18;;2228:55:52;46062:356:131;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;46625:2:131;5354:81:76;;;46607:21:131;46664:2;46644:18;;;46637:30;46703:34;46683:18;;;46676:62;-1:-1:-1;;;46754:18:131;;;46747:36;46800:19;;5354:81:76;46423:402:131;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;47324:2:131;8113:60:76;;;47306:21:131;47363:2;47343:18;;;47336:30;47402:31;47382:18;;;47375:59;47451:18;;8113:60:76;47122:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:131;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:131;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:131;;861:180;-1:-1:-1;861:180:131:o;1046:131::-;-1:-1:-1;;;;;1121:31:131;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:131;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:131:o;2471:104::-;-1:-1:-1;;;;;2537:31:131;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:131;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:529::-;2865:6;2873;2881;2934:2;2922:9;2913:7;2909:23;2905:32;2902:52;;;2950:1;2947;2940:12;2902:52;2989:9;2976:23;3008:31;3033:5;3008:31;:::i;:::-;3058:5;-1:-1:-1;3115:2:131;3100:18;;3087:32;3128:33;3087:32;3128:33;:::i;:::-;3180:7;-1:-1:-1;3239:2:131;3224:18;;3211:32;3252:33;3211:32;3252:33;:::i;:::-;3304:7;3294:17;;;2788:529;;;;;:::o;3322:315::-;3390:6;3398;3451:2;3439:9;3430:7;3426:23;3422:32;3419:52;;;3467:1;3464;3457:12;3419:52;3503:9;3490:23;3480:33;;3563:2;3552:9;3548:18;3535:32;3576:31;3601:5;3576:31;:::i;3642:127::-;3703:10;3698:3;3694:20;3691:1;3684:31;3734:4;3731:1;3724:15;3758:4;3755:1;3748:15;3774:257;3846:4;3840:11;;;3878:17;;-1:-1:-1;;;;;3910:34:131;;3946:22;;;3907:62;3904:88;;;3972:18;;:::i;:::-;4008:4;4001:24;3774:257;:::o;4036:255::-;4108:2;4102:9;4150:6;4138:19;;-1:-1:-1;;;;;4172:34:131;;4208:22;;;4169:62;4166:88;;;4234:18;;:::i;4296:253::-;4368:2;4362:9;4410:4;4398:17;;-1:-1:-1;;;;;4430:34:131;;4466:22;;;4427:62;4424:88;;;4492:18;;:::i;4554:255::-;4626:2;4620:9;4668:6;4656:19;;-1:-1:-1;;;;;4690:34:131;;4726:22;;;4687:62;4684:88;;;4752:18;;:::i;4814:275::-;4885:2;4879:9;4950:2;4931:13;;-1:-1:-1;;4927:27:131;4915:40;;-1:-1:-1;;;;;4970:34:131;;5006:22;;;4967:62;4964:88;;;5032:18;;:::i;:::-;5068:2;5061:22;4814:275;;-1:-1:-1;4814:275:131:o;5094:187::-;5143:4;-1:-1:-1;;;;;5165:30:131;;5162:56;;;5198:18;;:::i;:::-;-1:-1:-1;5264:2:131;5243:15;-1:-1:-1;;5239:29:131;5270:4;5235:40;;5094:187::o;5286:338::-;5351:5;5380:53;5396:36;5425:6;5396:36;:::i;:::-;5380:53;:::i;:::-;5371:62;;5456:6;5449:5;5442:21;5496:3;5487:6;5482:3;5478:16;5475:25;5472:45;;;5513:1;5510;5503:12;5472:45;5562:6;5557:3;5550:4;5543:5;5539:16;5526:43;5616:1;5609:4;5600:6;5593:5;5589:18;5585:29;5578:40;5286:338;;;;;:::o;5629:222::-;5672:5;5725:3;5718:4;5710:6;5706:17;5702:27;5692:55;;5743:1;5740;5733:12;5692:55;5765:80;5841:3;5832:6;5819:20;5812:4;5804:6;5800:17;5765:80;:::i;5856:411::-;5911:5;5959:4;5947:9;5942:3;5938:19;5934:30;5931:50;;;5977:1;5974;5967:12;5931:50;5999:22;;:::i;:::-;6044:23;;6030:38;;5990:31;-1:-1:-1;6119:2:131;6104:18;;6091:32;-1:-1:-1;;;;;6135:30:131;;6132:50;;;6178:1;6175;6168:12;6132:50;6214:46;6256:3;6247:6;6236:9;6232:22;6214:46;:::i;:::-;6209:2;6202:5;6198:14;6191:70;;5856:411;;;;:::o;6272:118::-;6358:5;6351:13;6344:21;6337:5;6334:32;6324:60;;6380:1;6377;6370:12;6395:128;6460:20;;6489:28;6460:20;6489:28;:::i;6528:1871::-;6670:6;6678;6686;6694;6747:3;6735:9;6726:7;6722:23;6718:33;6715:53;;;6764:1;6761;6754:12;6715:53;6791:23;;-1:-1:-1;;;;;6863:14:131;;;6860:34;;;6890:1;6887;6880:12;6860:34;6913:22;;;;6969:6;6951:16;;;6947:29;6944:49;;;6989:1;6986;6979:12;6944:49;7015:22;;:::i;:::-;7060;7079:2;7060:22;:::i;:::-;7053:5;7046:37;7115:31;7142:2;7138;7134:11;7115:31;:::i;:::-;7110:2;7103:5;7099:14;7092:55;7200:2;7196;7192:11;7179:25;7174:2;7167:5;7163:14;7156:49;7258:2;7254;7250:11;7237:25;7232:2;7225:5;7221:14;7214:49;7317:3;7313:2;7309:12;7296:26;7290:3;7283:5;7279:15;7272:51;7356:32;7383:3;7379:2;7375:12;7356:32;:::i;:::-;7350:3;7343:5;7339:15;7332:57;7422:32;7449:3;7445:2;7441:12;7422:32;:::i;:::-;7416:3;7409:5;7405:15;7398:57;7501:3;7497:2;7493:12;7480:26;7531:2;7521:8;7518:16;7515:36;;;7547:1;7544;7537:12;7515:36;7584:54;7630:7;7619:8;7615:2;7611:17;7584:54;:::i;:::-;7578:3;7571:5;7567:15;7560:79;;7658:3;7693:31;7720:2;7716;7712:11;7693:31;:::i;:::-;7677:14;;;7670:55;7744:3;7785:11;;;7772:25;7809:16;;;7806:36;;;7838:1;7835;7828:12;7806:36;7874:45;7911:7;7900:8;7896:2;7892:17;7874:45;:::i;:::-;7869:2;7862:5;7858:14;7851:69;;;7939:3;7974:28;7998:2;7994;7990:11;7974:28;:::i;:::-;7958:14;;;7951:52;8022:3;8063:11;;;8050:25;8087:16;;;8084:36;;;8116:1;8113;8106:12;8084:36;8152:45;8189:7;8178:8;8174:2;8170:17;8152:45;:::i;:::-;8147:2;8140:5;8136:14;8129:69;;;8217:5;8207:15;;;;;8241:38;8275:2;8264:9;8260:18;8241:38;:::i;:::-;8231:48;;8298:38;8332:2;8321:9;8317:18;8298:38;:::i;:::-;8288:48;;8355:38;8389:2;8378:9;8374:18;8355:38;:::i;:::-;8345:48;;6528:1871;;;;;;;:::o;8664:585::-;8741:6;8749;8802:2;8790:9;8781:7;8777:23;8773:32;8770:52;;;8818:1;8815;8808:12;8770:52;8857:9;8844:23;8876:31;8901:5;8876:31;:::i;:::-;8926:5;-1:-1:-1;8982:2:131;8967:18;;8954:32;-1:-1:-1;;;;;8998:30:131;;8995:50;;;9041:1;9038;9031:12;8995:50;9064:22;;9117:4;9109:13;;9105:27;-1:-1:-1;9095:55:131;;9146:1;9143;9136:12;9095:55;9169:74;9235:7;9230:2;9217:16;9212:2;9208;9204:11;9169:74;:::i;:::-;9159:84;;;8664:585;;;;;:::o;9254:605::-;9309:5;9357:4;9345:9;9340:3;9336:19;9332:30;9329:50;;;9375:1;9372;9365:12;9329:50;9408:2;9402:9;9450:4;9438:17;;-1:-1:-1;;;;;9470:34:131;;9506:22;;;9467:62;9464:88;;;9532:18;;:::i;:::-;9572:10;9568:2;9561:22;;9601:6;9592:15;;9644:9;9631:23;9623:6;9616:39;9716:2;9705:9;9701:18;9688:32;9683:2;9675:6;9671:15;9664:57;9782:2;9771:9;9767:18;9754:32;9749:2;9741:6;9737:15;9730:57;9848:2;9837:9;9833:18;9820:32;9815:2;9807:6;9803:15;9796:57;;9254:605;;;;:::o;9864:153::-;9942:20;;9991:1;9981:12;;9971:40;;10007:1;10004;9997:12;10022:110;10106:1;10099:5;10096:12;10086:40;;10122:1;10119;10112:12;10137:152;10214:20;;10243:40;10214:20;10243:40;:::i;10294:416::-;10358:5;10406:4;10394:9;10389:3;10385:19;10381:30;10378:50;;;10424:1;10421;10414:12;10378:50;10457:2;10451:9;10499:4;10487:17;;-1:-1:-1;;;;;10519:34:131;;10555:22;;;10516:62;10513:88;;;10581:18;;:::i;:::-;10617:2;10610:22;10680:23;;10665:39;;-1:-1:-1;10650:6:131;10294:416;-1:-1:-1;10294:416:131:o;10715:701::-;10778:5;10826:4;10814:9;10809:3;10805:19;10801:30;10798:50;;;10844:1;10841;10834:12;10798:50;10866:22;;:::i;:::-;10857:31;;10925:9;10912:23;10944:33;10969:7;10944:33;:::i;:::-;10986:22;;11060:2;11045:18;;11032:32;11073:33;11032:32;11073:33;:::i;:::-;11138:7;11133:2;11126:5;11122:14;11115:31;;11206:2;11195:9;11191:18;11178:32;11173:2;11166:5;11162:14;11155:56;11271:2;11260:9;11256:18;11243:32;11238:2;11231:5;11227:14;11220:56;11337:3;11326:9;11322:19;11309:33;11303:3;11296:5;11292:15;11285:58;11404:3;11393:9;11389:19;11376:33;11370:3;11363:5;11359:15;11352:58;10715:701;;;;:::o;11421:1090::-;11496:5;11544:6;11532:9;11527:3;11523:19;11519:32;11516:52;;;11564:1;11561;11554:12;11516:52;11597:2;11591:9;11639:4;11627:17;;-1:-1:-1;;;;;11659:34:131;;11695:22;;;11656:62;11653:88;;;11721:18;;:::i;:::-;11757:2;11750:22;11790:6;-1:-1:-1;11790:6:131;11820:42;11858:3;11847:9;11820:42;:::i;:::-;11812:6;11805:58;11898:49;11942:3;11931:9;11927:19;11898:49;:::i;:::-;11891:4;11883:6;11879:17;11872:76;12000:3;11989:9;11985:19;11972:33;12014:42;12048:7;12014:42;:::i;:::-;12084:2;12072:15;;12065:32;12132:61;12189:3;12183;12168:19;;12132:61;:::i;:::-;12125:4;12117:6;12113:17;12106:88;12228:61;12285:3;12278:4;12267:9;12263:20;12228:61;:::i;:::-;12222:3;12214:6;12210:16;12203:87;12342:3;12331:9;12327:19;12314:33;12356;12381:7;12356:33;:::i;:::-;12417:3;12405:16;;12398:33;12465:39;12499:3;12484:19;;12465:39;:::i;:::-;12459:3;12451:6;12447:16;12440:65;;11421:1090;;;;:::o;12516:644::-;12668:6;12676;12684;12737:3;12725:9;12716:7;12712:23;12708:33;12705:53;;;12754:1;12751;12744:12;12705:53;12793:9;12780:23;12812:31;12837:5;12812:31;:::i;:::-;12862:5;-1:-1:-1;12886:75:131;12953:7;12948:2;12933:18;;12886:75;:::i;:::-;12876:85;-1:-1:-1;13012:3:131;12997:19;;12984:33;-1:-1:-1;;;;;13029:30:131;;13026:50;;;13072:1;13069;13062:12;13026:50;13095:59;13146:7;13137:6;13126:9;13122:22;13095:59;:::i;:::-;13085:69;;;12516:644;;;;;:::o;13444:183::-;13504:4;-1:-1:-1;;;;;13526:30:131;;13523:56;;;13559:18;;:::i;:::-;-1:-1:-1;13604:1:131;13600:14;13616:4;13596:25;;13444:183::o;13632:737::-;13686:5;13739:3;13732:4;13724:6;13720:17;13716:27;13706:55;;13757:1;13754;13747:12;13706:55;13793:6;13780:20;13819:4;13843:60;13859:43;13899:2;13859:43;:::i;13843:60::-;13937:15;;;14023:1;14019:10;;;;14007:23;;14003:32;;;13968:12;;;;14047:15;;;14044:35;;;14075:1;14072;14065:12;14044:35;14111:2;14103:6;14099:15;14123:217;14139:6;14134:3;14131:15;14123:217;;;14219:3;14206:17;14236:31;14261:5;14236:31;:::i;:::-;14280:18;;14318:12;;;;14156;;14123:217;;;-1:-1:-1;14358:5:131;13632:737;-1:-1:-1;;;;;;13632:737:131:o;14374:974::-;14455:5;14503:6;14491:9;14486:3;14482:19;14478:32;14475:52;;;14523:1;14520;14513:12;14475:52;14545:22;;:::i;:::-;14536:31;;14590:42;14628:3;14617:9;14590:42;:::i;:::-;14583:5;14576:57;14667:49;14711:3;14700:9;14696:19;14667:49;:::i;:::-;14660:4;14653:5;14649:16;14642:75;14751:48;14794:3;14783:9;14779:19;14751:48;:::i;:::-;14744:4;14737:5;14733:16;14726:74;14834:61;14891:3;14885;14874:9;14870:19;14834:61;:::i;:::-;14827:4;14820:5;14816:16;14809:87;14929:60;14985:3;14979;14968:9;14964:19;14929:60;:::i;:::-;14923:3;14916:5;14912:15;14905:85;15023:39;15057:3;15046:9;15042:19;15023:39;:::i;:::-;15017:3;15010:5;15006:15;14999:64;15096:39;15130:3;15119:9;15115:19;15096:39;:::i;:::-;15090:3;15079:15;;15072:64;15187:3;15172:19;;15159:33;-1:-1:-1;;;;;15204:30:131;;15201:50;;;15247:1;15244;15237:12;15201:50;15284:57;15337:3;15328:6;15317:9;15313:22;15284:57;:::i;:::-;15278:3;15271:5;15267:15;15260:82;;14374:974;;;;:::o;15353:777::-;15505:6;15513;15521;15574:2;15562:9;15553:7;15549:23;15545:32;15542:52;;;15590:1;15587;15580:12;15542:52;15629:9;15616:23;15648:31;15673:5;15648:31;:::i;:::-;15698:5;-1:-1:-1;15754:2:131;15739:18;;15726:32;-1:-1:-1;;;;;15807:14:131;;;15804:34;;;15834:1;15831;15824:12;15804:34;15857:85;15934:7;15925:6;15914:9;15910:22;15857:85;:::i;:::-;15847:95;;15995:2;15984:9;15980:18;15967:32;15951:48;;16024:2;16014:8;16011:16;16008:36;;;16040:1;16037;16030:12;16008:36;;16063:61;16116:7;16105:8;16094:9;16090:24;16063:61;:::i;16808:919::-;16969:6;16977;16985;16993;17046:3;17034:9;17025:7;17021:23;17017:33;17014:53;;;17063:1;17060;17053:12;17014:53;17102:9;17089:23;17121:31;17146:5;17121:31;:::i;:::-;17171:5;-1:-1:-1;17228:2:131;17213:18;;17200:32;17241:33;17200:32;17241:33;:::i;:::-;17293:7;-1:-1:-1;17351:2:131;17336:18;;17323:32;-1:-1:-1;;;;;17404:14:131;;;17401:34;;;17431:1;17428;17421:12;17401:34;17454:85;17531:7;17522:6;17511:9;17507:22;17454:85;:::i;:::-;17444:95;;17592:2;17581:9;17577:18;17564:32;17548:48;;17621:2;17611:8;17608:16;17605:36;;;17637:1;17634;17627:12;17605:36;;17660:61;17713:7;17702:8;17691:9;17687:24;17660:61;:::i;:::-;17650:71;;;16808:919;;;;;;;:::o;18092:250::-;18177:1;18187:113;18201:6;18198:1;18195:13;18187:113;;;18277:11;;;18271:18;18258:11;;;18251:39;18223:2;18216:10;18187:113;;;-1:-1:-1;;18334:1:131;18316:16;;18309:27;18092:250::o;18347:271::-;18389:3;18427:5;18421:12;18454:6;18449:3;18442:19;18470:76;18539:6;18532:4;18527:3;18523:14;18516:4;18509:5;18505:16;18470:76;:::i;:::-;18600:2;18579:15;-1:-1:-1;;18575:29:131;18566:39;;;;18607:4;18562:50;;18347:271;-1:-1:-1;;18347:271:131:o;18623:220::-;18772:2;18761:9;18754:21;18735:4;18792:45;18833:2;18822:9;18818:18;18810:6;18792:45;:::i;19295:785::-;19456:6;19464;19472;19480;19533:3;19521:9;19512:7;19508:23;19504:33;19501:53;;;19550:1;19547;19540:12;19501:53;19589:9;19576:23;19608:31;19633:5;19608:31;:::i;:::-;19658:5;-1:-1:-1;19715:2:131;19700:18;;19687:32;19728:33;19687:32;19728:33;:::i;:::-;19780:7;-1:-1:-1;19806:75:131;19873:7;19868:2;19853:18;;19806:75;:::i;:::-;19796:85;-1:-1:-1;19932:3:131;19917:19;;19904:33;-1:-1:-1;;;;;19949:30:131;;19946:50;;;19992:1;19989;19982:12;19946:50;20015:59;20066:7;20057:6;20046:9;20042:22;20015:59;:::i;20085:127::-;20146:10;20141:3;20137:20;20134:1;20127:31;20177:4;20174:1;20167:15;20201:4;20198:1;20191:15;20217:168;20290:9;;;20321;;20338:15;;;20332:22;;20318:37;20308:71;;20359:18;;:::i;20390:127::-;20451:10;20446:3;20442:20;20439:1;20432:31;20482:4;20479:1;20472:15;20506:4;20503:1;20496:15;20522:277;20609:6;20662:2;20650:9;20641:7;20637:23;20633:32;20630:52;;;20678:1;20675;20668:12;20630:52;20710:9;20704:16;20729:40;20763:5;20729:40;:::i;20804:282::-;-1:-1:-1;;;;;21004:32:131;;;;20986:51;;21068:2;21053:18;;21046:34;20974:2;20959:18;;20804:282::o;21091:184::-;21161:6;21214:2;21202:9;21193:7;21189:23;21185:32;21182:52;;;21230:1;21227;21220:12;21182:52;-1:-1:-1;21253:16:131;;21091:184;-1:-1:-1;21091:184:131:o;21559:375::-;-1:-1:-1;;;;;21817:15:131;;;21799:34;;21869:15;;;;21864:2;21849:18;;21842:43;21916:2;21901:18;;21894:34;;;;21749:2;21734:18;;21559:375::o;21939:304::-;-1:-1:-1;;;;;22169:15:131;;;22151:34;;22221:15;;22216:2;22201:18;;22194:43;22101:2;22086:18;;21939:304::o;22248:217::-;22288:1;22314;22304:132;;22358:10;22353:3;22349:20;22346:1;22339:31;22393:4;22390:1;22383:15;22421:4;22418:1;22411:15;22304:132;-1:-1:-1;22450:9:131;;22248:217::o;22470:125::-;22535:9;;;22556:10;;;22553:36;;;22569:18;;:::i;22600:410::-;22802:2;22784:21;;;22841:2;22821:18;;;22814:30;22880:34;22875:2;22860:18;;22853:62;-1:-1:-1;;;22946:2:131;22931:18;;22924:44;23000:3;22985:19;;22600:410::o;23204:380::-;23283:1;23279:12;;;;23326;;;23347:61;;23401:4;23393:6;23389:17;23379:27;;23347:61;23454:2;23446:6;23443:14;23423:18;23420:38;23417:161;;23500:10;23495:3;23491:20;23488:1;23481:31;23535:4;23532:1;23525:15;23563:4;23560:1;23553:15;23417:161;;23204:380;;;:::o;23715:545::-;23817:2;23812:3;23809:11;23806:448;;;23853:1;23878:5;23874:2;23867:17;23923:4;23919:2;23909:19;23993:2;23981:10;23977:19;23974:1;23970:27;23964:4;23960:38;24029:4;24017:10;24014:20;24011:47;;;-1:-1:-1;24052:4:131;24011:47;24107:2;24102:3;24098:12;24095:1;24091:20;24085:4;24081:31;24071:41;;24162:82;24180:2;24173:5;24170:13;24162:82;;;24225:17;;;24206:1;24195:13;24162:82;;;24166:3;;;23715:545;;;:::o;24436:1352::-;24556:10;;-1:-1:-1;;;;;24578:30:131;;24575:56;;;24611:18;;:::i;:::-;24640:97;24730:6;24690:38;24722:4;24716:11;24690:38;:::i;:::-;24684:4;24640:97;:::i;:::-;24792:4;;24856:2;24845:14;;24873:1;24868:663;;;;25575:1;25592:6;25589:89;;;-1:-1:-1;25644:19:131;;;25638:26;25589:89;-1:-1:-1;;24393:1:131;24389:11;;;24385:24;24381:29;24371:40;24417:1;24413:11;;;24368:57;25691:81;;24838:944;;24868:663;23662:1;23655:14;;;23699:4;23686:18;;-1:-1:-1;;24904:20:131;;;25022:236;25036:7;25033:1;25030:14;25022:236;;;25125:19;;;25119:26;25104:42;;25217:27;;;;25185:1;25173:14;;;;25052:19;;25022:236;;;25026:3;25286:6;25277:7;25274:19;25271:201;;;25347:19;;;25341:26;-1:-1:-1;;25430:1:131;25426:14;;;25442:3;25422:24;25418:37;25414:42;25399:58;25384:74;;25271:201;-1:-1:-1;;;;;25518:1:131;25502:14;;;25498:22;25485:36;;-1:-1:-1;24436:1352:131:o;25793:251::-;25863:6;25916:2;25904:9;25895:7;25891:23;25887:32;25884:52;;;25932:1;25929;25922:12;25884:52;25964:9;25958:16;25983:31;26008:5;25983:31;:::i;26049:127::-;26110:10;26105:3;26101:20;26098:1;26091:31;26141:4;26138:1;26131:15;26165:4;26162:1;26155:15;26181:956;26276:6;26307:2;26350;26338:9;26329:7;26325:23;26321:32;26318:52;;;26366:1;26363;26356:12;26318:52;26393:16;;-1:-1:-1;;;;;26421:30:131;;26418:50;;;26464:1;26461;26454:12;26418:50;26487:22;;26540:4;26532:13;;26528:27;-1:-1:-1;26518:55:131;;26569:1;26566;26559:12;26518:55;26598:2;26592:9;26621:60;26637:43;26677:2;26637:43;:::i;26621:60::-;26715:15;;;26797:1;26793:10;;;;26785:19;;26781:28;;;26746:12;;;;26821:19;;;26818:39;;;26853:1;26850;26843:12;26818:39;26877:11;;;;26897:210;26913:6;26908:3;26905:15;26897:210;;;26986:3;26980:10;27003:31;27028:5;27003:31;:::i;:::-;27047:18;;26930:12;;;;27085;;;;26897:210;;27142:135;27181:3;27202:17;;;27199:43;;27222:18;;:::i;:::-;-1:-1:-1;27269:1:131;27258:13;;27142:135::o;27282:128::-;27349:9;;;27370:11;;;27367:37;;;27384:18;;:::i;27415:772::-;27465:3;27506:5;27500:12;27535:36;27561:9;27535:36;:::i;:::-;27580:19;;;27618:4;27641:1;27658:18;;;27685:146;;;;27845:1;27840:341;;;;27651:530;;27685:146;-1:-1:-1;;27727:24:131;;27713:12;;;27706:46;27799:14;;27792:22;27789:1;27785:30;27776:40;;27772:49;;;-1:-1:-1;27685:146:131;;27840:341;27871:5;27868:1;27861:16;27918:2;27915:1;27905:16;27943:1;27957:174;27971:6;27968:1;27965:13;27957:174;;;28058:14;;28040:11;;;28036:20;;28029:44;28101:16;;;;27986:10;;27957:174;;;28155:11;;28151:20;;;-1:-1:-1;;27651:530:131;;;;;;27415:772;;;;:::o;28192:252::-;28279:5;28273:12;28268:3;28261:25;28243:3;28332:4;28325:5;28321:16;28315:23;28370:4;28363;28358:3;28354:14;28347:28;28391:47;28432:4;28427:3;28423:14;28409:12;28391:47;:::i;28449:461::-;28502:3;28540:5;28534:12;28567:6;28562:3;28555:19;28593:4;28622:2;28617:3;28613:12;28606:19;;28659:2;28652:5;28648:14;28680:1;28690:195;28704:6;28701:1;28698:13;28690:195;;;28769:13;;-1:-1:-1;;;;;28765:39:131;28753:52;;28825:12;;;;28860:15;;;;28801:1;28719:9;28690:195;;;-1:-1:-1;28901:3:131;;28449:461;-1:-1:-1;;;;;28449:461:131:o;28915:804::-;29275:6;29264:9;29257:25;29318:3;29313:2;29302:9;29298:18;29291:31;29238:4;29345:54;29394:3;29383:9;29379:19;29371:6;29345:54;:::i;:::-;29447:9;29439:6;29435:22;29430:2;29419:9;29415:18;29408:50;29481:42;29516:6;29508;29481:42;:::i;:::-;-1:-1:-1;;;;;29559:32:131;;29554:2;29539:18;;29532:60;29629:22;;;29623:3;29608:19;;29601:51;29467:56;-1:-1:-1;29669:44:131;29467:56;29698:6;29669:44;:::i;:::-;29661:52;28915:804;-1:-1:-1;;;;;;;;28915:804:131:o;29913:500::-;30167:6;30156:9;30149:25;30210:2;30205;30194:9;30190:18;30183:30;30130:4;30236:53;30285:2;30274:9;30270:18;30262:6;30236:53;:::i;:::-;30337:9;30329:6;30325:22;30320:2;30309:9;30305:18;30298:50;30365:42;30400:6;30392;30365:42;:::i;31033:408::-;31235:2;31217:21;;;31274:2;31254:18;;;31247:30;-1:-1:-1;;;;;;;;;;;31308:2:131;31293:18;;31286:62;-1:-1:-1;;;31379:2:131;31364:18;;31357:42;31431:3;31416:19;;31033:408::o;31446:::-;31648:2;31630:21;;;31687:2;31667:18;;;31660:30;-1:-1:-1;;;;;;;;;;;31721:2:131;31706:18;;31699:62;-1:-1:-1;;;31792:2:131;31777:18;;31770:42;31844:3;31829:19;;31446:408::o;32176:384::-;-1:-1:-1;;;;;32434:15:131;;;32416:34;;32486:15;;;32481:2;32466:18;;32459:43;32538:15;;;32533:2;32518:18;;32511:43;32366:2;32351:18;;32176:384::o;32565:315::-;-1:-1:-1;;;;;32740:32:131;;32722:51;;32809:2;32804;32789:18;;32782:30;;;-1:-1:-1;;32829:45:131;;32855:18;;32847:6;32829:45;:::i;33726:324::-;-1:-1:-1;;;33956:24:131;;34005:1;33996:11;;33989:27;;;;34041:2;34032:12;;33726:324::o;34055:331::-;-1:-1:-1;;;34285:30:131;;34340:2;34331:12;;34324:28;;;;34377:2;34368:12;;34055:331::o;34644:127::-;34705:10;34700:3;34696:20;34693:1;34686:31;34736:4;34733:1;34726:15;34760:4;34757:1;34750:15;34776:1653;34868:6;34899:2;34942;34930:9;34921:7;34917:23;34913:32;34910:52;;;34958:1;34955;34948:12;34910:52;34985:16;;-1:-1:-1;;;;;35050:14:131;;;35047:34;;;35077:1;35074;35067:12;35047:34;35100:22;;;;35156:4;35138:16;;;35134:27;35131:47;;;35174:1;35171;35164:12;35131:47;35200:22;;:::i;:::-;35251:2;35245:9;35238:5;35231:24;35293:2;35289;35285:11;35279:18;35306:33;35331:7;35306:33;:::i;:::-;35355:14;;;35348:31;35417:2;35409:11;;35403:18;35430:33;35403:18;35430:33;:::i;:::-;35490:2;35479:14;;35472:31;35542:2;35534:11;;35528:18;35558:16;;;35555:36;;;35587:1;35584;35577:12;35555:36;35610:17;;35661:2;35643:16;;;35639:25;35636:45;;;35677:1;35674;35667:12;35636:45;35705:22;;:::i;:::-;35758:2;35752:9;35743:7;35736:26;35801:2;35797;35793:11;35787:18;35830:2;35820:8;35817:16;35814:36;;;35846:1;35843;35836:12;35814:36;35869:17;;;-1:-1:-1;35917:4:131;35909:13;;35905:27;-1:-1:-1;35895:55:131;;35946:1;35943;35936:12;35895:55;35975:2;35969:9;35959:19;;36000:49;36016:32;36045:2;36016:32;:::i;36000:49::-;36072:2;36065:5;36058:17;36112:7;36107:2;36102;36098;36094:11;36090:20;36087:33;36084:53;;;36133:1;36130;36123:12;36084:53;36146:67;36210:2;36205;36198:5;36194:14;36189:2;36185;36181:11;36146:67;:::i;:::-;36229:16;;;36222:31;;;;-1:-1:-1;36280:2:131;36269:14;;36262:31;;;;-1:-1:-1;36340:3:131;36332:12;;;36326:19;36309:15;;;36302:44;36393:3;36385:12;;;36379:19;36362:15;;;36355:44;36273:5;34776:1653;-1:-1:-1;;;34776:1653:131:o;36434:261::-;36514:5;36508:12;36503:3;36496:25;36570:4;36563:5;36559:16;36553:23;36546:4;36541:3;36537:14;36530:47;36626:4;36619:5;36615:16;36609:23;36602:4;36597:3;36593:14;36586:47;36682:4;36675:5;36671:16;36665:23;36658:4;36653:3;36649:14;36642:47;;;36434:261::o;36700:143::-;36784:1;36777:5;36774:12;36764:46;;36790:18;;:::i;:::-;36819;;36700:143::o;36848:142::-;36931:1;36924:5;36921:12;36911:46;;36937:18;;:::i;36995:437::-;37119:12;;-1:-1:-1;;;;;37115:21:131;;;37103:34;;37190:4;37179:16;;;37173:23;37169:32;;;37153:14;;;37146:56;37251:4;37240:16;;;37234:23;37218:14;;;37211:47;37307:4;37296:16;;;37290:23;37274:14;;;37267:47;37363:4;37352:16;;;37346:23;37330:14;;;37323:47;37083:3;37408:16;;;37402:23;37386:14;;37379:47;36995:437::o;37437:1197::-;37664:2;37653:9;37646:21;37676:61;37733:2;37722:9;37718:18;37709:6;37703:13;37676:61;:::i;:::-;37627:4;37784:2;37776:6;37772:15;37766:22;37797:63;37855:3;37844:9;37840:19;37826:12;37797:63;:::i;:::-;;37909:4;37901:6;37897:17;37891:24;37924:64;37983:3;37972:9;37968:19;37952:14;37924:64;:::i;:::-;;38049:4;38041:6;38037:17;38031:24;38025:31;38019:3;38008:9;38004:19;37997:60;38106:4;38098:6;38094:17;38088:24;38121:71;38187:3;38176:9;38172:19;38156:14;38121:71;:::i;:::-;;38241:3;38233:6;38229:16;38223:23;38255:55;38305:3;38294:9;38290:19;38274:14;38255:55;:::i;:::-;;38359:3;38351:6;38347:16;38341:23;38373:55;38423:3;38412:9;38408:19;38392:14;38373:55;:::i;:::-;-1:-1:-1;38477:3:131;38465:16;;38459:23;38501:6;38523:18;;;38516:30;38563:65;38623:3;38608:19;;38459:23;38563:65;:::i;38639:979::-;39064:6;39053:9;39046:25;39027:4;39107:1;39103;39098:3;39094:11;39090:19;39157:2;39149:6;39145:15;39140:2;39129:9;39125:18;39118:43;39197:3;39192:2;39181:9;39177:18;39170:31;39224:46;39265:3;39254:9;39250:19;39242:6;39224:46;:::i;:::-;39318:2;39310:6;39306:15;39301:2;39290:9;39286:18;39279:43;39359:6;39353:3;39342:9;39338:19;39331:35;39415:9;39407:6;39403:22;39397:3;39386:9;39382:19;39375:51;39449:42;39484:6;39476;39449:42;:::i;:::-;39435:56;;;39540:9;39532:6;39528:22;39522:3;39511:9;39507:19;39500:51;39568:44;39605:6;39597;39568:44;:::i;:::-;39560:52;38639:979;-1:-1:-1;;;;;;;;;;38639:979:131:o;39623:613::-;39898:25;;;-1:-1:-1;;;;;39997:15:131;;;39992:2;39977:18;;39970:43;40049:15;;;40044:2;40029:18;;40022:43;40101:15;;40096:2;40081:18;;40074:43;39950:3;40148;40133:19;;40126:32;;;39879:4;;40175:55;;40210:19;;40202:6;40175:55;:::i;40241:407::-;40443:2;40425:21;;;40482:2;40462:18;;;40455:30;40521:34;40516:2;40501:18;;40494:62;-1:-1:-1;;;40587:2:131;40572:18;;40565:41;40638:3;40623:19;;40241:407::o;40653:995::-;40843:4;40885:3;40874:9;40870:19;40862:27;;40898:52;40940:9;40931:6;40925:13;40898:52;:::i;:::-;40997:4;40989:6;40985:17;40979:24;41012:64;41070:4;41059:9;41055:20;41041:12;41012:64;:::i;:::-;;41125:4;41117:6;41113:17;41107:24;41140:65;41199:4;41188:9;41184:20;41168:14;41140:65;:::i;:::-;;41267:4;41259:6;41255:17;41249:24;41243:31;41236:4;41225:9;41221:20;41214:61;41324:4;41316:6;41312:17;41306:24;41339:72;41405:4;41394:9;41390:20;41374:14;41339:72;:::i;:::-;-1:-1:-1;41460:4:131;41448:17;;41442:24;-1:-1:-1;;;;;41544:23:131;;;41535:6;41520:22;;41513:55;41630:4;41618:17;;;41612:24;41608:33;;;41599:6;41584:22;;;41577:65;40653:995;:::o;43822:812::-;-1:-1:-1;;;44228:3:131;44221:38;44203:3;44288:6;44282:13;44304:75;44372:6;44367:2;44362:3;44358:12;44351:4;44343:6;44339:17;44304:75;:::i;:::-;-1:-1:-1;;;44438:2:131;44398:16;;;44430:11;;;44423:40;44488:13;;44510:76;44488:13;44572:2;44564:11;;44557:4;44545:17;;44510:76;:::i;:::-;44606:17;44625:2;44602:26;;43822:812;-1:-1:-1;;;;43822:812:131:o;44639:245::-;44706:6;44759:2;44747:9;44738:7;44734:23;44730:32;44727:52;;;44775:1;44772;44765:12;44727:52;44807:9;44801:16;44826:28;44848:5;44826:28;:::i;45921:136::-;45960:3;45988:5;45978:39;;45997:18;;:::i;:::-;-1:-1:-1;;;46033:18:131;;45921:136::o;46830:287::-;46959:3;46997:6;46991:13;47013:66;47072:6;47067:3;47060:4;47052:6;47048:17;47013:66;:::i;:::-;47095:16;;;;;46830:287;-1:-1:-1;;46830:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7917,"length":32},{"start":7984,"length":32},{"start":8235,"length":32},{"start":8302,"length":32},{"start":8640,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"579eb7e5","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"8659ffdd","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","initializeV2(address,address,address)":"2c3bb44a","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol\":\"RegistryCommunityFacet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol\":{\"keccak256\":\"0xdc719818c047c2661360f46596c4adc254b4e495b2b50cce5afeb321b9afc6ab\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://58bb478271901109763674e94bd24d5e64a812d6f0341fdfd5f95835a9669111\",\"dweb:/ipfs/QmaGXR2rY2xpYc4yyrbH5sd3125UVCrTrh3FJqKiQowads\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99\",\"dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"_interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol":"RegistryCommunityFacet"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol":{"keccak256":"0xdc719818c047c2661360f46596c4adc254b4e495b2b50cce5afeb321b9afc6ab","urls":["bzz-raw://58bb478271901109763674e94bd24d5e64a812d6f0341fdfd5f95835a9669111","dweb:/ipfs/QmaGXR2rY2xpYc4yyrbH5sd3125UVCrTrh3FJqKiQowads"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af","urls":["bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99","dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE"],"license":"MIT"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75245"},{"astId":70502,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)74978"},{"astId":70505,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"},{"astId":74029,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"322","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)74978":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75245":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol","id":74031,"exportedSymbols":{"Clone":[3002],"ERC1967Proxy":[55021],"LibDiamond":[74937],"ProxyOwnableUpgrader":[70199],"RegistryCommunityFacet":[74030],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:1528:113","nodes":[{"id":73942,"nodeType":"PragmaDirective","src":"42:24:113","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73944,"nodeType":"ImportDirective","src":"68:66:113","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"@src/diamonds/libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":74938,"symbolAliases":[{"foreign":{"id":73943,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74937,"src":"76:10:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73946,"nodeType":"ImportDirective","src":"136:88:113","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":73945,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"144:21:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73948,"nodeType":"ImportDirective","src":"225:67:113","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":73947,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"233:20:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73950,"nodeType":"ImportDirective","src":"293:84:113","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":73949,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"301:12:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73952,"nodeType":"ImportDirective","src":"378:65:113","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":73951,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"386:5:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74030,"nodeType":"ContractDefinition","src":"446:1123:113","nodes":[{"id":73993,"nodeType":"FunctionDefinition","src":"655:506:113","nodes":[],"body":{"id":73992,"nodeType":"Block","src":"818:343:113","nodes":[],"statements":[{"expression":{"arguments":[{"id":73969,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73956,"src":"847:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73968,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"828:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73970,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"828:26:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73971,"nodeType":"ExpressionStatement","src":"828:26:113"},{"expression":{"arguments":[{"id":73973,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73958,"src":"883:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73972,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"864:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73974,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"864:37:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73975,"nodeType":"ExpressionStatement","src":"864:37:113"},{"expression":{"arguments":[{"id":73977,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73960,"src":"930:24:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73976,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"911:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73978,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"911:44:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73979,"nodeType":"ExpressionStatement","src":"911:44:113"},{"expression":{"arguments":[{"id":73981,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73956,"src":"992:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73980,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"974:17:113","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73982,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"974:25:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73983,"nodeType":"ExpressionStatement","src":"974:25:113"},{"expression":{"id":73986,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73984,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"1018:16:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73985,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73958,"src":"1037:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1018:36:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73987,"nodeType":"ExpressionStatement","src":"1018:36:113"},{"expression":{"id":73990,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73988,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"1064:23:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73989,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73960,"src":"1090:24:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1064:50:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73991,"nodeType":"ExpressionStatement","src":"1064:50:113"}]},"functionSelector":"2c3bb44a","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":73963,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"805:1:113","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":73964,"kind":"modifierInvocation","modifierName":{"id":73962,"name":"reinitializer","nameLocations":["791:13:113"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"791:13:113"},"nodeType":"ModifierInvocation","src":"791:16:113"},{"id":73966,"kind":"modifierInvocation","modifierName":{"id":73965,"name":"onlyOwner","nameLocations":["808:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"808:9:113"},"nodeType":"ModifierInvocation","src":"808:9:113"}],"name":"initializeV2","nameLocation":"664:12:113","parameters":{"id":73961,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73956,"mutability":"mutable","name":"_owner","nameLocation":"694:6:113","nodeType":"VariableDeclaration","scope":73993,"src":"686:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73955,"name":"address","nodeType":"ElementaryTypeName","src":"686:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73958,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"718:17:113","nodeType":"VariableDeclaration","scope":73993,"src":"710:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73957,"name":"address","nodeType":"ElementaryTypeName","src":"710:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73960,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"753:24:113","nodeType":"VariableDeclaration","scope":73993,"src":"745:32:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73959,"name":"address","nodeType":"ElementaryTypeName","src":"745:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"676:107:113"},"returnParameters":{"id":73967,"nodeType":"ParameterList","parameters":[],"src":"818:0:113"},"scope":74030,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74002,"nodeType":"FunctionDefinition","src":"1171:93:113","nodes":[],"body":{"id":74001,"nodeType":"Block","src":"1235:29:113","nodes":[],"statements":[{"expression":{"hexValue":"302e31","id":73999,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1252:5:113","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cd160c72d102a6747abd189ac21d4a1f802e3fcc1bb8fc78cc4d558df0c7c21","typeString":"literal_string \"0.1\""},"value":"0.1"},"functionReturnParameters":73998,"id":74000,"nodeType":"Return","src":"1245:12:113"}]},"baseFunctions":[70440],"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"1180:7:113","overrides":{"id":73995,"nodeType":"OverrideSpecifier","overrides":[],"src":"1202:8:113"},"parameters":{"id":73994,"nodeType":"ParameterList","parameters":[],"src":"1187:2:113"},"returnParameters":{"id":73998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73997,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74002,"src":"1220:13:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":73996,"name":"string","nodeType":"ElementaryTypeName","src":"1220:6:113","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1219:15:113"},"scope":74030,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":74025,"nodeType":"FunctionDefinition","src":"1302:228:113","nodes":[],"body":{"id":74024,"nodeType":"Block","src":"1394:136:113","nodes":[],"statements":[{"assignments":[74014],"declarations":[{"constant":false,"id":74014,"mutability":"mutable","name":"ds","nameLocation":"1438:2:113","nodeType":"VariableDeclaration","scope":74024,"src":"1404:36:113","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage"},"typeName":{"id":74013,"nodeType":"UserDefinedTypeName","pathNode":{"id":74012,"name":"LibDiamond.DiamondStorage","nameLocations":["1404:10:113","1415:14:113"],"nodeType":"IdentifierPath","referencedDeclaration":74308,"src":"1404:25:113"},"referencedDeclaration":74308,"src":"1404:25:113","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage"}},"visibility":"internal"}],"id":74018,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":74015,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74937,"src":"1443:10:113","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_LibDiamond_$74937_$","typeString":"type(library LibDiamond)"}},"id":74016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1454:14:113","memberName":"diamondStorage","nodeType":"MemberAccess","referencedDeclaration":74320,"src":"1443:25:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_DiamondStorage_$74308_storage_ptr_$","typeString":"function () pure returns (struct LibDiamond.DiamondStorage storage pointer)"}},"id":74017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1443:27:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage storage pointer"}},"nodeType":"VariableDeclarationStatement","src":"1404:66:113"},{"expression":{"baseExpression":{"expression":{"id":74019,"name":"ds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74014,"src":"1487:2:113","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage storage pointer"}},"id":74020,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1490:19:113","memberName":"supportedInterfaces","nodeType":"MemberAccess","referencedDeclaration":74303,"src":"1487:22:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes4_$_t_bool_$","typeString":"mapping(bytes4 => bool)"}},"id":74022,"indexExpression":{"id":74021,"name":"_interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74004,"src":"1510:12:113","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1487:36:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":74009,"id":74023,"nodeType":"Return","src":"1480:43:113"}]},"baseFunctions":[52437],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"1311:17:113","overrides":{"id":74006,"nodeType":"OverrideSpecifier","overrides":[],"src":"1362:8:113"},"parameters":{"id":74005,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74004,"mutability":"mutable","name":"_interfaceId","nameLocation":"1336:12:113","nodeType":"VariableDeclaration","scope":74025,"src":"1329:19:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":74003,"name":"bytes4","nodeType":"ElementaryTypeName","src":"1329:6:113","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"1328:21:113"},"returnParameters":{"id":74009,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74008,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74025,"src":"1388:4:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74007,"name":"bool","nodeType":"ElementaryTypeName","src":"1388:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1387:6:113"},"scope":74030,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":74029,"nodeType":"VariableDeclaration","src":"1541:25:113","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"1561:5:113","scope":74030,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74026,"name":"uint256","nodeType":"ElementaryTypeName","src":"1541:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74028,"length":{"hexValue":"3530","id":74027,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1549:2:113","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1541:11:113","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73953,"name":"RegistryCommunityV0_1","nameLocations":["481:21:113"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"481:21:113"},"id":73954,"nodeType":"InheritanceSpecifier","src":"481:21:113"}],"canonicalName":"RegistryCommunityFacet","contractDependencies":[55021],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74030,72403,72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityFacet","nameLocation":"455:22:113","scope":74031,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":113} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json b/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json index b5681a28..e9a1093c 100644 --- a/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json +++ b/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161597d6200004d60003960008181611de101528181611e2401528181611f1f01528181611f6201526120c6015261597d6000f3fe6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bf565b62000cf7565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041eb565b62000d2f565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422d565b62000da5565b348015620003fd57600080fd5b50620003c96200040f3660046200426b565b62001128565b3480156200042257600080fd5b50620003c9620004343660046200426b565b62001140565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c9620004743660046200426b565b6200116d565b3480156200048757600080fd5b50620003c9620004993660046200422d565b62001182565b348015620004ac57600080fd5b506200037d620004be366004620041eb565b6200127c565b348015620004d157600080fd5b506200037d62001291565b348015620004e957600080fd5b5062000501620004fb3660046200428b565b62001396565b604051620003629190620042c7565b3480156200051d57600080fd5b506200037d6200052f3660046200426b565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042db565b620013d0565b3480156200058057600080fd5b50620003c962000592366004620041eb565b620013f7565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450f565b62001437565b348015620005e257600080fd5b50620003c962001af7565b348015620005fa57600080fd5b50620003c96200060c366004620042db565b62001d59565b3480156200061f57600080fd5b50620003c9620006313660046200426b565b62001dd7565b3480156200064457600080fd5b50620003c9620006563660046200426b565b62001ea8565b3480156200066957600080fd5b50620003566200067b3660046200426b565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422d565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e2366004620046a2565b62001f15565b348015620006f557600080fd5b506200070d62000707366004620048cc565b62001fd6565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b9565b3480156200075057600080fd5b50620003c962000762366004620041eb565b6200216a565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041eb565b620023b6565b348015620007bd57600080fd5b506200037d620007cf3660046200422d565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422d565b62002750565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a3565b3480156200087d57600080fd5b50620003c96200088f366004620041eb565b620028b9565b348015620008a257600080fd5b506200037d600080516020620058c183398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422d565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041eb565b62002955565b3480156200099557600080fd5b50620009d6620009a73660046200426b565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a13565b34801562000a3b57600080fd5b506200035662000a4d366004620042db565b62002aae565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab33660046200426b565b62002ad9565b34801562000ac657600080fd5b50620003c962000ad83660046200426b565b62002b23565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b50565b34801562000b2a57600080fd5b5062000b3562002b87565b6040516200036291906200498a565b34801562000b5157600080fd5b50620003c962002c1e565b34801562000b6957600080fd5b506200037d62002d28565b34801562000b8157600080fd5b50620003c962000b933660046200426b565b62002d3a565b34801562000ba657600080fd5b5062000b3562002d6f565b34801562000bbe57600080fd5b50620003c962000bd0366004620042db565b62002d7f565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499f565b62002da1565b34801562000c6657600080fd5b506200035662000c783660046200426b565b62002f2e565b34801562000c8b57600080fd5b50620003c962000c9d3660046200426b565b62002f4b565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b5062000b35604051806040016040528060038152602001620302e360ec1b81525081565b60006001600160e01b03198216637965db0b60e01b148062000d2957506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3962002fbc565b62000d48612710600a62004a34565b81111562000d695760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000daf62002ff9565b62000dba8262003054565b62000dc5816200307d565b62000dd081620030b8565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1957604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ecd919062004a64565b600381111562000ee15762000ee162004a4e565b0362000f665760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1890889060009060040162004a84565b6020604051808303816000875af115801562000f38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5e919062004a9d565b905062001062565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcf919062004a64565b600381111562000fe35762000fe362004a4e565b14620010625760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001019908890869060040162004a84565b6020604051808303816000875af115801562001039573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105f919062004a9d565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110e9087908790859062004ab7565b60405180910390a1505050620011246001606555565b5050565b6200113262002fbc565b6200113d81620030e7565b50565b6200114a62003145565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117762002fbc565b6200113d81620031a8565b6200118d8262003054565b6200119881620030b8565b620011a433826200323a565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011ec57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123e82826200326d565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200127092919062004adb565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012b1612710606462004a34565b60fc5460fb54620012c3919062004a34565b620012cf919062004af5565b90506000620012e2612710606462004a34565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001310903090600401620042c7565b602060405180830381865afa1580156200132e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001354919062004a9d565b60fb5462001363919062004a34565b6200136f919062004af5565b9050808260fb5462001382919062004b18565b6200138e919062004b18565b935050505090565b61010d6020528160005260406000208181548110620013b457600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013db826200127c565b620013e681620033a3565b620013f28383620033af565b505050565b6200140162002fbc565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d9a565b600054610100900460ff1615808015620014585750600054600160ff909116105b806200147d57506200146a3062003439565b1580156200147d575060005460ff166001145b620014e65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156200150a576000805461ff0019166101001790555b620015158262002d3a565b6200151f62003448565b620015296200347c565b62001545600080516020620058c18339815191526000620034a6565b620015548560200151620030b8565b62001564856101000151620030b8565b84516200157190620030b8565b620015808560a00151620030b8565b6060850151156200159a576200159a8560c00151620030b8565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f5576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff19169115159190911790556101208501516101089062001632908262004bbc565b506101608501516101099062001649908262004bbc565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016be90600080516020620058c183398151915290620033af565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001713573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001739919062004c88565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c55760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179f576200179f62004ca8565b60200260200101906001600160a01b031690816001600160a01b03168152505062001902565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa15801562001810573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200183a919081019062004cbe565b9050805160026200184c919062004b18565b6001600160401b0381111562001866576200186662004303565b60405190808252806020026020018201604052801562001890578160200160208202803683370190505b50915060005b8151811015620018ff57818181518110620018b557620018b562004ca8565b6020026020010151838281518110620018d257620018d262004ca8565b6001600160a01b039092166020928302919091019091015280620018f68162004d7c565b91505062001896565b50505b6101065481516001600160a01b03909116908290620019249060019062004d98565b8151811062001937576200193762004ca8565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001969919062004d98565b815181106200197c576200197c62004ca8565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cf9291610108913090889060040162004e9a565b6020604051808303816000875af1158015620019ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a15919062004a9d565b60fe55805162001a2e9061010f90602084019062004119565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aa0929091610108919062004eee565b60405180910390a150801562001af0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b0162002ff9565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b32612710606462004a34565b60fc5460fb5462001b44919062004a34565b62001b50919062004af5565b9050600062001b63612710606462004a34565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b91903090600401620042c7565b602060405180830381865afa15801562001baf573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd5919062004a9d565b60fb5462001be4919062004a34565b62001bf0919062004af5565b905062001bfd8562002ad9565b62001d475760028401805460ff1916600190811790915560fb5490850181905562001c579086903090849062001c3590879062004b18565b62001c41919062004b18565b610105546001600160a01b0316929190620034fb565b811562001c845760ff546101055462001c84916001600160a01b0391821691610100909104168462003557565b801562001d095762001d09836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001cce573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf4919062004c88565b610105546001600160a01b0316908362003557565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3e92919062004a84565b60405180910390a15b505050505062001d576001606555565b565b6001600160a01b038116331462001dcb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014dd565b62001124828262003579565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e225760405162461bcd60e51b8152600401620014dd9062004f1d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e56620035e3565b6001600160a01b03161462001e7f5760405162461bcd60e51b8152600401620014dd9062004f58565b62001e8a8162003600565b604080516000808252602082019092526200113d9183919062003642565b62001eb262002fbc565b62001ebd81620030b8565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d9a939216919062004adb565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f605760405162461bcd60e51b8152600401620014dd9062004f1d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f94620035e3565b6001600160a01b03161462001fbd5760405162461bcd60e51b8152600401620014dd9062004f58565b62001fc88262003600565b620011248282600162003642565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200c62002a13565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162002071906200417f565b6200207e92919062004f93565b604051809103906000f0801580156200209b573d6000803e3d6000fd5b509050620020ac8187878762002da1565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021565760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014dd565b506000805160206200590183398151915290565b6200217462002ff9565b6200217e620037ba565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021e257602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c3575b50505050509050600080600090505b82518110156200231d5782818151811062002210576200221062004ca8565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224792919062004a84565b6020604051808303816000875af115801562002267573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228d919062004a9d565b9150811562002308576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c957620022c962004ca8565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020600082825462002302919062004b18565b90915550505b80620023148162004d7c565b915050620021f1565b506101055462002339906001600160a01b0316843087620034fb565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236790849062004b18565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023a0908590879062004a84565b60405180910390a15050506200113d6001606555565b620023c062002ff9565b620023ca620037ba565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fe90869062004d98565b10156200241e57604051634e23e81760e11b815260040160405180910390fd5b6101055462002438906001600160a01b0316848662003557565b60005b8254811015620026e85760008382815481106200245c576200245c62004ca8565b6000918252602090912001546001600160a01b03169050620024868163f1801e6160e01b620037e3565b156200260c57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024bc9088908a9060040162004a84565b6020604051808303816000875af1158015620024dc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002502919062004a9d565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002543576200254362004ca8565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002597576040516311423e6360e31b81526004810185905260248101829052604401620014dd565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025ca57620025ca62004ca8565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906200260090849062004d98565b909155505050620026d2565b835484906200261e9060019062004d98565b8154811062002631576200263162004ca8565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002664576200266462004ca8565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a557620026a562004fb9565b600082815260209020810160001990810180546001600160a01b0319169055019055620026d281620030e7565b5080620026df8162004d7c565b9150506200243b565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271790849062004d98565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023a0908590879062004a84565b6200275a62002ff9565b6200276462002fbc565b60ff80541662002787576040516365b1ee3960e11b815260040160405180910390fd5b620027928262002ad9565b620027b057604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002801836200380b565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002856921690849062003557565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288f9392919062004ab7565b60405180910390a150620011246001606555565b620028ad62003145565b62001d57600062003920565b620028c362002fbc565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002939919081019062004fcf565b6020015190506200294a81620030b8565b6200112481620030e7565b6200295f62002fbc565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029ab573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d5919081019062004fcf565b602001519050620029e681620030b8565b62002a026001600160a01b03821663f1801e6160e01b620037e3565b1562001124576200112481620031a8565b60008062002a296033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4357919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002aa0575060408051601f3d908101601f1916820190925262002a9d9181019062004c88565b60015b62000d2957919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2d62003145565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7d576040516375e686b760e11b815260040160405180910390fd5b62001d5762003972565b610109805462002b979062004b2e565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc59062004b2e565b801562002c165780601f1062002bea5761010080835404028352916020019162002c16565b820191906000526020600020905b81548152906001019060200180831162002bf857829003601f168201915b505050505081565b62002c2862002ff9565b3362002c348162003054565b62002c3f816200380b565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cba91906200418d565b60208101516101055462002cdc916001600160a01b0390911690849062003557565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1392919062004a84565b60405180910390a1505062001d576001606555565b62002d37612710600a62004a34565b81565b600054610100900460ff1662002d645760405162461bcd60e51b8152600401620014dd9062005105565b6200113d8162003920565b610108805462002b979062004b2e565b62002d8a826200127c565b62002d9581620033a3565b620013f2838362003579565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dcc5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2a57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0b575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e62908b906020016200517a565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9a97969594939291906200525c565b6020604051808303816000875af115801562002eba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee0919062004a9d565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1b959493929190620052cd565b60405180910390a1505094509492505050565b600062000d29600080516020620058c18339815191528362002aae565b62002f5562003145565b6001600160a01b03811662002d645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014dd565b62002fd7600080516020620058c18339815191523362002aae565b62001d57573360405163fc4be72f60e01b8152600401620014dd9190620042c7565b6002606554036200304d5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014dd565b6002606555565b6200305f8162002ad9565b6200113d57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113d576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113d576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030f281620030b8565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d9a908390620042c7565b336200315062002a13565b6001600160a01b03161462001d575760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014dd565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e4576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d9a908390620042c7565b806001600160a01b0316826001600160a01b031614620011245760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339d57826001600160a01b0316828281548110620032b157620032b162004ca8565b6000918252602090912001546001600160a01b031603620033885781548290620032de9060019062004d98565b81548110620032f157620032f162004ca8565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003324576200332462004ca8565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003365576200336562004fb9565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033948162004d7c565b91505062003288565b50505050565b6200113d8133620039d6565b620033bb828262002aae565b6200112457600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620034725760405162461bcd60e51b8152600401620014dd9062005105565b62001d5762003a3a565b600054610100900460ff1662001d575760405162461bcd60e51b8152600401620014dd9062005105565b6000620034b3836200127c565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339d846323b872dd60e01b8585856040516024016200351f9392919062004ab7565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a64565b620013f28363a9059cbb60e01b84846040516024016200351f92919062004a84565b62003585828262002aae565b156200112457600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062005901833981519152546001600160a01b031690565b336200360b62002a13565b6001600160a01b0316146200113d57336200362562002a13565b60405163163678e960e01b8152600401620014dd92919062004adb565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367857620013f28362003b40565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d5575060408051601f3d908101601f19168201909252620036d29181019062004a9d565b60015b6200373a5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014dd565b600080516020620059018339815191528114620037ac5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014dd565b50620013f283838362003bdf565b620037c53362002ad9565b62001d5757604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037f08362003c0a565b801562003804575062003804838362003c42565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003859575b5050505050905060005b8151811015620013f257818181518110620038a157620038a162004ca8565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d69190620042c7565b600060405180830381600087803b158015620038f157600080fd5b505af115801562003906573d6000803e3d6000fd5b505050508080620039179062004d7c565b91505062003882565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039cc90600090620042c7565b60405180910390a1565b620039e2828262002aae565b6200112457620039f28162003ccd565b620039ff83602062003ce0565b60405160200162003a1292919062005309565b60408051601f198184030181529082905262461bcd60e51b8252620014dd916004016200498a565b600054610100900460ff16620030e05760405162461bcd60e51b8152600401620014dd9062005105565b600062003abb826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e999092919063ffffffff16565b905080516000148062003adf57508080602001905181019062003adf91906200537c565b620013f25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014dd565b62003b4b8162003439565b62003baf5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014dd565b6000805160206200590183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003bea8362003eb2565b60008251118062003bf85750805b15620013f2576200339d838362003ef4565b600062003c1f826301ffc9a760e01b62003c42565b801562000d29575062003c3b826001600160e01b031962003c42565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb5575060208210155b801562003cc25750600081115b979650505050505050565b606062000d296001600160a01b03831660145b6060600062003cf183600262004a34565b62003cfe90600262004b18565b6001600160401b0381111562003d185762003d1862004303565b6040519080825280601f01601f19166020018201604052801562003d43576020820181803683370190505b509050600360fc1b8160008151811062003d615762003d6162004ca8565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d935762003d9362004ca8565b60200101906001600160f81b031916908160001a905350600062003db984600262004a34565b62003dc690600162004b18565b90505b600181111562003e48576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfe5762003dfe62004ca8565b1a60f81b82828151811062003e175762003e1762004ca8565b60200101906001600160f81b031916908160001a90535060049490941c9362003e40816200539c565b905062003dc9565b508315620038045760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014dd565b606062003eaa848460008562003f1c565b949350505050565b62003ebd8162003b40565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620038048383604051806060016040528060278152602001620059216027913962003ff4565b60608247101562003f7f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014dd565b600080866001600160a01b0316858760405162003f9d9190620053b6565b60006040518083038185875af1925050503d806000811462003fdc576040519150601f19603f3d011682016040523d82523d6000602084013e62003fe1565b606091505b509150915062003cc28783838762004072565b6060600080856001600160a01b031685604051620040139190620053b6565b600060405180830381855af49150503d806000811462004050576040519150601f19603f3d011682016040523d82523d6000602084013e62004055565b606091505b5091509150620040688683838762004072565b9695505050505050565b60608315620040e6578251600003620040de57620040908562003439565b620040de5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014dd565b508162003eaa565b62003eaa8383815115620040fd5781518083602001fd5b8060405162461bcd60e51b8152600401620014dd91906200498a565b82805482825590600052602060002090810192821562004171579160200282015b828111156200417157825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200413a565b5062002aaa929150620041a8565b6104ec80620053d583390190565b50805460008255906000526020600020908101906200113d91905b5b8082111562002aaa5760008155600101620041a9565b600060208284031215620041d257600080fd5b81356001600160e01b0319811681146200380457600080fd5b600060208284031215620041fe57600080fd5b5035919050565b6001600160a01b03811681146200113d57600080fd5b8035620042288162004205565b919050565b600080604083850312156200424157600080fd5b82356200424e8162004205565b91506020830135620042608162004205565b809150509250929050565b6000602082840312156200427e57600080fd5b8135620038048162004205565b600080604083850312156200429f57600080fd5b8235620042ac8162004205565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ef57600080fd5b823591506020830135620042608162004205565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433e576200433e62004303565b60405290565b60405161018081016001600160401b03811182821017156200433e576200433e62004303565b60405160c081016001600160401b03811182821017156200433e576200433e62004303565b60405160e081016001600160401b03811182821017156200433e576200433e62004303565b604051608081016001600160401b03811182821017156200433e576200433e62004303565b604051601f8201601f191681016001600160401b038111828210171562004404576200440462004303565b604052919050565b60006001600160401b0382111562004428576200442862004303565b50601f01601f191660200190565b60006200444d62004447846200440c565b620043d9565b90508281528383830111156200446257600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448b57600080fd5b620038048383356020850162004436565b600060408284031215620044af57600080fd5b620044b962004319565b82358152905060208201356001600160401b03811115620044d957600080fd5b620044e78482850162004479565b60208301525092915050565b80151581146200113d57600080fd5b80356200422881620044f3565b600080600080608085870312156200452657600080fd5b84356001600160401b03808211156200453e57600080fd5b9086019061018082890312156200455457600080fd5b6200455e62004344565b62004569836200421b565b815262004579602084016200421b565b6020820152604083013560408201526060830135606082015260808301356080820152620045aa60a084016200421b565b60a0820152620045bd60c084016200421b565b60c082015260e083013582811115620045d557600080fd5b620045e38a8286016200449c565b60e083015250610100620045f98185016200421b565b9082015261012083810135838111156200461257600080fd5b620046208b82870162004479565b8284015250506101406200463681850162004502565b9082015261016083810135838111156200464f57600080fd5b6200465d8b82870162004479565b82840152505080965050505062004677602086016200421b565b925062004687604086016200421b565b915062004697606086016200421b565b905092959194509250565b60008060408385031215620046b657600080fd5b8235620046c38162004205565b915060208301356001600160401b03811115620046df57600080fd5b8301601f81018513620046f157600080fd5b620047028582356020840162004436565b9150509250929050565b8035600381106200422857600080fd5b600481106200113d57600080fd5b803562004228816200471c565b6000602082840312156200474a57600080fd5b604051602081016001600160401b03811182821017156200476f576200476f62004303565b6040529135825250919050565b600060c082840312156200478f57600080fd5b620047996200436a565b90508135620047a88162004205565b81526020820135620047ba8162004205565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480457600080fd5b6200480e6200438f565b915060808112156200481f57600080fd5b506200482a620043b4565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485e608083016200470c565b60208201526200487160a083016200472a565b6040820152620048858360c0840162004737565b6060820152620048998360e084016200477c565b6080820152620048ad6101a083016200421b565b60a0820152620048c16101c083016200421b565b60c082015292915050565b60008060006102208486031215620048e357600080fd5b8335620048f08162004205565b9250620049018560208601620047ef565b91506102008401356001600160401b038111156200491e57600080fd5b6200492c868287016200449c565b9150509250925092565b60005b838110156200495357818101518382015260200162004939565b50506000910152565b600081518084526200497681602086016020860162004936565b601f01601f19169290920160200192915050565b6020815260006200380460208301846200495c565b6000806000806102408587031215620049b757600080fd5b8435620049c48162004205565b93506020850135620049d68162004205565b9250620049e78660408701620047ef565b91506102208501356001600160401b0381111562004a0457600080fd5b62004a12878288016200449c565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d295762000d2962004a1e565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7757600080fd5b815162003804816200471c565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004ab057600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1357634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d295762000d2962004a1e565b600181811c9082168062004b4357607f821691505b60208210810362004b6457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013f257600081815260208120601f850160051c8101602086101562004b935750805b601f850160051c820191505b8181101562004bb45782815560010162004b9f565b505050505050565b81516001600160401b0381111562004bd85762004bd862004303565b62004bf08162004be9845462004b2e565b8462004b6a565b602080601f83116001811462004c28576000841562004c0f5750858301515b600019600386901b1c1916600185901b17855562004bb4565b600085815260208120601f198616915b8281101562004c595788860151825594840194600190910190840162004c38565b508582101562004c785787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9b57600080fd5b8151620038048162004205565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004cd257600080fd5b82516001600160401b038082111562004cea57600080fd5b818501915085601f83011262004cff57600080fd5b81518181111562004d145762004d1462004303565b8060051b915062004d27848301620043d9565b818152918301840191848101908884111562004d4257600080fd5b938501935b8385101562004d70578451925062004d5f8362004205565b828252938501939085019062004d47565b98975050505050505050565b60006001820162004d915762004d9162004a1e565b5060010190565b8181038181111562000d295762000d2962004a1e565b6000815462004dbd8162004b2e565b80855260206001838116801562004ddd576001811462004df85762004e28565b60ff1985168884015283151560051b88018301955062004e28565b866000528260002060005b8581101562004e205781548a820186015290830190840162004e03565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003eaa60408501826200495c565b600081518084526020808501945080840160005b8381101562004e8f5781516001600160a01b03168752958201959082019060010162004e68565b509495945050505050565b85815260a06020820152600062004eb560a083018762004dae565b828103604084015262004ec9818762004e33565b6001600160a01b03861660608501528381036080850152905062004d70818562004e54565b83815260606020820152600062004f09606083018562004dae565b828103604084015262004068818562004e33565b6020808252602c90820152600080516020620058e183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058e183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003eaa908301846200495c565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe357600080fd5b82516001600160401b038082111562004ffb57600080fd5b9084019060c082870312156200501057600080fd5b6200501a6200436a565b82518152838301516200502d8162004205565b818501526040830151620050418162004205565b60408201526060830151828111156200505957600080fd5b8301604081890312156200506c57600080fd5b6200507662004319565b8151815285820151848111156200508c57600080fd5b82019350601f84018913620050a057600080fd5b83519150620050b362004447836200440c565b8281528987848701011115620050c857600080fd5b620050d98388830189880162004936565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005163576200516362004a4e565b9052565b6004811062005163576200516362004a4e565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051bc608084018262005150565b506040830151620051d160a084018262005167565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523f6101a0840182620042ba565b5060c0830151620052556101c0840182620042ba565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528660e08401896200495c565b818816606085015286608085015283810360a0850152620052a8818762004e33565b91505082810360c0840152620052bf818562004e54565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cc29083018462004e33565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533d81601785016020880162004936565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200537081602884016020880162004936565b01602801949350505050565b6000602082840312156200538f57600080fd5b81516200380481620044f3565b600081620053ae57620053ae62004a1e565b506000190190565b60008251620053ca81846020870162004936565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220034884d1bfa2a70a12f4920b27af543b9251f0f29311755279fbfe124bd748dc64736f6c63430008130033","sourceMap":"2850:23176:107:-:0;;;1088:4:64;1045:48;;2850:23176:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bf565b62000cf7565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041eb565b62000d2f565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422d565b62000da5565b348015620003fd57600080fd5b50620003c96200040f3660046200426b565b62001128565b3480156200042257600080fd5b50620003c9620004343660046200426b565b62001140565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c9620004743660046200426b565b6200116d565b3480156200048757600080fd5b50620003c9620004993660046200422d565b62001182565b348015620004ac57600080fd5b506200037d620004be366004620041eb565b6200127c565b348015620004d157600080fd5b506200037d62001291565b348015620004e957600080fd5b5062000501620004fb3660046200428b565b62001396565b604051620003629190620042c7565b3480156200051d57600080fd5b506200037d6200052f3660046200426b565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042db565b620013d0565b3480156200058057600080fd5b50620003c962000592366004620041eb565b620013f7565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450f565b62001437565b348015620005e257600080fd5b50620003c962001af7565b348015620005fa57600080fd5b50620003c96200060c366004620042db565b62001d59565b3480156200061f57600080fd5b50620003c9620006313660046200426b565b62001dd7565b3480156200064457600080fd5b50620003c9620006563660046200426b565b62001ea8565b3480156200066957600080fd5b50620003566200067b3660046200426b565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422d565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e2366004620046a2565b62001f15565b348015620006f557600080fd5b506200070d62000707366004620048cc565b62001fd6565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b9565b3480156200075057600080fd5b50620003c962000762366004620041eb565b6200216a565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041eb565b620023b6565b348015620007bd57600080fd5b506200037d620007cf3660046200422d565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422d565b62002750565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a3565b3480156200087d57600080fd5b50620003c96200088f366004620041eb565b620028b9565b348015620008a257600080fd5b506200037d600080516020620058c183398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422d565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041eb565b62002955565b3480156200099557600080fd5b50620009d6620009a73660046200426b565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a13565b34801562000a3b57600080fd5b506200035662000a4d366004620042db565b62002aae565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab33660046200426b565b62002ad9565b34801562000ac657600080fd5b50620003c962000ad83660046200426b565b62002b23565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b50565b34801562000b2a57600080fd5b5062000b3562002b87565b6040516200036291906200498a565b34801562000b5157600080fd5b50620003c962002c1e565b34801562000b6957600080fd5b506200037d62002d28565b34801562000b8157600080fd5b50620003c962000b933660046200426b565b62002d3a565b34801562000ba657600080fd5b5062000b3562002d6f565b34801562000bbe57600080fd5b50620003c962000bd0366004620042db565b62002d7f565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499f565b62002da1565b34801562000c6657600080fd5b506200035662000c783660046200426b565b62002f2e565b34801562000c8b57600080fd5b50620003c962000c9d3660046200426b565b62002f4b565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b5062000b35604051806040016040528060038152602001620302e360ec1b81525081565b60006001600160e01b03198216637965db0b60e01b148062000d2957506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3962002fbc565b62000d48612710600a62004a34565b81111562000d695760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000daf62002ff9565b62000dba8262003054565b62000dc5816200307d565b62000dd081620030b8565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1957604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ecd919062004a64565b600381111562000ee15762000ee162004a4e565b0362000f665760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1890889060009060040162004a84565b6020604051808303816000875af115801562000f38573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5e919062004a9d565b905062001062565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcf919062004a64565b600381111562000fe35762000fe362004a4e565b14620010625760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001019908890869060040162004a84565b6020604051808303816000875af115801562001039573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105f919062004a9d565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110e9087908790859062004ab7565b60405180910390a1505050620011246001606555565b5050565b6200113262002fbc565b6200113d81620030e7565b50565b6200114a62003145565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117762002fbc565b6200113d81620031a8565b6200118d8262003054565b6200119881620030b8565b620011a433826200323a565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011ec57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123e82826200326d565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200127092919062004adb565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012b1612710606462004a34565b60fc5460fb54620012c3919062004a34565b620012cf919062004af5565b90506000620012e2612710606462004a34565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001310903090600401620042c7565b602060405180830381865afa1580156200132e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001354919062004a9d565b60fb5462001363919062004a34565b6200136f919062004af5565b9050808260fb5462001382919062004b18565b6200138e919062004b18565b935050505090565b61010d6020528160005260406000208181548110620013b457600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013db826200127c565b620013e681620033a3565b620013f28383620033af565b505050565b6200140162002fbc565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d9a565b600054610100900460ff1615808015620014585750600054600160ff909116105b806200147d57506200146a3062003439565b1580156200147d575060005460ff166001145b620014e65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156200150a576000805461ff0019166101001790555b620015158262002d3a565b6200151f62003448565b620015296200347c565b62001545600080516020620058c18339815191526000620034a6565b620015548560200151620030b8565b62001564856101000151620030b8565b84516200157190620030b8565b620015808560a00151620030b8565b6060850151156200159a576200159a8560c00151620030b8565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f5576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff19169115159190911790556101208501516101089062001632908262004bbc565b506101608501516101099062001649908262004bbc565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016be90600080516020620058c183398151915290620033af565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001713573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001739919062004c88565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c55760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179f576200179f62004ca8565b60200260200101906001600160a01b031690816001600160a01b03168152505062001902565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa15801562001810573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200183a919081019062004cbe565b9050805160026200184c919062004b18565b6001600160401b0381111562001866576200186662004303565b60405190808252806020026020018201604052801562001890578160200160208202803683370190505b50915060005b8151811015620018ff57818181518110620018b557620018b562004ca8565b6020026020010151838281518110620018d257620018d262004ca8565b6001600160a01b039092166020928302919091019091015280620018f68162004d7c565b91505062001896565b50505b6101065481516001600160a01b03909116908290620019249060019062004d98565b8151811062001937576200193762004ca8565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001969919062004d98565b815181106200197c576200197c62004ca8565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cf9291610108913090889060040162004e9a565b6020604051808303816000875af1158015620019ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a15919062004a9d565b60fe55805162001a2e9061010f90602084019062004119565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aa0929091610108919062004eee565b60405180910390a150801562001af0576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b0162002ff9565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b32612710606462004a34565b60fc5460fb5462001b44919062004a34565b62001b50919062004af5565b9050600062001b63612710606462004a34565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b91903090600401620042c7565b602060405180830381865afa15801562001baf573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd5919062004a9d565b60fb5462001be4919062004a34565b62001bf0919062004af5565b905062001bfd8562002ad9565b62001d475760028401805460ff1916600190811790915560fb5490850181905562001c579086903090849062001c3590879062004b18565b62001c41919062004b18565b610105546001600160a01b0316929190620034fb565b811562001c845760ff546101055462001c84916001600160a01b0391821691610100909104168462003557565b801562001d095762001d09836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001cce573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf4919062004c88565b610105546001600160a01b0316908362003557565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3e92919062004a84565b60405180910390a15b505050505062001d576001606555565b565b6001600160a01b038116331462001dcb5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014dd565b62001124828262003579565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e225760405162461bcd60e51b8152600401620014dd9062004f1d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e56620035e3565b6001600160a01b03161462001e7f5760405162461bcd60e51b8152600401620014dd9062004f58565b62001e8a8162003600565b604080516000808252602082019092526200113d9183919062003642565b62001eb262002fbc565b62001ebd81620030b8565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d9a939216919062004adb565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f605760405162461bcd60e51b8152600401620014dd9062004f1d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f94620035e3565b6001600160a01b03161462001fbd5760405162461bcd60e51b8152600401620014dd9062004f58565b62001fc88262003600565b620011248282600162003642565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200c62002a13565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162002071906200417f565b6200207e92919062004f93565b604051809103906000f0801580156200209b573d6000803e3d6000fd5b509050620020ac8187878762002da1565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021565760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014dd565b506000805160206200590183398151915290565b6200217462002ff9565b6200217e620037ba565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021e257602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c3575b50505050509050600080600090505b82518110156200231d5782818151811062002210576200221062004ca8565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224792919062004a84565b6020604051808303816000875af115801562002267573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228d919062004a9d565b9150811562002308576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c957620022c962004ca8565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020600082825462002302919062004b18565b90915550505b80620023148162004d7c565b915050620021f1565b506101055462002339906001600160a01b0316843087620034fb565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236790849062004b18565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023a0908590879062004a84565b60405180910390a15050506200113d6001606555565b620023c062002ff9565b620023ca620037ba565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fe90869062004d98565b10156200241e57604051634e23e81760e11b815260040160405180910390fd5b6101055462002438906001600160a01b0316848662003557565b60005b8254811015620026e85760008382815481106200245c576200245c62004ca8565b6000918252602090912001546001600160a01b03169050620024868163f1801e6160e01b620037e3565b156200260c57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024bc9088908a9060040162004a84565b6020604051808303816000875af1158015620024dc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002502919062004a9d565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002543576200254362004ca8565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002597576040516311423e6360e31b81526004810185905260248101829052604401620014dd565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025ca57620025ca62004ca8565b60009182526020808320909101546001600160a01b03168352820192909252604001812080549091906200260090849062004d98565b909155505050620026d2565b835484906200261e9060019062004d98565b8154811062002631576200263162004ca8565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002664576200266462004ca8565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a557620026a562004fb9565b600082815260209020810160001990810180546001600160a01b0319169055019055620026d281620030e7565b5080620026df8162004d7c565b9150506200243b565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271790849062004d98565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023a0908590879062004a84565b6200275a62002ff9565b6200276462002fbc565b60ff80541662002787576040516365b1ee3960e11b815260040160405180910390fd5b620027928262002ad9565b620027b057604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002801836200380b565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002856921690849062003557565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288f9392919062004ab7565b60405180910390a150620011246001606555565b620028ad62003145565b62001d57600062003920565b620028c362002fbc565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002939919081019062004fcf565b6020015190506200294a81620030b8565b6200112481620030e7565b6200295f62002fbc565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029ab573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d5919081019062004fcf565b602001519050620029e681620030b8565b62002a026001600160a01b03821663f1801e6160e01b620037e3565b1562001124576200112481620031a8565b60008062002a296033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4357919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002aa0575060408051601f3d908101601f1916820190925262002a9d9181019062004c88565b60015b62000d2957919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2d62003145565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7d576040516375e686b760e11b815260040160405180910390fd5b62001d5762003972565b610109805462002b979062004b2e565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc59062004b2e565b801562002c165780601f1062002bea5761010080835404028352916020019162002c16565b820191906000526020600020905b81548152906001019060200180831162002bf857829003601f168201915b505050505081565b62002c2862002ff9565b3362002c348162003054565b62002c3f816200380b565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cba91906200418d565b60208101516101055462002cdc916001600160a01b0390911690849062003557565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1392919062004a84565b60405180910390a1505062001d576001606555565b62002d37612710600a62004a34565b81565b600054610100900460ff1662002d645760405162461bcd60e51b8152600401620014dd9062005105565b6200113d8162003920565b610108805462002b979062004b2e565b62002d8a826200127c565b62002d9581620033a3565b620013f2838362003579565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dcc5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2a57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0b575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e62908b906020016200517a565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9a97969594939291906200525c565b6020604051808303816000875af115801562002eba573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee0919062004a9d565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1b959493929190620052cd565b60405180910390a1505094509492505050565b600062000d29600080516020620058c18339815191528362002aae565b62002f5562003145565b6001600160a01b03811662002d645760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014dd565b62002fd7600080516020620058c18339815191523362002aae565b62001d57573360405163fc4be72f60e01b8152600401620014dd9190620042c7565b6002606554036200304d5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014dd565b6002606555565b6200305f8162002ad9565b6200113d57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113d576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113d576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030f281620030b8565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d9a908390620042c7565b336200315062002a13565b6001600160a01b03161462001d575760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014dd565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e4576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d9a908390620042c7565b806001600160a01b0316826001600160a01b031614620011245760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339d57826001600160a01b0316828281548110620032b157620032b162004ca8565b6000918252602090912001546001600160a01b031603620033885781548290620032de9060019062004d98565b81548110620032f157620032f162004ca8565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003324576200332462004ca8565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003365576200336562004fb9565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033948162004d7c565b91505062003288565b50505050565b6200113d8133620039d6565b620033bb828262002aae565b6200112457600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f53390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620034725760405162461bcd60e51b8152600401620014dd9062005105565b62001d5762003a3a565b600054610100900460ff1662001d575760405162461bcd60e51b8152600401620014dd9062005105565b6000620034b3836200127c565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339d846323b872dd60e01b8585856040516024016200351f9392919062004ab7565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a64565b620013f28363a9059cbb60e01b84846040516024016200351f92919062004a84565b62003585828262002aae565b156200112457600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062005901833981519152546001600160a01b031690565b336200360b62002a13565b6001600160a01b0316146200113d57336200362562002a13565b60405163163678e960e01b8152600401620014dd92919062004adb565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367857620013f28362003b40565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d5575060408051601f3d908101601f19168201909252620036d29181019062004a9d565b60015b6200373a5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014dd565b600080516020620059018339815191528114620037ac5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014dd565b50620013f283838362003bdf565b620037c53362002ad9565b62001d5757604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037f08362003c0a565b801562003804575062003804838362003c42565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003859575b5050505050905060005b8151811015620013f257818181518110620038a157620038a162004ca8565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d69190620042c7565b600060405180830381600087803b158015620038f157600080fd5b505af115801562003906573d6000803e3d6000fd5b505050508080620039179062004d7c565b91505062003882565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039cc90600090620042c7565b60405180910390a1565b620039e2828262002aae565b6200112457620039f28162003ccd565b620039ff83602062003ce0565b60405160200162003a1292919062005309565b60408051601f198184030181529082905262461bcd60e51b8252620014dd916004016200498a565b600054610100900460ff16620030e05760405162461bcd60e51b8152600401620014dd9062005105565b600062003abb826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e999092919063ffffffff16565b905080516000148062003adf57508080602001905181019062003adf91906200537c565b620013f25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014dd565b62003b4b8162003439565b62003baf5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014dd565b6000805160206200590183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003bea8362003eb2565b60008251118062003bf85750805b15620013f2576200339d838362003ef4565b600062003c1f826301ffc9a760e01b62003c42565b801562000d29575062003c3b826001600160e01b031962003c42565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb5575060208210155b801562003cc25750600081115b979650505050505050565b606062000d296001600160a01b03831660145b6060600062003cf183600262004a34565b62003cfe90600262004b18565b6001600160401b0381111562003d185762003d1862004303565b6040519080825280601f01601f19166020018201604052801562003d43576020820181803683370190505b509050600360fc1b8160008151811062003d615762003d6162004ca8565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d935762003d9362004ca8565b60200101906001600160f81b031916908160001a905350600062003db984600262004a34565b62003dc690600162004b18565b90505b600181111562003e48576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfe5762003dfe62004ca8565b1a60f81b82828151811062003e175762003e1762004ca8565b60200101906001600160f81b031916908160001a90535060049490941c9362003e40816200539c565b905062003dc9565b508315620038045760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014dd565b606062003eaa848460008562003f1c565b949350505050565b62003ebd8162003b40565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620038048383604051806060016040528060278152602001620059216027913962003ff4565b60608247101562003f7f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014dd565b600080866001600160a01b0316858760405162003f9d9190620053b6565b60006040518083038185875af1925050503d806000811462003fdc576040519150601f19603f3d011682016040523d82523d6000602084013e62003fe1565b606091505b509150915062003cc28783838762004072565b6060600080856001600160a01b031685604051620040139190620053b6565b600060405180830381855af49150503d806000811462004050576040519150601f19603f3d011682016040523d82523d6000602084013e62004055565b606091505b5091509150620040688683838762004072565b9695505050505050565b60608315620040e6578251600003620040de57620040908562003439565b620040de5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014dd565b508162003eaa565b62003eaa8383815115620040fd5781518083602001fd5b8060405162461bcd60e51b8152600401620014dd91906200498a565b82805482825590600052602060002090810192821562004171579160200282015b828111156200417157825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200413a565b5062002aaa929150620041a8565b6104ec80620053d583390190565b50805460008255906000526020600020908101906200113d91905b5b8082111562002aaa5760008155600101620041a9565b600060208284031215620041d257600080fd5b81356001600160e01b0319811681146200380457600080fd5b600060208284031215620041fe57600080fd5b5035919050565b6001600160a01b03811681146200113d57600080fd5b8035620042288162004205565b919050565b600080604083850312156200424157600080fd5b82356200424e8162004205565b91506020830135620042608162004205565b809150509250929050565b6000602082840312156200427e57600080fd5b8135620038048162004205565b600080604083850312156200429f57600080fd5b8235620042ac8162004205565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ef57600080fd5b823591506020830135620042608162004205565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433e576200433e62004303565b60405290565b60405161018081016001600160401b03811182821017156200433e576200433e62004303565b60405160c081016001600160401b03811182821017156200433e576200433e62004303565b60405160e081016001600160401b03811182821017156200433e576200433e62004303565b604051608081016001600160401b03811182821017156200433e576200433e62004303565b604051601f8201601f191681016001600160401b038111828210171562004404576200440462004303565b604052919050565b60006001600160401b0382111562004428576200442862004303565b50601f01601f191660200190565b60006200444d62004447846200440c565b620043d9565b90508281528383830111156200446257600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448b57600080fd5b620038048383356020850162004436565b600060408284031215620044af57600080fd5b620044b962004319565b82358152905060208201356001600160401b03811115620044d957600080fd5b620044e78482850162004479565b60208301525092915050565b80151581146200113d57600080fd5b80356200422881620044f3565b600080600080608085870312156200452657600080fd5b84356001600160401b03808211156200453e57600080fd5b9086019061018082890312156200455457600080fd5b6200455e62004344565b62004569836200421b565b815262004579602084016200421b565b6020820152604083013560408201526060830135606082015260808301356080820152620045aa60a084016200421b565b60a0820152620045bd60c084016200421b565b60c082015260e083013582811115620045d557600080fd5b620045e38a8286016200449c565b60e083015250610100620045f98185016200421b565b9082015261012083810135838111156200461257600080fd5b620046208b82870162004479565b8284015250506101406200463681850162004502565b9082015261016083810135838111156200464f57600080fd5b6200465d8b82870162004479565b82840152505080965050505062004677602086016200421b565b925062004687604086016200421b565b915062004697606086016200421b565b905092959194509250565b60008060408385031215620046b657600080fd5b8235620046c38162004205565b915060208301356001600160401b03811115620046df57600080fd5b8301601f81018513620046f157600080fd5b620047028582356020840162004436565b9150509250929050565b8035600381106200422857600080fd5b600481106200113d57600080fd5b803562004228816200471c565b6000602082840312156200474a57600080fd5b604051602081016001600160401b03811182821017156200476f576200476f62004303565b6040529135825250919050565b600060c082840312156200478f57600080fd5b620047996200436a565b90508135620047a88162004205565b81526020820135620047ba8162004205565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480457600080fd5b6200480e6200438f565b915060808112156200481f57600080fd5b506200482a620043b4565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485e608083016200470c565b60208201526200487160a083016200472a565b6040820152620048858360c0840162004737565b6060820152620048998360e084016200477c565b6080820152620048ad6101a083016200421b565b60a0820152620048c16101c083016200421b565b60c082015292915050565b60008060006102208486031215620048e357600080fd5b8335620048f08162004205565b9250620049018560208601620047ef565b91506102008401356001600160401b038111156200491e57600080fd5b6200492c868287016200449c565b9150509250925092565b60005b838110156200495357818101518382015260200162004939565b50506000910152565b600081518084526200497681602086016020860162004936565b601f01601f19169290920160200192915050565b6020815260006200380460208301846200495c565b6000806000806102408587031215620049b757600080fd5b8435620049c48162004205565b93506020850135620049d68162004205565b9250620049e78660408701620047ef565b91506102208501356001600160401b0381111562004a0457600080fd5b62004a12878288016200449c565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d295762000d2962004a1e565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7757600080fd5b815162003804816200471c565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004ab057600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1357634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d295762000d2962004a1e565b600181811c9082168062004b4357607f821691505b60208210810362004b6457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013f257600081815260208120601f850160051c8101602086101562004b935750805b601f850160051c820191505b8181101562004bb45782815560010162004b9f565b505050505050565b81516001600160401b0381111562004bd85762004bd862004303565b62004bf08162004be9845462004b2e565b8462004b6a565b602080601f83116001811462004c28576000841562004c0f5750858301515b600019600386901b1c1916600185901b17855562004bb4565b600085815260208120601f198616915b8281101562004c595788860151825594840194600190910190840162004c38565b508582101562004c785787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9b57600080fd5b8151620038048162004205565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004cd257600080fd5b82516001600160401b038082111562004cea57600080fd5b818501915085601f83011262004cff57600080fd5b81518181111562004d145762004d1462004303565b8060051b915062004d27848301620043d9565b818152918301840191848101908884111562004d4257600080fd5b938501935b8385101562004d70578451925062004d5f8362004205565b828252938501939085019062004d47565b98975050505050505050565b60006001820162004d915762004d9162004a1e565b5060010190565b8181038181111562000d295762000d2962004a1e565b6000815462004dbd8162004b2e565b80855260206001838116801562004ddd576001811462004df85762004e28565b60ff1985168884015283151560051b88018301955062004e28565b866000528260002060005b8581101562004e205781548a820186015290830190840162004e03565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003eaa60408501826200495c565b600081518084526020808501945080840160005b8381101562004e8f5781516001600160a01b03168752958201959082019060010162004e68565b509495945050505050565b85815260a06020820152600062004eb560a083018762004dae565b828103604084015262004ec9818762004e33565b6001600160a01b03861660608501528381036080850152905062004d70818562004e54565b83815260606020820152600062004f09606083018562004dae565b828103604084015262004068818562004e33565b6020808252602c90820152600080516020620058e183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058e183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003eaa908301846200495c565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe357600080fd5b82516001600160401b038082111562004ffb57600080fd5b9084019060c082870312156200501057600080fd5b6200501a6200436a565b82518152838301516200502d8162004205565b818501526040830151620050418162004205565b60408201526060830151828111156200505957600080fd5b8301604081890312156200506c57600080fd5b6200507662004319565b8151815285820151848111156200508c57600080fd5b82019350601f84018913620050a057600080fd5b83519150620050b362004447836200440c565b8281528987848701011115620050c857600080fd5b620050d98388830189880162004936565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005163576200516362004a4e565b9052565b6004811062005163576200516362004a4e565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051bc608084018262005150565b506040830151620051d160a084018262005167565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523f6101a0840182620042ba565b5060c0830151620052556101c0840182620042ba565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528660e08401896200495c565b818816606085015286608085015283810360a0850152620052a8818762004e33565b91505082810360c0840152620052bf818562004e54565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cc29083018462004e33565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533d81601785016020880162004936565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200537081602884016020880162004936565b01602801949350505050565b6000602082840312156200538f57600080fd5b81516200380481620044f3565b600081620053ae57620053ae62004a1e565b506000190190565b60008251620053ca81846020870162004936565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220034884d1bfa2a70a12f4920b27af543b9251f0f29311755279fbfe124bd748dc64736f6c63430008130033","sourceMap":"2850:23176:107:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:43;;;;;;;;;;-1:-1:-1;3050:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:142;;463:22;445:41;;433:2;418:18;3050:213:43;;;;;;;;23671:115:107;;;;;;;;;;-1:-1:-1;23760:19:107;;23671:115;;;643:25:142;;;631:2;616:18;23671:115:107;497:177:142;5999:24:107;;;;;;;;;;;;;;;;23988:288;;;;;;;;;;-1:-1:-1;23988:288:107;;;;;:::i;:::-;;:::i;:::-;;13750:1170;;;;;;;;;;-1:-1:-1;13750:1170:107;;;;;:::i;:::-;;:::i;20288:128::-;;;;;;;;;;-1:-1:-1;20288:128:107;;;;;:::i;:::-;;:::i;9654:110::-;;;;;;;;;;-1:-1:-1;9654:110:107;;;;;:::i;:::-;;:::i;6080:25::-;;;;;;;;;;-1:-1:-1;6080:25:107;;;;;;;;19453:128;;;;;;;;;;-1:-1:-1;19453:128:107;;;;;:::i;:::-;;:::i;14926:699::-;;;;;;;;;;-1:-1:-1;14926:699:107;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23188:477:107:-;;;;;;;;;;;;;:::i;7636:82::-;;;;;;;;;;-1:-1:-1;7636:82:107;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;18969:151::-;;;;;;;;;;-1:-1:-1;18969:151:107;;;;;:::i;:::-;-1:-1:-1;;;;;19072:28:107;19046:7;19072:28;;;:19;:28;;;;;:41;;;;18969:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23792:190:107:-;;;;;;;;;;-1:-1:-1;23792:190:107;;;;;:::i;:::-;;:::i;5900:25::-;;;;;;;;;;;;;;;;10044:2497;;;;;;;;;;-1:-1:-1;10044:2497:107;;;;;:::i;:::-;;:::i;21250:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20422:248:107:-;;;;;;;;;;-1:-1:-1;20422:248:107;;;;;:::i;:::-;;:::i;7171:68::-;;;;;;;;;;-1:-1:-1;7171:68:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;7796:107;;;;;;;;;;-1:-1:-1;7796:107:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12547:531:107:-;;;;;;;;;;-1:-1:-1;12547:531:107;;;;;:::i;:::-;;:::i;:::-;;;;12444:25:142;;;-1:-1:-1;;;;;12505:32:142;;;12500:2;12485:18;;12478:60;12417:18;12547:531:107;12270:274:142;2762:131:64;;;;;;;;;;;;;:::i;16070:1009:107:-;;;;;;;;;;-1:-1:-1;16070:1009:107;;;;;:::i;:::-;;:::i;6450:31::-;;;;;;;;;;-1:-1:-1;6450:31:107;;;;-1:-1:-1;;;;;6450:31:107;;;17222:1562;;;;;;;;;;-1:-1:-1;17222:1562:107;;;;;:::i;:::-;;:::i;7307:98::-;;;;;;;;;;-1:-1:-1;7307:98:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25409:583;;;;;;;;;;-1:-1:-1;25409:583:107;;;;;:::i;:::-;;:::i;6549:41::-;;;;;;;;;;-1:-1:-1;6549:41:107;;;;-1:-1:-1;;;;;6549:41:107;;;6809:24;;;;;;;;;;-1:-1:-1;6809:24:107;;;;-1:-1:-1;;;;;6809:24:107;;;2085:101:45;;;;;;;;;;;;;:::i;19845:237:107:-;;;;;;;;;;-1:-1:-1;19845:237:107;;;;;:::i;:::-;;:::i;8237:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8237:68:107;;6353:38;;;;;;;;;;-1:-1:-1;6353:38:107;;;;-1:-1:-1;;;;;6353:38:107;;;18790:173;;;;;;;;;;-1:-1:-1;18790:173:107;;;;;:::i;:::-;-1:-1:-1;;;;;18915:30:107;;;18889:7;18915:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18790:173;5695:34;;;;;;;;;;;;;;;;6640:25;;;;;;;;;;-1:-1:-1;6640:25:107;;;;-1:-1:-1;;;;;6640:25:107;;;19126:321;;;;;;;;;;-1:-1:-1;19126:321:107;;;;;:::i;:::-;;:::i;7505:60::-;;;;;;;;;;-1:-1:-1;7505:60:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7505:60:107;;;;;;;;;;;;;-1:-1:-1;;;;;13436:32:142;;;13418:51;;13500:2;13485:18;;13478:34;;;;13555:14;13548:22;13528:18;;;13521:50;13406:2;13391:18;7505:60:107;13222:355:142;5806:27:107;;;;;;;;;;;;;;;;525:604:105;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5279:75:107:-;;;;;;;;;;;;5312:42;5279:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21054:190:107;;;;;;;;;;-1:-1:-1;21054:190:107;;;;;:::i;:::-;;:::i;9770:124::-;;;;;;;;;;-1:-1:-1;9770:124:107;;;;;:::i;:::-;;:::i;6172:26::-;;;;;;;;;;-1:-1:-1;6172:26:107;;;;;;;-1:-1:-1;;;;;6172:26:107;;;20869:179;;;;;;;;;;;;;:::i;7025:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24458:465::-;;;;;;;;;;;;;:::i;5568:54::-;;;;;;;;;;;;;:::i;404:115:105:-;;;;;;;;;;-1:-1:-1;404:115:105;;;;;:::i;:::-;;:::i;6940:27:107:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6881:17:107:-;;;;;;;;;;-1:-1:-1;6881:17:107;;;;-1:-1:-1;;;;;6881:17:107;;;5444:49;;;;;;;;;;;;5486:7;5444:49;;6728:25;;;;;;;;;;-1:-1:-1;6728:25:107;;;;-1:-1:-1;;;;;6728:25:107;;;13084:660;;;;;;;;;;-1:-1:-1;13084:660:107;;;;;:::i;:::-;;:::i;24319:133::-;;;;;;;;;;-1:-1:-1;24319:133:107;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6256:30:107:-;;;;;;;;;;-1:-1:-1;6256:30:107;;;;-1:-1:-1;;;;;6256:30:107;;;5155:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5155:38:107;;;;;3050:213:43;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;23988:288:107:-;24064:17;:15;:17::i;:::-;5602:20;5486:7;5602:2;:20;:::i;:::-;24095:16;:26;24091:86;;;24144:22;;-1:-1:-1;;;24144:22:107;;;;;;;;;;;24091:86;24186:12;:31;;;24232:37;;643:25:142;;;24232:37:107;;631:2:142;616:18;24232:37:107;;;;;;;;23988:288;:::o;13750:1170::-;2526:21:48;:19;:21::i;:::-;13858:34:107::1;13884:7;13858:25;:34::i;:::-;13902:30;13922:9;13902:19;:30::i;:::-;13942:29;13961:9;13942:18;:29::i;:::-;-1:-1:-1::0;;;;;13986:36:107;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;13982:107;;;14056:22;;-1:-1:-1::0;;;14056:22:107::1;;;;;;;;;;;13982:107;-1:-1:-1::0;;;;;14122:28:107;;::::1;14099:20;14122:28:::0;;;:19:::1;:28;::::0;;;;;;;;14099:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14245:19:::1;::::0;14325:21:::1;14294:9;-1:-1:-1::0;;;;;14279:40:107::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14275:354:::1;;14381:51;::::0;-1:-1:-1;;;14381:51:107;;-1:-1:-1;;;;;14381:39:107;::::1;::::0;::::1;::::0;:51:::1;::::0;14421:7;;14430:1:::1;::::0;14381:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14362:70;;14275:354;;;14499:17;14468:9;-1:-1:-1::0;;;;;14453:40:107::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14449:180;;14551:67;::::0;-1:-1:-1;;;14551:67:107;;-1:-1:-1;;;;;14551:39:107;::::1;::::0;::::1;::::0;:67:::1;::::0;14591:7;;14600:17;;14551:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14532:86;;14449:180;-1:-1:-1::0;;;;;14639:30:107;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14728:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14728:54:107::1;14778:4;14728:54:::0;;::::1;::::0;;;14793:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14793:43:107::1;::::0;;::::1;::::0;;;14852:61;::::1;::::0;::::1;::::0;14661:7;;14670:9;;14683:16;;14852:61:::1;:::i;:::-;;;;;;;;13848:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13750:1170:107;;:::o;20288:128::-;20356:17;:15;:17::i;:::-;20383:26;20399:9;20383:15;:26::i;:::-;20288:128;:::o;9654:110::-;1355:13:45;:11;:13::i;:::-;9730:16:107::1;:27:::0;;-1:-1:-1;;;;;;9730:27:107::1;-1:-1:-1::0;;;;;9730:27:107;;;::::1;::::0;;;::::1;::::0;;9654:110::o;19453:128::-;19521:17;:15;:17::i;:::-;19548:26;19561:12;19548;:26::i;14926:699::-;15023:34;15049:7;15023:25;:34::i;:::-;15067:29;15086:9;15067:18;:29::i;:::-;15106:42;15126:10;15138:9;15106:19;:42::i;:::-;-1:-1:-1;;;;;15164:36:107;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15159:110;;15234:24;;-1:-1:-1;;;15234:24:107;;;;;;;;;;;15159:110;-1:-1:-1;;;;;15279:36:107;;;15329:5;15279:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15279:55:107;;;15344:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15399:44;15307:7;15316:9;15399:24;:44::i;:::-;15573:45;15599:7;15608:9;15573:45;;;;;;;:::i;:::-;;;;;;;;14926:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23188:477:107:-;23321:15;;23251:7;;-1:-1:-1;;;;;23321:15:107;23251:7;23416:21;5486:7;23416:3;:21;:::i;:::-;23399:12;;23377:19;;:34;;;;:::i;:::-;23376:62;;;;:::i;:::-;23347:91;-1:-1:-1;23448:24:107;23559:21;5486:7;23559:3;:21;:::i;:::-;23510:44;;-1:-1:-1;;;23510:44:107;;-1:-1:-1;;;;;23510:29:107;;;;;:44;;23548:4;;23510:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23488:19;;:66;;;;:::i;:::-;23487:94;;;;:::i;:::-;23448:133;;23642:16;23621:18;23599:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23592:66;;;;;23188:477;:::o;7636:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7636:82:107;;-1:-1:-1;7636:82:107;;-1:-1:-1;7636:82:107:o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23792:190:107:-;23869:17;:15;:17::i;:::-;23896:19;:32;;;23943;;643:25:142;;;23943:32:107;;631:2:142;616:18;23943:32:107;497:177:142;10044:2497:107;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;18292:2:142;3325:201:47;;;18274:21:142;18331:2;18311:18;;;18304:30;18370:34;18350:18;;;18343:62;-1:-1:-1;;;18421:18:142;;;18414:44;18475:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10261:24:107::1;10278:6;10261:16;:24::i;:::-;10295;:22;:24::i;:::-;10329:22;:20;:22::i;:::-;10362:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10362:13:107;:49::i;:::-;10422:48;10449:6;:19;;;10422:18;:48::i;:::-;10480:39;10499:6;:19;;;10480:18;:39::i;:::-;10548:12:::0;;10529:32:::1;::::0;:18:::1;:32::i;:::-;10571:43;10590:6;:23;;;10571:18;:43::i;:::-;10629:20;::::0;::::1;::::0;:25;10625:95:::1;;10670:39;10689:6;:19;;;10670:18;:39::i;:::-;10742:12:::0;;10729:4:::1;:26:::0;;-1:-1:-1;;;;;10729:26:107;;::::1;-1:-1:-1::0;;;;;;10729:26:107;;::::1;;::::0;;;10779:19:::1;::::0;::::1;::::0;10765:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10812:27:::1;::::0;::::1;::::0;10742:12:::1;10812:32:::0;10808:89:::1;;10867:19;;-1:-1:-1::0;;;10867:19:107::1;;;;;;;;;;;10808:89;10928:27;::::0;::::1;::::0;10906:19:::1;:49:::0;10980:20:::1;::::0;::::1;::::0;10965:12:::1;:35:::0;11026:21:::1;::::0;::::1;::::0;11010:13:::1;:37:::0;;-1:-1:-1;;11010:37:107::1;::::0;::::1;;::::0;;;::::1;::::0;;11073:21:::1;::::0;::::1;::::0;11057:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11123:23:107::1;::::0;::::1;::::0;11104:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11175:23:107::1;::::0;::::1;::::0;11157:15:::1;:41:::0;;-1:-1:-1;;;;;;11157:41:107;;::::1;-1:-1:-1::0;;;;;11157:41:107;;::::1;;::::0;;11222:19:::1;::::0;::::1;::::0;11208:11:::1;:33:::0;;-1:-1:-1;;;;;;11208:33:107::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11271:19;;::::1;::::0;11251:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11302:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8278:27:107;11302:10:::1;:47::i;:::-;11381:4;;;;;;;;;-1:-1:-1::0;;;;;11381:4:107::1;-1:-1:-1::0;;;;;11381:16:107::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11360:8;:40:::0;;-1:-1:-1;;;;;;11360:40:107::1;-1:-1:-1::0;;;;;11360:40:107;;::::1;;::::0;;11507:11:::1;::::0;11411:36:::1;::::0;11507:11:::1;11499:32;-1:-1:-1::0;11499:37:107;11495:427:::1;;11574:16;::::0;;11588:1:::1;11574:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11574:16:107::1;11552:38;;11629:10;11604:19;11624:1;11604:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11604:35:107::1;;;-1:-1:-1::0;;;;;11604:35:107::1;;;::::0;::::1;11495:427;;;11696:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11696:23:107;;;;11670::::1;::::0;-1:-1:-1;;;;;11696:11:107::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11670;;11696;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11696:23:107::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11670:49;;11769:6;:13;11785:1;11769:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11755:32:107::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11755:32:107::1;;11733:54;;11806:9;11801:111;11825:6;:13;11821:1;:17;11801:111;;;11888:6;11895:1;11888:9;;;;;;;;:::i;:::-;;;;;;;11863:19;11883:1;11863:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11863:34:107;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11840:3;::::1;::::0;::::1;:::i;:::-;;;;11801:111;;;;11656:266;11495:427;11994:11;::::0;11952:26;;-1:-1:-1;;;;;11994:11:107;;::::1;::::0;11932:19;;11952:30:::1;::::0;11994:11;;11952:30:::1;:::i;:::-;11932:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;11932:74:107::1;;;-1:-1:-1::0;;;;;11932:74:107::1;;;::::0;::::1;12078:4;12016:19;12065:1;12036:19;:26;:30;;;;:::i;:::-;12016:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12016:67:107;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12195:8:::1;::::0;12218:13:::1;::::0;::::1;::::0;12248:16:::1;::::0;::::1;::::0;12195:106:::1;::::0;-1:-1:-1;;;12195:106:107;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12218:13;12233::::1;::::0;12274:4:::1;::::0;12281:19;;12195:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12171:9;:130:::0;12312:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12359:16:107::1;:36:::0;;-1:-1:-1;;;;;12359:36:107;;::::1;-1:-1:-1::0;;;;;;12359:36:107;;::::1;;::::0;;;12405:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12491:9:::1;::::0;12517:16:::1;::::0;::::1;::::0;12471:63:::1;::::0;::::1;::::0;::::1;::::0;12491:9;;12502:13:::1;::::0;12517:16;12471:63:::1;:::i;:::-;;;;;;;;10251:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;25926:36:142;;3721:14:47;;25914:2:142;25899:18;3721:14:47;;;;;;;3647:99;3269:483;10044:2497:107;;;;:::o;21250:1932::-;2526:21:48;:19;:21::i;:::-;21340:10:107::1;21322:15;21387:28:::0;;;:19:::1;:28;::::0;;;;21476:15:::1;::::0;21387:28;;-1:-1:-1;;;;;21476:15:107;;::::1;::::0;21571:21:::1;5486:7;21571:3;:21;:::i;:::-;21554:12;;21532:19;;:34;;;;:::i;:::-;21531:62;;;;:::i;:::-;21502:91:::0;-1:-1:-1;21603:24:107::1;21714:21;5486:7;21714:3;:21;:::i;:::-;21665:44;::::0;-1:-1:-1;;;21665:44:107;;-1:-1:-1;;;;;21665:29:107;::::1;::::0;::::1;::::0;:44:::1;::::0;21703:4:::1;::::0;21665:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21643:19;;:66;;;;:::i;:::-;21642:94;;;;:::i;:::-;21603:133;;21751:17;21760:7;21751:8;:17::i;:::-;21746:1430;;21784:22;::::0;::::1;:29:::0;;-1:-1:-1;;21784:29:107::1;21809:4;21784:29:::0;;::::1;::::0;;;21853:19:::1;::::0;21828:22;;::::1;:44:::0;;;22024:143:::1;::::0;22070:7;;22087:4:::1;::::0;22137:16;;22094:40:::1;::::0;22116:18;;22094:40:::1;:::i;:::-;:59;;;;:::i;:::-;22024:11;::::0;-1:-1:-1;;;;;22024:11:107::1;::::0;:143;;:28:::1;:143::i;:::-;22592:22:::0;;22588:178:::1;;22719:11;::::0;22694::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22694:11:107;;::::1;::::0;22719::::1;::::0;;::::1;;22732:18:::0;22694:24:::1;:57::i;:::-;22849:20:::0;;22845:255:::1;;23003:82;23028:14;-1:-1:-1::0;;;;;23028:36:107::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23003:11;::::0;-1:-1:-1;;;;;23003:11:107::1;::::0;23068:16;23003:24:::1;:82::i;:::-;23119:46;23136:7;23145:19;;23119:46;;;;;;;:::i;:::-;;;;;;;;21746:1430;21312:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21250:1932:107:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;26175:2:142;6476:83:43;;;26157:21:142;26214:2;26194:18;;;26187:30;26253:34;26233:18;;;26226:62;-1:-1:-1;;;26304:18:142;;;26297:45;26359:19;;6476:83:43;25973:411:142;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20422:248:107:-:0;20494:17;:15;:17::i;:::-;20521:25;20540:5;20521:18;:25::i;:::-;20556:18;:26;;-1:-1:-1;;;;;;20556:26:107;-1:-1:-1;;;;;20556:26:107;;;;;;;;;20630:11;;20597:66;;;;;;20630:11;;;20556:26;20597:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12547:531:107:-:0;12840:16;;12936:4;;12943:23;;12705:14;;;;;;-1:-1:-1;;;;;12840:16:107;;;;-1:-1:-1;;;12898:28:107;12936:4;;;12943:23;12968:7;:5;:7::i;:::-;12875:101;;-1:-1:-1;;;;;27790:15:142;;;12875:101:107;;;27772:34:142;27842:15;;;27822:18;;;27815:43;27894:15;;;27874:18;;;27867:43;27707:18;;12875:101:107;;;-1:-1:-1;;12875:101:107;;;;;;;;;;;;;;-1:-1:-1;;;;;12875:101:107;-1:-1:-1;;;;;;12875:101:107;;;;;;;;;;12798:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12753:247;;13018:53;13029:13;13044:6;13052:7;13061:9;13018:10;:53::i;:::-;13011:60;;;;;12547:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28443:2:142;2064:92:64;;;28425:21:142;28482:2;28462:18;;;28455:30;28521:34;28501:18;;;28494:62;-1:-1:-1;;;28572:18:142;;;28565:54;28636:19;;2064:92:64;28241:420:142;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16070:1009:107:-;2526:21:48;:19;:21::i;:::-;16154:26:107::1;:24;:26::i;:::-;16207:10;16190:14;16263:26:::0;;;:18:::1;:26;::::0;;;;;;;16227:62;;;;;;::::1;::::0;;;;;;;;;;;;16263:26;;16227:62;;::::1;16263:26:::0;16227:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16227:62:107::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16300:24;16340:9:::0;16352:1:::1;16340:13;;16335:536;16359:16;:23;16355:1;:27;16335:536;;;16542:16;16559:1;16542:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16527:49:107::1;;16577:6;16585:13;16527:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16508:91:::0;-1:-1:-1;16617:21:107;;16613:232:::1;;-1:-1:-1::0;;;;;16658:29:107;::::1;;::::0;;;:21:::1;:29;::::0;;;;16688:19;;16712:16;;16658:29;16688:16;;16705:1;;16688:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16658:50:107::1;-1:-1:-1::0;;;;;16658:50:107::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16613:232:107::1;16384:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16335:536;;;-1:-1:-1::0;16881:11:107::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16881:11:107::1;16910:6:::0;16926:4:::1;16933:13:::0;16881:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;16957:27:107;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17001:13;;16957:27;:57:::1;::::0;17001:13;;16957:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17029:43:107::1;::::0;::::1;::::0;::::1;::::0;17050:6;;17058:13;;17029:43:::1;:::i;:::-;;;;;;;;16144:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;17222:1562:107;2526:21:48;:19;:21::i;:::-;17308:26:107::1;:24;:26::i;:::-;17361:10;17344:14;17418:26:::0;;;:18:::1;:26;::::0;;;;;;;17555:19:::1;::::0;17494::::1;:27:::0;;;;;;:40:::1;;::::0;17418:26;;17344:14;17555:19;17494:58:::1;::::0;17537:15;;17494:58:::1;:::i;:::-;:80;17490:140;;;17597:22;;-1:-1:-1::0;;;17597:22:107::1;;;;;;;;;;;17490:140;17639:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17639:11:107::1;17664:6:::0;17672:15;17639:24:::1;:49::i;:::-;17703:9;17698:951;17722:23:::0;;17718:27;::::1;17698:951;;;17766:16;17785;17802:1;17785:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17785:19:107::1;::::0;-1:-1:-1;17822:60:107::1;17785:19:::0;-1:-1:-1;;;17822:26:107::1;:60::i;:::-;17818:804;;;17921:63;::::0;-1:-1:-1;;;17921:63:107;;-1:-1:-1;;;;;17921:38:107;::::1;::::0;::::1;::::0;:63:::1;::::0;17960:6;;17968:15;;17921:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17902:82;;18002:20;18025:21;:29;18047:6;-1:-1:-1::0;;;;;18025:29:107::1;-1:-1:-1::0;;;;;18025:29:107::1;;;;;;;;;;;;:50;18055:16;18072:1;18055:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18055:19:107::1;18025:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18097:31:107;;::::1;18093:259;;;18159:57;::::0;-1:-1:-1;;;18159:57:107;;::::1;::::0;::::1;28840:25:142::0;;;28881:18;;;28874:34;;;28813:18;;18159:57:107::1;28666:248:142::0;18093:259:107::1;-1:-1:-1::0;;;;;18263:29:107;::::1;;::::0;;;:21:::1;:29;::::0;;;;18293:19;;18317:16;;18263:29;18293:16;;18310:1;;18293:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18293:19:107::1;18263:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18293:19;18263:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17884:482:107::1;17818:804;;;18496:23:::0;;18479:16;;18496:27:::1;::::0;18522:1:::1;::::0;18496:27:::1;:::i;:::-;18479:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18479:45:107::1;18457:16;18474:1;18457:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18457:67:107::1;;;;;-1:-1:-1::0;;;;;18457:67:107::1;;;;;;18542:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18542:22:107;;;;;-1:-1:-1;;;;;;18542:22:107::1;::::0;;;;;18582:25:::1;18598:8:::0;18582:15:::1;:25::i;:::-;-1:-1:-1::0;17747:3:107;::::1;::::0;::::1;:::i;:::-;;;;17698:951;;;-1:-1:-1::0;;;;;;18658:27:107;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18702:15;;18658:27;:59:::1;::::0;18702:15;;18658:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18732:45:107::1;::::0;::::1;::::0;::::1;::::0;18753:6;;18761:15;;18732:45:::1;:::i;25409:583::-:0;2526:21:48;:19;:21::i;:::-;25510:17:107::1;:15;:17::i;:::-;25542:13;::::0;;::::1;25537:68;;25578:16;;-1:-1:-1::0;;;25578:16:107::1;;;;;;;;;;;25537:68;25619:17;25628:7;25619:8;:17::i;:::-;25614:75;;25659:19;;-1:-1:-1::0;;;25659:19:107::1;;;;;;;;;;;25614:75;-1:-1:-1::0;;;;;25721:28:107;;::::1;25698:20;25721:28:::0;;;:19:::1;:28;::::0;;;;;;;;25698:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25759:32:::1;25741:7:::0;25759:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25808:28:107;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25801:35;;-1:-1:-1;;;;;;25801:35:107::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25801:35:107::1;::::0;;25890:19;::::1;::::0;25847:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25872:16;;25847:24:::1;:63::i;:::-;25925:60;25938:7;25947:16;25965:6;:19;;;25925:60;;;;;;;;:::i;:::-;;;;;;;;25500:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19845:237:107:-:0;19918:17;:15;:17::i;:::-;19972:4;;:20;;-1:-1:-1;;;19972:20:107;;;;;643:25:142;;;19945:16:107;;-1:-1:-1;;;;;19972:4:107;;:12;;616:18:142;;19972:20:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19972:20:107;;;;;;;;;;;;:::i;:::-;:29;;;19945:57;;20012:28;20031:8;20012:18;:28::i;:::-;20050:25;20066:8;20050:15;:25::i;19126:321::-;19196:17;:15;:17::i;:::-;19250:4;;:20;;-1:-1:-1;;;19250:20:107;;;;;643:25:142;;;19223:16:107;;-1:-1:-1;;;;;19250:4:107;;:12;;616:18:142;;19250:20:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19250:20:107;;;;;;;;;;;;:::i;:::-;:29;;;19223:57;;19290:28;19309:8;19290:18;:28::i;:::-;19332:60;-1:-1:-1;;;;;19332:26:107;;-1:-1:-1;;;19332:26:107;:60::i;:::-;19328:113;;;19408:22;19421:8;19408:12;:22::i;525:604:105:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:105;591:49;;715:12;-1:-1:-1;;;;;707:33:105;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:105:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:105;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:105;;;;;;;;-1:-1:-1;;876:40:105;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:105:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21054:190:107:-;-1:-1:-1;;;;;21170:28:107;;;21118:14;21170:28;;;:19;:28;;;;;;;;;21144:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21054:190::o;9770:124::-;1355:13:45;:11;:13::i;:::-;9853:23:107::1;:34:::0;;-1:-1:-1;;;;;;9853:34:107::1;-1:-1:-1::0;;;;;9853:34:107;;;::::1;::::0;;;::::1;::::0;;9770:124::o;20869:179::-;20941:18;;-1:-1:-1;;;;;20941:18:107;20927:10;:32;20923:89;;20982:19;;-1:-1:-1;;;20982:19:107;;;;;;;;;;;20923:89;21021:20;:18;:20::i;7025:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24458:465::-;2526:21:48;:19;:21::i;:::-;24542:10:107::1;24562:34;24542:10:::0;24562:25:::1;:34::i;:::-;24606:32;24630:7;24606:23;:32::i;:::-;-1:-1:-1::0;;;;;24671:28:107;;::::1;24648:20;24671:28:::0;;;:19:::1;:28;::::0;;;;;;;24648:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24716:28;;;-1:-1:-1;;;;;;24709:35:107;;::::1;::::0;;;;;;;-1:-1:-1;;24709:35:107;;::::1;::::0;;;24761:18:::1;:27:::0;;;;;24648:51;;24754:34:::1;::::0;24761:27;24754:34:::1;:::i;:::-;24833:19;::::0;::::1;::::0;24799:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24799:11:107;;::::1;::::0;24824:7;;24799:24:::1;:54::i;:::-;24868:48;24887:7;24896:6;:19;;;24868:48;;;;;;;:::i;:::-;;;;;;;;24514:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5568:54:107;5602:20;5486:7;5602:2;:20;:::i;:::-;5568:54;:::o;404:115:105:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:105::1;499:12;480:18;:32::i;6940:27:107:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13084:660:107:-:0;13275:14;;5312:42;-1:-1:-1;;;;;13355:20:107;;;13351:65;;-1:-1:-1;13399:6:107;13351:65;13436:9;13425:20;;13456:31;13490:14;13456:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13456:48:107;;;;;;;;;;;;;;;;-1:-1:-1;;13524:4:107;;13571:9;;13592:19;;13456:48;;-1:-1:-1;;;;;;13524:4:107;;;;:33;;-1:-1:-1;13571:9:107;;-1:-1:-1;13582:8:107;;-1:-1:-1;13592:19:107;;13603:7;;13592:19;;;:::i;:::-;;;;;;;;;;;;;13613:5;13620:1;13623:9;13634:14;13524:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13515:143;;13674:63;13686:6;13694:8;13712:4;13719:6;13727:9;13674:63;;;;;;;;;;:::i;:::-;;;;;;;;13309:435;;13084:660;;;;;;;:::o;24319:133::-;24390:4;24413:32;-1:-1:-1;;;;;;;;;;;24437:7:107;24413;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35022:2:142;2415:73:45::1;::::0;::::1;35004:21:142::0;35061:2;35041:18;;;35034:30;35100:34;35080:18;;;35073:62;-1:-1:-1;;;35151:18:142;;;35144:36;35197:19;;2415:73:45::1;34820:402:142::0;8478:167:107;8542:35;-1:-1:-1;;;;;;;;;;;8566:10:107;8542:7;:35::i;:::-;8537:102;;8617:10;8600:28;;-1:-1:-1;;;8600:28:107;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;35429:2:142;2725:63:48;;;35411:21:142;35468:2;35448:18;;;35441:30;35507:33;35487:18;;;35480:61;35558:18;;2725:63:48;35227:355:142;2725:63:48;1851:1;2863:7;:18;2601:287::o;8809:157:107:-;8890:17;8899:7;8890:8;:17::i;:::-;8885:75;;8930:19;;-1:-1:-1;;;8930:19:107;;;;;;;;;;;8972:163;-1:-1:-1;;;;;9049:28:107;;;;;;:17;:28;;;;;;;;9044:85;;9100:18;;-1:-1:-1;;;9100:18:107;;;;;;;;;;;9515:133;-1:-1:-1;;;;;9589:22:107;;9585:56;;9620:21;;-1:-1:-1;;;9620:21:107;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20088:194:107:-;20159:29;20178:9;20159:18;:29::i;:::-;-1:-1:-1;;;;;20198:28:107;;20229:5;20198:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20198:36:107;;;20249:26;;;;;20216:9;;20249:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;35789:2:142;1675:68:45;;;35771:21:142;;;35808:18;;;35801:30;35867:34;35847:18;;;35840:62;35919:18;;1675:68:45;35587:356:142;19587:252:107;-1:-1:-1;;;;;19662:31:107;;;;;;:17;:31;;;;;;;;19658:85;;;19716:16;;-1:-1:-1;;;19716:16:107;;;;;;;;;;;19658:85;-1:-1:-1;;;;;19752:31:107;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19752:38:107;19786:4;19752:38;;;19805:27;;;;;19770:12;;19805:27;:::i;9141:172::-;9245:9;-1:-1:-1;;;;;9234:20:107;:7;-1:-1:-1;;;;;9234:20:107;;9230:77;;9277:19;;-1:-1:-1;;;9277:19:107;;;;;;;;;;;15631:433;-1:-1:-1;;;;;15765:27:107;;15728:34;15765:27;;;:18;:27;;;;;;15802:256;15826:23;;15822:27;;15802:256;;;15897:9;-1:-1:-1;;;;;15874:32:107;:16;15891:1;15874:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15874:19:107;:32;15870:178;;15965:23;;15948:16;;15965:27;;15991:1;;15965:27;:::i;:::-;15948:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15948:45:107;15926:16;15943:1;15926:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;15926:67:107;;;;;-1:-1:-1;;;;;15926:67:107;;;;;;16011:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16011:22:107;;;;;-1:-1:-1;;;;;;16011:22:107;;;;;;15870:178;15851:3;;;;:::i;:::-;;;;15802:256;;;;15718:346;15631:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:105:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:105;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:105;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;36150:2:142;3262:56:60;;;36132:21:142;36189:2;36169:18;;;36162:30;36228:34;36208:18;;;36201:62;-1:-1:-1;;;36279:18:142;;;36272:44;36333:19;;3262:56:60;35948:410:142;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;36565:2:142;3140:82:60;;;36547:21:142;36604:2;36584:18;;;36577:30;36643:34;36623:18;;;36616:62;-1:-1:-1;;;36694:18:142;;;36687:39;36743:19;;3140:82:60;36363:405:142;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8651:152:107:-;8724:20;8733:10;8724:8;:20::i;:::-;8719:78;;8767:19;;-1:-1:-1;;;8767:19:107;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;24929:474:107:-;-1:-1:-1;;;;;25042:27:107;;25006:33;25042:27;;;:18;:27;;;;;;;;25006:63;;;;;;;;;;;;;;;;;;;25042:27;;25006:63;;;25042:27;25006:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25006:63:107;;;;;;;;;;;;;;;;;;;;;;;25150:9;25145:252;25169:16;:23;25165:1;:27;25145:252;;;25340:16;25357:1;25340:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25325:52:107;;25378:7;25325:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25194:3;;;;;:::i;:::-;;;;25145:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20676::107:-;20753:18;;;20733:11;:39;;-1:-1:-1;;;;;;20733:39:107;;;-1:-1:-1;;;;;20753:18:107;;20733:39;;;;20782:25;;;20822:34;;;;;;20753:18;;20822:34;:::i;:::-;;;;;;;;20676:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;38258:2:142;5697:111:73;;;38240:21:142;38297:2;38277:18;;;38270:30;38336:34;38316:18;;;38309:62;-1:-1:-1;;;38387:18:142;;;38380:40;38437:19;;5697:111:73;38056:406:142;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;38669:2:142;1479:95:60;;;38651:21:142;38708:2;38688:18;;;38681:30;38747:34;38727:18;;;38720:62;-1:-1:-1;;;38798:18:142;;;38791:43;38851:19;;1479:95:60;38467:409:142;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;39043:33:142;;4592:71:81;;;;39025:52:142;;;;4592:71:81;;;;;;;;;;38998:18:142;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;39431:2:142;2228:55:52;;;39413:21:142;;;39450:18;;;39443:30;39509:34;39489:18;;;39482:62;39561:18;;2228:55:52;39229:356:142;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;39792:2:142;5354:81:76;;;39774:21:142;39831:2;39811:18;;;39804:30;39870:34;39850:18;;;39843:62;-1:-1:-1;;;39921:18:142;;;39914:36;39967:19;;5354:81:76;39590:402:142;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;40491:2:142;8113:60:76;;;40473:21:142;40530:2;40510:18;;;40503:30;40569:31;40549:18;;;40542:59;40618:18;;8113:60:76;40289:353:142;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:142;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:142;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:142;;861:180;-1:-1:-1;861:180:142:o;1046:131::-;-1:-1:-1;;;;;1121:31:142;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:142;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:142:o;2471:104::-;-1:-1:-1;;;;;2537:31:142;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:142;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:142;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:142;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:142;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:253::-;4092:2;4086:9;4134:4;4122:17;;-1:-1:-1;;;;;4154:34:142;;4190:22;;;4151:62;4148:88;;;4216:18;;:::i;4278:253::-;4350:2;4344:9;4392:4;4380:17;;-1:-1:-1;;;;;4412:34:142;;4448:22;;;4409:62;4406:88;;;4474:18;;:::i;4536:275::-;4607:2;4601:9;4672:2;4653:13;;-1:-1:-1;;4649:27:142;4637:40;;-1:-1:-1;;;;;4692:34:142;;4728:22;;;4689:62;4686:88;;;4754:18;;:::i;:::-;4790:2;4783:22;4536:275;;-1:-1:-1;4536:275:142:o;4816:187::-;4865:4;-1:-1:-1;;;;;4887:30:142;;4884:56;;;4920:18;;:::i;:::-;-1:-1:-1;4986:2:142;4965:15;-1:-1:-1;;4961:29:142;4992:4;4957:40;;4816:187::o;5008:338::-;5073:5;5102:53;5118:36;5147:6;5118:36;:::i;:::-;5102:53;:::i;:::-;5093:62;;5178:6;5171:5;5164:21;5218:3;5209:6;5204:3;5200:16;5197:25;5194:45;;;5235:1;5232;5225:12;5194:45;5284:6;5279:3;5272:4;5265:5;5261:16;5248:43;5338:1;5331:4;5322:6;5315:5;5311:18;5307:29;5300:40;5008:338;;;;;:::o;5351:222::-;5394:5;5447:3;5440:4;5432:6;5428:17;5424:27;5414:55;;5465:1;5462;5455:12;5414:55;5487:80;5563:3;5554:6;5541:20;5534:4;5526:6;5522:17;5487:80;:::i;5578:411::-;5633:5;5681:4;5669:9;5664:3;5660:19;5656:30;5653:50;;;5699:1;5696;5689:12;5653:50;5721:22;;:::i;:::-;5766:23;;5752:38;;5712:31;-1:-1:-1;5841:2:142;5826:18;;5813:32;-1:-1:-1;;;;;5857:30:142;;5854:50;;;5900:1;5897;5890:12;5854:50;5936:46;5978:3;5969:6;5958:9;5954:22;5936:46;:::i;:::-;5931:2;5924:5;5920:14;5913:70;;5578:411;;;;:::o;5994:118::-;6080:5;6073:13;6066:21;6059:5;6056:32;6046:60;;6102:1;6099;6092:12;6117:128;6182:20;;6211:28;6182:20;6211:28;:::i;6250:1871::-;6392:6;6400;6408;6416;6469:3;6457:9;6448:7;6444:23;6440:33;6437:53;;;6486:1;6483;6476:12;6437:53;6513:23;;-1:-1:-1;;;;;6585:14:142;;;6582:34;;;6612:1;6609;6602:12;6582:34;6635:22;;;;6691:6;6673:16;;;6669:29;6666:49;;;6711:1;6708;6701:12;6666:49;6737:22;;:::i;:::-;6782;6801:2;6782:22;:::i;:::-;6775:5;6768:37;6837:31;6864:2;6860;6856:11;6837:31;:::i;:::-;6832:2;6825:5;6821:14;6814:55;6922:2;6918;6914:11;6901:25;6896:2;6889:5;6885:14;6878:49;6980:2;6976;6972:11;6959:25;6954:2;6947:5;6943:14;6936:49;7039:3;7035:2;7031:12;7018:26;7012:3;7005:5;7001:15;6994:51;7078:32;7105:3;7101:2;7097:12;7078:32;:::i;:::-;7072:3;7065:5;7061:15;7054:57;7144:32;7171:3;7167:2;7163:12;7144:32;:::i;:::-;7138:3;7131:5;7127:15;7120:57;7223:3;7219:2;7215:12;7202:26;7253:2;7243:8;7240:16;7237:36;;;7269:1;7266;7259:12;7237:36;7306:54;7352:7;7341:8;7337:2;7333:17;7306:54;:::i;:::-;7300:3;7293:5;7289:15;7282:79;;7380:3;7415:31;7442:2;7438;7434:11;7415:31;:::i;:::-;7399:14;;;7392:55;7466:3;7507:11;;;7494:25;7531:16;;;7528:36;;;7560:1;7557;7550:12;7528:36;7596:45;7633:7;7622:8;7618:2;7614:17;7596:45;:::i;:::-;7591:2;7584:5;7580:14;7573:69;;;7661:3;7696:28;7720:2;7716;7712:11;7696:28;:::i;:::-;7680:14;;;7673:52;7744:3;7785:11;;;7772:25;7809:16;;;7806:36;;;7838:1;7835;7828:12;7806:36;7874:45;7911:7;7900:8;7896:2;7892:17;7874:45;:::i;:::-;7869:2;7862:5;7858:14;7851:69;;;7939:5;7929:15;;;;;7963:38;7997:2;7986:9;7982:18;7963:38;:::i;:::-;7953:48;;8020:38;8054:2;8043:9;8039:18;8020:38;:::i;:::-;8010:48;;8077:38;8111:2;8100:9;8096:18;8077:38;:::i;:::-;8067:48;;6250:1871;;;;;;;:::o;8386:585::-;8463:6;8471;8524:2;8512:9;8503:7;8499:23;8495:32;8492:52;;;8540:1;8537;8530:12;8492:52;8579:9;8566:23;8598:31;8623:5;8598:31;:::i;:::-;8648:5;-1:-1:-1;8704:2:142;8689:18;;8676:32;-1:-1:-1;;;;;8720:30:142;;8717:50;;;8763:1;8760;8753:12;8717:50;8786:22;;8839:4;8831:13;;8827:27;-1:-1:-1;8817:55:142;;8868:1;8865;8858:12;8817:55;8891:74;8957:7;8952:2;8939:16;8934:2;8930;8926:11;8891:74;:::i;:::-;8881:84;;;8386:585;;;;;:::o;8976:153::-;9054:20;;9103:1;9093:12;;9083:40;;9119:1;9116;9109:12;9134:110;9218:1;9211:5;9208:12;9198:40;;9234:1;9231;9224:12;9249:152;9326:20;;9355:40;9326:20;9355:40;:::i;9406:416::-;9470:5;9518:4;9506:9;9501:3;9497:19;9493:30;9490:50;;;9536:1;9533;9526:12;9490:50;9569:2;9563:9;9611:4;9599:17;;-1:-1:-1;;;;;9631:34:142;;9667:22;;;9628:62;9625:88;;;9693:18;;:::i;:::-;9729:2;9722:22;9792:23;;9777:39;;-1:-1:-1;9762:6:142;9406:416;-1:-1:-1;9406:416:142:o;9827:701::-;9890:5;9938:4;9926:9;9921:3;9917:19;9913:30;9910:50;;;9956:1;9953;9946:12;9910:50;9978:22;;:::i;:::-;9969:31;;10037:9;10024:23;10056:33;10081:7;10056:33;:::i;:::-;10098:22;;10172:2;10157:18;;10144:32;10185:33;10144:32;10185:33;:::i;:::-;10250:7;10245:2;10238:5;10234:14;10227:31;;10318:2;10307:9;10303:18;10290:32;10285:2;10278:5;10274:14;10267:56;10383:2;10372:9;10368:18;10355:32;10350:2;10343:5;10339:14;10332:56;10449:3;10438:9;10434:19;10421:33;10415:3;10408:5;10404:15;10397:58;10516:3;10505:9;10501:19;10488:33;10482:3;10475:5;10471:15;10464:58;9827:701;;;;:::o;10533:1083::-;10608:5;10647:9;10642:3;10638:19;10677:6;10673:2;10669:15;10666:35;;;10697:1;10694;10687:12;10666:35;10719:22;;:::i;:::-;10710:31;;10761:4;10757:2;10753:13;10750:33;;;10779:1;10776;10769:12;10750:33;;10807:22;;:::i;:::-;10867:9;10854:23;10845:7;10838:40;10940:2;10929:9;10925:18;10912:32;10907:2;10898:7;10894:16;10887:58;11007:2;10996:9;10992:18;10979:32;10974:2;10965:7;10961:16;10954:58;11074:2;11063:9;11059:18;11046:32;11041:2;11032:7;11028:16;11021:58;11102:7;11095:5;11088:22;;11142:50;11186:4;11175:9;11171:20;11142:50;:::i;:::-;11137:2;11130:5;11126:14;11119:74;11225:48;11268:3;11257:9;11253:19;11225:48;:::i;:::-;11220:2;11213:5;11209:14;11202:72;11306:61;11363:3;11357;11346:9;11342:19;11306:61;:::i;:::-;11301:2;11294:5;11290:14;11283:85;11402:61;11459:3;11452:4;11441:9;11437:20;11402:61;:::i;:::-;11395:4;11388:5;11384:16;11377:87;11497:39;11531:3;11520:9;11516:19;11497:39;:::i;:::-;11491:3;11484:5;11480:15;11473:64;11570:39;11604:3;11593:9;11589:19;11570:39;:::i;:::-;11564:3;11557:5;11553:15;11546:64;10533:1083;;;;:::o;11621:644::-;11773:6;11781;11789;11842:3;11830:9;11821:7;11817:23;11813:33;11810:53;;;11859:1;11856;11849:12;11810:53;11898:9;11885:23;11917:31;11942:5;11917:31;:::i;:::-;11967:5;-1:-1:-1;11991:75:142;12058:7;12053:2;12038:18;;11991:75;:::i;:::-;11981:85;-1:-1:-1;12117:3:142;12102:19;;12089:33;-1:-1:-1;;;;;12134:30:142;;12131:50;;;12177:1;12174;12167:12;12131:50;12200:59;12251:7;12242:6;12231:9;12227:22;12200:59;:::i;:::-;12190:69;;;11621:644;;;;;:::o;13582:250::-;13667:1;13677:113;13691:6;13688:1;13685:13;13677:113;;;13767:11;;;13761:18;13748:11;;;13741:39;13713:2;13706:10;13677:113;;;-1:-1:-1;;13824:1:142;13806:16;;13799:27;13582:250::o;13837:271::-;13879:3;13917:5;13911:12;13944:6;13939:3;13932:19;13960:76;14029:6;14022:4;14017:3;14013:14;14006:4;13999:5;13995:16;13960:76;:::i;:::-;14090:2;14069:15;-1:-1:-1;;14065:29:142;14056:39;;;;14097:4;14052:50;;13837:271;-1:-1:-1;;13837:271:142:o;14113:220::-;14262:2;14251:9;14244:21;14225:4;14282:45;14323:2;14312:9;14308:18;14300:6;14282:45;:::i;14785:785::-;14946:6;14954;14962;14970;15023:3;15011:9;15002:7;14998:23;14994:33;14991:53;;;15040:1;15037;15030:12;14991:53;15079:9;15066:23;15098:31;15123:5;15098:31;:::i;:::-;15148:5;-1:-1:-1;15205:2:142;15190:18;;15177:32;15218:33;15177:32;15218:33;:::i;:::-;15270:7;-1:-1:-1;15296:75:142;15363:7;15358:2;15343:18;;15296:75;:::i;:::-;15286:85;-1:-1:-1;15422:3:142;15407:19;;15394:33;-1:-1:-1;;;;;15439:30:142;;15436:50;;;15482:1;15479;15472:12;15436:50;15505:59;15556:7;15547:6;15536:9;15532:22;15505:59;:::i;:::-;15495:69;;;14785:785;;;;;;;:::o;15575:127::-;15636:10;15631:3;15627:20;15624:1;15617:31;15667:4;15664:1;15657:15;15691:4;15688:1;15681:15;15707:168;15780:9;;;15811;;15828:15;;;15822:22;;15808:37;15798:71;;15849:18;;:::i;15880:127::-;15941:10;15936:3;15932:20;15929:1;15922:31;15972:4;15969:1;15962:15;15996:4;15993:1;15986:15;16012:277;16099:6;16152:2;16140:9;16131:7;16127:23;16123:32;16120:52;;;16168:1;16165;16158:12;16120:52;16200:9;16194:16;16219:40;16253:5;16219:40;:::i;16294:282::-;-1:-1:-1;;;;;16494:32:142;;;;16476:51;;16558:2;16543:18;;16536:34;16464:2;16449:18;;16294:282::o;16581:184::-;16651:6;16704:2;16692:9;16683:7;16679:23;16675:32;16672:52;;;16720:1;16717;16710:12;16672:52;-1:-1:-1;16743:16:142;;16581:184;-1:-1:-1;16581:184:142:o;17049:375::-;-1:-1:-1;;;;;17307:15:142;;;17289:34;;17359:15;;;;17354:2;17339:18;;17332:43;17406:2;17391:18;;17384:34;;;;17239:2;17224:18;;17049:375::o;17429:304::-;-1:-1:-1;;;;;17659:15:142;;;17641:34;;17711:15;;17706:2;17691:18;;17684:43;17591:2;17576:18;;17429:304::o;17738:217::-;17778:1;17804;17794:132;;17848:10;17843:3;17839:20;17836:1;17829:31;17883:4;17880:1;17873:15;17911:4;17908:1;17901:15;17794:132;-1:-1:-1;17940:9:142;;17738:217::o;17960:125::-;18025:9;;;18046:10;;;18043:36;;;18059:18;;:::i;18505:380::-;18584:1;18580:12;;;;18627;;;18648:61;;18702:4;18694:6;18690:17;18680:27;;18648:61;18755:2;18747:6;18744:14;18724:18;18721:38;18718:161;;18801:10;18796:3;18792:20;18789:1;18782:31;18836:4;18833:1;18826:15;18864:4;18861:1;18854:15;18718:161;;18505:380;;;:::o;19016:545::-;19118:2;19113:3;19110:11;19107:448;;;19154:1;19179:5;19175:2;19168:17;19224:4;19220:2;19210:19;19294:2;19282:10;19278:19;19275:1;19271:27;19265:4;19261:38;19330:4;19318:10;19315:20;19312:47;;;-1:-1:-1;19353:4:142;19312:47;19408:2;19403:3;19399:12;19396:1;19392:20;19386:4;19382:31;19372:41;;19463:82;19481:2;19474:5;19471:13;19463:82;;;19526:17;;;19507:1;19496:13;19463:82;;;19467:3;;;19016:545;;;:::o;19737:1352::-;19857:10;;-1:-1:-1;;;;;19879:30:142;;19876:56;;;19912:18;;:::i;:::-;19941:97;20031:6;19991:38;20023:4;20017:11;19991:38;:::i;:::-;19985:4;19941:97;:::i;:::-;20093:4;;20157:2;20146:14;;20174:1;20169:663;;;;20876:1;20893:6;20890:89;;;-1:-1:-1;20945:19:142;;;20939:26;20890:89;-1:-1:-1;;19694:1:142;19690:11;;;19686:24;19682:29;19672:40;19718:1;19714:11;;;19669:57;20992:81;;20139:944;;20169:663;18963:1;18956:14;;;19000:4;18987:18;;-1:-1:-1;;20205:20:142;;;20323:236;20337:7;20334:1;20331:14;20323:236;;;20426:19;;;20420:26;20405:42;;20518:27;;;;20486:1;20474:14;;;;20353:19;;20323:236;;;20327:3;20587:6;20578:7;20575:19;20572:201;;;20648:19;;;20642:26;-1:-1:-1;;20731:1:142;20727:14;;;20743:3;20723:24;20719:37;20715:42;20700:58;20685:74;;20572:201;-1:-1:-1;;;;;20819:1:142;20803:14;;;20799:22;20786:36;;-1:-1:-1;19737:1352:142:o;21094:251::-;21164:6;21217:2;21205:9;21196:7;21192:23;21188:32;21185:52;;;21233:1;21230;21223:12;21185:52;21265:9;21259:16;21284:31;21309:5;21284:31;:::i;21350:127::-;21411:10;21406:3;21402:20;21399:1;21392:31;21442:4;21439:1;21432:15;21466:4;21463:1;21456:15;21482:1011;21577:6;21608:2;21651;21639:9;21630:7;21626:23;21622:32;21619:52;;;21667:1;21664;21657:12;21619:52;21694:16;;-1:-1:-1;;;;;21759:14:142;;;21756:34;;;21786:1;21783;21776:12;21756:34;21824:6;21813:9;21809:22;21799:32;;21869:7;21862:4;21858:2;21854:13;21850:27;21840:55;;21891:1;21888;21881:12;21840:55;21920:2;21914:9;21942:2;21938;21935:10;21932:36;;;21948:18;;:::i;:::-;21994:2;21991:1;21987:10;21977:20;;22017:28;22041:2;22037;22033:11;22017:28;:::i;:::-;22079:15;;;22149:11;;;22145:20;;;22110:12;;;;22177:19;;;22174:39;;;22209:1;22206;22199:12;22174:39;22233:11;;;;22253:210;22269:6;22264:3;22261:15;22253:210;;;22342:3;22336:10;22323:23;;22359:31;22384:5;22359:31;:::i;:::-;22403:18;;;22286:12;;;;22441;;;;22253:210;;;22482:5;21482:1011;-1:-1:-1;;;;;;;;21482:1011:142:o;22498:135::-;22537:3;22558:17;;;22555:43;;22578:18;;:::i;:::-;-1:-1:-1;22625:1:142;22614:13;;22498:135::o;22638:128::-;22705:9;;;22726:11;;;22723:37;;;22740:18;;:::i;22771:772::-;22821:3;22862:5;22856:12;22891:36;22917:9;22891:36;:::i;:::-;22936:19;;;22974:4;22997:1;23014:18;;;23041:146;;;;23201:1;23196:341;;;;23007:530;;23041:146;-1:-1:-1;;23083:24:142;;23069:12;;;23062:46;23155:14;;23148:22;23145:1;23141:30;23132:40;;23128:49;;;-1:-1:-1;23041:146:142;;23196:341;23227:5;23224:1;23217:16;23274:2;23271:1;23261:16;23299:1;23313:174;23327:6;23324:1;23321:13;23313:174;;;23414:14;;23396:11;;;23392:20;;23385:44;23457:16;;;;23342:10;;23313:174;;;23511:11;;23507:20;;;-1:-1:-1;;23007:530:142;;;;;;22771:772;;;;:::o;23548:252::-;23635:5;23629:12;23624:3;23617:25;23599:3;23688:4;23681:5;23677:16;23671:23;23726:4;23719;23714:3;23710:14;23703:28;23747:47;23788:4;23783:3;23779:14;23765:12;23747:47;:::i;23805:461::-;23858:3;23896:5;23890:12;23923:6;23918:3;23911:19;23949:4;23978:2;23973:3;23969:12;23962:19;;24015:2;24008:5;24004:14;24036:1;24046:195;24060:6;24057:1;24054:13;24046:195;;;24125:13;;-1:-1:-1;;;;;24121:39:142;24109:52;;24181:12;;;;24216:15;;;;24157:1;24075:9;24046:195;;;-1:-1:-1;24257:3:142;;23805:461;-1:-1:-1;;;;;23805:461:142:o;24271:804::-;24631:6;24620:9;24613:25;24674:3;24669:2;24658:9;24654:18;24647:31;24594:4;24701:54;24750:3;24739:9;24735:19;24727:6;24701:54;:::i;:::-;24803:9;24795:6;24791:22;24786:2;24775:9;24771:18;24764:50;24837:42;24872:6;24864;24837:42;:::i;:::-;-1:-1:-1;;;;;24915:32:142;;24910:2;24895:18;;24888:60;24985:22;;;24979:3;24964:19;;24957:51;24823:56;-1:-1:-1;25025:44:142;24823:56;25054:6;25025:44;:::i;25269:500::-;25523:6;25512:9;25505:25;25566:2;25561;25550:9;25546:18;25539:30;25486:4;25592:53;25641:2;25630:9;25626:18;25618:6;25592:53;:::i;:::-;25693:9;25685:6;25681:22;25676:2;25665:9;25661:18;25654:50;25721:42;25756:6;25748;25721:42;:::i;26389:408::-;26591:2;26573:21;;;26630:2;26610:18;;;26603:30;-1:-1:-1;;;;;;;;;;;26664:2:142;26649:18;;26642:62;-1:-1:-1;;;26735:2:142;26720:18;;26713:42;26787:3;26772:19;;26389:408::o;26802:::-;27004:2;26986:21;;;27043:2;27023:18;;;27016:30;-1:-1:-1;;;;;;;;;;;27077:2:142;27062:18;;27055:62;-1:-1:-1;;;27148:2:142;27133:18;;27126:42;27200:3;27185:19;;26802:408::o;27921:315::-;-1:-1:-1;;;;;28096:32:142;;28078:51;;28165:2;28160;28145:18;;28138:30;;;-1:-1:-1;;28185:45:142;;28211:18;;28203:6;28185:45;:::i;28919:127::-;28980:10;28975:3;28971:20;28968:1;28961:31;29011:4;29008:1;29001:15;29035:4;29032:1;29025:15;29051:1653;29143:6;29174:2;29217;29205:9;29196:7;29192:23;29188:32;29185:52;;;29233:1;29230;29223:12;29185:52;29260:16;;-1:-1:-1;;;;;29325:14:142;;;29322:34;;;29352:1;29349;29342:12;29322:34;29375:22;;;;29431:4;29413:16;;;29409:27;29406:47;;;29449:1;29446;29439:12;29406:47;29475:22;;:::i;:::-;29526:2;29520:9;29513:5;29506:24;29568:2;29564;29560:11;29554:18;29581:33;29606:7;29581:33;:::i;:::-;29630:14;;;29623:31;29692:2;29684:11;;29678:18;29705:33;29678:18;29705:33;:::i;:::-;29765:2;29754:14;;29747:31;29817:2;29809:11;;29803:18;29833:16;;;29830:36;;;29862:1;29859;29852:12;29830:36;29885:17;;29936:2;29918:16;;;29914:25;29911:45;;;29952:1;29949;29942:12;29911:45;29980:22;;:::i;:::-;30033:2;30027:9;30018:7;30011:26;30076:2;30072;30068:11;30062:18;30105:2;30095:8;30092:16;30089:36;;;30121:1;30118;30111:12;30089:36;30144:17;;;-1:-1:-1;30192:4:142;30184:13;;30180:27;-1:-1:-1;30170:55:142;;30221:1;30218;30211:12;30170:55;30250:2;30244:9;30234:19;;30275:49;30291:32;30320:2;30291:32;:::i;30275:49::-;30347:2;30340:5;30333:17;30387:7;30382:2;30377;30373;30369:11;30365:20;30362:33;30359:53;;;30408:1;30405;30398:12;30359:53;30421:67;30485:2;30480;30473:5;30469:14;30464:2;30460;30456:11;30421:67;:::i;:::-;30504:16;;;30497:31;;;;-1:-1:-1;30555:2:142;30544:14;;30537:31;;;;-1:-1:-1;30615:3:142;30607:12;;;30601:19;30584:15;;;30577:44;30668:3;30660:12;;;30654:19;30637:15;;;30630:44;30548:5;29051:1653;-1:-1:-1;;;29051:1653:142:o;30709:407::-;30911:2;30893:21;;;30950:2;30930:18;;;30923:30;30989:34;30984:2;30969:18;;30962:62;-1:-1:-1;;;31055:2:142;31040:18;;31033:41;31106:3;31091:19;;30709:407::o;31121:143::-;31205:1;31198:5;31195:12;31185:46;;31211:18;;:::i;:::-;31240;;31121:143::o;31269:142::-;31352:1;31345:5;31342:12;31332:46;;31358:18;;:::i;31953:1260::-;32143:4;32185:3;32174:9;32170:19;32162:27;;32214:6;32208:13;32254:2;32248:9;32237;32230:28;32310:4;32306:2;32302:13;32296:20;32289:4;32278:9;32274:20;32267:50;32369:4;32365:2;32361:13;32355:20;32348:4;32337:9;32333:20;32326:50;32428:4;32424:2;32420:13;32414:20;32407:4;32396:9;32392:20;32385:50;;32482:4;32474:6;32470:17;32464:24;32497:64;32555:4;32544:9;32540:20;32526:12;32497:64;:::i;:::-;;32610:4;32602:6;32598:17;32592:24;32625:65;32684:4;32673:9;32669:20;32653:14;32625:65;:::i;:::-;-1:-1:-1;32739:4:142;32727:17;;;32721:24;31491:12;32821:4;32806:20;;31479:25;32876:4;32864:17;;;32858:24;31635:12;;-1:-1:-1;;;;;31631:21:142;;;32957:4;32942:20;;31619:34;31706:4;31695:16;;31689:23;31685:32;31669:14;;;31662:56;31767:4;31756:16;;31750:23;31734:14;;;31727:47;31812:16;;;31806:23;31790:14;;;31783:47;31868:16;;31862:23;31846:14;;;31839:47;31599:3;31924:16;;;31918:23;31902:14;;;31895:47;33000:17;;32994:24;33027:58;33077:6;33062:22;;32994:24;33027:58;:::i;:::-;;33134:4;33126:6;33122:17;33116:24;33149:58;33199:6;33188:9;33184:22;33168:14;33149:58;:::i;:::-;;31953:1260;;;;:::o;33218:979::-;33643:6;33632:9;33625:25;33606:4;33686:1;33682;33677:3;33673:11;33669:19;33736:2;33728:6;33724:15;33719:2;33708:9;33704:18;33697:43;33776:3;33771:2;33760:9;33756:18;33749:31;33803:46;33844:3;33833:9;33829:19;33821:6;33803:46;:::i;:::-;33897:2;33889:6;33885:15;33880:2;33869:9;33865:18;33858:43;33938:6;33932:3;33921:9;33917:19;33910:35;33994:9;33986:6;33982:22;33976:3;33965:9;33961:19;33954:51;34028:42;34063:6;34055;34028:42;:::i;:::-;34014:56;;;34119:9;34111:6;34107:22;34101:3;34090:9;34086:19;34079:51;34147:44;34184:6;34176;34147:44;:::i;:::-;34139:52;33218:979;-1:-1:-1;;;;;;;;;;33218:979:142:o;34202:613::-;34477:25;;;-1:-1:-1;;;;;34576:15:142;;;34571:2;34556:18;;34549:43;34628:15;;;34623:2;34608:18;;34601:43;34680:15;;34675:2;34660:18;;34653:43;34529:3;34727;34712:19;;34705:32;;;34458:4;;34754:55;;34789:19;;34781:6;34754:55;:::i;36989:812::-;-1:-1:-1;;;37395:3:142;37388:38;37370:3;37455:6;37449:13;37471:75;37539:6;37534:2;37529:3;37525:12;37518:4;37510:6;37506:17;37471:75;:::i;:::-;-1:-1:-1;;;37605:2:142;37565:16;;;37597:11;;;37590:40;37655:13;;37677:76;37655:13;37739:2;37731:11;;37724:4;37712:17;;37677:76;:::i;:::-;37773:17;37792:2;37769:26;;36989:812;-1:-1:-1;;;;36989:812:142:o;37806:245::-;37873:6;37926:2;37914:9;37905:7;37901:23;37897:32;37894:52;;;37942:1;37939;37932:12;37894:52;37974:9;37968:16;37993:28;38015:5;37993:28;:::i;39088:136::-;39127:3;39155:5;39145:39;;39164:18;;:::i;:::-;-1:-1:-1;;;39200:18:142;;39088:136::o;39997:287::-;40126:3;40164:6;40158:13;40180:66;40239:6;40234:3;40227:4;40219:6;40215:17;40180:66;:::i;:::-;40262:16;;;;;39997:287;-1:-1:-1;;39997:287:142:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7649,"length":32},{"start":7716,"length":32},{"start":7967,"length":32},{"start":8034,"length":32},{"start":8390,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":\"RegistryCommunityV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":"RegistryCommunityV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70985,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70988,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70991,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70994,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70997,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":71000,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":71003,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":71006,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":71009,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":71012,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":71016,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":71020,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":71024,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)76451"},{"astId":71028,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)76184"},{"astId":71031,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":71034,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":71039,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":71046,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":71052,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70802_storage)"},{"astId":71058,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":71065,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":71069,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72699,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)76184":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)76451":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70802_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70802_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70802_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70797,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70799,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70801,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","id":72701,"exportedSymbols":{"AccessControlUpgradeable":[52697],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"ERC165Checker":[57919],"ERC1967Proxy":[55021],"FAllo":[76184],"IAllo":[2610],"IERC20":[56528],"IPointStrategy":[65536],"IRegistry":[2802],"IRegistryFactory":[70017],"ISafe":[76451],"Member":[70802],"Metadata":[3098],"PointSystem":[65545],"ProxyOwnableUpgrader":[70711],"ReentrancyGuardUpgradeable":[53237],"RegistryCommunityInitializeParamsV0_0":[70795],"RegistryCommunityV0_0":[72700],"SafeERC20":[56965],"Strategies":[70806],"UUPSUpgradeable":[55672],"Upgrades":[61176]},"nodeType":"SourceUnit","src":"42:25985:107","nodes":[{"id":70732,"nodeType":"PragmaDirective","src":"42:24:107","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70734,"nodeType":"ImportDirective","src":"68:70:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":56529,"symbolAliases":[{"foreign":{"id":70733,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56528,"src":"76:6:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70736,"nodeType":"ImportDirective","src":"139:82:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","file":"@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":56966,"symbolAliases":[{"foreign":{"id":70735,"name":"SafeERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56965,"src":"147:9:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70738,"nodeType":"ImportDirective","src":"222:92:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165Checker.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":57920,"symbolAliases":[{"foreign":{"id":70737,"name":"ERC165Checker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57919,"src":"230:13:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70740,"nodeType":"ImportDirective","src":"315:88:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":70739,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"323:15:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70742,"nodeType":"ImportDirective","src":"405:132:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":53238,"symbolAliases":[{"foreign":{"id":70741,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53237,"src":"413:26:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70744,"nodeType":"ImportDirective","src":"538:126:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":52698,"symbolAliases":[{"foreign":{"id":70743,"name":"AccessControlUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52697,"src":"546:24:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70746,"nodeType":"ImportDirective","src":"666:66:107","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"allo-v2-contracts/core/interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":2611,"symbolAliases":[{"foreign":{"id":70745,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"674:5:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70748,"nodeType":"ImportDirective","src":"733:65:107","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":70747,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"741:5:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70751,"nodeType":"ImportDirective","src":"799:84:107","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":70749,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"807:9:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70750,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"818:8:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70753,"nodeType":"ImportDirective","src":"884:46:107","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","file":"../interfaces/FAllo.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":76185,"symbolAliases":[{"foreign":{"id":70752,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76184,"src":"892:5:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70755,"nodeType":"ImportDirective","src":"931:46:107","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ISafe.sol","file":"../interfaces/ISafe.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":76468,"symbolAliases":[{"foreign":{"id":70754,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76451,"src":"939:5:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70757,"nodeType":"ImportDirective","src":"978:57:107","nodes":[],"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","file":"../IRegistryFactory.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":70018,"symbolAliases":[{"foreign":{"id":70756,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"986:16:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70762,"nodeType":"ImportDirective","src":"1036:143:107","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":70758,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"1049:14:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70759,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"1069:14:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70760,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"1089:30:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70761,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"1125:11:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70764,"nodeType":"ImportDirective","src":"1180:66:107","nodes":[],"absolutePath":"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol","file":"@openzeppelin/foundry/LegacyUpgrades.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":61297,"symbolAliases":[{"foreign":{"id":70763,"name":"Upgrades","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61176,"src":"1188:8:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70766,"nodeType":"ImportDirective","src":"1247:84:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":70765,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"1255:12:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70768,"nodeType":"ImportDirective","src":"1332:65:107","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":72701,"sourceUnit":70712,"symbolAliases":[{"foreign":{"id":70767,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70711,"src":"1340:20:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70795,"nodeType":"StructDefinition","src":"2292:368:107","nodes":[],"canonicalName":"RegistryCommunityInitializeParamsV0_0","members":[{"constant":false,"id":70770,"mutability":"mutable","name":"_allo","nameLocation":"2351:5:107","nodeType":"VariableDeclaration","scope":70795,"src":"2343:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70769,"name":"address","nodeType":"ElementaryTypeName","src":"2343:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70773,"mutability":"mutable","name":"_gardenToken","nameLocation":"2369:12:107","nodeType":"VariableDeclaration","scope":70795,"src":"2362:19:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":70772,"nodeType":"UserDefinedTypeName","pathNode":{"id":70771,"name":"IERC20","nameLocations":["2362:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"2362:6:107"},"referencedDeclaration":56528,"src":"2362:6:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":70775,"mutability":"mutable","name":"_registerStakeAmount","nameLocation":"2395:20:107","nodeType":"VariableDeclaration","scope":70795,"src":"2387:28:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70774,"name":"uint256","nodeType":"ElementaryTypeName","src":"2387:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70777,"mutability":"mutable","name":"_communityFee","nameLocation":"2429:13:107","nodeType":"VariableDeclaration","scope":70795,"src":"2421:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70776,"name":"uint256","nodeType":"ElementaryTypeName","src":"2421:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70779,"mutability":"mutable","name":"_nonce","nameLocation":"2456:6:107","nodeType":"VariableDeclaration","scope":70795,"src":"2448:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70778,"name":"uint256","nodeType":"ElementaryTypeName","src":"2448:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70781,"mutability":"mutable","name":"_registryFactory","nameLocation":"2476:16:107","nodeType":"VariableDeclaration","scope":70795,"src":"2468:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70780,"name":"address","nodeType":"ElementaryTypeName","src":"2468:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70783,"mutability":"mutable","name":"_feeReceiver","nameLocation":"2506:12:107","nodeType":"VariableDeclaration","scope":70795,"src":"2498:20:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70782,"name":"address","nodeType":"ElementaryTypeName","src":"2498:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70786,"mutability":"mutable","name":"_metadata","nameLocation":"2533:9:107","nodeType":"VariableDeclaration","scope":70795,"src":"2524:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":70785,"nodeType":"UserDefinedTypeName","pathNode":{"id":70784,"name":"Metadata","nameLocations":["2524:8:107"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2524:8:107"},"referencedDeclaration":3098,"src":"2524:8:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":70788,"mutability":"mutable","name":"_councilSafe","nameLocation":"2564:12:107","nodeType":"VariableDeclaration","scope":70795,"src":"2548:28:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":70787,"name":"address","nodeType":"ElementaryTypeName","src":"2548:15:107","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":70790,"mutability":"mutable","name":"_communityName","nameLocation":"2589:14:107","nodeType":"VariableDeclaration","scope":70795,"src":"2582:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70789,"name":"string","nodeType":"ElementaryTypeName","src":"2582:6:107","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70792,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"2614:14:107","nodeType":"VariableDeclaration","scope":70795,"src":"2609:19:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70791,"name":"bool","nodeType":"ElementaryTypeName","src":"2609:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":70794,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"2641:16:107","nodeType":"VariableDeclaration","scope":70795,"src":"2634:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70793,"name":"string","nodeType":"ElementaryTypeName","src":"2634:6:107","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"RegistryCommunityInitializeParamsV0_0","nameLocation":"2299:37:107","scope":72701,"visibility":"public"},{"id":70802,"nodeType":"StructDefinition","src":"2662:86:107","nodes":[],"canonicalName":"Member","members":[{"constant":false,"id":70797,"mutability":"mutable","name":"member","nameLocation":"2690:6:107","nodeType":"VariableDeclaration","scope":70802,"src":"2682:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70796,"name":"address","nodeType":"ElementaryTypeName","src":"2682:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70799,"mutability":"mutable","name":"stakedAmount","nameLocation":"2710:12:107","nodeType":"VariableDeclaration","scope":70802,"src":"2702:20:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70798,"name":"uint256","nodeType":"ElementaryTypeName","src":"2702:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70801,"mutability":"mutable","name":"isRegistered","nameLocation":"2733:12:107","nodeType":"VariableDeclaration","scope":70802,"src":"2728:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70800,"name":"bool","nodeType":"ElementaryTypeName","src":"2728:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"Member","nameLocation":"2669:6:107","scope":72701,"visibility":"public"},{"id":70806,"nodeType":"StructDefinition","src":"2750:47:107","nodes":[],"canonicalName":"Strategies","members":[{"constant":false,"id":70805,"mutability":"mutable","name":"strategies","nameLocation":"2784:10:107","nodeType":"VariableDeclaration","scope":70806,"src":"2774:20:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70803,"name":"address","nodeType":"ElementaryTypeName","src":"2774:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70804,"nodeType":"ArrayTypeName","src":"2774:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"Strategies","nameLocation":"2757:10:107","scope":72701,"visibility":"public"},{"id":72700,"nodeType":"ContractDefinition","src":"2850:23176:107","nodes":[{"id":70817,"nodeType":"EventDefinition","src":"3131:29:107","nodes":[],"anonymous":false,"eventSelector":"aaded18d4d508696508b945d03ff3d168110dbb73e17aeda699745655fa958d2","name":"AlloSet","nameLocation":"3137:7:107","parameters":{"id":70816,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70815,"indexed":false,"mutability":"mutable","name":"_allo","nameLocation":"3153:5:107","nodeType":"VariableDeclaration","scope":70817,"src":"3145:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70814,"name":"address","nodeType":"ElementaryTypeName","src":"3145:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3144:15:107"}},{"id":70821,"nodeType":"EventDefinition","src":"3165:36:107","nodes":[],"anonymous":false,"eventSelector":"ad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb68872","name":"CouncilSafeSet","nameLocation":"3171:14:107","parameters":{"id":70820,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70819,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"3194:5:107","nodeType":"VariableDeclaration","scope":70821,"src":"3186:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70818,"name":"address","nodeType":"ElementaryTypeName","src":"3186:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3185:15:107"}},{"id":70827,"nodeType":"EventDefinition","src":"3206:74:107","nodes":[],"anonymous":false,"eventSelector":"83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8","name":"CouncilSafeChangeStarted","nameLocation":"3212:24:107","parameters":{"id":70826,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70823,"indexed":false,"mutability":"mutable","name":"_safeOwner","nameLocation":"3245:10:107","nodeType":"VariableDeclaration","scope":70827,"src":"3237:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70822,"name":"address","nodeType":"ElementaryTypeName","src":"3237:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70825,"indexed":false,"mutability":"mutable","name":"_newSafeOwner","nameLocation":"3265:13:107","nodeType":"VariableDeclaration","scope":70827,"src":"3257:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70824,"name":"address","nodeType":"ElementaryTypeName","src":"3257:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3236:43:107"}},{"id":70833,"nodeType":"EventDefinition","src":"3285:63:107","nodes":[],"anonymous":false,"eventSelector":"67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f7689","name":"MemberRegistered","nameLocation":"3291:16:107","parameters":{"id":70832,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70829,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3316:7:107","nodeType":"VariableDeclaration","scope":70833,"src":"3308:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70828,"name":"address","nodeType":"ElementaryTypeName","src":"3308:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70831,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3333:13:107","nodeType":"VariableDeclaration","scope":70833,"src":"3325:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70830,"name":"uint256","nodeType":"ElementaryTypeName","src":"3325:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3307:40:107"}},{"id":70839,"nodeType":"EventDefinition","src":"3353:67:107","nodes":[],"anonymous":false,"eventSelector":"a13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f4","name":"MemberUnregistered","nameLocation":"3359:18:107","parameters":{"id":70838,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70835,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3386:7:107","nodeType":"VariableDeclaration","scope":70839,"src":"3378:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70834,"name":"address","nodeType":"ElementaryTypeName","src":"3378:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70837,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3403:15:107","nodeType":"VariableDeclaration","scope":70839,"src":"3395:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70836,"name":"uint256","nodeType":"ElementaryTypeName","src":"3395:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3377:42:107"}},{"id":70847,"nodeType":"EventDefinition","src":"3425:87:107","nodes":[],"anonymous":false,"eventSelector":"b5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3","name":"MemberKicked","nameLocation":"3431:12:107","parameters":{"id":70846,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70841,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3452:7:107","nodeType":"VariableDeclaration","scope":70847,"src":"3444:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70840,"name":"address","nodeType":"ElementaryTypeName","src":"3444:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70843,"indexed":false,"mutability":"mutable","name":"_transferAddress","nameLocation":"3469:16:107","nodeType":"VariableDeclaration","scope":70847,"src":"3461:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70842,"name":"address","nodeType":"ElementaryTypeName","src":"3461:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70845,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3495:15:107","nodeType":"VariableDeclaration","scope":70847,"src":"3487:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70844,"name":"uint256","nodeType":"ElementaryTypeName","src":"3487:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3443:68:107"}},{"id":70851,"nodeType":"EventDefinition","src":"3517:43:107","nodes":[],"anonymous":false,"eventSelector":"611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6","name":"CommunityFeeUpdated","nameLocation":"3523:19:107","parameters":{"id":70850,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70849,"indexed":false,"mutability":"mutable","name":"_newFee","nameLocation":"3551:7:107","nodeType":"VariableDeclaration","scope":70851,"src":"3543:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70848,"name":"uint256","nodeType":"ElementaryTypeName","src":"3543:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3542:17:107"}},{"id":70860,"nodeType":"EventDefinition","src":"3565:89:107","nodes":[],"anonymous":false,"eventSelector":"2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed03205","name":"RegistryInitialized","nameLocation":"3571:19:107","parameters":{"id":70859,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70853,"indexed":false,"mutability":"mutable","name":"_profileId","nameLocation":"3599:10:107","nodeType":"VariableDeclaration","scope":70860,"src":"3591:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70852,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3591:7:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":70855,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"3618:14:107","nodeType":"VariableDeclaration","scope":70860,"src":"3611:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70854,"name":"string","nodeType":"ElementaryTypeName","src":"3611:6:107","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70858,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"3643:9:107","nodeType":"VariableDeclaration","scope":70860,"src":"3634:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70857,"nodeType":"UserDefinedTypeName","pathNode":{"id":70856,"name":"Metadata","nameLocations":["3634:8:107"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"3634:8:107"},"referencedDeclaration":3098,"src":"3634:8:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"3590:63:107"}},{"id":70864,"nodeType":"EventDefinition","src":"3659:39:107","nodes":[],"anonymous":false,"eventSelector":"3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1","name":"StrategyAdded","nameLocation":"3665:13:107","parameters":{"id":70863,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70862,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3687:9:107","nodeType":"VariableDeclaration","scope":70864,"src":"3679:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70861,"name":"address","nodeType":"ElementaryTypeName","src":"3679:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3678:19:107"}},{"id":70868,"nodeType":"EventDefinition","src":"3703:41:107","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"3709:15:107","parameters":{"id":70867,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70866,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3733:9:107","nodeType":"VariableDeclaration","scope":70868,"src":"3725:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70865,"name":"address","nodeType":"ElementaryTypeName","src":"3725:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3724:19:107"}},{"id":70876,"nodeType":"EventDefinition","src":"3749:93:107","nodes":[],"anonymous":false,"eventSelector":"f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec","name":"MemberActivatedStrategy","nameLocation":"3755:23:107","parameters":{"id":70875,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70870,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3787:7:107","nodeType":"VariableDeclaration","scope":70876,"src":"3779:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70869,"name":"address","nodeType":"ElementaryTypeName","src":"3779:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70872,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3804:9:107","nodeType":"VariableDeclaration","scope":70876,"src":"3796:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70871,"name":"address","nodeType":"ElementaryTypeName","src":"3796:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70874,"indexed":false,"mutability":"mutable","name":"_pointsToIncrease","nameLocation":"3823:17:107","nodeType":"VariableDeclaration","scope":70876,"src":"3815:25:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70873,"name":"uint256","nodeType":"ElementaryTypeName","src":"3815:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3778:63:107"}},{"id":70882,"nodeType":"EventDefinition","src":"3847:68:107","nodes":[],"anonymous":false,"eventSelector":"00de109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b","name":"MemberDeactivatedStrategy","nameLocation":"3853:25:107","parameters":{"id":70881,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70878,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3887:7:107","nodeType":"VariableDeclaration","scope":70882,"src":"3879:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70877,"name":"address","nodeType":"ElementaryTypeName","src":"3879:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70880,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3904:9:107","nodeType":"VariableDeclaration","scope":70882,"src":"3896:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70879,"name":"address","nodeType":"ElementaryTypeName","src":"3896:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3878:36:107"}},{"id":70886,"nodeType":"EventDefinition","src":"3920:47:107","nodes":[],"anonymous":false,"eventSelector":"5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f","name":"BasisStakedAmountSet","nameLocation":"3926:20:107","parameters":{"id":70885,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70884,"indexed":false,"mutability":"mutable","name":"_newAmount","nameLocation":"3955:10:107","nodeType":"VariableDeclaration","scope":70886,"src":"3947:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70883,"name":"uint256","nodeType":"ElementaryTypeName","src":"3947:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3946:20:107"}},{"id":70892,"nodeType":"EventDefinition","src":"3972:67:107","nodes":[],"anonymous":false,"eventSelector":"576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f","name":"MemberPowerIncreased","nameLocation":"3978:20:107","parameters":{"id":70891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70888,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4007:7:107","nodeType":"VariableDeclaration","scope":70892,"src":"3999:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70887,"name":"address","nodeType":"ElementaryTypeName","src":"3999:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70890,"indexed":false,"mutability":"mutable","name":"_stakedAmount","nameLocation":"4024:13:107","nodeType":"VariableDeclaration","scope":70892,"src":"4016:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70889,"name":"uint256","nodeType":"ElementaryTypeName","src":"4016:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3998:40:107"}},{"id":70898,"nodeType":"EventDefinition","src":"4044:69:107","nodes":[],"anonymous":false,"eventSelector":"6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8","name":"MemberPowerDecreased","nameLocation":"4050:20:107","parameters":{"id":70897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70894,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4079:7:107","nodeType":"VariableDeclaration","scope":70898,"src":"4071:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70893,"name":"address","nodeType":"ElementaryTypeName","src":"4071:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70896,"indexed":false,"mutability":"mutable","name":"_unstakedAmount","nameLocation":"4096:15:107","nodeType":"VariableDeclaration","scope":70898,"src":"4088:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70895,"name":"uint256","nodeType":"ElementaryTypeName","src":"4088:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4070:42:107"}},{"id":70911,"nodeType":"EventDefinition","src":"4118:110:107","nodes":[],"anonymous":false,"eventSelector":"778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d283","name":"PoolCreated","nameLocation":"4124:11:107","parameters":{"id":70910,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70900,"indexed":false,"mutability":"mutable","name":"_poolId","nameLocation":"4144:7:107","nodeType":"VariableDeclaration","scope":70911,"src":"4136:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70899,"name":"uint256","nodeType":"ElementaryTypeName","src":"4136:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70902,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4161:9:107","nodeType":"VariableDeclaration","scope":70911,"src":"4153:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70901,"name":"address","nodeType":"ElementaryTypeName","src":"4153:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70904,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"4180:10:107","nodeType":"VariableDeclaration","scope":70911,"src":"4172:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70903,"name":"address","nodeType":"ElementaryTypeName","src":"4172:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70906,"indexed":false,"mutability":"mutable","name":"_token","nameLocation":"4200:6:107","nodeType":"VariableDeclaration","scope":70911,"src":"4192:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70905,"name":"address","nodeType":"ElementaryTypeName","src":"4192:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70909,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4217:9:107","nodeType":"VariableDeclaration","scope":70911,"src":"4208:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70908,"nodeType":"UserDefinedTypeName","pathNode":{"id":70907,"name":"Metadata","nameLocations":["4208:8:107"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"4208:8:107"},"referencedDeclaration":3098,"src":"4208:8:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"4135:92:107"}},{"id":70913,"nodeType":"ErrorDefinition","src":"4414:28:107","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4420:19:107","parameters":{"id":70912,"nodeType":"ParameterList","parameters":[],"src":"4439:2:107"}},{"id":70915,"nodeType":"ErrorDefinition","src":"4447:29:107","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4453:20:107","parameters":{"id":70914,"nodeType":"ParameterList","parameters":[],"src":"4473:2:107"}},{"id":70919,"nodeType":"ErrorDefinition","src":"4481:38:107","nodes":[],"errorSelector":"fc4be72f","name":"UserNotInCouncil","nameLocation":"4487:16:107","parameters":{"id":70918,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70917,"mutability":"mutable","name":"_user","nameLocation":"4512:5:107","nodeType":"VariableDeclaration","scope":70919,"src":"4504:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70916,"name":"address","nodeType":"ElementaryTypeName","src":"4504:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4503:15:107"}},{"id":70921,"nodeType":"ErrorDefinition","src":"4524:26:107","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4530:17:107","parameters":{"id":70920,"nodeType":"ParameterList","parameters":[],"src":"4547:2:107"}},{"id":70923,"nodeType":"ErrorDefinition","src":"4555:30:107","nodes":[],"errorSelector":"9e4a65f6","name":"UserAlreadyRegistered","nameLocation":"4561:21:107","parameters":{"id":70922,"nodeType":"ParameterList","parameters":[],"src":"4582:2:107"}},{"id":70925,"nodeType":"ErrorDefinition","src":"4590:27:107","nodes":[],"errorSelector":"e9a644b8","name":"UserNotGardenOwner","nameLocation":"4596:18:107","parameters":{"id":70924,"nodeType":"ParameterList","parameters":[],"src":"4614:2:107"}},{"id":70927,"nodeType":"ErrorDefinition","src":"4622:29:107","nodes":[],"errorSelector":"d5b9bc96","name":"UserAlreadyActivated","nameLocation":"4628:20:107","parameters":{"id":70926,"nodeType":"ParameterList","parameters":[],"src":"4648:2:107"}},{"id":70929,"nodeType":"ErrorDefinition","src":"4656:31:107","nodes":[],"errorSelector":"c12369dc","name":"UserAlreadyDeactivated","nameLocation":"4662:22:107","parameters":{"id":70928,"nodeType":"ParameterList","parameters":[],"src":"4684:2:107"}},{"id":70931,"nodeType":"ErrorDefinition","src":"4692:23:107","nodes":[],"errorSelector":"968a4d2c","name":"StrategyExists","nameLocation":"4698:14:107","parameters":{"id":70930,"nodeType":"ParameterList","parameters":[],"src":"4712:2:107"}},{"id":70933,"nodeType":"ErrorDefinition","src":"4720:25:107","nodes":[],"errorSelector":"46c26e4b","name":"StrategyDisabled","nameLocation":"4726:16:107","parameters":{"id":70932,"nodeType":"ParameterList","parameters":[],"src":"4742:2:107"}},{"id":70935,"nodeType":"ErrorDefinition","src":"4750:26:107","nodes":[],"errorSelector":"ebcd0d6e","name":"SenderNotNewOwner","nameLocation":"4756:17:107","parameters":{"id":70934,"nodeType":"ParameterList","parameters":[],"src":"4773:2:107"}},{"id":70937,"nodeType":"ErrorDefinition","src":"4781:26:107","nodes":[],"errorSelector":"bbe79611","name":"SenderNotStrategy","nameLocation":"4787:17:107","parameters":{"id":70936,"nodeType":"ParameterList","parameters":[],"src":"4804:2:107"}},{"id":70939,"nodeType":"ErrorDefinition","src":"4812:26:107","nodes":[],"errorSelector":"c70d18aa","name":"ValueCannotBeZero","nameLocation":"4818:17:107","parameters":{"id":70938,"nodeType":"ParameterList","parameters":[],"src":"4835:2:107"}},{"id":70941,"nodeType":"ErrorDefinition","src":"4843:29:107","nodes":[],"errorSelector":"fe925f7d","name":"NewFeeGreaterThanMax","nameLocation":"4849:20:107","parameters":{"id":70940,"nodeType":"ParameterList","parameters":[],"src":"4869:2:107"}},{"id":70943,"nodeType":"ErrorDefinition","src":"4877:23:107","nodes":[],"errorSelector":"cb63dc72","name":"KickNotEnabled","nameLocation":"4883:14:107","parameters":{"id":70942,"nodeType":"ParameterList","parameters":[],"src":"4897:2:107"}},{"id":70945,"nodeType":"ErrorDefinition","src":"4905:26:107","nodes":[],"errorSelector":"d4d3290e","name":"PointsDeactivated","nameLocation":"4911:17:107","parameters":{"id":70944,"nodeType":"ParameterList","parameters":[],"src":"4928:2:107"}},{"id":70947,"nodeType":"ErrorDefinition","src":"4936:29:107","nodes":[],"errorSelector":"9c47d02e","name":"DecreaseUnderMinimum","nameLocation":"4942:20:107","parameters":{"id":70946,"nodeType":"ParameterList","parameters":[],"src":"4962:2:107"}},{"id":70953,"nodeType":"ErrorDefinition","src":"4970:80:107","nodes":[],"errorSelector":"8a11f318","name":"CantDecreaseMoreThanPower","nameLocation":"4976:25:107","parameters":{"id":70952,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70949,"mutability":"mutable","name":"_decreaseAmount","nameLocation":"5010:15:107","nodeType":"VariableDeclaration","scope":70953,"src":"5002:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70948,"name":"uint256","nodeType":"ElementaryTypeName","src":"5002:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70951,"mutability":"mutable","name":"_currentPower","nameLocation":"5035:13:107","nodeType":"VariableDeclaration","scope":70953,"src":"5027:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70950,"name":"uint256","nodeType":"ElementaryTypeName","src":"5027:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5001:48:107"}},{"id":70956,"nodeType":"UsingForDirective","src":"5056:32:107","nodes":[],"global":false,"libraryName":{"id":70954,"name":"ERC165Checker","nameLocations":["5062:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":57919,"src":"5062:13:107"},"typeName":{"id":70955,"name":"address","nodeType":"ElementaryTypeName","src":"5080:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70960,"nodeType":"UsingForDirective","src":"5093:27:107","nodes":[],"global":false,"libraryName":{"id":70957,"name":"SafeERC20","nameLocations":["5099:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":56965,"src":"5099:9:107"},"typeName":{"id":70959,"nodeType":"UserDefinedTypeName","pathNode":{"id":70958,"name":"IERC20","nameLocations":["5113:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"5113:6:107"},"referencedDeclaration":56528,"src":"5113:6:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}},{"id":70963,"nodeType":"UsingForDirective","src":"5125:24:107","nodes":[],"global":false,"libraryName":{"id":70961,"name":"Clone","nameLocations":["5131:5:107"],"nodeType":"IdentifierPath","referencedDeclaration":3002,"src":"5131:5:107"},"typeName":{"id":70962,"name":"address","nodeType":"ElementaryTypeName","src":"5141:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70966,"nodeType":"VariableDeclaration","src":"5155:38:107","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"5178:7:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70964,"name":"string","nodeType":"ElementaryTypeName","src":"5155:6:107","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":70965,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5188:5:107","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":70970,"nodeType":"VariableDeclaration","src":"5279:75:107","nodes":[],"constant":true,"documentation":{"id":70967,"nodeType":"StructuredDocumentation","src":"5199:75:107","text":"@notice The native address to represent native token eg: ETH in mainnet"},"functionSelector":"a0cf0aea","mutability":"constant","name":"NATIVE","nameLocation":"5303:6:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70968,"name":"address","nodeType":"ElementaryTypeName","src":"5279:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"hexValue":"307845656565654565656545654565654565456545656545454565656565456565656565656545456545","id":70969,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5312:42:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"},"visibility":"public"},{"id":70976,"nodeType":"VariableDeclaration","src":"5444:49:107","nodes":[],"constant":true,"documentation":{"id":70971,"nodeType":"StructuredDocumentation","src":"5360:79:107","text":"@notice The precision scale used in the contract to avoid loss of precision"},"functionSelector":"d7050f07","mutability":"constant","name":"PRECISION_SCALE","nameLocation":"5468:15:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70972,"name":"uint256","nodeType":"ElementaryTypeName","src":"5444:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":70975,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70973,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5486:2:107","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":70974,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5492:1:107","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"5486:7:107","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":70982,"nodeType":"VariableDeclaration","src":"5568:54:107","nodes":[],"constant":true,"documentation":{"id":70977,"nodeType":"StructuredDocumentation","src":"5499:64:107","text":"@notice The maximum fee that can be charged to the community"},"functionSelector":"bc063e1a","mutability":"constant","name":"MAX_FEE","nameLocation":"5592:7:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70978,"name":"uint256","nodeType":"ElementaryTypeName","src":"5568:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70981,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70979,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5602:2:107","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":70980,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70976,"src":"5607:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5602:20:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70985,"nodeType":"VariableDeclaration","src":"5695:34:107","nodes":[],"constant":false,"documentation":{"id":70983,"nodeType":"StructuredDocumentation","src":"5628:62:107","text":"@notice The amount of tokens required to register a member"},"functionSelector":"78a0b8a9","mutability":"mutable","name":"registerStakeAmount","nameLocation":"5710:19:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70984,"name":"uint256","nodeType":"ElementaryTypeName","src":"5695:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70988,"nodeType":"VariableDeclaration","src":"5806:27:107","nodes":[],"constant":false,"documentation":{"id":70986,"nodeType":"StructuredDocumentation","src":"5735:66:107","text":"@notice The fee charged to the community for each registration"},"functionSelector":"8961be6b","mutability":"mutable","name":"communityFee","nameLocation":"5821:12:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70987,"name":"uint256","nodeType":"ElementaryTypeName","src":"5806:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70991,"nodeType":"VariableDeclaration","src":"5900:25:107","nodes":[],"constant":false,"documentation":{"id":70989,"nodeType":"StructuredDocumentation","src":"5839:56:107","text":"@notice The nonce used to create new strategy clones"},"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"5915:10:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70990,"name":"uint256","nodeType":"ElementaryTypeName","src":"5900:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70994,"nodeType":"VariableDeclaration","src":"5999:24:107","nodes":[],"constant":false,"documentation":{"id":70992,"nodeType":"StructuredDocumentation","src":"5931:63:107","text":"@notice The profileId of the community in the Allo Registry"},"functionSelector":"08386eba","mutability":"mutable","name":"profileId","nameLocation":"6014:9:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70993,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5999:7:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":70997,"nodeType":"VariableDeclaration","src":"6080:25:107","nodes":[],"constant":false,"documentation":{"id":70995,"nodeType":"StructuredDocumentation","src":"6029:46:107","text":"@notice Enable or disable the kick feature"},"functionSelector":"1f787d28","mutability":"mutable","name":"isKickEnabled","nameLocation":"6092:13:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70996,"name":"bool","nodeType":"ElementaryTypeName","src":"6080:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"public"},{"id":71000,"nodeType":"VariableDeclaration","src":"6172:26:107","nodes":[],"constant":false,"documentation":{"id":70998,"nodeType":"StructuredDocumentation","src":"6112:55:107","text":"@notice The address that receives the community fee"},"functionSelector":"b3f00674","mutability":"mutable","name":"feeReceiver","nameLocation":"6187:11:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70999,"name":"address","nodeType":"ElementaryTypeName","src":"6172:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71003,"nodeType":"VariableDeclaration","src":"6256:30:107","nodes":[],"constant":false,"documentation":{"id":71001,"nodeType":"StructuredDocumentation","src":"6204:47:107","text":"@notice The address of the registry factory"},"functionSelector":"f86c5f89","mutability":"mutable","name":"registryFactory","nameLocation":"6271:15:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71002,"name":"address","nodeType":"ElementaryTypeName","src":"6256:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71006,"nodeType":"VariableDeclaration","src":"6353:38:107","nodes":[],"constant":false,"documentation":{"id":71004,"nodeType":"StructuredDocumentation","src":"6292:56:107","text":"@notice The address of the collateral vault template"},"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"6368:23:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71005,"name":"address","nodeType":"ElementaryTypeName","src":"6353:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71009,"nodeType":"VariableDeclaration","src":"6450:31:107","nodes":[],"constant":false,"documentation":{"id":71007,"nodeType":"StructuredDocumentation","src":"6397:48:107","text":"@notice The address of the strategy template"},"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"6465:16:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71008,"name":"address","nodeType":"ElementaryTypeName","src":"6450:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71012,"nodeType":"VariableDeclaration","src":"6549:41:107","nodes":[],"constant":false,"documentation":{"id":71010,"nodeType":"StructuredDocumentation","src":"6487:57:107","text":"@notice The address of the pending council safe owner"},"functionSelector":"68decabb","mutability":"mutable","name":"pendingCouncilSafe","nameLocation":"6572:18:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":71011,"name":"address","nodeType":"ElementaryTypeName","src":"6549:15:107","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"public"},{"id":71016,"nodeType":"VariableDeclaration","src":"6640:25:107","nodes":[],"constant":false,"documentation":{"id":71013,"nodeType":"StructuredDocumentation","src":"6597:38:107","text":"@notice The Registry Allo contract"},"functionSelector":"7b103999","mutability":"mutable","name":"registry","nameLocation":"6657:8:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":71015,"nodeType":"UserDefinedTypeName","pathNode":{"id":71014,"name":"IRegistry","nameLocations":["6640:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"6640:9:107"},"referencedDeclaration":2802,"src":"6640:9:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"public"},{"id":71020,"nodeType":"VariableDeclaration","src":"6728:25:107","nodes":[],"constant":false,"documentation":{"id":71017,"nodeType":"StructuredDocumentation","src":"6671:52:107","text":"@notice The token used to stake in the community"},"functionSelector":"db61d65c","mutability":"mutable","name":"gardenToken","nameLocation":"6742:11:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":71019,"nodeType":"UserDefinedTypeName","pathNode":{"id":71018,"name":"IERC20","nameLocations":["6728:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"6728:6:107"},"referencedDeclaration":56528,"src":"6728:6:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"public"},{"id":71024,"nodeType":"VariableDeclaration","src":"6809:24:107","nodes":[],"constant":false,"documentation":{"id":71021,"nodeType":"StructuredDocumentation","src":"6759:45:107","text":"@notice The council safe contract address"},"functionSelector":"6c53db9a","mutability":"mutable","name":"councilSafe","nameLocation":"6822:11:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"},"typeName":{"id":71023,"nodeType":"UserDefinedTypeName","pathNode":{"id":71022,"name":"ISafe","nameLocations":["6809:5:107"],"nodeType":"IdentifierPath","referencedDeclaration":76451,"src":"6809:5:107"},"referencedDeclaration":76451,"src":"6809:5:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"visibility":"public"},{"id":71028,"nodeType":"VariableDeclaration","src":"6881:17:107","nodes":[],"constant":false,"documentation":{"id":71025,"nodeType":"StructuredDocumentation","src":"6839:37:107","text":"@notice The Allo contract address"},"functionSelector":"d6d8428d","mutability":"mutable","name":"allo","nameLocation":"6894:4:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"},"typeName":{"id":71027,"nodeType":"UserDefinedTypeName","pathNode":{"id":71026,"name":"FAllo","nameLocations":["6881:5:107"],"nodeType":"IdentifierPath","referencedDeclaration":76184,"src":"6881:5:107"},"referencedDeclaration":76184,"src":"6881:5:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"visibility":"public"},{"id":71031,"nodeType":"VariableDeclaration","src":"6940:27:107","nodes":[],"constant":false,"documentation":{"id":71029,"nodeType":"StructuredDocumentation","src":"6905:30:107","text":"@notice The community name"},"functionSelector":"c6d572ae","mutability":"mutable","name":"communityName","nameLocation":"6954:13:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":71030,"name":"string","nodeType":"ElementaryTypeName","src":"6940:6:107","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":71034,"nodeType":"VariableDeclaration","src":"7025:30:107","nodes":[],"constant":false,"documentation":{"id":71032,"nodeType":"StructuredDocumentation","src":"6973:47:107","text":"@notice The covenant IPFS hash of community"},"functionSelector":"b64e39af","mutability":"mutable","name":"covenantIpfsHash","nameLocation":"7039:16:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":71033,"name":"string","nodeType":"ElementaryTypeName","src":"7025:6:107","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":71039,"nodeType":"VariableDeclaration","src":"7171:68:107","nodes":[],"constant":false,"documentation":{"id":71035,"nodeType":"StructuredDocumentation","src":"7119:47:107","text":"@notice List of enabled/disabled strategies"},"functionSelector":"3a871fe1","mutability":"mutable","name":"enabledStrategies","nameLocation":"7222:17:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":71038,"keyName":"strategy","keyNameLocation":"7187:8:107","keyType":{"id":71036,"name":"address","nodeType":"ElementaryTypeName","src":"7179:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7171:43:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isEnabled","valueNameLocation":"7204:9:107","valueType":{"id":71037,"name":"bool","nodeType":"ElementaryTypeName","src":"7199:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"public"},{"id":71046,"nodeType":"VariableDeclaration","src":"7307:98:107","nodes":[],"constant":false,"documentation":{"id":71040,"nodeType":"StructuredDocumentation","src":"7245:57:107","text":"@notice Power points for each member in each strategy"},"functionSelector":"65e3864c","mutability":"mutable","name":"memberPowerInStrategy","nameLocation":"7384:21:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":71045,"keyName":"strategy","keyNameLocation":"7323:8:107","keyType":{"id":71041,"name":"address","nodeType":"ElementaryTypeName","src":"7315:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7307:69:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":71044,"keyName":"member","keyNameLocation":"7351:6:107","keyType":{"id":71042,"name":"address","nodeType":"ElementaryTypeName","src":"7343:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7335:40:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"power","valueNameLocation":"7369:5:107","valueType":{"id":71043,"name":"uint256","nodeType":"ElementaryTypeName","src":"7361:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":71052,"nodeType":"VariableDeclaration","src":"7505:60:107","nodes":[],"constant":false,"documentation":{"id":71047,"nodeType":"StructuredDocumentation","src":"7411:89:107","text":"@notice Member information as the staked amount and if is registered in the community"},"functionSelector":"88cfe684","mutability":"mutable","name":"addressToMemberInfo","nameLocation":"7546:19:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member)"},"typeName":{"id":71051,"keyName":"member","keyNameLocation":"7521:6:107","keyType":{"id":71048,"name":"address","nodeType":"ElementaryTypeName","src":"7513:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7505:33:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":71050,"nodeType":"UserDefinedTypeName","pathNode":{"id":71049,"name":"Member","nameLocations":["7531:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":70802,"src":"7531:6:107"},"referencedDeclaration":70802,"src":"7531:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member"}}},"visibility":"public"},{"id":71058,"nodeType":"VariableDeclaration","src":"7636:82:107","nodes":[],"constant":false,"documentation":{"id":71053,"nodeType":"StructuredDocumentation","src":"7571:60:107","text":"@notice List of strategies for each member are activated"},"functionSelector":"2b38c69c","mutability":"mutable","name":"strategiesByMember","nameLocation":"7700:18:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"typeName":{"id":71057,"keyName":"member","keyNameLocation":"7652:6:107","keyType":{"id":71054,"name":"address","nodeType":"ElementaryTypeName","src":"7644:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7636:56:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"valueName":"strategiesAddresses","valueNameLocation":"7672:19:107","valueType":{"baseType":{"id":71055,"name":"address","nodeType":"ElementaryTypeName","src":"7662:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71056,"nodeType":"ArrayTypeName","src":"7662:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"visibility":"public"},{"id":71065,"nodeType":"VariableDeclaration","src":"7796:107:107","nodes":[],"constant":false,"documentation":{"id":71059,"nodeType":"StructuredDocumentation","src":"7724:67:107","text":"@notice Mapping to check if a member is activated in a strategy"},"functionSelector":"477a5cc0","mutability":"mutable","name":"memberActivatedInStrategies","nameLocation":"7876:27:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"typeName":{"id":71064,"keyName":"member","keyNameLocation":"7812:6:107","keyType":{"id":71060,"name":"address","nodeType":"ElementaryTypeName","src":"7804:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7796:72:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":71063,"keyName":"strategy","keyNameLocation":"7838:8:107","keyType":{"id":71061,"name":"address","nodeType":"ElementaryTypeName","src":"7830:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7822:45:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isActivated","valueNameLocation":"7855:11:107","valueType":{"id":71062,"name":"bool","nodeType":"ElementaryTypeName","src":"7850:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}}},"visibility":"public"},{"id":71069,"nodeType":"VariableDeclaration","src":"7996:24:107","nodes":[],"constant":false,"documentation":{"id":71066,"nodeType":"StructuredDocumentation","src":"7910:81:107","text":"@notice List of initial members to be added as pool managers in the Allo Pool"},"mutability":"mutable","name":"initialMembers","nameLocation":"8006:14:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[]"},"typeName":{"baseType":{"id":71067,"name":"address","nodeType":"ElementaryTypeName","src":"7996:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71068,"nodeType":"ArrayTypeName","src":"7996:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"id":71075,"nodeType":"VariableDeclaration","src":"8237:68:107","nodes":[],"constant":true,"documentation":{"id":71070,"nodeType":"StructuredDocumentation","src":"8192:40:107","text":"@notice Role to council safe members"},"functionSelector":"733a2d1f","mutability":"constant","name":"COUNCIL_MEMBER","nameLocation":"8261:14:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":71071,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8237:7:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"434f554e43494c5f4d454d424552","id":71073,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8288:16:107","typeDescriptions":{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""},"value":"COUNCIL_MEMBER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""}],"id":71072,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"8278:9:107","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":71074,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8278:27:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":71092,"nodeType":"FunctionDefinition","src":"8478:167:107","nodes":[],"body":{"id":71091,"nodeType":"Block","src":"8527:118:107","nodes":[],"statements":[{"condition":{"id":71083,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8541:36:107","subExpression":{"arguments":[{"id":71079,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71075,"src":"8550:14:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":71080,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8566:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8570:6:107","memberName":"sender","nodeType":"MemberAccess","src":"8566:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71078,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"8542:7:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":71082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8542:35:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71090,"nodeType":"IfStatement","src":"8537:102:107","trueBody":{"id":71089,"nodeType":"Block","src":"8579:60:107","statements":[{"errorCall":{"arguments":[{"expression":{"id":71085,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8617:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8621:6:107","memberName":"sender","nodeType":"MemberAccess","src":"8617:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71084,"name":"UserNotInCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70919,"src":"8600:16:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8600:28:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71088,"nodeType":"RevertStatement","src":"8593:35:107"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"8487:15:107","parameters":{"id":71076,"nodeType":"ParameterList","parameters":[],"src":"8502:2:107"},"returnParameters":{"id":71077,"nodeType":"ParameterList","parameters":[],"src":"8527:0:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":71106,"nodeType":"FunctionDefinition","src":"8651:152:107","nodes":[],"body":{"id":71105,"nodeType":"Block","src":"8709:94:107","nodes":[],"statements":[{"condition":{"id":71099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8723:21:107","subExpression":{"arguments":[{"expression":{"id":71096,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8733:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71097,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8737:6:107","memberName":"sender","nodeType":"MemberAccess","src":"8733:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71095,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72317,"src":"8724:8:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":71098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8724:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71104,"nodeType":"IfStatement","src":"8719:78:107","trueBody":{"id":71103,"nodeType":"Block","src":"8746:51:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71100,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70921,"src":"8767:17:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71101,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8767:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71102,"nodeType":"RevertStatement","src":"8760:26:107"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberSender","nameLocation":"8660:24:107","parameters":{"id":71093,"nodeType":"ParameterList","parameters":[],"src":"8684:2:107"},"returnParameters":{"id":71094,"nodeType":"ParameterList","parameters":[],"src":"8709:0:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":71121,"nodeType":"FunctionDefinition","src":"8809:157:107","nodes":[],"body":{"id":71120,"nodeType":"Block","src":"8875:91:107","nodes":[],"statements":[{"condition":{"id":71114,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8889:18:107","subExpression":{"arguments":[{"id":71112,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71108,"src":"8899:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71111,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72317,"src":"8890:8:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":71113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8890:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71119,"nodeType":"IfStatement","src":"8885:75:107","trueBody":{"id":71118,"nodeType":"Block","src":"8909:51:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71115,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70921,"src":"8930:17:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71116,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8930:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71117,"nodeType":"RevertStatement","src":"8923:26:107"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberAddress","nameLocation":"8818:25:107","parameters":{"id":71109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71108,"mutability":"mutable","name":"_sender","nameLocation":"8852:7:107","nodeType":"VariableDeclaration","scope":71121,"src":"8844:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71107,"name":"address","nodeType":"ElementaryTypeName","src":"8844:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8843:17:107"},"returnParameters":{"id":71110,"nodeType":"ParameterList","parameters":[],"src":"8875:0:107"},"scope":72700,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":71136,"nodeType":"FunctionDefinition","src":"8972:163:107","nodes":[],"body":{"id":71135,"nodeType":"Block","src":"9034:101:107","nodes":[],"statements":[{"condition":{"id":71129,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9048:29:107","subExpression":{"baseExpression":{"id":71126,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71039,"src":"9049:17:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71128,"indexExpression":{"id":71127,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71123,"src":"9067:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9049:28:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71134,"nodeType":"IfStatement","src":"9044:85:107","trueBody":{"id":71133,"nodeType":"Block","src":"9079:50:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71130,"name":"StrategyDisabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70933,"src":"9100:16:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71131,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9100:18:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71132,"nodeType":"RevertStatement","src":"9093:25:107"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyEnabled","nameLocation":"8981:19:107","parameters":{"id":71124,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71123,"mutability":"mutable","name":"_strategy","nameLocation":"9009:9:107","nodeType":"VariableDeclaration","scope":71136,"src":"9001:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71122,"name":"address","nodeType":"ElementaryTypeName","src":"9001:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9000:19:107"},"returnParameters":{"id":71125,"nodeType":"ParameterList","parameters":[],"src":"9034:0:107"},"scope":72700,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":71152,"nodeType":"FunctionDefinition","src":"9141:172:107","nodes":[],"body":{"id":71151,"nodeType":"Block","src":"9220:93:107","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71143,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71138,"src":"9234:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":71144,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71140,"src":"9245:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9234:20:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71150,"nodeType":"IfStatement","src":"9230:77:107","trueBody":{"id":71149,"nodeType":"Block","src":"9256:51:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71146,"name":"SenderNotStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70937,"src":"9277:17:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71147,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9277:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71148,"nodeType":"RevertStatement","src":"9270:26:107"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyAddress","nameLocation":"9150:19:107","parameters":{"id":71141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71138,"mutability":"mutable","name":"_sender","nameLocation":"9178:7:107","nodeType":"VariableDeclaration","scope":71152,"src":"9170:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71137,"name":"address","nodeType":"ElementaryTypeName","src":"9170:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71140,"mutability":"mutable","name":"_strategy","nameLocation":"9195:9:107","nodeType":"VariableDeclaration","scope":71152,"src":"9187:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71139,"name":"address","nodeType":"ElementaryTypeName","src":"9187:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9169:36:107"},"returnParameters":{"id":71142,"nodeType":"ParameterList","parameters":[],"src":"9220:0:107"},"scope":72700,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":71170,"nodeType":"FunctionDefinition","src":"9319:190:107","nodes":[],"body":{"id":71169,"nodeType":"Block","src":"9385:124:107","nodes":[],"statements":[{"condition":{"id":71163,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9399:51:107","subExpression":{"baseExpression":{"baseExpression":{"id":71157,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71065,"src":"9400:27:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71160,"indexExpression":{"expression":{"id":71158,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9428:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9432:6:107","memberName":"sender","nodeType":"MemberAccess","src":"9428:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9400:39:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71162,"indexExpression":{"id":71161,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71154,"src":"9440:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9400:50:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71168,"nodeType":"IfStatement","src":"9395:108:107","trueBody":{"id":71167,"nodeType":"Block","src":"9452:51:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71164,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70945,"src":"9473:17:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71165,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9473:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71166,"nodeType":"RevertStatement","src":"9466:26:107"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyActivatedInStrategy","nameLocation":"9328:23:107","parameters":{"id":71155,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71154,"mutability":"mutable","name":"_strategy","nameLocation":"9360:9:107","nodeType":"VariableDeclaration","scope":71170,"src":"9352:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71153,"name":"address","nodeType":"ElementaryTypeName","src":"9352:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9351:19:107"},"returnParameters":{"id":71156,"nodeType":"ParameterList","parameters":[],"src":"9385:0:107"},"scope":72700,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":71186,"nodeType":"FunctionDefinition","src":"9515:133:107","nodes":[],"body":{"id":71185,"nodeType":"Block","src":"9575:73:107","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71175,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71172,"src":"9589:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":71178,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9609:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":71177,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9601:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71176,"name":"address","nodeType":"ElementaryTypeName","src":"9601:7:107","typeDescriptions":{}}},"id":71179,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9601:10:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9589:22:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71184,"nodeType":"IfStatement","src":"9585:56:107","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71181,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70913,"src":"9620:19:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71182,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9620:21:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71183,"nodeType":"RevertStatement","src":"9613:28:107"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"9524:18:107","parameters":{"id":71173,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71172,"mutability":"mutable","name":"_address","nameLocation":"9551:8:107","nodeType":"VariableDeclaration","scope":71186,"src":"9543:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71171,"name":"address","nodeType":"ElementaryTypeName","src":"9543:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9542:18:107"},"returnParameters":{"id":71174,"nodeType":"ParameterList","parameters":[],"src":"9575:0:107"},"scope":72700,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":71198,"nodeType":"FunctionDefinition","src":"9654:110:107","nodes":[],"body":{"id":71197,"nodeType":"Block","src":"9720:44:107","nodes":[],"statements":[{"expression":{"id":71195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71193,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71009,"src":"9730:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71194,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71188,"src":"9749:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9730:27:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71196,"nodeType":"ExpressionStatement","src":"9730:27:107"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":71191,"kind":"modifierInvocation","modifierName":{"id":71190,"name":"onlyOwner","nameLocations":["9710:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9710:9:107"},"nodeType":"ModifierInvocation","src":"9710:9:107"}],"name":"setStrategyTemplate","nameLocation":"9663:19:107","parameters":{"id":71189,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71188,"mutability":"mutable","name":"template","nameLocation":"9691:8:107","nodeType":"VariableDeclaration","scope":71198,"src":"9683:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71187,"name":"address","nodeType":"ElementaryTypeName","src":"9683:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9682:18:107"},"returnParameters":{"id":71192,"nodeType":"ParameterList","parameters":[],"src":"9720:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":71210,"nodeType":"FunctionDefinition","src":"9770:124:107","nodes":[],"body":{"id":71209,"nodeType":"Block","src":"9843:51:107","nodes":[],"statements":[{"expression":{"id":71207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71205,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71006,"src":"9853:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71206,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"9879:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9853:34:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71208,"nodeType":"ExpressionStatement","src":"9853:34:107"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":71203,"kind":"modifierInvocation","modifierName":{"id":71202,"name":"onlyOwner","nameLocations":["9833:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9833:9:107"},"nodeType":"ModifierInvocation","src":"9833:9:107"}],"name":"setCollateralVaultTemplate","nameLocation":"9779:26:107","parameters":{"id":71201,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71200,"mutability":"mutable","name":"template","nameLocation":"9814:8:107","nodeType":"VariableDeclaration","scope":71210,"src":"9806:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71199,"name":"address","nodeType":"ElementaryTypeName","src":"9806:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9805:18:107"},"returnParameters":{"id":71204,"nodeType":"ParameterList","parameters":[],"src":"9843:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":71485,"nodeType":"FunctionDefinition","src":"10044:2497:107","nodes":[],"body":{"id":71484,"nodeType":"Block","src":"10251:2290:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":71227,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71219,"src":"10278:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71224,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10261:5:107","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract super RegistryCommunityV0_0)"}},"id":71226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10267:10:107","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70646,"src":"10261:16:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71228,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10261:24:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71229,"nodeType":"ExpressionStatement","src":"10261:24:107"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71230,"name":"__ReentrancyGuard_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53176,"src":"10295:22:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":71231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10295:24:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71232,"nodeType":"ExpressionStatement","src":"10295:24:107"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71233,"name":"__AccessControl_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52409,"src":"10329:20:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":71234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10329:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71235,"nodeType":"ExpressionStatement","src":"10329:22:107"},{"expression":{"arguments":[{"id":71237,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71075,"src":"10376:14:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":71238,"name":"DEFAULT_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52392,"src":"10392:18:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":71236,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"10362:13:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":71239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10362:49:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71240,"nodeType":"ExpressionStatement","src":"10362:49:107"},{"expression":{"arguments":[{"arguments":[{"expression":{"id":71244,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10449:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71245,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10456:12:107","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70773,"src":"10449:19:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":71243,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10441:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71242,"name":"address","nodeType":"ElementaryTypeName","src":"10441:7:107","typeDescriptions":{}}},"id":71246,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10441:28:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71241,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"10422:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10422:48:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71248,"nodeType":"ExpressionStatement","src":"10422:48:107"},{"expression":{"arguments":[{"expression":{"id":71250,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10499:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71251,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10506:12:107","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70788,"src":"10499:19:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71249,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"10480:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10480:39:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71253,"nodeType":"ExpressionStatement","src":"10480:39:107"},{"expression":{"arguments":[{"expression":{"id":71255,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10548:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71256,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10555:5:107","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70770,"src":"10548:12:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71254,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"10529:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71257,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10529:32:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71258,"nodeType":"ExpressionStatement","src":"10529:32:107"},{"expression":{"arguments":[{"expression":{"id":71260,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10590:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71261,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10597:16:107","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70781,"src":"10590:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71259,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"10571:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71262,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10571:43:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71263,"nodeType":"ExpressionStatement","src":"10571:43:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71267,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71264,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10629:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71265,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10636:13:107","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70777,"src":"10629:20:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":71266,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10653:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10629:25:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71274,"nodeType":"IfStatement","src":"10625:95:107","trueBody":{"id":71273,"nodeType":"Block","src":"10656:64:107","statements":[{"expression":{"arguments":[{"expression":{"id":71269,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10689:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71270,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10696:12:107","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70783,"src":"10689:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71268,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"10670:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10670:39:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71272,"nodeType":"ExpressionStatement","src":"10670:39:107"}]}},{"expression":{"id":71280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71275,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"10729:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":71277,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10742:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71278,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10749:5:107","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70770,"src":"10742:12:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71276,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76184,"src":"10736:5:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_FAllo_$76184_$","typeString":"type(contract FAllo)"}},"id":71279,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10736:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"src":"10729:26:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"id":71281,"nodeType":"ExpressionStatement","src":"10729:26:107"},{"expression":{"id":71285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71282,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"10765:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71283,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10779:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71284,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10786:12:107","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70773,"src":"10779:19:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"src":"10765:33:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71286,"nodeType":"ExpressionStatement","src":"10765:33:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71290,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71287,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10812:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71288,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10819:20:107","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70775,"src":"10812:27:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":71289,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10843:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10812:32:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71295,"nodeType":"IfStatement","src":"10808:89:107","trueBody":{"id":71294,"nodeType":"Block","src":"10846:51:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71291,"name":"ValueCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70939,"src":"10867:17:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71292,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10867:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71293,"nodeType":"RevertStatement","src":"10860:26:107"}]}},{"expression":{"id":71299,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71296,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"10906:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71297,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10928:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71298,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10935:20:107","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70775,"src":"10928:27:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10906:49:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71300,"nodeType":"ExpressionStatement","src":"10906:49:107"},{"expression":{"id":71304,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71301,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"10965:12:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71302,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"10980:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71303,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10987:13:107","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70777,"src":"10980:20:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10965:35:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71305,"nodeType":"ExpressionStatement","src":"10965:35:107"},{"expression":{"id":71309,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71306,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70997,"src":"11010:13:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71307,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"11026:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71308,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11033:14:107","memberName":"_isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":70792,"src":"11026:21:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11010:37:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71310,"nodeType":"ExpressionStatement","src":"11010:37:107"},{"expression":{"id":71314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71311,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71031,"src":"11057:13:107","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71312,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"11073:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71313,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11080:14:107","memberName":"_communityName","nodeType":"MemberAccess","referencedDeclaration":70790,"src":"11073:21:107","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11057:37:107","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":71315,"nodeType":"ExpressionStatement","src":"11057:37:107"},{"expression":{"id":71319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71316,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71034,"src":"11104:16:107","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71317,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"11123:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11130:16:107","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":70794,"src":"11123:23:107","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11104:42:107","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":71320,"nodeType":"ExpressionStatement","src":"11104:42:107"},{"expression":{"id":71324,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71321,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71003,"src":"11157:15:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71322,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"11175:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71323,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11182:16:107","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70781,"src":"11175:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11157:41:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71325,"nodeType":"ExpressionStatement","src":"11157:41:107"},{"expression":{"id":71329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71326,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71000,"src":"11208:11:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71327,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"11222:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71328,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11229:12:107","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70783,"src":"11222:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11208:33:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71330,"nodeType":"ExpressionStatement","src":"11208:33:107"},{"expression":{"id":71336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71331,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"11251:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":71333,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"11271:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71334,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11278:12:107","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70788,"src":"11271:19:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71332,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76451,"src":"11265:5:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$76451_$","typeString":"type(contract ISafe)"}},"id":71335,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11265:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"src":"11251:40:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"id":71337,"nodeType":"ExpressionStatement","src":"11251:40:107"},{"expression":{"arguments":[{"id":71339,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71075,"src":"11313:14:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":71340,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"11329:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71341,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11336:12:107","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70788,"src":"11329:19:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71338,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"11302:10:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":71342,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11302:47:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71343,"nodeType":"ExpressionStatement","src":"11302:47:107"},{"expression":{"id":71350,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71344,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71016,"src":"11360:8:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71346,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"11381:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"id":71347,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11386:11:107","memberName":"getRegistry","nodeType":"MemberAccess","referencedDeclaration":76175,"src":"11381:16:107","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":71348,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11381:18:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71345,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"11371:9:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$2802_$","typeString":"type(contract IRegistry)"}},"id":71349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11371:29:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"src":"11360:40:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":71351,"nodeType":"ExpressionStatement","src":"11360:40:107"},{"assignments":[71356],"declarations":[{"constant":false,"id":71356,"mutability":"mutable","name":"pool_initialMembers","nameLocation":"11428:19:107","nodeType":"VariableDeclaration","scope":71484,"src":"11411:36:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71354,"name":"address","nodeType":"ElementaryTypeName","src":"11411:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71355,"nodeType":"ArrayTypeName","src":"11411:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71357,"nodeType":"VariableDeclarationStatement","src":"11411:36:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"arguments":[{"id":71360,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"11507:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":71359,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11499:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71358,"name":"address","nodeType":"ElementaryTypeName","src":"11499:7:107","typeDescriptions":{}}},"id":71361,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11499:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71362,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11520:4:107","memberName":"code","nodeType":"MemberAccess","src":"11499:25:107","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":71363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11525:6:107","memberName":"length","nodeType":"MemberAccess","src":"11499:32:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":71364,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11535:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11499:37:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71423,"nodeType":"Block","src":"11656:266:107","statements":[{"assignments":[71386],"declarations":[{"constant":false,"id":71386,"mutability":"mutable","name":"owners","nameLocation":"11687:6:107","nodeType":"VariableDeclaration","scope":71423,"src":"11670:23:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71384,"name":"address","nodeType":"ElementaryTypeName","src":"11670:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71385,"nodeType":"ArrayTypeName","src":"11670:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71390,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71387,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"11696:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"id":71388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11708:9:107","memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":76366,"src":"11696:21:107","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":71389,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11696:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11670:49:107"},{"expression":{"id":71400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71391,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"11733:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71395,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71386,"src":"11769:6:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71396,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11776:6:107","memberName":"length","nodeType":"MemberAccess","src":"11769:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"32","id":71397,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11785:1:107","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"11769:17:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71394,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11755:13:107","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":71392,"name":"address","nodeType":"ElementaryTypeName","src":"11759:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71393,"nodeType":"ArrayTypeName","src":"11759:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":71399,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11755:32:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11733:54:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71401,"nodeType":"ExpressionStatement","src":"11733:54:107"},{"body":{"id":71421,"nodeType":"Block","src":"11845:67:107","statements":[{"expression":{"id":71419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71413,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"11863:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71415,"indexExpression":{"id":71414,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"11883:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11863:22:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71416,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71386,"src":"11888:6:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71418,"indexExpression":{"id":71417,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"11895:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11888:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11863:34:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71420,"nodeType":"ExpressionStatement","src":"11863:34:107"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71409,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71406,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"11821:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71407,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71386,"src":"11825:6:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11832:6:107","memberName":"length","nodeType":"MemberAccess","src":"11825:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11821:17:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71422,"initializationExpression":{"assignments":[71403],"declarations":[{"constant":false,"id":71403,"mutability":"mutable","name":"i","nameLocation":"11814:1:107","nodeType":"VariableDeclaration","scope":71422,"src":"11806:9:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71402,"name":"uint256","nodeType":"ElementaryTypeName","src":"11806:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71405,"initialValue":{"hexValue":"30","id":71404,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11818:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"11806:13:107"},"loopExpression":{"expression":{"id":71411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11840:3:107","subExpression":{"id":71410,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"11840:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71412,"nodeType":"ExpressionStatement","src":"11840:3:107"},"nodeType":"ForStatement","src":"11801:111:107"}]},"id":71424,"nodeType":"IfStatement","src":"11495:427:107","trueBody":{"id":71381,"nodeType":"Block","src":"11538:112:107","statements":[{"expression":{"id":71372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71366,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"11552:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"33","id":71370,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11588:1:107","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"}],"id":71369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11574:13:107","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":71367,"name":"address","nodeType":"ElementaryTypeName","src":"11578:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71368,"nodeType":"ArrayTypeName","src":"11578:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":71371,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11574:16:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11552:38:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71373,"nodeType":"ExpressionStatement","src":"11552:38:107"},{"expression":{"id":71379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71374,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"11604:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71376,"indexExpression":{"hexValue":"30","id":71375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11624:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11604:22:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71377,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"11629:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71378,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11633:6:107","memberName":"sender","nodeType":"MemberAccess","src":"11629:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11604:35:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71380,"nodeType":"ExpressionStatement","src":"11604:35:107"}]}},{"expression":{"id":71435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71425,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"11932:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71430,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71426,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"11952:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71427,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11972:6:107","memberName":"length","nodeType":"MemberAccess","src":"11952:26:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71428,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11981:1:107","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"11952:30:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11932:51:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71433,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"11994:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":71432,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11986:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71431,"name":"address","nodeType":"ElementaryTypeName","src":"11986:7:107","typeDescriptions":{}}},"id":71434,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11986:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11932:74:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71436,"nodeType":"ExpressionStatement","src":"11932:74:107"},{"expression":{"id":71447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71437,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"12016:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71442,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71438,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"12036:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12056:6:107","memberName":"length","nodeType":"MemberAccess","src":"12036:26:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"32","id":71440,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12065:1:107","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12036:30:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12016:51:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71445,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12078:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":71444,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12070:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71443,"name":"address","nodeType":"ElementaryTypeName","src":"12070:7:107","typeDescriptions":{}}},"id":71446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12070:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12016:67:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71448,"nodeType":"ExpressionStatement","src":"12016:67:107"},{"expression":{"id":71463,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71449,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70994,"src":"12171:9:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":71452,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"12218:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12225:6:107","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70779,"src":"12218:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71454,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71031,"src":"12233:13:107","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":71455,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"12248:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71456,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12255:9:107","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70786,"src":"12248:16:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[{"id":71459,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12274:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":71458,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12266:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71457,"name":"address","nodeType":"ElementaryTypeName","src":"12266:7:107","typeDescriptions":{}}},"id":71460,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12266:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71461,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"12281:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":71450,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71016,"src":"12195:8:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":71451,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12204:13:107","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"12195:22:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":71462,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12195:106:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"12171:130:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":71464,"nodeType":"ExpressionStatement","src":"12171:130:107"},{"expression":{"id":71467,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71465,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71069,"src":"12312:14:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71466,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71356,"src":"12329:19:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12312:36:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":71468,"nodeType":"ExpressionStatement","src":"12312:36:107"},{"expression":{"id":71471,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71469,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71009,"src":"12359:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71470,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71215,"src":"12378:17:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12359:36:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71472,"nodeType":"ExpressionStatement","src":"12359:36:107"},{"expression":{"id":71475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71473,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71006,"src":"12405:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71474,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71217,"src":"12431:24:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12405:50:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71476,"nodeType":"ExpressionStatement","src":"12405:50:107"},{"eventCall":{"arguments":[{"id":71478,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70994,"src":"12491:9:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":71479,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71031,"src":"12502:13:107","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":71480,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71213,"src":"12517:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12524:9:107","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70786,"src":"12517:16:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71477,"name":"RegistryInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"12471:19:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (bytes32,string memory,struct Metadata memory)"}},"id":71482,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12471:63:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71483,"nodeType":"EmitStatement","src":"12466:68:107"}]},"functionSelector":"34196355","implemented":true,"kind":"function","modifiers":[{"id":71222,"kind":"modifierInvocation","modifierName":{"id":71221,"name":"initializer","nameLocations":["10239:11:107"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10239:11:107"},"nodeType":"ModifierInvocation","src":"10239:11:107"}],"name":"initialize","nameLocation":"10053:10:107","parameters":{"id":71220,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71213,"mutability":"mutable","name":"params","nameLocation":"10118:6:107","nodeType":"VariableDeclaration","scope":71485,"src":"10073:51:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":71212,"nodeType":"UserDefinedTypeName","pathNode":{"id":71211,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["10073:37:107"],"nodeType":"IdentifierPath","referencedDeclaration":70795,"src":"10073:37:107"},"referencedDeclaration":70795,"src":"10073:37:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":71215,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"10142:17:107","nodeType":"VariableDeclaration","scope":71485,"src":"10134:25:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71214,"name":"address","nodeType":"ElementaryTypeName","src":"10134:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71217,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10177:24:107","nodeType":"VariableDeclaration","scope":71485,"src":"10169:32:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71216,"name":"address","nodeType":"ElementaryTypeName","src":"10169:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71219,"mutability":"mutable","name":"_owner","nameLocation":"10219:6:107","nodeType":"VariableDeclaration","scope":71485,"src":"10211:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71218,"name":"address","nodeType":"ElementaryTypeName","src":"10211:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10063:168:107"},"returnParameters":{"id":71223,"nodeType":"ParameterList","parameters":[],"src":"10251:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":71535,"nodeType":"FunctionDefinition","src":"12547:531:107","nodes":[],"body":{"id":71534,"nodeType":"Block","src":"12743:335:107","nodes":[],"statements":[{"assignments":[71501],"declarations":[{"constant":false,"id":71501,"mutability":"mutable","name":"strategyProxy","nameLocation":"12761:13:107","nodeType":"VariableDeclaration","scope":71534,"src":"12753:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71500,"name":"address","nodeType":"ElementaryTypeName","src":"12753:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71526,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":71509,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71009,"src":"12840:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71508,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12832:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71507,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:107","typeDescriptions":{}}},"id":71510,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12832:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":71513,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"12898:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":71514,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"12913:4:107","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"12898:19:107","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":71515,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"12918:8:107","memberName":"selector","nodeType":"MemberAccess","src":"12898:28:107","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":71518,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"12936:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}],"id":71517,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12928:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71516,"name":"address","nodeType":"ElementaryTypeName","src":"12928:7:107","typeDescriptions":{}}},"id":71519,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12928:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71520,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71006,"src":"12943:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":71521,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70689],"referencedDeclaration":70689,"src":"12968:5:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":71522,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12968:7:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71511,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"12875:3:107","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":71512,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"12879:18:107","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"12875:22:107","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":71523,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12875:101:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":71506,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"12798:16:107","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":71505,"nodeType":"UserDefinedTypeName","pathNode":{"id":71504,"name":"ERC1967Proxy","nameLocations":["12802:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"12802:12:107"},"referencedDeclaration":55021,"src":"12802:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":71524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12798:192:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":71503,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12777:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71502,"name":"address","nodeType":"ElementaryTypeName","src":"12777:7:107","typeDescriptions":{}}},"id":71525,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12777:223:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"12753:247:107"},{"expression":{"arguments":[{"id":71528,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71501,"src":"13029:13:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71529,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71487,"src":"13044:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71530,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71490,"src":"13052:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},{"id":71531,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71493,"src":"13061:9:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71527,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[71535,71607],"referencedDeclaration":71607,"src":"13018:10:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_0 memory,struct Metadata memory) returns (uint256,address)"}},"id":71532,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13018:53:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"functionReturnParameters":71499,"id":71533,"nodeType":"Return","src":"13011:60:107"}]},"functionSelector":"524e59e8","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"12556:10:107","parameters":{"id":71494,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71487,"mutability":"mutable","name":"_token","nameLocation":"12575:6:107","nodeType":"VariableDeclaration","scope":71535,"src":"12567:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71486,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71490,"mutability":"mutable","name":"_params","nameLocation":"12621:7:107","nodeType":"VariableDeclaration","scope":71535,"src":"12583:45:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":71489,"nodeType":"UserDefinedTypeName","pathNode":{"id":71488,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["12583:30:107"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"12583:30:107"},"referencedDeclaration":65657,"src":"12583:30:107","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":71493,"mutability":"mutable","name":"_metadata","nameLocation":"12646:9:107","nodeType":"VariableDeclaration","scope":71535,"src":"12630:25:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":71492,"nodeType":"UserDefinedTypeName","pathNode":{"id":71491,"name":"Metadata","nameLocations":["12630:8:107"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12630:8:107"},"referencedDeclaration":3098,"src":"12630:8:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12566:90:107"},"returnParameters":{"id":71499,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71496,"mutability":"mutable","name":"poolId","nameLocation":"12713:6:107","nodeType":"VariableDeclaration","scope":71535,"src":"12705:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71495,"name":"uint256","nodeType":"ElementaryTypeName","src":"12705:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71498,"mutability":"mutable","name":"strategy","nameLocation":"12729:8:107","nodeType":"VariableDeclaration","scope":71535,"src":"12721:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71497,"name":"address","nodeType":"ElementaryTypeName","src":"12721:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12704:34:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71607,"nodeType":"FunctionDefinition","src":"13084:660:107","nodes":[],"body":{"id":71606,"nodeType":"Block","src":"13309:435:107","nodes":[],"statements":[{"assignments":[71553],"declarations":[{"constant":false,"id":71553,"mutability":"mutable","name":"token","nameLocation":"13327:5:107","nodeType":"VariableDeclaration","scope":71606,"src":"13319:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71552,"name":"address","nodeType":"ElementaryTypeName","src":"13319:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71555,"initialValue":{"id":71554,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70970,"src":"13335:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"13319:22:107"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71556,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71539,"src":"13355:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":71559,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13373:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":71558,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13365:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71557,"name":"address","nodeType":"ElementaryTypeName","src":"13365:7:107","typeDescriptions":{}}},"id":71560,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13365:10:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13355:20:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71567,"nodeType":"IfStatement","src":"13351:65:107","trueBody":{"id":71566,"nodeType":"Block","src":"13377:39:107","statements":[{"expression":{"id":71564,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71562,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71553,"src":"13391:5:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71563,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71539,"src":"13399:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13391:14:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71565,"nodeType":"ExpressionStatement","src":"13391:14:107"}]}},{"expression":{"id":71570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71568,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71550,"src":"13425:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71569,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71537,"src":"13436:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13425:20:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71571,"nodeType":"ExpressionStatement","src":"13425:20:107"},{"assignments":[71576],"declarations":[{"constant":false,"id":71576,"mutability":"mutable","name":"_pool_managers","nameLocation":"13473:14:107","nodeType":"VariableDeclaration","scope":71606,"src":"13456:31:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71574,"name":"address","nodeType":"ElementaryTypeName","src":"13456:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71575,"nodeType":"ArrayTypeName","src":"13456:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71578,"initialValue":{"id":71577,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71069,"src":"13490:14:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"13456:48:107"},{"expression":{"id":71593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71579,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71548,"src":"13515:6:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71582,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70994,"src":"13571:9:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":71583,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71550,"src":"13582:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71586,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71542,"src":"13603:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"expression":{"id":71584,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13592:3:107","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":71585,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13596:6:107","memberName":"encode","nodeType":"MemberAccess","src":"13592:10:107","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":71587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13592:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":71588,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71553,"src":"13613:5:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71589,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13620:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":71590,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71545,"src":"13623:9:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":71591,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71576,"src":"13634:14:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":71580,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"13524:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"id":71581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13529:28:107","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":76170,"src":"13524:33:107","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":71592,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13524:134:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"13515:143:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71594,"nodeType":"ExpressionStatement","src":"13515:143:107"},{"eventCall":{"arguments":[{"id":71596,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71548,"src":"13686:6:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71597,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71550,"src":"13694:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71600,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13712:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":71599,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13704:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71598,"name":"address","nodeType":"ElementaryTypeName","src":"13704:7:107","typeDescriptions":{}}},"id":71601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13704:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71602,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71539,"src":"13719:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71603,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71545,"src":"13727:9:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71595,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70911,"src":"13674:11:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":71604,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13674:63:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71605,"nodeType":"EmitStatement","src":"13669:68:107"}]},"functionSelector":"e16d0e32","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"13093:10:107","parameters":{"id":71546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71537,"mutability":"mutable","name":"_strategy","nameLocation":"13121:9:107","nodeType":"VariableDeclaration","scope":71607,"src":"13113:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71536,"name":"address","nodeType":"ElementaryTypeName","src":"13113:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71539,"mutability":"mutable","name":"_token","nameLocation":"13148:6:107","nodeType":"VariableDeclaration","scope":71607,"src":"13140:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71538,"name":"address","nodeType":"ElementaryTypeName","src":"13140:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71542,"mutability":"mutable","name":"_params","nameLocation":"13202:7:107","nodeType":"VariableDeclaration","scope":71607,"src":"13164:45:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":71541,"nodeType":"UserDefinedTypeName","pathNode":{"id":71540,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["13164:30:107"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"13164:30:107"},"referencedDeclaration":65657,"src":"13164:30:107","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":71545,"mutability":"mutable","name":"_metadata","nameLocation":"13235:9:107","nodeType":"VariableDeclaration","scope":71607,"src":"13219:25:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":71544,"nodeType":"UserDefinedTypeName","pathNode":{"id":71543,"name":"Metadata","nameLocations":["13219:8:107"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"13219:8:107"},"referencedDeclaration":3098,"src":"13219:8:107","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"13103:147:107"},"returnParameters":{"id":71551,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71548,"mutability":"mutable","name":"poolId","nameLocation":"13283:6:107","nodeType":"VariableDeclaration","scope":71607,"src":"13275:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71547,"name":"uint256","nodeType":"ElementaryTypeName","src":"13275:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71550,"mutability":"mutable","name":"strategy","nameLocation":"13299:8:107","nodeType":"VariableDeclaration","scope":71607,"src":"13291:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71549,"name":"address","nodeType":"ElementaryTypeName","src":"13291:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13274:34:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71724,"nodeType":"FunctionDefinition","src":"13750:1170:107","nodes":[],"body":{"id":71723,"nodeType":"Block","src":"13848:1072:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":71617,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"13884:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71616,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71121,"src":"13858:25:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13858:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71619,"nodeType":"ExpressionStatement","src":"13858:34:107"},{"expression":{"arguments":[{"id":71621,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"13922:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71620,"name":"onlyStrategyEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71136,"src":"13902:19:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71622,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13902:30:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71623,"nodeType":"ExpressionStatement","src":"13902:30:107"},{"expression":{"arguments":[{"id":71625,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"13961:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71624,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"13942:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13942:29:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71627,"nodeType":"ExpressionStatement","src":"13942:29:107"},{"condition":{"baseExpression":{"baseExpression":{"id":71628,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71065,"src":"13986:27:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71630,"indexExpression":{"id":71629,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14014:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"13986:36:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71632,"indexExpression":{"id":71631,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14023:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"13986:47:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71637,"nodeType":"IfStatement","src":"13982:107:107","trueBody":{"id":71636,"nodeType":"Block","src":"14035:54:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71633,"name":"UserAlreadyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70927,"src":"14056:20:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14056:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71635,"nodeType":"RevertStatement","src":"14049:29:107"}]}},{"assignments":[71640],"declarations":[{"constant":false,"id":71640,"mutability":"mutable","name":"member","nameLocation":"14113:6:107","nodeType":"VariableDeclaration","scope":71723,"src":"14099:20:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member"},"typeName":{"id":71639,"nodeType":"UserDefinedTypeName","pathNode":{"id":71638,"name":"Member","nameLocations":["14099:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":70802,"src":"14099:6:107"},"referencedDeclaration":70802,"src":"14099:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71644,"initialValue":{"baseExpression":{"id":71641,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"14122:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71643,"indexExpression":{"id":71642,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14142:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14122:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"14099:51:107"},{"assignments":[71646],"declarations":[{"constant":false,"id":71646,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"14169:17:107","nodeType":"VariableDeclaration","scope":71723,"src":"14161:25:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71645,"name":"uint256","nodeType":"ElementaryTypeName","src":"14161:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71649,"initialValue":{"expression":{"id":71647,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71640,"src":"14189:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member memory"}},"id":71648,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14196:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"14189:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14161:47:107"},{"assignments":[71651],"declarations":[{"constant":false,"id":71651,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"14226:16:107","nodeType":"VariableDeclaration","scope":71723,"src":"14218:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71650,"name":"uint256","nodeType":"ElementaryTypeName","src":"14218:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71653,"initialValue":{"id":71652,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"14245:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14218:46:107"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71655,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14294:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71654,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14279:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14279:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14305:14:107","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14279:40:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71658,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14279:42:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":71659,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14325:11:107","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71660,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14337:9:107","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"14325:21:107","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14279:67:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71680,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71674,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14468:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71673,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14453:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14453:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14479:14:107","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14453:40:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71677,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14453:42:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":71678,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14499:11:107","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14511:5:107","memberName":"Fixed","nodeType":"MemberAccess","referencedDeclaration":65541,"src":"14499:17:107","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14453:63:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71692,"nodeType":"IfStatement","src":"14449:180:107","trueBody":{"id":71691,"nodeType":"Block","src":"14518:111:107","statements":[{"expression":{"id":71689,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71681,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71651,"src":"14532:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71686,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14591:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71687,"name":"totalStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71646,"src":"14600:17:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":71683,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14566:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71682,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14551:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14551:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71685,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14577:13:107","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14551:39:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71688,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14551:67:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14532:86:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71690,"nodeType":"ExpressionStatement","src":"14532:86:107"}]}},"id":71693,"nodeType":"IfStatement","src":"14275:354:107","trueBody":{"id":71672,"nodeType":"Block","src":"14348:95:107","statements":[{"expression":{"id":71670,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71662,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71651,"src":"14362:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71667,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14421:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71668,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14430:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"arguments":[{"id":71664,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14396:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71663,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14381:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14381:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14407:13:107","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14381:39:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14381:51:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14362:70:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71671,"nodeType":"ExpressionStatement","src":"14362:70:107"}]}},{"expression":{"id":71700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71694,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71046,"src":"14639:21:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71697,"indexExpression":{"id":71695,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14661:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14639:30:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71698,"indexExpression":{"id":71696,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14670:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14639:41:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71699,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71651,"src":"14683:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14639:60:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71701,"nodeType":"ExpressionStatement","src":"14639:60:107"},{"expression":{"id":71708,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71702,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71065,"src":"14728:27:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71705,"indexExpression":{"id":71703,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14756:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14728:36:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71706,"indexExpression":{"id":71704,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14765:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14728:47:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71707,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14778:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"14728:54:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71709,"nodeType":"ExpressionStatement","src":"14728:54:107"},{"expression":{"arguments":[{"id":71714,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14826:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"baseExpression":{"id":71710,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71058,"src":"14793:18:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71712,"indexExpression":{"id":71711,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14812:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14793:27:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":71713,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14821:4:107","memberName":"push","nodeType":"MemberAccess","src":"14793:32:107","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer,address)"}},"id":71715,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14793:43:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71716,"nodeType":"ExpressionStatement","src":"14793:43:107"},{"eventCall":{"arguments":[{"id":71718,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71609,"src":"14876:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71719,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71611,"src":"14885:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71720,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71651,"src":"14896:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71717,"name":"MemberActivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70876,"src":"14852:23:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":71721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14852:61:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71722,"nodeType":"EmitStatement","src":"14847:66:107"}]},"functionSelector":"0d4a8b49","implemented":true,"kind":"function","modifiers":[{"id":71614,"kind":"modifierInvocation","modifierName":{"id":71613,"name":"nonReentrant","nameLocations":["13835:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"13835:12:107"},"nodeType":"ModifierInvocation","src":"13835:12:107"}],"name":"activateMemberInStrategy","nameLocation":"13759:24:107","parameters":{"id":71612,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71609,"mutability":"mutable","name":"_member","nameLocation":"13792:7:107","nodeType":"VariableDeclaration","scope":71724,"src":"13784:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71608,"name":"address","nodeType":"ElementaryTypeName","src":"13784:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71611,"mutability":"mutable","name":"_strategy","nameLocation":"13809:9:107","nodeType":"VariableDeclaration","scope":71724,"src":"13801:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71610,"name":"address","nodeType":"ElementaryTypeName","src":"13801:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13783:36:107"},"returnParameters":{"id":71615,"nodeType":"ParameterList","parameters":[],"src":"13848:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71783,"nodeType":"FunctionDefinition","src":"14926:699:107","nodes":[],"body":{"id":71782,"nodeType":"Block","src":"15013:612:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":71732,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71726,"src":"15049:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71731,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71121,"src":"15023:25:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71733,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15023:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71734,"nodeType":"ExpressionStatement","src":"15023:34:107"},{"expression":{"arguments":[{"id":71736,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71728,"src":"15086:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71735,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"15067:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15067:29:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71738,"nodeType":"ExpressionStatement","src":"15067:29:107"},{"expression":{"arguments":[{"expression":{"id":71740,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15126:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15130:6:107","memberName":"sender","nodeType":"MemberAccess","src":"15126:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71742,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71728,"src":"15138:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71739,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71152,"src":"15106:19:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":71743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15106:42:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71744,"nodeType":"ExpressionStatement","src":"15106:42:107"},{"condition":{"id":71750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"15163:48:107","subExpression":{"baseExpression":{"baseExpression":{"id":71745,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71065,"src":"15164:27:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71747,"indexExpression":{"id":71746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71726,"src":"15192:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15164:36:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71749,"indexExpression":{"id":71748,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71728,"src":"15201:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15164:47:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71755,"nodeType":"IfStatement","src":"15159:110:107","trueBody":{"id":71754,"nodeType":"Block","src":"15213:56:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71751,"name":"UserAlreadyDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70929,"src":"15234:22:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15234:24:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71753,"nodeType":"RevertStatement","src":"15227:31:107"}]}},{"expression":{"id":71762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71756,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71065,"src":"15279:27:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71759,"indexExpression":{"id":71757,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71726,"src":"15307:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15279:36:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71760,"indexExpression":{"id":71758,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71728,"src":"15316:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15279:47:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":71761,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15329:5:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15279:55:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71763,"nodeType":"ExpressionStatement","src":"15279:55:107"},{"expression":{"id":71770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71764,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71046,"src":"15344:21:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71767,"indexExpression":{"id":71765,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71726,"src":"15366:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15344:30:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71768,"indexExpression":{"id":71766,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71728,"src":"15375:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15344:41:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":71769,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15388:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15344:45:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71771,"nodeType":"ExpressionStatement","src":"15344:45:107"},{"expression":{"arguments":[{"id":71773,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71726,"src":"15424:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71774,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71728,"src":"15433:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71772,"name":"removeStrategyFromMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71836,"src":"15399:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71775,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15399:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71776,"nodeType":"ExpressionStatement","src":"15399:44:107"},{"eventCall":{"arguments":[{"id":71778,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71726,"src":"15599:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71779,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71728,"src":"15608:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71777,"name":"MemberDeactivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70882,"src":"15573:25:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15573:45:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71781,"nodeType":"EmitStatement","src":"15568:50:107"}]},"functionSelector":"22bcf999","implemented":true,"kind":"function","modifiers":[],"name":"deactivateMemberInStrategy","nameLocation":"14935:26:107","parameters":{"id":71729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71726,"mutability":"mutable","name":"_member","nameLocation":"14970:7:107","nodeType":"VariableDeclaration","scope":71783,"src":"14962:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71725,"name":"address","nodeType":"ElementaryTypeName","src":"14962:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71728,"mutability":"mutable","name":"_strategy","nameLocation":"14987:9:107","nodeType":"VariableDeclaration","scope":71783,"src":"14979:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71727,"name":"address","nodeType":"ElementaryTypeName","src":"14979:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14961:36:107"},"returnParameters":{"id":71730,"nodeType":"ParameterList","parameters":[],"src":"15013:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71836,"nodeType":"FunctionDefinition","src":"15631:433:107","nodes":[],"body":{"id":71835,"nodeType":"Block","src":"15718:346:107","nodes":[],"statements":[{"assignments":[71794],"declarations":[{"constant":false,"id":71794,"mutability":"mutable","name":"memberStrategies","nameLocation":"15746:16:107","nodeType":"VariableDeclaration","scope":71835,"src":"15728:34:107","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71792,"name":"address","nodeType":"ElementaryTypeName","src":"15728:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71793,"nodeType":"ArrayTypeName","src":"15728:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71798,"initialValue":{"baseExpression":{"id":71795,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71058,"src":"15765:18:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71797,"indexExpression":{"id":71796,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71785,"src":"15784:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15765:27:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15728:64:107"},{"body":{"id":71833,"nodeType":"Block","src":"15856:202:107","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71814,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":71810,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71794,"src":"15874:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71812,"indexExpression":{"id":71811,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71800,"src":"15891:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15874:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":71813,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71787,"src":"15897:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15874:32:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71832,"nodeType":"IfStatement","src":"15870:178:107","trueBody":{"id":71831,"nodeType":"Block","src":"15908:140:107","statements":[{"expression":{"id":71824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71815,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71794,"src":"15926:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71817,"indexExpression":{"id":71816,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71800,"src":"15943:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15926:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71818,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71794,"src":"15948:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71823,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71819,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71794,"src":"15965:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15982:6:107","memberName":"length","nodeType":"MemberAccess","src":"15965:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15991:1:107","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"15965:27:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15948:45:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15926:67:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71825,"nodeType":"ExpressionStatement","src":"15926:67:107"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71826,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71794,"src":"16011:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16028:3:107","memberName":"pop","nodeType":"MemberAccess","src":"16011:20:107","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":71829,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16011:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71830,"nodeType":"ExpressionStatement","src":"16011:22:107"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71806,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71803,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71800,"src":"15822:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71804,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71794,"src":"15826:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71805,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15843:6:107","memberName":"length","nodeType":"MemberAccess","src":"15826:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15822:27:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71834,"initializationExpression":{"assignments":[71800],"declarations":[{"constant":false,"id":71800,"mutability":"mutable","name":"i","nameLocation":"15815:1:107","nodeType":"VariableDeclaration","scope":71834,"src":"15807:9:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71799,"name":"uint256","nodeType":"ElementaryTypeName","src":"15807:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71802,"initialValue":{"hexValue":"30","id":71801,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15819:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"15807:13:107"},"loopExpression":{"expression":{"id":71808,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"15851:3:107","subExpression":{"id":71807,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71800,"src":"15851:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71809,"nodeType":"ExpressionStatement","src":"15851:3:107"},"nodeType":"ForStatement","src":"15802:256:107"}]},"implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyFromMember","nameLocation":"15640:24:107","parameters":{"id":71788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71785,"mutability":"mutable","name":"_member","nameLocation":"15673:7:107","nodeType":"VariableDeclaration","scope":71836,"src":"15665:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71784,"name":"address","nodeType":"ElementaryTypeName","src":"15665:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71787,"mutability":"mutable","name":"_strategy","nameLocation":"15690:9:107","nodeType":"VariableDeclaration","scope":71836,"src":"15682:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71786,"name":"address","nodeType":"ElementaryTypeName","src":"15682:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15664:36:107"},"returnParameters":{"id":71789,"nodeType":"ParameterList","parameters":[],"src":"15718:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71927,"nodeType":"FunctionDefinition","src":"16070:1009:107","nodes":[],"body":{"id":71926,"nodeType":"Block","src":"16144:935:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71843,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71106,"src":"16154:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71844,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71845,"nodeType":"ExpressionStatement","src":"16154:26:107"},{"assignments":[71847],"declarations":[{"constant":false,"id":71847,"mutability":"mutable","name":"member","nameLocation":"16198:6:107","nodeType":"VariableDeclaration","scope":71926,"src":"16190:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71846,"name":"address","nodeType":"ElementaryTypeName","src":"16190:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71850,"initialValue":{"expression":{"id":71848,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16207:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16211:6:107","memberName":"sender","nodeType":"MemberAccess","src":"16207:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16190:27:107"},{"assignments":[71855],"declarations":[{"constant":false,"id":71855,"mutability":"mutable","name":"memberStrategies","nameLocation":"16244:16:107","nodeType":"VariableDeclaration","scope":71926,"src":"16227:33:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71853,"name":"address","nodeType":"ElementaryTypeName","src":"16227:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71854,"nodeType":"ArrayTypeName","src":"16227:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71859,"initialValue":{"baseExpression":{"id":71856,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71058,"src":"16263:18:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71858,"indexExpression":{"id":71857,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71847,"src":"16282:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16263:26:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"16227:62:107"},{"assignments":[71861],"declarations":[{"constant":false,"id":71861,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"16308:16:107","nodeType":"VariableDeclaration","scope":71926,"src":"16300:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71860,"name":"uint256","nodeType":"ElementaryTypeName","src":"16300:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71862,"nodeType":"VariableDeclarationStatement","src":"16300:24:107"},{"body":{"id":71901,"nodeType":"Block","src":"16389:482:107","statements":[{"expression":{"id":71884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71874,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71861,"src":"16508:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71881,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71847,"src":"16577:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71882,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71838,"src":"16585:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"baseExpression":{"id":71876,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71855,"src":"16542:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71878,"indexExpression":{"id":71877,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71864,"src":"16559:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16542:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71875,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"16527:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16527:35:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71880,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16563:13:107","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"16527:49:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71883,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16527:72:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16508:91:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71885,"nodeType":"ExpressionStatement","src":"16508:91:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71888,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71886,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71861,"src":"16617:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":71887,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16637:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"16617:21:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71900,"nodeType":"IfStatement","src":"16613:232:107","trueBody":{"id":71899,"nodeType":"Block","src":"16640:205:107","statements":[{"expression":{"id":71897,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71889,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71046,"src":"16658:21:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71894,"indexExpression":{"id":71890,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71847,"src":"16680:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16658:29:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71895,"indexExpression":{"baseExpression":{"id":71891,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71855,"src":"16688:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71893,"indexExpression":{"id":71892,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71864,"src":"16705:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16688:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16658:50:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71896,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71861,"src":"16712:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16658:70:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71898,"nodeType":"ExpressionStatement","src":"16658:70:107"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71867,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71864,"src":"16355:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71868,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71855,"src":"16359:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16376:6:107","memberName":"length","nodeType":"MemberAccess","src":"16359:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16355:27:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71902,"initializationExpression":{"assignments":[71864],"declarations":[{"constant":false,"id":71864,"mutability":"mutable","name":"i","nameLocation":"16348:1:107","nodeType":"VariableDeclaration","scope":71902,"src":"16340:9:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71863,"name":"uint256","nodeType":"ElementaryTypeName","src":"16340:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71866,"initialValue":{"hexValue":"30","id":71865,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16352:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"16340:13:107"},"loopExpression":{"expression":{"id":71872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"16384:3:107","subExpression":{"id":71871,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71864,"src":"16384:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71873,"nodeType":"ExpressionStatement","src":"16384:3:107"},"nodeType":"ForStatement","src":"16335:536:107"},{"expression":{"arguments":[{"id":71906,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71847,"src":"16910:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71909,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16926:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":71908,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16918:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71907,"name":"address","nodeType":"ElementaryTypeName","src":"16918:7:107","typeDescriptions":{}}},"id":71910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16918:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71911,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71838,"src":"16933:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71903,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"16881:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16893:16:107","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"16881:28:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":71912,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16881:66:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71913,"nodeType":"ExpressionStatement","src":"16881:66:107"},{"expression":{"id":71919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71914,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"16957:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71916,"indexExpression":{"id":71915,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71847,"src":"16977:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16957:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"id":71917,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"16985:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"16957:40:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71918,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71838,"src":"17001:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16957:57:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71920,"nodeType":"ExpressionStatement","src":"16957:57:107"},{"eventCall":{"arguments":[{"id":71922,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71847,"src":"17050:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71923,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71838,"src":"17058:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71921,"name":"MemberPowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70892,"src":"17029:20:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71924,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17029:43:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71925,"nodeType":"EmitStatement","src":"17024:48:107"}]},"functionSelector":"559de05d","implemented":true,"kind":"function","modifiers":[{"id":71841,"kind":"modifierInvocation","modifierName":{"id":71840,"name":"nonReentrant","nameLocations":["16131:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"16131:12:107"},"nodeType":"ModifierInvocation","src":"16131:12:107"}],"name":"increasePower","nameLocation":"16079:13:107","parameters":{"id":71839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71838,"mutability":"mutable","name":"_amountStaked","nameLocation":"16101:13:107","nodeType":"VariableDeclaration","scope":71927,"src":"16093:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71837,"name":"uint256","nodeType":"ElementaryTypeName","src":"16093:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16092:23:107"},"returnParameters":{"id":71842,"nodeType":"ParameterList","parameters":[],"src":"16144:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72077,"nodeType":"FunctionDefinition","src":"17222:1562:107","nodes":[],"body":{"id":72076,"nodeType":"Block","src":"17298:1486:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71934,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71106,"src":"17308:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71935,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17308:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71936,"nodeType":"ExpressionStatement","src":"17308:26:107"},{"assignments":[71938],"declarations":[{"constant":false,"id":71938,"mutability":"mutable","name":"member","nameLocation":"17352:6:107","nodeType":"VariableDeclaration","scope":72076,"src":"17344:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71937,"name":"address","nodeType":"ElementaryTypeName","src":"17344:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71941,"initialValue":{"expression":{"id":71939,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17361:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17365:6:107","memberName":"sender","nodeType":"MemberAccess","src":"17361:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17344:27:107"},{"assignments":[71946],"declarations":[{"constant":false,"id":71946,"mutability":"mutable","name":"memberStrategies","nameLocation":"17399:16:107","nodeType":"VariableDeclaration","scope":72076,"src":"17381:34:107","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71944,"name":"address","nodeType":"ElementaryTypeName","src":"17381:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71945,"nodeType":"ArrayTypeName","src":"17381:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71950,"initialValue":{"baseExpression":{"id":71947,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71058,"src":"17418:18:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71949,"indexExpression":{"id":71948,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"17437:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17418:26:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17381:63:107"},{"assignments":[71952],"declarations":[{"constant":false,"id":71952,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"17463:16:107","nodeType":"VariableDeclaration","scope":72076,"src":"17455:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71951,"name":"uint256","nodeType":"ElementaryTypeName","src":"17455:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71953,"nodeType":"VariableDeclarationStatement","src":"17455:24:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71961,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":71954,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"17494:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71956,"indexExpression":{"id":71955,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"17514:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17494:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"id":71957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17522:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"17494:40:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":71958,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71929,"src":"17537:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17494:58:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":71960,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"17555:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17494:80:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71966,"nodeType":"IfStatement","src":"17490:140:107","trueBody":{"id":71965,"nodeType":"Block","src":"17576:54:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71962,"name":"DecreaseUnderMinimum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70947,"src":"17597:20:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71963,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17597:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71964,"nodeType":"RevertStatement","src":"17590:29:107"}]}},{"expression":{"arguments":[{"id":71970,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"17664:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71971,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71929,"src":"17672:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71967,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"17639:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71969,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17651:12:107","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"17639:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71972,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17639:49:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71973,"nodeType":"ExpressionStatement","src":"17639:49:107"},{"body":{"id":72062,"nodeType":"Block","src":"17752:897:107","statements":[{"assignments":[71986],"declarations":[{"constant":false,"id":71986,"mutability":"mutable","name":"strategy","nameLocation":"17774:8:107","nodeType":"VariableDeclaration","scope":72062,"src":"17766:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71985,"name":"address","nodeType":"ElementaryTypeName","src":"17766:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71990,"initialValue":{"baseExpression":{"id":71987,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"17785:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71989,"indexExpression":{"id":71988,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71975,"src":"17802:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17785:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17766:38:107"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":71994,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"17854:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":71993,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"17849:4:107","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":71995,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17849:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":71996,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17870:11:107","memberName":"interfaceId","nodeType":"MemberAccess","src":"17849:32:107","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":71991,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"17822:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17831:17:107","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"17822:26:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":71997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17822:60:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":72060,"nodeType":"Block","src":"18372:250:107","statements":[{"expression":{"id":72049,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72040,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"18457:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72042,"indexExpression":{"id":72041,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71975,"src":"18474:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18457:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":72043,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"18479:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72048,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":72044,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"18496:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18513:6:107","memberName":"length","nodeType":"MemberAccess","src":"18496:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":72046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18522:1:107","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"18496:27:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18479:45:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18457:67:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72050,"nodeType":"ExpressionStatement","src":"18457:67:107"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":72051,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"18542:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72053,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18559:3:107","memberName":"pop","nodeType":"MemberAccess","src":"18542:20:107","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":72054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18542:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72055,"nodeType":"ExpressionStatement","src":"18542:22:107"},{"expression":{"arguments":[{"id":72057,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"18598:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72056,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72228,"src":"18582:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72058,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18582:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72059,"nodeType":"ExpressionStatement","src":"18582:25:107"}]},"id":72061,"nodeType":"IfStatement","src":"17818:804:107","trueBody":{"id":72039,"nodeType":"Block","src":"17884:482:107","statements":[{"expression":{"id":72006,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71998,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71952,"src":"17902:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72003,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"17960:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72004,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71929,"src":"17968:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":72000,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"17936:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71999,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"17921:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":72001,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17921:24:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":72002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17946:13:107","memberName":"decreasePower","nodeType":"MemberAccess","referencedDeclaration":65529,"src":"17921:38:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":72005,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17921:63:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17902:82:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72007,"nodeType":"ExpressionStatement","src":"17902:82:107"},{"assignments":[72009],"declarations":[{"constant":false,"id":72009,"mutability":"mutable","name":"currentPower","nameLocation":"18010:12:107","nodeType":"VariableDeclaration","scope":72039,"src":"18002:20:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72008,"name":"uint256","nodeType":"ElementaryTypeName","src":"18002:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72017,"initialValue":{"baseExpression":{"baseExpression":{"id":72010,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71046,"src":"18025:21:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72012,"indexExpression":{"id":72011,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"18047:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18025:29:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72016,"indexExpression":{"baseExpression":{"id":72013,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"18055:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72015,"indexExpression":{"id":72014,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71975,"src":"18072:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18055:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18025:50:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"18002:73:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72020,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72018,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71952,"src":"18097:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":72019,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72009,"src":"18116:12:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18097:31:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":72037,"nodeType":"Block","src":"18241:111:107","statements":[{"expression":{"id":72035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":72027,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71046,"src":"18263:21:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72032,"indexExpression":{"id":72028,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"18285:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18263:29:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72033,"indexExpression":{"baseExpression":{"id":72029,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"18293:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72031,"indexExpression":{"id":72030,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71975,"src":"18310:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18293:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18263:50:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":72034,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71952,"src":"18317:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18263:70:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72036,"nodeType":"ExpressionStatement","src":"18263:70:107"}]},"id":72038,"nodeType":"IfStatement","src":"18093:259:107","trueBody":{"id":72026,"nodeType":"Block","src":"18130:105:107","statements":[{"errorCall":{"arguments":[{"id":72022,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71952,"src":"18185:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72023,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72009,"src":"18203:12:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72021,"name":"CantDecreaseMoreThanPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70953,"src":"18159:25:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":72024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18159:57:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72025,"nodeType":"RevertStatement","src":"18152:64:107"}]}}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71978,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71975,"src":"17718:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71979,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71946,"src":"17722:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17739:6:107","memberName":"length","nodeType":"MemberAccess","src":"17722:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17718:27:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72063,"initializationExpression":{"assignments":[71975],"declarations":[{"constant":false,"id":71975,"mutability":"mutable","name":"i","nameLocation":"17711:1:107","nodeType":"VariableDeclaration","scope":72063,"src":"17703:9:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71974,"name":"uint256","nodeType":"ElementaryTypeName","src":"17703:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71977,"initialValue":{"hexValue":"30","id":71976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17715:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17703:13:107"},"loopExpression":{"expression":{"id":71983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"17747:3:107","subExpression":{"id":71982,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71975,"src":"17747:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71984,"nodeType":"ExpressionStatement","src":"17747:3:107"},"nodeType":"ForStatement","src":"17698:951:107"},{"expression":{"id":72069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72064,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"18658:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72066,"indexExpression":{"id":72065,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"18678:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18658:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"id":72067,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18686:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"18658:40:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":72068,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71929,"src":"18702:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18658:59:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72070,"nodeType":"ExpressionStatement","src":"18658:59:107"},{"eventCall":{"arguments":[{"id":72072,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71938,"src":"18753:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72073,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71929,"src":"18761:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72071,"name":"MemberPowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70898,"src":"18732:20:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18732:45:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72075,"nodeType":"EmitStatement","src":"18727:50:107"}]},"functionSelector":"5ecf71c5","implemented":true,"kind":"function","modifiers":[{"id":71932,"kind":"modifierInvocation","modifierName":{"id":71931,"name":"nonReentrant","nameLocations":["17285:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"17285:12:107"},"nodeType":"ModifierInvocation","src":"17285:12:107"}],"name":"decreasePower","nameLocation":"17231:13:107","parameters":{"id":71930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71929,"mutability":"mutable","name":"_amountUnstaked","nameLocation":"17253:15:107","nodeType":"VariableDeclaration","scope":72077,"src":"17245:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71928,"name":"uint256","nodeType":"ElementaryTypeName","src":"17245:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17244:25:107"},"returnParameters":{"id":71933,"nodeType":"ParameterList","parameters":[],"src":"17298:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72093,"nodeType":"FunctionDefinition","src":"18790:173:107","nodes":[],"body":{"id":72092,"nodeType":"Block","src":"18898:65:107","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":72086,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71046,"src":"18915:21:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72088,"indexExpression":{"id":72087,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72079,"src":"18937:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18915:30:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72090,"indexExpression":{"id":72089,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72081,"src":"18946:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18915:41:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72085,"id":72091,"nodeType":"Return","src":"18908:48:107"}]},"functionSelector":"7817ee4f","implemented":true,"kind":"function","modifiers":[],"name":"getMemberPowerInStrategy","nameLocation":"18799:24:107","parameters":{"id":72082,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72079,"mutability":"mutable","name":"_member","nameLocation":"18832:7:107","nodeType":"VariableDeclaration","scope":72093,"src":"18824:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72078,"name":"address","nodeType":"ElementaryTypeName","src":"18824:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72081,"mutability":"mutable","name":"_strategy","nameLocation":"18849:9:107","nodeType":"VariableDeclaration","scope":72093,"src":"18841:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72080,"name":"address","nodeType":"ElementaryTypeName","src":"18841:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18823:36:107"},"returnParameters":{"id":72085,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72084,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72093,"src":"18889:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72083,"name":"uint256","nodeType":"ElementaryTypeName","src":"18889:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18888:9:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72106,"nodeType":"FunctionDefinition","src":"18969:151:107","nodes":[],"body":{"id":72105,"nodeType":"Block","src":"19055:65:107","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":72100,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"19072:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72102,"indexExpression":{"id":72101,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72095,"src":"19092:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19072:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"id":72103,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19101:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"19072:41:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72099,"id":72104,"nodeType":"Return","src":"19065:48:107"}]},"functionSelector":"2c611c4a","implemented":true,"kind":"function","modifiers":[],"name":"getMemberStakedAmount","nameLocation":"18978:21:107","parameters":{"id":72096,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72095,"mutability":"mutable","name":"_member","nameLocation":"19008:7:107","nodeType":"VariableDeclaration","scope":72106,"src":"19000:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72094,"name":"address","nodeType":"ElementaryTypeName","src":"19000:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18999:17:107"},"returnParameters":{"id":72099,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72098,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72106,"src":"19046:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72097,"name":"uint256","nodeType":"ElementaryTypeName","src":"19046:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19045:9:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72143,"nodeType":"FunctionDefinition","src":"19126:321:107","nodes":[],"body":{"id":72142,"nodeType":"Block","src":"19186:261:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72111,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"19196:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19196:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72113,"nodeType":"ExpressionStatement","src":"19196:17:107"},{"assignments":[72115],"declarations":[{"constant":false,"id":72115,"mutability":"mutable","name":"strategy","nameLocation":"19231:8:107","nodeType":"VariableDeclaration","scope":72142,"src":"19223:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72114,"name":"address","nodeType":"ElementaryTypeName","src":"19223:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72124,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":72120,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72108,"src":"19263:6:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72118,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"19250:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"id":72119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19255:7:107","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":76183,"src":"19250:12:107","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":72121,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19250:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":72122,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19271:8:107","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"19250:29:107","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":72117,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19242:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72116,"name":"address","nodeType":"ElementaryTypeName","src":"19242:7:107","typeDescriptions":{}}},"id":72123,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19242:38:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19223:57:107"},{"expression":{"arguments":[{"id":72126,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72115,"src":"19309:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72125,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"19290:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72127,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19290:28:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72128,"nodeType":"ExpressionStatement","src":"19290:28:107"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":72132,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"19364:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":72131,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"19359:4:107","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":72133,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19359:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":72134,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19380:11:107","memberName":"interfaceId","nodeType":"MemberAccess","src":"19359:32:107","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":72129,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72115,"src":"19332:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19341:17:107","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"19332:26:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":72135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19332:60:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72141,"nodeType":"IfStatement","src":"19328:113:107","trueBody":{"id":72140,"nodeType":"Block","src":"19394:47:107","statements":[{"expression":{"arguments":[{"id":72137,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72115,"src":"19421:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72136,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72180,"src":"19408:12:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72138,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19408:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72139,"nodeType":"ExpressionStatement","src":"19408:22:107"}]}}]},"functionSelector":"82d6a1e7","implemented":true,"kind":"function","modifiers":[],"name":"addStrategyByPoolId","nameLocation":"19135:19:107","parameters":{"id":72109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72108,"mutability":"mutable","name":"poolId","nameLocation":"19163:6:107","nodeType":"VariableDeclaration","scope":72143,"src":"19155:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72107,"name":"uint256","nodeType":"ElementaryTypeName","src":"19155:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19154:16:107"},"returnParameters":{"id":72110,"nodeType":"ParameterList","parameters":[],"src":"19186:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72156,"nodeType":"FunctionDefinition","src":"19453:128:107","nodes":[],"body":{"id":72155,"nodeType":"Block","src":"19511:70:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72148,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"19521:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19521:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72150,"nodeType":"ExpressionStatement","src":"19521:17:107"},{"expression":{"arguments":[{"id":72152,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72145,"src":"19561:12:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72151,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72180,"src":"19548:12:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72153,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19548:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72154,"nodeType":"ExpressionStatement","src":"19548:26:107"}]},"functionSelector":"223e5479","implemented":true,"kind":"function","modifiers":[],"name":"addStrategy","nameLocation":"19462:11:107","parameters":{"id":72146,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72145,"mutability":"mutable","name":"_newStrategy","nameLocation":"19482:12:107","nodeType":"VariableDeclaration","scope":72156,"src":"19474:20:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72144,"name":"address","nodeType":"ElementaryTypeName","src":"19474:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19473:22:107"},"returnParameters":{"id":72147,"nodeType":"ParameterList","parameters":[],"src":"19511:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72180,"nodeType":"FunctionDefinition","src":"19587:252:107","nodes":[],"body":{"id":72179,"nodeType":"Block","src":"19648:191:107","nodes":[],"statements":[{"condition":{"baseExpression":{"id":72161,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71039,"src":"19662:17:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72163,"indexExpression":{"id":72162,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72158,"src":"19680:12:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19662:31:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72168,"nodeType":"IfStatement","src":"19658:85:107","trueBody":{"id":72167,"nodeType":"Block","src":"19695:48:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72164,"name":"StrategyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70931,"src":"19716:14:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72165,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19716:16:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72166,"nodeType":"RevertStatement","src":"19709:23:107"}]}},{"expression":{"id":72173,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72169,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71039,"src":"19752:17:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72171,"indexExpression":{"id":72170,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72158,"src":"19770:12:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"19752:31:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72172,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"19786:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"19752:38:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72174,"nodeType":"ExpressionStatement","src":"19752:38:107"},{"eventCall":{"arguments":[{"id":72176,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72158,"src":"19819:12:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72175,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70864,"src":"19805:13:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72177,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19805:27:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72178,"nodeType":"EmitStatement","src":"19800:32:107"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addStrategy","nameLocation":"19596:12:107","parameters":{"id":72159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72158,"mutability":"mutable","name":"_newStrategy","nameLocation":"19617:12:107","nodeType":"VariableDeclaration","scope":72180,"src":"19609:20:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72157,"name":"address","nodeType":"ElementaryTypeName","src":"19609:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19608:22:107"},"returnParameters":{"id":72160,"nodeType":"ParameterList","parameters":[],"src":"19648:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72208,"nodeType":"FunctionDefinition","src":"19845:237:107","nodes":[],"body":{"id":72207,"nodeType":"Block","src":"19908:174:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72185,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"19918:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19918:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72187,"nodeType":"ExpressionStatement","src":"19918:17:107"},{"assignments":[72189],"declarations":[{"constant":false,"id":72189,"mutability":"mutable","name":"strategy","nameLocation":"19953:8:107","nodeType":"VariableDeclaration","scope":72207,"src":"19945:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72188,"name":"address","nodeType":"ElementaryTypeName","src":"19945:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72198,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":72194,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72182,"src":"19985:6:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72192,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"19972:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"id":72193,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19977:7:107","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":76183,"src":"19972:12:107","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":72195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19972:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":72196,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19993:8:107","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"19972:29:107","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":72191,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19964:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72190,"name":"address","nodeType":"ElementaryTypeName","src":"19964:7:107","typeDescriptions":{}}},"id":72197,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19964:38:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19945:57:107"},{"expression":{"arguments":[{"id":72200,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72189,"src":"20031:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72199,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"20012:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20012:28:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72202,"nodeType":"ExpressionStatement","src":"20012:28:107"},{"expression":{"arguments":[{"id":72204,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72189,"src":"20066:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72203,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72228,"src":"20050:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20050:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72206,"nodeType":"ExpressionStatement","src":"20050:25:107"}]},"functionSelector":"73265c37","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyByPoolId","nameLocation":"19854:22:107","parameters":{"id":72183,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72182,"mutability":"mutable","name":"poolId","nameLocation":"19885:6:107","nodeType":"VariableDeclaration","scope":72208,"src":"19877:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72181,"name":"uint256","nodeType":"ElementaryTypeName","src":"19877:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19876:16:107"},"returnParameters":{"id":72184,"nodeType":"ParameterList","parameters":[],"src":"19908:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72228,"nodeType":"FunctionDefinition","src":"20088:194:107","nodes":[],"body":{"id":72227,"nodeType":"Block","src":"20149:133:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":72214,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72210,"src":"20178:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72213,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"20159:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20159:29:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72216,"nodeType":"ExpressionStatement","src":"20159:29:107"},{"expression":{"id":72221,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72217,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71039,"src":"20198:17:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72219,"indexExpression":{"id":72218,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72210,"src":"20216:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"20198:28:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":72220,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"20229:5:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"20198:36:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72222,"nodeType":"ExpressionStatement","src":"20198:36:107"},{"eventCall":{"arguments":[{"id":72224,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72210,"src":"20265:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72223,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70868,"src":"20249:15:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72225,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20249:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72226,"nodeType":"EmitStatement","src":"20244:31:107"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeStrategy","nameLocation":"20097:15:107","parameters":{"id":72211,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72210,"mutability":"mutable","name":"_strategy","nameLocation":"20121:9:107","nodeType":"VariableDeclaration","scope":72228,"src":"20113:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72209,"name":"address","nodeType":"ElementaryTypeName","src":"20113:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20112:19:107"},"returnParameters":{"id":72212,"nodeType":"ParameterList","parameters":[],"src":"20149:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72241,"nodeType":"FunctionDefinition","src":"20288:128:107","nodes":[],"body":{"id":72240,"nodeType":"Block","src":"20346:70:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72233,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"20356:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20356:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72235,"nodeType":"ExpressionStatement","src":"20356:17:107"},{"expression":{"arguments":[{"id":72237,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72230,"src":"20399:9:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72236,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72228,"src":"20383:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72238,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20383:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72239,"nodeType":"ExpressionStatement","src":"20383:26:107"}]},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategy","nameLocation":"20297:14:107","parameters":{"id":72231,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72230,"mutability":"mutable","name":"_strategy","nameLocation":"20320:9:107","nodeType":"VariableDeclaration","scope":72241,"src":"20312:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72229,"name":"address","nodeType":"ElementaryTypeName","src":"20312:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20311:19:107"},"returnParameters":{"id":72232,"nodeType":"ParameterList","parameters":[],"src":"20346:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72266,"nodeType":"FunctionDefinition","src":"20422:248:107","nodes":[],"body":{"id":72265,"nodeType":"Block","src":"20484:186:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72246,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"20494:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20494:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72248,"nodeType":"ExpressionStatement","src":"20494:17:107"},{"expression":{"arguments":[{"id":72250,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72243,"src":"20540:5:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72249,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71186,"src":"20521:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72251,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20521:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72252,"nodeType":"ExpressionStatement","src":"20521:25:107"},{"expression":{"id":72255,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72253,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71012,"src":"20556:18:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72254,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72243,"src":"20577:5:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"20556:26:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":72256,"nodeType":"ExpressionStatement","src":"20556:26:107"},{"eventCall":{"arguments":[{"arguments":[{"id":72260,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"20630:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}],"id":72259,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20622:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72258,"name":"address","nodeType":"ElementaryTypeName","src":"20622:7:107","typeDescriptions":{}}},"id":72261,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20622:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72262,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71012,"src":"20644:18:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72257,"name":"CouncilSafeChangeStarted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70827,"src":"20597:24:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":72263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20597:66:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72264,"nodeType":"EmitStatement","src":"20592:71:107"}]},"functionSelector":"397e2543","implemented":true,"kind":"function","modifiers":[],"name":"setCouncilSafe","nameLocation":"20431:14:107","parameters":{"id":72244,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72243,"mutability":"mutable","name":"_safe","nameLocation":"20462:5:107","nodeType":"VariableDeclaration","scope":72266,"src":"20446:21:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":72242,"name":"address","nodeType":"ElementaryTypeName","src":"20446:15:107","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"20445:23:107"},"returnParameters":{"id":72245,"nodeType":"ParameterList","parameters":[],"src":"20484:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72283,"nodeType":"FunctionDefinition","src":"20676:187:107","nodes":[],"body":{"id":72282,"nodeType":"Block","src":"20723:140:107","nodes":[],"statements":[{"expression":{"id":72273,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72269,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"20733:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72271,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71012,"src":"20753:18:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72270,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76451,"src":"20747:5:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$76451_$","typeString":"type(contract ISafe)"}},"id":72272,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20747:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"src":"20733:39:107","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$76451","typeString":"contract ISafe"}},"id":72274,"nodeType":"ExpressionStatement","src":"20733:39:107"},{"expression":{"id":72276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"20782:25:107","subExpression":{"id":72275,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71012,"src":"20789:18:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72277,"nodeType":"ExpressionStatement","src":"20782:25:107"},{"eventCall":{"arguments":[{"id":72279,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71012,"src":"20837:18:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72278,"name":"CouncilSafeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70821,"src":"20822:14:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20822:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72281,"nodeType":"EmitStatement","src":"20817:39:107"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_changeCouncilSafe","nameLocation":"20685:18:107","parameters":{"id":72267,"nodeType":"ParameterList","parameters":[],"src":"20703:2:107"},"returnParameters":{"id":72268,"nodeType":"ParameterList","parameters":[],"src":"20723:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72299,"nodeType":"FunctionDefinition","src":"20869:179:107","nodes":[],"body":{"id":72298,"nodeType":"Block","src":"20913:135:107","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":72286,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"20927:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20931:6:107","memberName":"sender","nodeType":"MemberAccess","src":"20927:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":72288,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71012,"src":"20941:18:107","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"20927:32:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72294,"nodeType":"IfStatement","src":"20923:89:107","trueBody":{"id":72293,"nodeType":"Block","src":"20961:51:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72290,"name":"SenderNotNewOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70935,"src":"20982:17:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20982:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72292,"nodeType":"RevertStatement","src":"20975:26:107"}]}},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72295,"name":"_changeCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72283,"src":"21021:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":72296,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21021:20:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72297,"nodeType":"ExpressionStatement","src":"21021:20:107"}]},"functionSelector":"b5058c50","implemented":true,"kind":"function","modifiers":[],"name":"acceptCouncilSafe","nameLocation":"20878:17:107","parameters":{"id":72284,"nodeType":"ParameterList","parameters":[],"src":"20895:2:107"},"returnParameters":{"id":72285,"nodeType":"ParameterList","parameters":[],"src":"20913:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72317,"nodeType":"FunctionDefinition","src":"21054:190:107","nodes":[],"body":{"id":72316,"nodeType":"Block","src":"21134:110:107","nodes":[],"statements":[{"assignments":[72308],"declarations":[{"constant":false,"id":72308,"mutability":"mutable","name":"newMember","nameLocation":"21158:9:107","nodeType":"VariableDeclaration","scope":72316,"src":"21144:23:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member"},"typeName":{"id":72307,"nodeType":"UserDefinedTypeName","pathNode":{"id":72306,"name":"Member","nameLocations":["21144:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":70802,"src":"21144:6:107"},"referencedDeclaration":70802,"src":"21144:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72312,"initialValue":{"baseExpression":{"id":72309,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"21170:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72311,"indexExpression":{"id":72310,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72301,"src":"21190:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21170:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21144:54:107"},{"expression":{"expression":{"id":72313,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72308,"src":"21215:9:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member memory"}},"id":72314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21225:12:107","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70801,"src":"21215:22:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72305,"id":72315,"nodeType":"Return","src":"21208:29:107"}]},"functionSelector":"a230c524","implemented":true,"kind":"function","modifiers":[],"name":"isMember","nameLocation":"21063:8:107","parameters":{"id":72302,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72301,"mutability":"mutable","name":"_member","nameLocation":"21080:7:107","nodeType":"VariableDeclaration","scope":72317,"src":"21072:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72300,"name":"address","nodeType":"ElementaryTypeName","src":"21072:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21071:17:107"},"returnParameters":{"id":72305,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72304,"mutability":"mutable","name":"_isMember","nameLocation":"21123:9:107","nodeType":"VariableDeclaration","scope":72317,"src":"21118:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72303,"name":"bool","nodeType":"ElementaryTypeName","src":"21118:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"21117:16:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72436,"nodeType":"FunctionDefinition","src":"21250:1932:107","nodes":[],"body":{"id":72435,"nodeType":"Block","src":"21312:1870:107","nodes":[],"statements":[{"assignments":[72323],"declarations":[{"constant":false,"id":72323,"mutability":"mutable","name":"_member","nameLocation":"21330:7:107","nodeType":"VariableDeclaration","scope":72435,"src":"21322:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72322,"name":"address","nodeType":"ElementaryTypeName","src":"21322:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72326,"initialValue":{"expression":{"id":72324,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21340:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21344:6:107","memberName":"sender","nodeType":"MemberAccess","src":"21340:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"21322:28:107"},{"assignments":[72329],"declarations":[{"constant":false,"id":72329,"mutability":"mutable","name":"newMember","nameLocation":"21375:9:107","nodeType":"VariableDeclaration","scope":72435,"src":"21360:24:107","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member"},"typeName":{"id":72328,"nodeType":"UserDefinedTypeName","pathNode":{"id":72327,"name":"Member","nameLocations":["21360:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":70802,"src":"21360:6:107"},"referencedDeclaration":70802,"src":"21360:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72333,"initialValue":{"baseExpression":{"id":72330,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"21387:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72332,"indexExpression":{"id":72331,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72323,"src":"21407:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21387:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21360:55:107"},{"assignments":[72336],"declarations":[{"constant":false,"id":72336,"mutability":"mutable","name":"gardensFactory","nameLocation":"21442:14:107","nodeType":"VariableDeclaration","scope":72435,"src":"21425:31:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":72335,"nodeType":"UserDefinedTypeName","pathNode":{"id":72334,"name":"IRegistryFactory","nameLocations":["21425:16:107"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"21425:16:107"},"referencedDeclaration":70017,"src":"21425:16:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":72340,"initialValue":{"arguments":[{"id":72338,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71003,"src":"21476:15:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72337,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"21459:16:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":72339,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21459:33:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"21425:67:107"},{"assignments":[72342],"declarations":[{"constant":false,"id":72342,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"21510:18:107","nodeType":"VariableDeclaration","scope":72435,"src":"21502:26:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72341,"name":"uint256","nodeType":"ElementaryTypeName","src":"21502:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72352,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72343,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"21532:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":72344,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"21554:12:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21532:34:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72346,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21531:36:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72349,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":72347,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21571:3:107","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":72348,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70976,"src":"21577:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21571:21:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72350,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21570:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21531:62:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21502:91:107"},{"assignments":[72354],"declarations":[{"constant":false,"id":72354,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"21611:16:107","nodeType":"VariableDeclaration","scope":72435,"src":"21603:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72353,"name":"uint256","nodeType":"ElementaryTypeName","src":"21603:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72370,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72369,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72355,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"21643:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":72360,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21703:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":72359,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21695:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72358,"name":"address","nodeType":"ElementaryTypeName","src":"21695:7:107","typeDescriptions":{}}},"id":72361,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21695:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72356,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72336,"src":"21665:14:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":72357,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21680:14:107","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"21665:29:107","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":72362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21665:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21643:66:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72364,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21642:68:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72367,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":72365,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21714:3:107","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":72366,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70976,"src":"21720:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21714:21:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72368,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21713:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21642:94:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21603:133:107"},{"condition":{"id":72374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"21750:18:107","subExpression":{"arguments":[{"id":72372,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72323,"src":"21760:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72371,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72317,"src":"21751:8:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":72373,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21751:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72434,"nodeType":"IfStatement","src":"21746:1430:107","trueBody":{"id":72433,"nodeType":"Block","src":"21770:1406:107","statements":[{"expression":{"id":72379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72375,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72329,"src":"21784:9:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member storage pointer"}},"id":72377,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21794:12:107","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70801,"src":"21784:22:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"21809:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"21784:29:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72380,"nodeType":"ExpressionStatement","src":"21784:29:107"},{"expression":{"id":72385,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72381,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72329,"src":"21828:9:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member storage pointer"}},"id":72383,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21838:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"21828:22:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72384,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"21853:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21828:44:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72386,"nodeType":"ExpressionStatement","src":"21828:44:107"},{"expression":{"arguments":[{"id":72390,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72323,"src":"22070:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72393,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22087:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":72392,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22079:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72391,"name":"address","nodeType":"ElementaryTypeName","src":"22079:7:107","typeDescriptions":{}}},"id":72394,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22079:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72399,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72395,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"22094:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":72396,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72342,"src":"22116:18:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22094:40:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":72398,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72354,"src":"22137:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22094:59:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72387,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"22024:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72389,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22036:16:107","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"22024:28:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":72400,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22024:143:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72401,"nodeType":"ExpressionStatement","src":"22024:143:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72404,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72402,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72342,"src":"22592:18:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":72403,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22613:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22592:22:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72413,"nodeType":"IfStatement","src":"22588:178:107","trueBody":{"id":72412,"nodeType":"Block","src":"22616:150:107","statements":[{"expression":{"arguments":[{"id":72408,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71000,"src":"22719:11:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72409,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72342,"src":"22732:18:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72405,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"22694:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22706:12:107","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"22694:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72410,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22694:57:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72411,"nodeType":"ExpressionStatement","src":"22694:57:107"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72416,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72414,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72354,"src":"22849:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":72415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22868:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22849:20:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72427,"nodeType":"IfStatement","src":"22845:255:107","trueBody":{"id":72426,"nodeType":"Block","src":"22871:229:107","statements":[{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":72420,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72336,"src":"23028:14:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":72421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23043:21:107","memberName":"getGardensFeeReceiver","nodeType":"MemberAccess","referencedDeclaration":70009,"src":"23028:36:107","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":72422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23028:38:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72423,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72354,"src":"23068:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72417,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"23003:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23015:12:107","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"23003:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72424,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23003:82:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72425,"nodeType":"ExpressionStatement","src":"23003:82:107"}]}},{"eventCall":{"arguments":[{"id":72429,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72323,"src":"23136:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72430,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"23145:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72428,"name":"MemberRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70833,"src":"23119:16:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72431,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23119:46:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72432,"nodeType":"EmitStatement","src":"23114:51:107"}]}}]},"functionSelector":"3517aa7d","implemented":true,"kind":"function","modifiers":[{"id":72320,"kind":"modifierInvocation","modifierName":{"id":72319,"name":"nonReentrant","nameLocations":["21299:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"21299:12:107"},"nodeType":"ModifierInvocation","src":"21299:12:107"}],"name":"stakeAndRegisterMember","nameLocation":"21259:22:107","parameters":{"id":72318,"nodeType":"ParameterList","parameters":[],"src":"21281:2:107"},"returnParameters":{"id":72321,"nodeType":"ParameterList","parameters":[],"src":"21312:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72485,"nodeType":"FunctionDefinition","src":"23188:477:107","nodes":[],"body":{"id":72484,"nodeType":"Block","src":"23260:405:107","nodes":[],"statements":[{"assignments":[72443],"declarations":[{"constant":false,"id":72443,"mutability":"mutable","name":"gardensFactory","nameLocation":"23287:14:107","nodeType":"VariableDeclaration","scope":72484,"src":"23270:31:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":72442,"nodeType":"UserDefinedTypeName","pathNode":{"id":72441,"name":"IRegistryFactory","nameLocations":["23270:16:107"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"23270:16:107"},"referencedDeclaration":70017,"src":"23270:16:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":72447,"initialValue":{"arguments":[{"id":72445,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71003,"src":"23321:15:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72444,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"23304:16:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":72446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23304:33:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"23270:67:107"},{"assignments":[72449],"declarations":[{"constant":false,"id":72449,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"23355:18:107","nodeType":"VariableDeclaration","scope":72484,"src":"23347:26:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72448,"name":"uint256","nodeType":"ElementaryTypeName","src":"23347:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72459,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72458,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72452,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72450,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"23377:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":72451,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"23399:12:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23377:34:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72453,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23376:36:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":72454,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23416:3:107","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":72455,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70976,"src":"23422:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23416:21:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72457,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23415:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23376:62:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23347:91:107"},{"assignments":[72461],"declarations":[{"constant":false,"id":72461,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"23456:16:107","nodeType":"VariableDeclaration","scope":72484,"src":"23448:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72460,"name":"uint256","nodeType":"ElementaryTypeName","src":"23448:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72477,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72462,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"23488:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":72467,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23548:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":72466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23540:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72465,"name":"address","nodeType":"ElementaryTypeName","src":"23540:7:107","typeDescriptions":{}}},"id":72468,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23540:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72463,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72443,"src":"23510:14:107","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":72464,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23525:14:107","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"23510:29:107","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":72469,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23510:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23488:66:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72471,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23487:68:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72474,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":72472,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23559:3:107","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":72473,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70976,"src":"23565:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23559:21:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":72475,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23558:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23487:94:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23448:133:107"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72478,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"23599:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":72479,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72449,"src":"23621:18:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23599:40:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":72481,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72461,"src":"23642:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23599:59:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72440,"id":72483,"nodeType":"Return","src":"23592:66:107"}]},"functionSelector":"28c309e9","implemented":true,"kind":"function","modifiers":[],"name":"getStakeAmountWithFees","nameLocation":"23197:22:107","parameters":{"id":72437,"nodeType":"ParameterList","parameters":[],"src":"23219:2:107"},"returnParameters":{"id":72440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72439,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72485,"src":"23251:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72438,"name":"uint256","nodeType":"ElementaryTypeName","src":"23251:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23250:9:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72493,"nodeType":"FunctionDefinition","src":"23671:115:107","nodes":[],"body":{"id":72492,"nodeType":"Block","src":"23743:43:107","nodes":[],"statements":[{"expression":{"id":72490,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"23760:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72489,"id":72491,"nodeType":"Return","src":"23753:26:107"}]},"functionSelector":"0331383c","implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"23680:20:107","parameters":{"id":72486,"nodeType":"ParameterList","parameters":[],"src":"23700:2:107"},"returnParameters":{"id":72489,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72488,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72493,"src":"23734:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72487,"name":"uint256","nodeType":"ElementaryTypeName","src":"23734:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23733:9:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72510,"nodeType":"FunctionDefinition","src":"23792:190:107","nodes":[],"body":{"id":72509,"nodeType":"Block","src":"23859:123:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72498,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"23869:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23869:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72500,"nodeType":"ExpressionStatement","src":"23869:17:107"},{"expression":{"id":72503,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72501,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70985,"src":"23896:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72502,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72495,"src":"23918:10:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23896:32:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72504,"nodeType":"ExpressionStatement","src":"23896:32:107"},{"eventCall":{"arguments":[{"id":72506,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72495,"src":"23964:10:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72505,"name":"BasisStakedAmountSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70886,"src":"23943:20:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":72507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23943:32:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72508,"nodeType":"EmitStatement","src":"23938:37:107"}]},"functionSelector":"31f61bca","implemented":true,"kind":"function","modifiers":[],"name":"setBasisStakedAmount","nameLocation":"23801:20:107","parameters":{"id":72496,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72495,"mutability":"mutable","name":"_newAmount","nameLocation":"23830:10:107","nodeType":"VariableDeclaration","scope":72510,"src":"23822:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72494,"name":"uint256","nodeType":"ElementaryTypeName","src":"23822:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23821:20:107"},"returnParameters":{"id":72497,"nodeType":"ParameterList","parameters":[],"src":"23859:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72535,"nodeType":"FunctionDefinition","src":"23988:288:107","nodes":[],"body":{"id":72534,"nodeType":"Block","src":"24054:222:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72515,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"24064:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72516,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24064:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72517,"nodeType":"ExpressionStatement","src":"24064:17:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72520,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72518,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72512,"src":"24095:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":72519,"name":"MAX_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70982,"src":"24114:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24095:26:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72525,"nodeType":"IfStatement","src":"24091:86:107","trueBody":{"id":72524,"nodeType":"Block","src":"24123:54:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72521,"name":"NewFeeGreaterThanMax","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70941,"src":"24144:20:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72522,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24144:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72523,"nodeType":"RevertStatement","src":"24137:29:107"}]}},{"expression":{"id":72528,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72526,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"24186:12:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72527,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72512,"src":"24201:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24186:31:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72529,"nodeType":"ExpressionStatement","src":"24186:31:107"},{"eventCall":{"arguments":[{"id":72531,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72512,"src":"24252:16:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72530,"name":"CommunityFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70851,"src":"24232:19:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":72532,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24232:37:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72533,"nodeType":"EmitStatement","src":"24227:42:107"}]},"functionSelector":"0d12bbdb","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityFee","nameLocation":"23997:15:107","parameters":{"id":72513,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72512,"mutability":"mutable","name":"_newCommunityFee","nameLocation":"24021:16:107","nodeType":"VariableDeclaration","scope":72535,"src":"24013:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72511,"name":"uint256","nodeType":"ElementaryTypeName","src":"24013:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"24012:26:107"},"returnParameters":{"id":72514,"nodeType":"ParameterList","parameters":[],"src":"24054:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72548,"nodeType":"FunctionDefinition","src":"24319:133:107","nodes":[],"body":{"id":72547,"nodeType":"Block","src":"24396:56:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":72543,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71075,"src":"24421:14:107","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72544,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72537,"src":"24437:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72542,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"24413:7:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":72545,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:32:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72541,"id":72546,"nodeType":"Return","src":"24406:39:107"}]},"functionSelector":"ebd7dc52","implemented":true,"kind":"function","modifiers":[],"name":"isCouncilMember","nameLocation":"24328:15:107","parameters":{"id":72538,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72537,"mutability":"mutable","name":"_member","nameLocation":"24352:7:107","nodeType":"VariableDeclaration","scope":72548,"src":"24344:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72536,"name":"address","nodeType":"ElementaryTypeName","src":"24344:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24343:17:107"},"returnParameters":{"id":72541,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72540,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72548,"src":"24390:4:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72539,"name":"bool","nodeType":"ElementaryTypeName","src":"24390:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"24389:6:107"},"scope":72700,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72598,"nodeType":"FunctionDefinition","src":"24458:465:107","nodes":[],"body":{"id":72597,"nodeType":"Block","src":"24514:409:107","nodes":[],"statements":[{"assignments":[72554],"declarations":[{"constant":false,"id":72554,"mutability":"mutable","name":"_member","nameLocation":"24532:7:107","nodeType":"VariableDeclaration","scope":72597,"src":"24524:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72553,"name":"address","nodeType":"ElementaryTypeName","src":"24524:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72557,"initialValue":{"expression":{"id":72555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24542:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24546:6:107","memberName":"sender","nodeType":"MemberAccess","src":"24542:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"24524:28:107"},{"expression":{"arguments":[{"id":72559,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72554,"src":"24588:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72558,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71121,"src":"24562:25:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":72560,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24562:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72561,"nodeType":"ExpressionStatement","src":"24562:34:107"},{"expression":{"arguments":[{"id":72563,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72554,"src":"24630:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72562,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72635,"src":"24606:23:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24606:32:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72565,"nodeType":"ExpressionStatement","src":"24606:32:107"},{"assignments":[72568],"declarations":[{"constant":false,"id":72568,"mutability":"mutable","name":"member","nameLocation":"24662:6:107","nodeType":"VariableDeclaration","scope":72597,"src":"24648:20:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member"},"typeName":{"id":72567,"nodeType":"UserDefinedTypeName","pathNode":{"id":72566,"name":"Member","nameLocations":["24648:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":70802,"src":"24648:6:107"},"referencedDeclaration":70802,"src":"24648:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72572,"initialValue":{"baseExpression":{"id":72569,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"24671:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72571,"indexExpression":{"id":72570,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72554,"src":"24691:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24671:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"24648:51:107"},{"expression":{"id":72576,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24709:35:107","subExpression":{"baseExpression":{"id":72573,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"24716:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72575,"indexExpression":{"id":72574,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72554,"src":"24736:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24716:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72577,"nodeType":"ExpressionStatement","src":"24709:35:107"},{"expression":{"id":72581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24754:34:107","subExpression":{"baseExpression":{"id":72578,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71058,"src":"24761:18:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72580,"indexExpression":{"id":72579,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72554,"src":"24780:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24761:27:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72582,"nodeType":"ExpressionStatement","src":"24754:34:107"},{"expression":{"arguments":[{"id":72586,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72554,"src":"24824:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72587,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72568,"src":"24833:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member memory"}},"id":72588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24840:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"24833:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72583,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"24799:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72585,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24811:12:107","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"24799:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72589,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24799:54:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72590,"nodeType":"ExpressionStatement","src":"24799:54:107"},{"eventCall":{"arguments":[{"id":72592,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72554,"src":"24887:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72593,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72568,"src":"24896:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member memory"}},"id":72594,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24903:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"24896:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72591,"name":"MemberUnregistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70839,"src":"24868:18:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24868:48:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72596,"nodeType":"EmitStatement","src":"24863:53:107"}]},"functionSelector":"b99b4370","implemented":true,"kind":"function","modifiers":[{"id":72551,"kind":"modifierInvocation","modifierName":{"id":72550,"name":"nonReentrant","nameLocations":["24501:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"24501:12:107"},"nodeType":"ModifierInvocation","src":"24501:12:107"}],"name":"unregisterMember","nameLocation":"24467:16:107","parameters":{"id":72549,"nodeType":"ParameterList","parameters":[],"src":"24483:2:107"},"returnParameters":{"id":72552,"nodeType":"ParameterList","parameters":[],"src":"24514:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72635,"nodeType":"FunctionDefinition","src":"24929:474:107","nodes":[],"body":{"id":72634,"nodeType":"Block","src":"24996:407:107","nodes":[],"statements":[{"assignments":[72607],"declarations":[{"constant":false,"id":72607,"mutability":"mutable","name":"memberStrategies","nameLocation":"25023:16:107","nodeType":"VariableDeclaration","scope":72634,"src":"25006:33:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72605,"name":"address","nodeType":"ElementaryTypeName","src":"25006:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72606,"nodeType":"ArrayTypeName","src":"25006:9:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72611,"initialValue":{"baseExpression":{"id":72608,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71058,"src":"25042:18:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72610,"indexExpression":{"id":72609,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72600,"src":"25061:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25042:27:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25006:63:107"},{"body":{"id":72632,"nodeType":"Block","src":"25199:198:107","statements":[{"expression":{"arguments":[{"id":72629,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72600,"src":"25378:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"baseExpression":{"id":72624,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72607,"src":"25340:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72626,"indexExpression":{"id":72625,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72613,"src":"25357:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25340:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72623,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"25325:14:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":72627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25325:35:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":72628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25361:16:107","memberName":"deactivatePoints","nodeType":"MemberAccess","referencedDeclaration":65511,"src":"25325:52:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":72630,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25325:61:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72631,"nodeType":"ExpressionStatement","src":"25325:61:107"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72619,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72616,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72613,"src":"25165:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":72617,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72607,"src":"25169:16:107","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72618,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25186:6:107","memberName":"length","nodeType":"MemberAccess","src":"25169:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25165:27:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72633,"initializationExpression":{"assignments":[72613],"declarations":[{"constant":false,"id":72613,"mutability":"mutable","name":"i","nameLocation":"25158:1:107","nodeType":"VariableDeclaration","scope":72633,"src":"25150:9:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72612,"name":"uint256","nodeType":"ElementaryTypeName","src":"25150:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72615,"initialValue":{"hexValue":"30","id":72614,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25162:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25150:13:107"},"loopExpression":{"expression":{"id":72621,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25194:3:107","subExpression":{"id":72620,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72613,"src":"25194:1:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72622,"nodeType":"ExpressionStatement","src":"25194:3:107"},"nodeType":"ForStatement","src":"25145:252:107"}]},"implemented":true,"kind":"function","modifiers":[],"name":"deactivateAllStrategies","nameLocation":"24938:23:107","parameters":{"id":72601,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72600,"mutability":"mutable","name":"_member","nameLocation":"24970:7:107","nodeType":"VariableDeclaration","scope":72635,"src":"24962:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72599,"name":"address","nodeType":"ElementaryTypeName","src":"24962:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24961:17:107"},"returnParameters":{"id":72602,"nodeType":"ParameterList","parameters":[],"src":"24996:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72695,"nodeType":"FunctionDefinition","src":"25409:583:107","nodes":[],"body":{"id":72694,"nodeType":"Block","src":"25500:492:107","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72644,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71092,"src":"25510:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72645,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25510:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72646,"nodeType":"ExpressionStatement","src":"25510:17:107"},{"condition":{"id":72648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25541:14:107","subExpression":{"id":72647,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70997,"src":"25542:13:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72653,"nodeType":"IfStatement","src":"25537:68:107","trueBody":{"id":72652,"nodeType":"Block","src":"25557:48:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72649,"name":"KickNotEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70943,"src":"25578:14:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72650,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25578:16:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72651,"nodeType":"RevertStatement","src":"25571:23:107"}]}},{"condition":{"id":72657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25618:18:107","subExpression":{"arguments":[{"id":72655,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72637,"src":"25628:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72654,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72317,"src":"25619:8:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":72656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25619:17:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72662,"nodeType":"IfStatement","src":"25614:75:107","trueBody":{"id":72661,"nodeType":"Block","src":"25638:51:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72658,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70921,"src":"25659:17:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25659:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72660,"nodeType":"RevertStatement","src":"25652:26:107"}]}},{"assignments":[72665],"declarations":[{"constant":false,"id":72665,"mutability":"mutable","name":"member","nameLocation":"25712:6:107","nodeType":"VariableDeclaration","scope":72694,"src":"25698:20:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member"},"typeName":{"id":72664,"nodeType":"UserDefinedTypeName","pathNode":{"id":72663,"name":"Member","nameLocations":["25698:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":70802,"src":"25698:6:107"},"referencedDeclaration":70802,"src":"25698:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72669,"initialValue":{"baseExpression":{"id":72666,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"25721:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72668,"indexExpression":{"id":72667,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72637,"src":"25741:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25721:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25698:51:107"},{"expression":{"arguments":[{"id":72671,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72637,"src":"25783:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72670,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72635,"src":"25759:23:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72672,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25759:32:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72673,"nodeType":"ExpressionStatement","src":"25759:32:107"},{"expression":{"id":72677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"25801:35:107","subExpression":{"baseExpression":{"id":72674,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71052,"src":"25808:19:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70802_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72676,"indexExpression":{"id":72675,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72637,"src":"25828:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"25808:28:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72678,"nodeType":"ExpressionStatement","src":"25801:35:107"},{"expression":{"arguments":[{"id":72682,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72639,"src":"25872:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72683,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72665,"src":"25890:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member memory"}},"id":72684,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25897:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"25890:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72679,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71020,"src":"25847:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25859:12:107","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"25847:24:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72685,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25847:63:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72686,"nodeType":"ExpressionStatement","src":"25847:63:107"},{"eventCall":{"arguments":[{"id":72688,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72637,"src":"25938:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72689,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72639,"src":"25947:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72690,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72665,"src":"25965:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70802_memory_ptr","typeString":"struct Member memory"}},"id":72691,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25972:12:107","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70799,"src":"25965:19:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72687,"name":"MemberKicked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70847,"src":"25925:12:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":72692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25925:60:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72693,"nodeType":"EmitStatement","src":"25920:65:107"}]},"functionSelector":"6871eb4d","implemented":true,"kind":"function","modifiers":[{"id":72642,"kind":"modifierInvocation","modifierName":{"id":72641,"name":"nonReentrant","nameLocations":["25487:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"25487:12:107"},"nodeType":"ModifierInvocation","src":"25487:12:107"}],"name":"kickMember","nameLocation":"25418:10:107","parameters":{"id":72640,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72637,"mutability":"mutable","name":"_member","nameLocation":"25437:7:107","nodeType":"VariableDeclaration","scope":72695,"src":"25429:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72636,"name":"address","nodeType":"ElementaryTypeName","src":"25429:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72639,"mutability":"mutable","name":"_transferAddress","nameLocation":"25454:16:107","nodeType":"VariableDeclaration","scope":72695,"src":"25446:24:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72638,"name":"address","nodeType":"ElementaryTypeName","src":"25446:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25428:43:107"},"returnParameters":{"id":72643,"nodeType":"ParameterList","parameters":[],"src":"25500:0:107"},"scope":72700,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72699,"nodeType":"VariableDeclaration","src":"25998:25:107","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"26018:5:107","scope":72700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":72696,"name":"uint256","nodeType":"ElementaryTypeName","src":"25998:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72698,"length":{"hexValue":"3530","id":72697,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26006:2:107","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"25998:11:107","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":70808,"name":"ProxyOwnableUpgrader","nameLocations":["2884:20:107"],"nodeType":"IdentifierPath","referencedDeclaration":70711,"src":"2884:20:107"},"id":70809,"nodeType":"InheritanceSpecifier","src":"2884:20:107"},{"baseName":{"id":70810,"name":"ReentrancyGuardUpgradeable","nameLocations":["2906:26:107"],"nodeType":"IdentifierPath","referencedDeclaration":53237,"src":"2906:26:107"},"id":70811,"nodeType":"InheritanceSpecifier","src":"2906:26:107"},{"baseName":{"id":70812,"name":"AccessControlUpgradeable","nameLocations":["2934:24:107"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"2934:24:107"},"id":70813,"nodeType":"InheritanceSpecifier","src":"2934:24:107"}],"canonicalName":"RegistryCommunityV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":70807,"nodeType":"StructuredDocumentation","src":"2799:51:107","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72700,52697,53970,53982,52770,53237,70711,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_0","nameLocation":"2859:21:107","scope":72701,"usedErrors":[70634,70913,70915,70919,70921,70923,70925,70927,70929,70931,70933,70935,70937,70939,70941,70943,70945,70947,70953]}],"license":"AGPL-3.0-only"},"id":107} \ No newline at end of file +{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161597a6200004d60003960008181611dde01528181611e2101528181611f1c01528181611f5f01526120c3015261597a6000f3fe6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bc565b62000cf4565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041e8565b62000d2c565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422a565b62000da2565b348015620003fd57600080fd5b50620003c96200040f36600462004268565b62001125565b3480156200042257600080fd5b50620003c96200043436600462004268565b6200113d565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c96200047436600462004268565b6200116a565b3480156200048757600080fd5b50620003c9620004993660046200422a565b6200117f565b348015620004ac57600080fd5b506200037d620004be366004620041e8565b62001279565b348015620004d157600080fd5b506200037d6200128e565b348015620004e957600080fd5b5062000501620004fb36600462004288565b62001393565b604051620003629190620042c4565b3480156200051d57600080fd5b506200037d6200052f36600462004268565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042d8565b620013cd565b3480156200058057600080fd5b50620003c962000592366004620041e8565b620013f4565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450c565b62001434565b348015620005e257600080fd5b50620003c962001af4565b348015620005fa57600080fd5b50620003c96200060c366004620042d8565b62001d56565b3480156200061f57600080fd5b50620003c96200063136600462004268565b62001dd4565b3480156200064457600080fd5b50620003c96200065636600462004268565b62001ea5565b3480156200066957600080fd5b50620003566200067b36600462004268565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422a565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e23660046200469f565b62001f12565b348015620006f557600080fd5b506200070d62000707366004620048c9565b62001fd3565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b6565b3480156200075057600080fd5b50620003c962000762366004620041e8565b62002167565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041e8565b620023b3565b348015620007bd57600080fd5b506200037d620007cf3660046200422a565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422a565b6200274d565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a0565b3480156200087d57600080fd5b50620003c96200088f366004620041e8565b620028b6565b348015620008a257600080fd5b506200037d600080516020620058be83398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422a565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041e8565b62002952565b3480156200099557600080fd5b50620009d6620009a736600462004268565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a10565b34801562000a3b57600080fd5b506200035662000a4d366004620042d8565b62002aab565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab336600462004268565b62002ad6565b34801562000ac657600080fd5b50620003c962000ad836600462004268565b62002b20565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b4d565b34801562000b2a57600080fd5b5062000b3562002b84565b60405162000362919062004987565b34801562000b5157600080fd5b50620003c962002c1b565b34801562000b6957600080fd5b506200037d62002d25565b34801562000b8157600080fd5b50620003c962000b9336600462004268565b62002d37565b34801562000ba657600080fd5b5062000b3562002d6c565b34801562000bbe57600080fd5b50620003c962000bd0366004620042d8565b62002d7c565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499c565b62002d9e565b34801562000c6657600080fd5b506200035662000c7836600462004268565b62002f2b565b34801562000c8b57600080fd5b50620003c962000c9d36600462004268565b62002f48565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b35565b60006001600160e01b03198216637965db0b60e01b148062000d2657506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3662002fb9565b62000d45612710600a62004a31565b81111562000d665760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000dac62002ff6565b62000db78262003051565b62000dc2816200307a565b62000dcd81620030b5565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1657604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000eca919062004a61565b600381111562000ede5762000ede62004a4b565b0362000f635760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1590889060009060040162004a81565b6020604051808303816000875af115801562000f35573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5b919062004a9a565b90506200105f565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcc919062004a61565b600381111562000fe05762000fe062004a4b565b146200105f5760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001016908890869060040162004a81565b6020604051808303816000875af115801562001036573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105c919062004a9a565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110b9087908790859062004ab4565b60405180910390a1505050620011216001606555565b5050565b6200112f62002fb9565b6200113a81620030e4565b50565b6200114762003142565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117462002fb9565b6200113a81620031a5565b6200118a8262003051565b6200119581620030b5565b620011a1338262003237565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011e957604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123b82826200326a565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200126d92919062004ad8565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012ae612710606462004a31565b60fc5460fb54620012c0919062004a31565b620012cc919062004af2565b90506000620012df612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200130d903090600401620042c4565b602060405180830381865afa1580156200132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001351919062004a9a565b60fb5462001360919062004a31565b6200136c919062004af2565b9050808260fb546200137f919062004b15565b6200138b919062004b15565b935050505090565b61010d6020528160005260406000208181548110620013b157600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013d88262001279565b620013e381620033a0565b620013ef8383620033ac565b505050565b620013fe62002fb9565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d97565b600054610100900460ff1615808015620014555750600054600160ff909116105b806200147a5750620014673062003436565b1580156200147a575060005460ff166001145b620014e35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001507576000805461ff0019166101001790555b620015128262002d37565b6200151c62003445565b6200152662003479565b62001542600080516020620058be8339815191526000620034a3565b620015518560200151620030b5565b62001561856101000151620030b5565b84516200156e90620030b5565b6200157d8560a00151620030b5565b6060850151156200159757620015978560c00151620030b5565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f2576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200162f908262004bb9565b506101608501516101099062001646908262004bb9565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016bb90600080516020620058be83398151915290620033ac565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001710573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001736919062004c85565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c25760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179c576200179c62004ca5565b60200260200101906001600160a01b031690816001600160a01b031681525050620018ff565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200180d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001837919081019062004cbb565b90508051600262001849919062004b15565b6001600160401b0381111562001863576200186362004300565b6040519080825280602002602001820160405280156200188d578160200160208202803683370190505b50915060005b8151811015620018fc57818181518110620018b257620018b262004ca5565b6020026020010151838281518110620018cf57620018cf62004ca5565b6001600160a01b039092166020928302919091019091015280620018f38162004d79565b91505062001893565b50505b6101065481516001600160a01b03909116908290620019219060019062004d95565b8151811062001934576200193462004ca5565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001966919062004d95565b8151811062001979576200197962004ca5565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cc9291610108913090889060040162004e97565b6020604051808303816000875af1158015620019ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a12919062004a9a565b60fe55805162001a2b9061010f90602084019062004116565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001a9d929091610108919062004eeb565b60405180910390a150801562001aed576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001afe62002ff6565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b2f612710606462004a31565b60fc5460fb5462001b41919062004a31565b62001b4d919062004af2565b9050600062001b60612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b8e903090600401620042c4565b602060405180830381865afa15801562001bac573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd2919062004a9a565b60fb5462001be1919062004a31565b62001bed919062004af2565b905062001bfa8562002ad6565b62001d445760028401805460ff1916600190811790915560fb5490850181905562001c549086903090849062001c3290879062004b15565b62001c3e919062004b15565b610105546001600160a01b0316929190620034f8565b811562001c815760ff546101055462001c81916001600160a01b0391821691610100909104168462003554565b801562001d065762001d06836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001ccb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf1919062004c85565b610105546001600160a01b0316908362003554565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3b92919062004a81565b60405180910390a15b505050505062001d546001606555565b565b6001600160a01b038116331462001dc85760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014da565b62001121828262003576565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e1f5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e53620035e0565b6001600160a01b03161462001e7c5760405162461bcd60e51b8152600401620014da9062004f55565b62001e8781620035fd565b604080516000808252602082019092526200113a918391906200363f565b62001eaf62002fb9565b62001eba81620030b5565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d97939216919062004ad8565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f5d5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f91620035e0565b6001600160a01b03161462001fba5760405162461bcd60e51b8152600401620014da9062004f55565b62001fc582620035fd565b62001121828260016200363f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200962002a10565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200206e906200417c565b6200207b92919062004f90565b604051809103906000f08015801562002098573d6000803e3d6000fd5b509050620020a98187878762002d9e565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021535760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014da565b50600080516020620058fe83398151915290565b6200217162002ff6565b6200217b620037b7565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021df57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c0575b50505050509050600080600090505b82518110156200231a578281815181106200220d576200220d62004ca5565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224492919062004a81565b6020604051808303816000875af115801562002264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228a919062004a9a565b9150811562002305576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c657620022c662004ca5565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620022ff919062004b15565b90915550505b80620023118162004d79565b915050620021ee565b506101055462002336906001600160a01b0316843087620034f8565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236490849062004b15565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200239d908590879062004a81565b60405180910390a15050506200113a6001606555565b620023bd62002ff6565b620023c7620037b7565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fb90869062004d95565b10156200241b57604051634e23e81760e11b815260040160405180910390fd5b6101055462002435906001600160a01b0316848662003554565b60005b8254811015620026e557600083828154811062002459576200245962004ca5565b6000918252602090912001546001600160a01b03169050620024838163f1801e6160e01b620037e0565b156200260957604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024b99088908a9060040162004a81565b6020604051808303816000875af1158015620024d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024ff919062004a9a565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002540576200254062004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002594576040516311423e6360e31b81526004810185905260248101829052604401620014da565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025c757620025c762004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620025fd90849062004d95565b909155505050620026cf565b835484906200261b9060019062004d95565b815481106200262e576200262e62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002661576200266162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a257620026a262004fb6565b600082815260209020810160001990810180546001600160a01b0319169055019055620026cf81620030e4565b5080620026dc8162004d79565b91505062002438565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271490849062004d95565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200239d908590879062004a81565b6200275762002ff6565b6200276162002fb9565b60ff80541662002784576040516365b1ee3960e11b815260040160405180910390fd5b6200278f8262002ad6565b620027ad57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff16151590820152620027fe8362003808565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002853921690849062003554565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288c9392919062004ab4565b60405180910390a150620011216001606555565b620028aa62003142565b62001d5460006200391d565b620028c062002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002936919081019062004fcc565b6020015190506200294781620030b5565b6200112181620030e4565b6200295c62002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d2919081019062004fcc565b602001519050620029e381620030b5565b620029ff6001600160a01b03821663f1801e6160e01b620037e0565b1562001121576200112181620031a5565b60008062002a266033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002a9d575060408051601f3d908101601f1916820190925262002a9a9181019062004c85565b60015b62000d2657919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2a62003142565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7a576040516375e686b760e11b815260040160405180910390fd5b62001d546200396f565b610109805462002b949062004b2b565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc29062004b2b565b801562002c135780601f1062002be75761010080835404028352916020019162002c13565b820191906000526020600020905b81548152906001019060200180831162002bf557829003601f168201915b505050505081565b62002c2562002ff6565b3362002c318162003051565b62002c3c8162003808565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cb791906200418a565b60208101516101055462002cd9916001600160a01b0390911690849062003554565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1092919062004a81565b60405180910390a1505062001d546001606555565b62002d34612710600a62004a31565b81565b600054610100900460ff1662002d615760405162461bcd60e51b8152600401620014da9062005102565b6200113a816200391d565b610108805462002b949062004b2b565b62002d878262001279565b62002d9281620033a0565b620013ef838362003576565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dc95750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e08575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e5f908b9060200162005177565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e97979695949392919062005259565b6020604051808303816000875af115801562002eb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002edd919062004a9a565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f18959493929190620052ca565b60405180910390a1505094509492505050565b600062000d26600080516020620058be8339815191528362002aab565b62002f5262003142565b6001600160a01b03811662002d615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014da565b62002fd4600080516020620058be8339815191523362002aab565b62001d54573360405163fc4be72f60e01b8152600401620014da9190620042c4565b6002606554036200304a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014da565b6002606555565b6200305c8162002ad6565b6200113a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113a576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113a576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030ef81620030b5565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d97908390620042c4565b336200314d62002a10565b6001600160a01b03161462001d545760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014da565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e1576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d97908390620042c4565b806001600160a01b0316826001600160a01b031614620011215760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339a57826001600160a01b0316828281548110620032ae57620032ae62004ca5565b6000918252602090912001546001600160a01b031603620033855781548290620032db9060019062004d95565b81548110620032ee57620032ee62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003321576200332162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003362576200336262004fb6565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033918162004d79565b91505062003285565b50505050565b6200113a8133620039d3565b620033b8828262002aab565b6200112157600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f23390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff166200346f5760405162461bcd60e51b8152600401620014da9062005102565b62001d5462003a37565b600054610100900460ff1662001d545760405162461bcd60e51b8152600401620014da9062005102565b6000620034b08362001279565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339a846323b872dd60e01b8585856040516024016200351c9392919062004ab4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a61565b620013ef8363a9059cbb60e01b84846040516024016200351c92919062004a81565b62003582828262002aab565b156200112157600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020620058fe833981519152546001600160a01b031690565b336200360862002a10565b6001600160a01b0316146200113a57336200362262002a10565b60405163163678e960e01b8152600401620014da92919062004ad8565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367557620013ef8362003b3d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d2575060408051601f3d908101601f19168201909252620036cf9181019062004a9a565b60015b620037375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014da565b600080516020620058fe8339815191528114620037a95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014da565b50620013ef83838362003bdc565b620037c23362002ad6565b62001d5457604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037ed8362003c07565b801562003801575062003801838362003c3f565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387557602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003856575b5050505050905060005b8151811015620013ef578181815181106200389e576200389e62004ca5565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d39190620042c4565b600060405180830381600087803b158015620038ee57600080fd5b505af115801562003903573d6000803e3d6000fd5b505050508080620039149062004d79565b9150506200387f565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039c990600090620042c4565b60405180910390a1565b620039df828262002aab565b6200112157620039ef8162003cca565b620039fc83602062003cdd565b60405160200162003a0f92919062005306565b60408051601f198184030181529082905262461bcd60e51b8252620014da9160040162004987565b600054610100900460ff16620030dd5760405162461bcd60e51b8152600401620014da9062005102565b600062003ab8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e969092919063ffffffff16565b905080516000148062003adc57508080602001905181019062003adc919062005379565b620013ef5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014da565b62003b488162003436565b62003bac5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014da565b600080516020620058fe83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003be78362003eaf565b60008251118062003bf55750805b15620013ef576200339a838362003ef1565b600062003c1c826301ffc9a760e01b62003c3f565b801562000d26575062003c38826001600160e01b031962003c3f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb2575060208210155b801562003cbf5750600081115b979650505050505050565b606062000d266001600160a01b03831660145b6060600062003cee83600262004a31565b62003cfb90600262004b15565b6001600160401b0381111562003d155762003d1562004300565b6040519080825280601f01601f19166020018201604052801562003d40576020820181803683370190505b509050600360fc1b8160008151811062003d5e5762003d5e62004ca5565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d905762003d9062004ca5565b60200101906001600160f81b031916908160001a905350600062003db684600262004a31565b62003dc390600162004b15565b90505b600181111562003e45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfb5762003dfb62004ca5565b1a60f81b82828151811062003e145762003e1462004ca5565b60200101906001600160f81b031916908160001a90535060049490941c9362003e3d8162005399565b905062003dc6565b508315620038015760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014da565b606062003ea7848460008562003f19565b949350505050565b62003eba8162003b3d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200380183836040518060600160405280602781526020016200591e6027913962003ff1565b60608247101562003f7c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014da565b600080866001600160a01b0316858760405162003f9a9190620053b3565b60006040518083038185875af1925050503d806000811462003fd9576040519150601f19603f3d011682016040523d82523d6000602084013e62003fde565b606091505b509150915062003cbf878383876200406f565b6060600080856001600160a01b031685604051620040109190620053b3565b600060405180830381855af49150503d80600081146200404d576040519150601f19603f3d011682016040523d82523d6000602084013e62004052565b606091505b509150915062004065868383876200406f565b9695505050505050565b60608315620040e3578251600003620040db576200408d8562003436565b620040db5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014da565b508162003ea7565b62003ea78383815115620040fa5781518083602001fd5b8060405162461bcd60e51b8152600401620014da919062004987565b8280548282559060005260206000209081019282156200416e579160200282015b828111156200416e57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062004137565b5062002aa7929150620041a5565b6104ec80620053d283390190565b50805460008255906000526020600020908101906200113a91905b5b8082111562002aa75760008155600101620041a6565b600060208284031215620041cf57600080fd5b81356001600160e01b0319811681146200380157600080fd5b600060208284031215620041fb57600080fd5b5035919050565b6001600160a01b03811681146200113a57600080fd5b8035620042258162004202565b919050565b600080604083850312156200423e57600080fd5b82356200424b8162004202565b915060208301356200425d8162004202565b809150509250929050565b6000602082840312156200427b57600080fd5b8135620038018162004202565b600080604083850312156200429c57600080fd5b8235620042a98162004202565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ec57600080fd5b8235915060208301356200425d8162004202565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433b576200433b62004300565b60405290565b60405161018081016001600160401b03811182821017156200433b576200433b62004300565b60405160c081016001600160401b03811182821017156200433b576200433b62004300565b60405160e081016001600160401b03811182821017156200433b576200433b62004300565b604051608081016001600160401b03811182821017156200433b576200433b62004300565b604051601f8201601f191681016001600160401b038111828210171562004401576200440162004300565b604052919050565b60006001600160401b0382111562004425576200442562004300565b50601f01601f191660200190565b60006200444a620044448462004409565b620043d6565b90508281528383830111156200445f57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448857600080fd5b620038018383356020850162004433565b600060408284031215620044ac57600080fd5b620044b662004316565b82358152905060208201356001600160401b03811115620044d657600080fd5b620044e48482850162004476565b60208301525092915050565b80151581146200113a57600080fd5b80356200422581620044f0565b600080600080608085870312156200452357600080fd5b84356001600160401b03808211156200453b57600080fd5b9086019061018082890312156200455157600080fd5b6200455b62004341565b620045668362004218565b8152620045766020840162004218565b6020820152604083013560408201526060830135606082015260808301356080820152620045a760a0840162004218565b60a0820152620045ba60c0840162004218565b60c082015260e083013582811115620045d257600080fd5b620045e08a82860162004499565b60e083015250610100620045f681850162004218565b9082015261012083810135838111156200460f57600080fd5b6200461d8b82870162004476565b82840152505061014062004633818501620044ff565b9082015261016083810135838111156200464c57600080fd5b6200465a8b82870162004476565b828401525050809650505050620046746020860162004218565b9250620046846040860162004218565b9150620046946060860162004218565b905092959194509250565b60008060408385031215620046b357600080fd5b8235620046c08162004202565b915060208301356001600160401b03811115620046dc57600080fd5b8301601f81018513620046ee57600080fd5b620046ff8582356020840162004433565b9150509250929050565b8035600381106200422557600080fd5b600481106200113a57600080fd5b8035620042258162004719565b6000602082840312156200474757600080fd5b604051602081016001600160401b03811182821017156200476c576200476c62004300565b6040529135825250919050565b600060c082840312156200478c57600080fd5b6200479662004367565b90508135620047a58162004202565b81526020820135620047b78162004202565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480157600080fd5b6200480b6200438c565b915060808112156200481c57600080fd5b5062004827620043b1565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485b6080830162004709565b60208201526200486e60a0830162004727565b6040820152620048828360c0840162004734565b6060820152620048968360e0840162004779565b6080820152620048aa6101a0830162004218565b60a0820152620048be6101c0830162004218565b60c082015292915050565b60008060006102208486031215620048e057600080fd5b8335620048ed8162004202565b9250620048fe8560208601620047ec565b91506102008401356001600160401b038111156200491b57600080fd5b620049298682870162004499565b9150509250925092565b60005b838110156200495057818101518382015260200162004936565b50506000910152565b600081518084526200497381602086016020860162004933565b601f01601f19169290920160200192915050565b60208152600062003801602083018462004959565b6000806000806102408587031215620049b457600080fd5b8435620049c18162004202565b93506020850135620049d38162004202565b9250620049e48660408701620047ec565b91506102208501356001600160401b0381111562004a0157600080fd5b62004a0f8782880162004499565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d265762000d2662004a1b565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7457600080fd5b8151620038018162004719565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004aad57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d265762000d2662004a1b565b600181811c9082168062004b4057607f821691505b60208210810362004b6157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013ef57600081815260208120601f850160051c8101602086101562004b905750805b601f850160051c820191505b8181101562004bb15782815560010162004b9c565b505050505050565b81516001600160401b0381111562004bd55762004bd562004300565b62004bed8162004be6845462004b2b565b8462004b67565b602080601f83116001811462004c25576000841562004c0c5750858301515b600019600386901b1c1916600185901b17855562004bb1565b600085815260208120601f198616915b8281101562004c565788860151825594840194600190910190840162004c35565b508582101562004c755787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9857600080fd5b8151620038018162004202565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004ccf57600080fd5b82516001600160401b038082111562004ce757600080fd5b818501915085601f83011262004cfc57600080fd5b81518181111562004d115762004d1162004300565b8060051b915062004d24848301620043d6565b818152918301840191848101908884111562004d3f57600080fd5b938501935b8385101562004d6d578451925062004d5c8362004202565b828252938501939085019062004d44565b98975050505050505050565b60006001820162004d8e5762004d8e62004a1b565b5060010190565b8181038181111562000d265762000d2662004a1b565b6000815462004dba8162004b2b565b80855260206001838116801562004dda576001811462004df55762004e25565b60ff1985168884015283151560051b88018301955062004e25565b866000528260002060005b8581101562004e1d5781548a820186015290830190840162004e00565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003ea7604085018262004959565b600081518084526020808501945080840160005b8381101562004e8c5781516001600160a01b03168752958201959082019060010162004e65565b509495945050505050565b85815260a06020820152600062004eb260a083018762004dab565b828103604084015262004ec6818762004e30565b6001600160a01b03861660608501528381036080850152905062004d6d818562004e51565b83815260606020820152600062004f06606083018562004dab565b828103604084015262004065818562004e30565b6020808252602c90820152600080516020620058de83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058de83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003ea79083018462004959565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe057600080fd5b82516001600160401b038082111562004ff857600080fd5b9084019060c082870312156200500d57600080fd5b6200501762004367565b82518152838301516200502a8162004202565b8185015260408301516200503e8162004202565b60408201526060830151828111156200505657600080fd5b8301604081890312156200506957600080fd5b6200507362004316565b8151815285820151848111156200508957600080fd5b82019350601f840189136200509d57600080fd5b83519150620050b0620044448362004409565b8281528987848701011115620050c557600080fd5b620050d68388830189880162004933565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005160576200516062004a4b565b9052565b6004811062005160576200516062004a4b565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051b960808401826200514d565b506040830151620051ce60a084018262005164565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523c6101a0840182620042b7565b5060c0830151620052526101c0840182620042b7565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528360e084018962004959565b818816606085015286608085015283810360a0850152620052a5818762004e30565b91505082810360c0840152620052bc818562004e51565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cbf9083018462004e30565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533a81601785016020880162004933565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200536d81602884016020880162004933565b01602801949350505050565b6000602082840312156200538c57600080fd5b81516200380181620044f0565b600081620053ab57620053ab62004a1b565b506000190190565b60008251620053c781846020870162004933565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122052959655105f56f9563f8494a08f9520e14031dbdb68ee3670df7a0f08d24d6264736f6c63430008130033","sourceMap":"2850:23276:104:-:0;;;1088:4:64;1045:48;;2850:23276:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bc565b62000cf4565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041e8565b62000d2c565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422a565b62000da2565b348015620003fd57600080fd5b50620003c96200040f36600462004268565b62001125565b3480156200042257600080fd5b50620003c96200043436600462004268565b6200113d565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c96200047436600462004268565b6200116a565b3480156200048757600080fd5b50620003c9620004993660046200422a565b6200117f565b348015620004ac57600080fd5b506200037d620004be366004620041e8565b62001279565b348015620004d157600080fd5b506200037d6200128e565b348015620004e957600080fd5b5062000501620004fb36600462004288565b62001393565b604051620003629190620042c4565b3480156200051d57600080fd5b506200037d6200052f36600462004268565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042d8565b620013cd565b3480156200058057600080fd5b50620003c962000592366004620041e8565b620013f4565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450c565b62001434565b348015620005e257600080fd5b50620003c962001af4565b348015620005fa57600080fd5b50620003c96200060c366004620042d8565b62001d56565b3480156200061f57600080fd5b50620003c96200063136600462004268565b62001dd4565b3480156200064457600080fd5b50620003c96200065636600462004268565b62001ea5565b3480156200066957600080fd5b50620003566200067b36600462004268565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422a565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e23660046200469f565b62001f12565b348015620006f557600080fd5b506200070d62000707366004620048c9565b62001fd3565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b6565b3480156200075057600080fd5b50620003c962000762366004620041e8565b62002167565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041e8565b620023b3565b348015620007bd57600080fd5b506200037d620007cf3660046200422a565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422a565b6200274d565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a0565b3480156200087d57600080fd5b50620003c96200088f366004620041e8565b620028b6565b348015620008a257600080fd5b506200037d600080516020620058be83398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422a565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041e8565b62002952565b3480156200099557600080fd5b50620009d6620009a736600462004268565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a10565b34801562000a3b57600080fd5b506200035662000a4d366004620042d8565b62002aab565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab336600462004268565b62002ad6565b34801562000ac657600080fd5b50620003c962000ad836600462004268565b62002b20565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b4d565b34801562000b2a57600080fd5b5062000b3562002b84565b60405162000362919062004987565b34801562000b5157600080fd5b50620003c962002c1b565b34801562000b6957600080fd5b506200037d62002d25565b34801562000b8157600080fd5b50620003c962000b9336600462004268565b62002d37565b34801562000ba657600080fd5b5062000b3562002d6c565b34801562000bbe57600080fd5b50620003c962000bd0366004620042d8565b62002d7c565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499c565b62002d9e565b34801562000c6657600080fd5b506200035662000c7836600462004268565b62002f2b565b34801562000c8b57600080fd5b50620003c962000c9d36600462004268565b62002f48565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b35565b60006001600160e01b03198216637965db0b60e01b148062000d2657506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3662002fb9565b62000d45612710600a62004a31565b81111562000d665760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000dac62002ff6565b62000db78262003051565b62000dc2816200307a565b62000dcd81620030b5565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1657604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000eca919062004a61565b600381111562000ede5762000ede62004a4b565b0362000f635760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1590889060009060040162004a81565b6020604051808303816000875af115801562000f35573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5b919062004a9a565b90506200105f565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcc919062004a61565b600381111562000fe05762000fe062004a4b565b146200105f5760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001016908890869060040162004a81565b6020604051808303816000875af115801562001036573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105c919062004a9a565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110b9087908790859062004ab4565b60405180910390a1505050620011216001606555565b5050565b6200112f62002fb9565b6200113a81620030e4565b50565b6200114762003142565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117462002fb9565b6200113a81620031a5565b6200118a8262003051565b6200119581620030b5565b620011a1338262003237565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011e957604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123b82826200326a565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200126d92919062004ad8565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012ae612710606462004a31565b60fc5460fb54620012c0919062004a31565b620012cc919062004af2565b90506000620012df612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200130d903090600401620042c4565b602060405180830381865afa1580156200132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001351919062004a9a565b60fb5462001360919062004a31565b6200136c919062004af2565b9050808260fb546200137f919062004b15565b6200138b919062004b15565b935050505090565b61010d6020528160005260406000208181548110620013b157600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013d88262001279565b620013e381620033a0565b620013ef8383620033ac565b505050565b620013fe62002fb9565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d97565b600054610100900460ff1615808015620014555750600054600160ff909116105b806200147a5750620014673062003436565b1580156200147a575060005460ff166001145b620014e35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001507576000805461ff0019166101001790555b620015128262002d37565b6200151c62003445565b6200152662003479565b62001542600080516020620058be8339815191526000620034a3565b620015518560200151620030b5565b62001561856101000151620030b5565b84516200156e90620030b5565b6200157d8560a00151620030b5565b6060850151156200159757620015978560c00151620030b5565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f2576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200162f908262004bb9565b506101608501516101099062001646908262004bb9565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016bb90600080516020620058be83398151915290620033ac565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001710573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001736919062004c85565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c25760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179c576200179c62004ca5565b60200260200101906001600160a01b031690816001600160a01b031681525050620018ff565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200180d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001837919081019062004cbb565b90508051600262001849919062004b15565b6001600160401b0381111562001863576200186362004300565b6040519080825280602002602001820160405280156200188d578160200160208202803683370190505b50915060005b8151811015620018fc57818181518110620018b257620018b262004ca5565b6020026020010151838281518110620018cf57620018cf62004ca5565b6001600160a01b039092166020928302919091019091015280620018f38162004d79565b91505062001893565b50505b6101065481516001600160a01b03909116908290620019219060019062004d95565b8151811062001934576200193462004ca5565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001966919062004d95565b8151811062001979576200197962004ca5565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cc9291610108913090889060040162004e97565b6020604051808303816000875af1158015620019ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a12919062004a9a565b60fe55805162001a2b9061010f90602084019062004116565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001a9d929091610108919062004eeb565b60405180910390a150801562001aed576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001afe62002ff6565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b2f612710606462004a31565b60fc5460fb5462001b41919062004a31565b62001b4d919062004af2565b9050600062001b60612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b8e903090600401620042c4565b602060405180830381865afa15801562001bac573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd2919062004a9a565b60fb5462001be1919062004a31565b62001bed919062004af2565b905062001bfa8562002ad6565b62001d445760028401805460ff1916600190811790915560fb5490850181905562001c549086903090849062001c3290879062004b15565b62001c3e919062004b15565b610105546001600160a01b0316929190620034f8565b811562001c815760ff546101055462001c81916001600160a01b0391821691610100909104168462003554565b801562001d065762001d06836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001ccb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf1919062004c85565b610105546001600160a01b0316908362003554565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3b92919062004a81565b60405180910390a15b505050505062001d546001606555565b565b6001600160a01b038116331462001dc85760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014da565b62001121828262003576565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e1f5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e53620035e0565b6001600160a01b03161462001e7c5760405162461bcd60e51b8152600401620014da9062004f55565b62001e8781620035fd565b604080516000808252602082019092526200113a918391906200363f565b62001eaf62002fb9565b62001eba81620030b5565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d97939216919062004ad8565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f5d5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f91620035e0565b6001600160a01b03161462001fba5760405162461bcd60e51b8152600401620014da9062004f55565b62001fc582620035fd565b62001121828260016200363f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200962002a10565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200206e906200417c565b6200207b92919062004f90565b604051809103906000f08015801562002098573d6000803e3d6000fd5b509050620020a98187878762002d9e565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021535760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014da565b50600080516020620058fe83398151915290565b6200217162002ff6565b6200217b620037b7565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021df57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c0575b50505050509050600080600090505b82518110156200231a578281815181106200220d576200220d62004ca5565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224492919062004a81565b6020604051808303816000875af115801562002264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228a919062004a9a565b9150811562002305576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c657620022c662004ca5565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620022ff919062004b15565b90915550505b80620023118162004d79565b915050620021ee565b506101055462002336906001600160a01b0316843087620034f8565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236490849062004b15565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200239d908590879062004a81565b60405180910390a15050506200113a6001606555565b620023bd62002ff6565b620023c7620037b7565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fb90869062004d95565b10156200241b57604051634e23e81760e11b815260040160405180910390fd5b6101055462002435906001600160a01b0316848662003554565b60005b8254811015620026e557600083828154811062002459576200245962004ca5565b6000918252602090912001546001600160a01b03169050620024838163f1801e6160e01b620037e0565b156200260957604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024b99088908a9060040162004a81565b6020604051808303816000875af1158015620024d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024ff919062004a9a565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002540576200254062004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002594576040516311423e6360e31b81526004810185905260248101829052604401620014da565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025c757620025c762004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620025fd90849062004d95565b909155505050620026cf565b835484906200261b9060019062004d95565b815481106200262e576200262e62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002661576200266162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a257620026a262004fb6565b600082815260209020810160001990810180546001600160a01b0319169055019055620026cf81620030e4565b5080620026dc8162004d79565b91505062002438565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271490849062004d95565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200239d908590879062004a81565b6200275762002ff6565b6200276162002fb9565b60ff80541662002784576040516365b1ee3960e11b815260040160405180910390fd5b6200278f8262002ad6565b620027ad57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff16151590820152620027fe8362003808565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002853921690849062003554565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288c9392919062004ab4565b60405180910390a150620011216001606555565b620028aa62003142565b62001d5460006200391d565b620028c062002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002936919081019062004fcc565b6020015190506200294781620030b5565b6200112181620030e4565b6200295c62002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d2919081019062004fcc565b602001519050620029e381620030b5565b620029ff6001600160a01b03821663f1801e6160e01b620037e0565b1562001121576200112181620031a5565b60008062002a266033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002a9d575060408051601f3d908101601f1916820190925262002a9a9181019062004c85565b60015b62000d2657919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2a62003142565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7a576040516375e686b760e11b815260040160405180910390fd5b62001d546200396f565b610109805462002b949062004b2b565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc29062004b2b565b801562002c135780601f1062002be75761010080835404028352916020019162002c13565b820191906000526020600020905b81548152906001019060200180831162002bf557829003601f168201915b505050505081565b62002c2562002ff6565b3362002c318162003051565b62002c3c8162003808565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cb791906200418a565b60208101516101055462002cd9916001600160a01b0390911690849062003554565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1092919062004a81565b60405180910390a1505062001d546001606555565b62002d34612710600a62004a31565b81565b600054610100900460ff1662002d615760405162461bcd60e51b8152600401620014da9062005102565b6200113a816200391d565b610108805462002b949062004b2b565b62002d878262001279565b62002d9281620033a0565b620013ef838362003576565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dc95750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e08575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e5f908b9060200162005177565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e97979695949392919062005259565b6020604051808303816000875af115801562002eb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002edd919062004a9a565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f18959493929190620052ca565b60405180910390a1505094509492505050565b600062000d26600080516020620058be8339815191528362002aab565b62002f5262003142565b6001600160a01b03811662002d615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014da565b62002fd4600080516020620058be8339815191523362002aab565b62001d54573360405163fc4be72f60e01b8152600401620014da9190620042c4565b6002606554036200304a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014da565b6002606555565b6200305c8162002ad6565b6200113a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113a576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113a576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030ef81620030b5565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d97908390620042c4565b336200314d62002a10565b6001600160a01b03161462001d545760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014da565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e1576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d97908390620042c4565b806001600160a01b0316826001600160a01b031614620011215760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339a57826001600160a01b0316828281548110620032ae57620032ae62004ca5565b6000918252602090912001546001600160a01b031603620033855781548290620032db9060019062004d95565b81548110620032ee57620032ee62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003321576200332162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003362576200336262004fb6565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033918162004d79565b91505062003285565b50505050565b6200113a8133620039d3565b620033b8828262002aab565b6200112157600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f23390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff166200346f5760405162461bcd60e51b8152600401620014da9062005102565b62001d5462003a37565b600054610100900460ff1662001d545760405162461bcd60e51b8152600401620014da9062005102565b6000620034b08362001279565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339a846323b872dd60e01b8585856040516024016200351c9392919062004ab4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a61565b620013ef8363a9059cbb60e01b84846040516024016200351c92919062004a81565b62003582828262002aab565b156200112157600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020620058fe833981519152546001600160a01b031690565b336200360862002a10565b6001600160a01b0316146200113a57336200362262002a10565b60405163163678e960e01b8152600401620014da92919062004ad8565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367557620013ef8362003b3d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d2575060408051601f3d908101601f19168201909252620036cf9181019062004a9a565b60015b620037375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014da565b600080516020620058fe8339815191528114620037a95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014da565b50620013ef83838362003bdc565b620037c23362002ad6565b62001d5457604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037ed8362003c07565b801562003801575062003801838362003c3f565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387557602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003856575b5050505050905060005b8151811015620013ef578181815181106200389e576200389e62004ca5565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d39190620042c4565b600060405180830381600087803b158015620038ee57600080fd5b505af115801562003903573d6000803e3d6000fd5b505050508080620039149062004d79565b9150506200387f565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039c990600090620042c4565b60405180910390a1565b620039df828262002aab565b6200112157620039ef8162003cca565b620039fc83602062003cdd565b60405160200162003a0f92919062005306565b60408051601f198184030181529082905262461bcd60e51b8252620014da9160040162004987565b600054610100900460ff16620030dd5760405162461bcd60e51b8152600401620014da9062005102565b600062003ab8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e969092919063ffffffff16565b905080516000148062003adc57508080602001905181019062003adc919062005379565b620013ef5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014da565b62003b488162003436565b62003bac5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014da565b600080516020620058fe83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003be78362003eaf565b60008251118062003bf55750805b15620013ef576200339a838362003ef1565b600062003c1c826301ffc9a760e01b62003c3f565b801562000d26575062003c38826001600160e01b031962003c3f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb2575060208210155b801562003cbf5750600081115b979650505050505050565b606062000d266001600160a01b03831660145b6060600062003cee83600262004a31565b62003cfb90600262004b15565b6001600160401b0381111562003d155762003d1562004300565b6040519080825280601f01601f19166020018201604052801562003d40576020820181803683370190505b509050600360fc1b8160008151811062003d5e5762003d5e62004ca5565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d905762003d9062004ca5565b60200101906001600160f81b031916908160001a905350600062003db684600262004a31565b62003dc390600162004b15565b90505b600181111562003e45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfb5762003dfb62004ca5565b1a60f81b82828151811062003e145762003e1462004ca5565b60200101906001600160f81b031916908160001a90535060049490941c9362003e3d8162005399565b905062003dc6565b508315620038015760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014da565b606062003ea7848460008562003f19565b949350505050565b62003eba8162003b3d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200380183836040518060600160405280602781526020016200591e6027913962003ff1565b60608247101562003f7c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014da565b600080866001600160a01b0316858760405162003f9a9190620053b3565b60006040518083038185875af1925050503d806000811462003fd9576040519150601f19603f3d011682016040523d82523d6000602084013e62003fde565b606091505b509150915062003cbf878383876200406f565b6060600080856001600160a01b031685604051620040109190620053b3565b600060405180830381855af49150503d80600081146200404d576040519150601f19603f3d011682016040523d82523d6000602084013e62004052565b606091505b509150915062004065868383876200406f565b9695505050505050565b60608315620040e3578251600003620040db576200408d8562003436565b620040db5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014da565b508162003ea7565b62003ea78383815115620040fa5781518083602001fd5b8060405162461bcd60e51b8152600401620014da919062004987565b8280548282559060005260206000209081019282156200416e579160200282015b828111156200416e57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062004137565b5062002aa7929150620041a5565b6104ec80620053d283390190565b50805460008255906000526020600020908101906200113a91905b5b8082111562002aa75760008155600101620041a6565b600060208284031215620041cf57600080fd5b81356001600160e01b0319811681146200380157600080fd5b600060208284031215620041fb57600080fd5b5035919050565b6001600160a01b03811681146200113a57600080fd5b8035620042258162004202565b919050565b600080604083850312156200423e57600080fd5b82356200424b8162004202565b915060208301356200425d8162004202565b809150509250929050565b6000602082840312156200427b57600080fd5b8135620038018162004202565b600080604083850312156200429c57600080fd5b8235620042a98162004202565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ec57600080fd5b8235915060208301356200425d8162004202565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433b576200433b62004300565b60405290565b60405161018081016001600160401b03811182821017156200433b576200433b62004300565b60405160c081016001600160401b03811182821017156200433b576200433b62004300565b60405160e081016001600160401b03811182821017156200433b576200433b62004300565b604051608081016001600160401b03811182821017156200433b576200433b62004300565b604051601f8201601f191681016001600160401b038111828210171562004401576200440162004300565b604052919050565b60006001600160401b0382111562004425576200442562004300565b50601f01601f191660200190565b60006200444a620044448462004409565b620043d6565b90508281528383830111156200445f57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448857600080fd5b620038018383356020850162004433565b600060408284031215620044ac57600080fd5b620044b662004316565b82358152905060208201356001600160401b03811115620044d657600080fd5b620044e48482850162004476565b60208301525092915050565b80151581146200113a57600080fd5b80356200422581620044f0565b600080600080608085870312156200452357600080fd5b84356001600160401b03808211156200453b57600080fd5b9086019061018082890312156200455157600080fd5b6200455b62004341565b620045668362004218565b8152620045766020840162004218565b6020820152604083013560408201526060830135606082015260808301356080820152620045a760a0840162004218565b60a0820152620045ba60c0840162004218565b60c082015260e083013582811115620045d257600080fd5b620045e08a82860162004499565b60e083015250610100620045f681850162004218565b9082015261012083810135838111156200460f57600080fd5b6200461d8b82870162004476565b82840152505061014062004633818501620044ff565b9082015261016083810135838111156200464c57600080fd5b6200465a8b82870162004476565b828401525050809650505050620046746020860162004218565b9250620046846040860162004218565b9150620046946060860162004218565b905092959194509250565b60008060408385031215620046b357600080fd5b8235620046c08162004202565b915060208301356001600160401b03811115620046dc57600080fd5b8301601f81018513620046ee57600080fd5b620046ff8582356020840162004433565b9150509250929050565b8035600381106200422557600080fd5b600481106200113a57600080fd5b8035620042258162004719565b6000602082840312156200474757600080fd5b604051602081016001600160401b03811182821017156200476c576200476c62004300565b6040529135825250919050565b600060c082840312156200478c57600080fd5b6200479662004367565b90508135620047a58162004202565b81526020820135620047b78162004202565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480157600080fd5b6200480b6200438c565b915060808112156200481c57600080fd5b5062004827620043b1565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485b6080830162004709565b60208201526200486e60a0830162004727565b6040820152620048828360c0840162004734565b6060820152620048968360e0840162004779565b6080820152620048aa6101a0830162004218565b60a0820152620048be6101c0830162004218565b60c082015292915050565b60008060006102208486031215620048e057600080fd5b8335620048ed8162004202565b9250620048fe8560208601620047ec565b91506102008401356001600160401b038111156200491b57600080fd5b620049298682870162004499565b9150509250925092565b60005b838110156200495057818101518382015260200162004936565b50506000910152565b600081518084526200497381602086016020860162004933565b601f01601f19169290920160200192915050565b60208152600062003801602083018462004959565b6000806000806102408587031215620049b457600080fd5b8435620049c18162004202565b93506020850135620049d38162004202565b9250620049e48660408701620047ec565b91506102208501356001600160401b0381111562004a0157600080fd5b62004a0f8782880162004499565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d265762000d2662004a1b565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7457600080fd5b8151620038018162004719565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004aad57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d265762000d2662004a1b565b600181811c9082168062004b4057607f821691505b60208210810362004b6157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013ef57600081815260208120601f850160051c8101602086101562004b905750805b601f850160051c820191505b8181101562004bb15782815560010162004b9c565b505050505050565b81516001600160401b0381111562004bd55762004bd562004300565b62004bed8162004be6845462004b2b565b8462004b67565b602080601f83116001811462004c25576000841562004c0c5750858301515b600019600386901b1c1916600185901b17855562004bb1565b600085815260208120601f198616915b8281101562004c565788860151825594840194600190910190840162004c35565b508582101562004c755787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9857600080fd5b8151620038018162004202565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004ccf57600080fd5b82516001600160401b038082111562004ce757600080fd5b818501915085601f83011262004cfc57600080fd5b81518181111562004d115762004d1162004300565b8060051b915062004d24848301620043d6565b818152918301840191848101908884111562004d3f57600080fd5b938501935b8385101562004d6d578451925062004d5c8362004202565b828252938501939085019062004d44565b98975050505050505050565b60006001820162004d8e5762004d8e62004a1b565b5060010190565b8181038181111562000d265762000d2662004a1b565b6000815462004dba8162004b2b565b80855260206001838116801562004dda576001811462004df55762004e25565b60ff1985168884015283151560051b88018301955062004e25565b866000528260002060005b8581101562004e1d5781548a820186015290830190840162004e00565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003ea7604085018262004959565b600081518084526020808501945080840160005b8381101562004e8c5781516001600160a01b03168752958201959082019060010162004e65565b509495945050505050565b85815260a06020820152600062004eb260a083018762004dab565b828103604084015262004ec6818762004e30565b6001600160a01b03861660608501528381036080850152905062004d6d818562004e51565b83815260606020820152600062004f06606083018562004dab565b828103604084015262004065818562004e30565b6020808252602c90820152600080516020620058de83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058de83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003ea79083018462004959565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe057600080fd5b82516001600160401b038082111562004ff857600080fd5b9084019060c082870312156200500d57600080fd5b6200501762004367565b82518152838301516200502a8162004202565b8185015260408301516200503e8162004202565b60408201526060830151828111156200505657600080fd5b8301604081890312156200506957600080fd5b6200507362004316565b8151815285820151848111156200508957600080fd5b82019350601f840189136200509d57600080fd5b83519150620050b0620044448362004409565b8281528987848701011115620050c557600080fd5b620050d68388830189880162004933565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005160576200516062004a4b565b9052565b6004811062005160576200516062004a4b565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051b960808401826200514d565b506040830151620051ce60a084018262005164565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523c6101a0840182620042b7565b5060c0830151620052526101c0840182620042b7565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528360e084018962004959565b818816606085015286608085015283810360a0850152620052a5818762004e30565b91505082810360c0840152620052bc818562004e51565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cbf9083018462004e30565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533a81601785016020880162004933565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200536d81602884016020880162004933565b01602801949350505050565b6000602082840312156200538c57600080fd5b81516200380181620044f0565b600081620053ab57620053ab62004a1b565b506000190190565b60008251620053c781846020870162004933565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122052959655105f56f9563f8494a08f9520e14031dbdb68ee3670df7a0f08d24d6264736f6c63430008130033","sourceMap":"2850:23276:104:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:43;;;;;;;;;;-1:-1:-1;3050:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:131;;463:22;445:41;;433:2;418:18;3050:213:43;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:131;;;631:2;616:18;23771:115:104;497:177:131;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19069:151::-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;12444:25:131;;;-1:-1:-1;;;;;12505:32:131;;;12500:2;12485:18;;12478:60;12417:18;12647:531:104;12270:274:131;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;6550:31::-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18890:173;5795:34;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;7605:60::-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;13436:32:131;;;13418:51;;13500:2;13485:18;;13478:34;;;;13555:14;13548:22;13528:18;;;13521:50;13406:2;13391:18;7605:60:104;13222:355:131;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;5202:92;;;;;;;;;;-1:-1:-1;5275:12:104;;;;;;;;;;;;-1:-1:-1;;;5275:12:104;;;;5202:92;;3050:213:43;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;24088:288:104:-;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:131;;;24332:37:104;;631:2:131;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:131;;;24043:32:104;;631:2:131;616:18;24043:32:104;497:177:131;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;18292:2:131;3325:201:47;;;18274:21:131;18331:2;18311:18;;;18304:30;18370:34;18350:18;;;18343:62;-1:-1:-1;;;18421:18:131;;;18414:44;18475:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;25926:36:131;;3721:14:47;;25914:2:131;25899:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;26175:2:131;6476:83:43;;;26157:21:131;26214:2;26194:18;;;26187:30;26253:34;26233:18;;;26226:62;-1:-1:-1;;;26304:18:131;;;26297:45;26359:19;;6476:83:43;25973:411:131;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;-1:-1:-1;;;;;27790:15:131;;;12975:101:104;;;27772:34:131;27842:15;;;27822:18;;;27815:43;27894:15;;;27874:18;;;27867:43;27707:18;;12975:101:104;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28443:2:131;2064:92:64;;;28425:21:131;28482:2;28462:18;;;28455:30;28521:34;28501:18;;;28494:62;-1:-1:-1;;;28572:18:131;;;28565:54;28636:19;;2064:92:64;28241:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;17322:1562:104;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;28840:25:131::0;;;28881:18;;;28874:34;;;28813:18;;18259:57:104::1;28666:248:131::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:131;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:131;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:131;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:131;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;:::-;;;;;;;;;;;;;13713:5;13720:1;13723:9;13734:14;13624:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13615:143;;13774:63;13786:6;13794:8;13812:4;13819:6;13827:9;13774:63;;;;;;;;;;:::i;:::-;;;;;;;;13409:435;;13184:660;;;;;;;:::o;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35022:2:131;2415:73:45::1;::::0;::::1;35004:21:131::0;35061:2;35041:18;;;35034:30;35100:34;35080:18;;;35073:62;-1:-1:-1;;;35151:18:131;;;35144:36;35197:19;;2415:73:45::1;34820:402:131::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;35429:2:131;2725:63:48;;;35411:21:131;35468:2;35448:18;;;35441:30;35507:33;35487:18;;;35480:61;35558:18;;2725:63:48;35227:355:131;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;35789:2:131;1675:68:45;;;35771:21:131;;;35808:18;;;35801:30;35867:34;35847:18;;;35840:62;35919:18;;1675:68:45;35587:356:131;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;36150:2:131;3262:56:60;;;36132:21:131;36189:2;36169:18;;;36162:30;36228:34;36208:18;;;36201:62;-1:-1:-1;;;36279:18:131;;;36272:44;36333:19;;3262:56:60;35948:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;36565:2:131;3140:82:60;;;36547:21:131;36604:2;36584:18;;;36577:30;36643:34;36623:18;;;36616:62;-1:-1:-1;;;36694:18:131;;;36687:39;36743:19;;3140:82:60;36363:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;38258:2:131;5697:111:73;;;38240:21:131;38297:2;38277:18;;;38270:30;38336:34;38316:18;;;38309:62;-1:-1:-1;;;38387:18:131;;;38380:40;38437:19;;5697:111:73;38056:406:131;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;38669:2:131;1479:95:60;;;38651:21:131;38708:2;38688:18;;;38681:30;38747:34;38727:18;;;38720:62;-1:-1:-1;;;38798:18:131;;;38791:43;38851:19;;1479:95:60;38467:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;39043:33:131;;4592:71:81;;;;39025:52:131;;;;4592:71:81;;;;;;;;;;38998:18:131;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;39431:2:131;2228:55:52;;;39413:21:131;;;39450:18;;;39443:30;39509:34;39489:18;;;39482:62;39561:18;;2228:55:52;39229:356:131;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;39792:2:131;5354:81:76;;;39774:21:131;39831:2;39811:18;;;39804:30;39870:34;39850:18;;;39843:62;-1:-1:-1;;;39921:18:131;;;39914:36;39967:19;;5354:81:76;39590:402:131;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;40491:2:131;8113:60:76;;;40473:21:131;40530:2;40510:18;;;40503:30;40569:31;40549:18;;;40542:59;40618:18;;8113:60:76;40289:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:131;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:131;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:131;;861:180;-1:-1:-1;861:180:131:o;1046:131::-;-1:-1:-1;;;;;1121:31:131;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:131;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:131:o;2471:104::-;-1:-1:-1;;;;;2537:31:131;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:131;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:131;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:131;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:131;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:253::-;4092:2;4086:9;4134:4;4122:17;;-1:-1:-1;;;;;4154:34:131;;4190:22;;;4151:62;4148:88;;;4216:18;;:::i;4278:253::-;4350:2;4344:9;4392:4;4380:17;;-1:-1:-1;;;;;4412:34:131;;4448:22;;;4409:62;4406:88;;;4474:18;;:::i;4536:275::-;4607:2;4601:9;4672:2;4653:13;;-1:-1:-1;;4649:27:131;4637:40;;-1:-1:-1;;;;;4692:34:131;;4728:22;;;4689:62;4686:88;;;4754:18;;:::i;:::-;4790:2;4783:22;4536:275;;-1:-1:-1;4536:275:131:o;4816:187::-;4865:4;-1:-1:-1;;;;;4887:30:131;;4884:56;;;4920:18;;:::i;:::-;-1:-1:-1;4986:2:131;4965:15;-1:-1:-1;;4961:29:131;4992:4;4957:40;;4816:187::o;5008:338::-;5073:5;5102:53;5118:36;5147:6;5118:36;:::i;:::-;5102:53;:::i;:::-;5093:62;;5178:6;5171:5;5164:21;5218:3;5209:6;5204:3;5200:16;5197:25;5194:45;;;5235:1;5232;5225:12;5194:45;5284:6;5279:3;5272:4;5265:5;5261:16;5248:43;5338:1;5331:4;5322:6;5315:5;5311:18;5307:29;5300:40;5008:338;;;;;:::o;5351:222::-;5394:5;5447:3;5440:4;5432:6;5428:17;5424:27;5414:55;;5465:1;5462;5455:12;5414:55;5487:80;5563:3;5554:6;5541:20;5534:4;5526:6;5522:17;5487:80;:::i;5578:411::-;5633:5;5681:4;5669:9;5664:3;5660:19;5656:30;5653:50;;;5699:1;5696;5689:12;5653:50;5721:22;;:::i;:::-;5766:23;;5752:38;;5712:31;-1:-1:-1;5841:2:131;5826:18;;5813:32;-1:-1:-1;;;;;5857:30:131;;5854:50;;;5900:1;5897;5890:12;5854:50;5936:46;5978:3;5969:6;5958:9;5954:22;5936:46;:::i;:::-;5931:2;5924:5;5920:14;5913:70;;5578:411;;;;:::o;5994:118::-;6080:5;6073:13;6066:21;6059:5;6056:32;6046:60;;6102:1;6099;6092:12;6117:128;6182:20;;6211:28;6182:20;6211:28;:::i;6250:1871::-;6392:6;6400;6408;6416;6469:3;6457:9;6448:7;6444:23;6440:33;6437:53;;;6486:1;6483;6476:12;6437:53;6513:23;;-1:-1:-1;;;;;6585:14:131;;;6582:34;;;6612:1;6609;6602:12;6582:34;6635:22;;;;6691:6;6673:16;;;6669:29;6666:49;;;6711:1;6708;6701:12;6666:49;6737:22;;:::i;:::-;6782;6801:2;6782:22;:::i;:::-;6775:5;6768:37;6837:31;6864:2;6860;6856:11;6837:31;:::i;:::-;6832:2;6825:5;6821:14;6814:55;6922:2;6918;6914:11;6901:25;6896:2;6889:5;6885:14;6878:49;6980:2;6976;6972:11;6959:25;6954:2;6947:5;6943:14;6936:49;7039:3;7035:2;7031:12;7018:26;7012:3;7005:5;7001:15;6994:51;7078:32;7105:3;7101:2;7097:12;7078:32;:::i;:::-;7072:3;7065:5;7061:15;7054:57;7144:32;7171:3;7167:2;7163:12;7144:32;:::i;:::-;7138:3;7131:5;7127:15;7120:57;7223:3;7219:2;7215:12;7202:26;7253:2;7243:8;7240:16;7237:36;;;7269:1;7266;7259:12;7237:36;7306:54;7352:7;7341:8;7337:2;7333:17;7306:54;:::i;:::-;7300:3;7293:5;7289:15;7282:79;;7380:3;7415:31;7442:2;7438;7434:11;7415:31;:::i;:::-;7399:14;;;7392:55;7466:3;7507:11;;;7494:25;7531:16;;;7528:36;;;7560:1;7557;7550:12;7528:36;7596:45;7633:7;7622:8;7618:2;7614:17;7596:45;:::i;:::-;7591:2;7584:5;7580:14;7573:69;;;7661:3;7696:28;7720:2;7716;7712:11;7696:28;:::i;:::-;7680:14;;;7673:52;7744:3;7785:11;;;7772:25;7809:16;;;7806:36;;;7838:1;7835;7828:12;7806:36;7874:45;7911:7;7900:8;7896:2;7892:17;7874:45;:::i;:::-;7869:2;7862:5;7858:14;7851:69;;;7939:5;7929:15;;;;;7963:38;7997:2;7986:9;7982:18;7963:38;:::i;:::-;7953:48;;8020:38;8054:2;8043:9;8039:18;8020:38;:::i;:::-;8010:48;;8077:38;8111:2;8100:9;8096:18;8077:38;:::i;:::-;8067:48;;6250:1871;;;;;;;:::o;8386:585::-;8463:6;8471;8524:2;8512:9;8503:7;8499:23;8495:32;8492:52;;;8540:1;8537;8530:12;8492:52;8579:9;8566:23;8598:31;8623:5;8598:31;:::i;:::-;8648:5;-1:-1:-1;8704:2:131;8689:18;;8676:32;-1:-1:-1;;;;;8720:30:131;;8717:50;;;8763:1;8760;8753:12;8717:50;8786:22;;8839:4;8831:13;;8827:27;-1:-1:-1;8817:55:131;;8868:1;8865;8858:12;8817:55;8891:74;8957:7;8952:2;8939:16;8934:2;8930;8926:11;8891:74;:::i;:::-;8881:84;;;8386:585;;;;;:::o;8976:153::-;9054:20;;9103:1;9093:12;;9083:40;;9119:1;9116;9109:12;9134:110;9218:1;9211:5;9208:12;9198:40;;9234:1;9231;9224:12;9249:152;9326:20;;9355:40;9326:20;9355:40;:::i;9406:416::-;9470:5;9518:4;9506:9;9501:3;9497:19;9493:30;9490:50;;;9536:1;9533;9526:12;9490:50;9569:2;9563:9;9611:4;9599:17;;-1:-1:-1;;;;;9631:34:131;;9667:22;;;9628:62;9625:88;;;9693:18;;:::i;:::-;9729:2;9722:22;9792:23;;9777:39;;-1:-1:-1;9762:6:131;9406:416;-1:-1:-1;9406:416:131:o;9827:701::-;9890:5;9938:4;9926:9;9921:3;9917:19;9913:30;9910:50;;;9956:1;9953;9946:12;9910:50;9978:22;;:::i;:::-;9969:31;;10037:9;10024:23;10056:33;10081:7;10056:33;:::i;:::-;10098:22;;10172:2;10157:18;;10144:32;10185:33;10144:32;10185:33;:::i;:::-;10250:7;10245:2;10238:5;10234:14;10227:31;;10318:2;10307:9;10303:18;10290:32;10285:2;10278:5;10274:14;10267:56;10383:2;10372:9;10368:18;10355:32;10350:2;10343:5;10339:14;10332:56;10449:3;10438:9;10434:19;10421:33;10415:3;10408:5;10404:15;10397:58;10516:3;10505:9;10501:19;10488:33;10482:3;10475:5;10471:15;10464:58;9827:701;;;;:::o;10533:1083::-;10608:5;10647:9;10642:3;10638:19;10677:6;10673:2;10669:15;10666:35;;;10697:1;10694;10687:12;10666:35;10719:22;;:::i;:::-;10710:31;;10761:4;10757:2;10753:13;10750:33;;;10779:1;10776;10769:12;10750:33;;10807:22;;:::i;:::-;10867:9;10854:23;10845:7;10838:40;10940:2;10929:9;10925:18;10912:32;10907:2;10898:7;10894:16;10887:58;11007:2;10996:9;10992:18;10979:32;10974:2;10965:7;10961:16;10954:58;11074:2;11063:9;11059:18;11046:32;11041:2;11032:7;11028:16;11021:58;11102:7;11095:5;11088:22;;11142:50;11186:4;11175:9;11171:20;11142:50;:::i;:::-;11137:2;11130:5;11126:14;11119:74;11225:48;11268:3;11257:9;11253:19;11225:48;:::i;:::-;11220:2;11213:5;11209:14;11202:72;11306:61;11363:3;11357;11346:9;11342:19;11306:61;:::i;:::-;11301:2;11294:5;11290:14;11283:85;11402:61;11459:3;11452:4;11441:9;11437:20;11402:61;:::i;:::-;11395:4;11388:5;11384:16;11377:87;11497:39;11531:3;11520:9;11516:19;11497:39;:::i;:::-;11491:3;11484:5;11480:15;11473:64;11570:39;11604:3;11593:9;11589:19;11570:39;:::i;:::-;11564:3;11557:5;11553:15;11546:64;10533:1083;;;;:::o;11621:644::-;11773:6;11781;11789;11842:3;11830:9;11821:7;11817:23;11813:33;11810:53;;;11859:1;11856;11849:12;11810:53;11898:9;11885:23;11917:31;11942:5;11917:31;:::i;:::-;11967:5;-1:-1:-1;11991:75:131;12058:7;12053:2;12038:18;;11991:75;:::i;:::-;11981:85;-1:-1:-1;12117:3:131;12102:19;;12089:33;-1:-1:-1;;;;;12134:30:131;;12131:50;;;12177:1;12174;12167:12;12131:50;12200:59;12251:7;12242:6;12231:9;12227:22;12200:59;:::i;:::-;12190:69;;;11621:644;;;;;:::o;13582:250::-;13667:1;13677:113;13691:6;13688:1;13685:13;13677:113;;;13767:11;;;13761:18;13748:11;;;13741:39;13713:2;13706:10;13677:113;;;-1:-1:-1;;13824:1:131;13806:16;;13799:27;13582:250::o;13837:271::-;13879:3;13917:5;13911:12;13944:6;13939:3;13932:19;13960:76;14029:6;14022:4;14017:3;14013:14;14006:4;13999:5;13995:16;13960:76;:::i;:::-;14090:2;14069:15;-1:-1:-1;;14065:29:131;14056:39;;;;14097:4;14052:50;;13837:271;-1:-1:-1;;13837:271:131:o;14113:220::-;14262:2;14251:9;14244:21;14225:4;14282:45;14323:2;14312:9;14308:18;14300:6;14282:45;:::i;14785:785::-;14946:6;14954;14962;14970;15023:3;15011:9;15002:7;14998:23;14994:33;14991:53;;;15040:1;15037;15030:12;14991:53;15079:9;15066:23;15098:31;15123:5;15098:31;:::i;:::-;15148:5;-1:-1:-1;15205:2:131;15190:18;;15177:32;15218:33;15177:32;15218:33;:::i;:::-;15270:7;-1:-1:-1;15296:75:131;15363:7;15358:2;15343:18;;15296:75;:::i;:::-;15286:85;-1:-1:-1;15422:3:131;15407:19;;15394:33;-1:-1:-1;;;;;15439:30:131;;15436:50;;;15482:1;15479;15472:12;15436:50;15505:59;15556:7;15547:6;15536:9;15532:22;15505:59;:::i;:::-;15495:69;;;14785:785;;;;;;;:::o;15575:127::-;15636:10;15631:3;15627:20;15624:1;15617:31;15667:4;15664:1;15657:15;15691:4;15688:1;15681:15;15707:168;15780:9;;;15811;;15828:15;;;15822:22;;15808:37;15798:71;;15849:18;;:::i;15880:127::-;15941:10;15936:3;15932:20;15929:1;15922:31;15972:4;15969:1;15962:15;15996:4;15993:1;15986:15;16012:277;16099:6;16152:2;16140:9;16131:7;16127:23;16123:32;16120:52;;;16168:1;16165;16158:12;16120:52;16200:9;16194:16;16219:40;16253:5;16219:40;:::i;16294:282::-;-1:-1:-1;;;;;16494:32:131;;;;16476:51;;16558:2;16543:18;;16536:34;16464:2;16449:18;;16294:282::o;16581:184::-;16651:6;16704:2;16692:9;16683:7;16679:23;16675:32;16672:52;;;16720:1;16717;16710:12;16672:52;-1:-1:-1;16743:16:131;;16581:184;-1:-1:-1;16581:184:131:o;17049:375::-;-1:-1:-1;;;;;17307:15:131;;;17289:34;;17359:15;;;;17354:2;17339:18;;17332:43;17406:2;17391:18;;17384:34;;;;17239:2;17224:18;;17049:375::o;17429:304::-;-1:-1:-1;;;;;17659:15:131;;;17641:34;;17711:15;;17706:2;17691:18;;17684:43;17591:2;17576:18;;17429:304::o;17738:217::-;17778:1;17804;17794:132;;17848:10;17843:3;17839:20;17836:1;17829:31;17883:4;17880:1;17873:15;17911:4;17908:1;17901:15;17794:132;-1:-1:-1;17940:9:131;;17738:217::o;17960:125::-;18025:9;;;18046:10;;;18043:36;;;18059:18;;:::i;18505:380::-;18584:1;18580:12;;;;18627;;;18648:61;;18702:4;18694:6;18690:17;18680:27;;18648:61;18755:2;18747:6;18744:14;18724:18;18721:38;18718:161;;18801:10;18796:3;18792:20;18789:1;18782:31;18836:4;18833:1;18826:15;18864:4;18861:1;18854:15;18718:161;;18505:380;;;:::o;19016:545::-;19118:2;19113:3;19110:11;19107:448;;;19154:1;19179:5;19175:2;19168:17;19224:4;19220:2;19210:19;19294:2;19282:10;19278:19;19275:1;19271:27;19265:4;19261:38;19330:4;19318:10;19315:20;19312:47;;;-1:-1:-1;19353:4:131;19312:47;19408:2;19403:3;19399:12;19396:1;19392:20;19386:4;19382:31;19372:41;;19463:82;19481:2;19474:5;19471:13;19463:82;;;19526:17;;;19507:1;19496:13;19463:82;;;19467:3;;;19016:545;;;:::o;19737:1352::-;19857:10;;-1:-1:-1;;;;;19879:30:131;;19876:56;;;19912:18;;:::i;:::-;19941:97;20031:6;19991:38;20023:4;20017:11;19991:38;:::i;:::-;19985:4;19941:97;:::i;:::-;20093:4;;20157:2;20146:14;;20174:1;20169:663;;;;20876:1;20893:6;20890:89;;;-1:-1:-1;20945:19:131;;;20939:26;20890:89;-1:-1:-1;;19694:1:131;19690:11;;;19686:24;19682:29;19672:40;19718:1;19714:11;;;19669:57;20992:81;;20139:944;;20169:663;18963:1;18956:14;;;19000:4;18987:18;;-1:-1:-1;;20205:20:131;;;20323:236;20337:7;20334:1;20331:14;20323:236;;;20426:19;;;20420:26;20405:42;;20518:27;;;;20486:1;20474:14;;;;20353:19;;20323:236;;;20327:3;20587:6;20578:7;20575:19;20572:201;;;20648:19;;;20642:26;-1:-1:-1;;20731:1:131;20727:14;;;20743:3;20723:24;20719:37;20715:42;20700:58;20685:74;;20572:201;-1:-1:-1;;;;;20819:1:131;20803:14;;;20799:22;20786:36;;-1:-1:-1;19737:1352:131:o;21094:251::-;21164:6;21217:2;21205:9;21196:7;21192:23;21188:32;21185:52;;;21233:1;21230;21223:12;21185:52;21265:9;21259:16;21284:31;21309:5;21284:31;:::i;21350:127::-;21411:10;21406:3;21402:20;21399:1;21392:31;21442:4;21439:1;21432:15;21466:4;21463:1;21456:15;21482:1011;21577:6;21608:2;21651;21639:9;21630:7;21626:23;21622:32;21619:52;;;21667:1;21664;21657:12;21619:52;21694:16;;-1:-1:-1;;;;;21759:14:131;;;21756:34;;;21786:1;21783;21776:12;21756:34;21824:6;21813:9;21809:22;21799:32;;21869:7;21862:4;21858:2;21854:13;21850:27;21840:55;;21891:1;21888;21881:12;21840:55;21920:2;21914:9;21942:2;21938;21935:10;21932:36;;;21948:18;;:::i;:::-;21994:2;21991:1;21987:10;21977:20;;22017:28;22041:2;22037;22033:11;22017:28;:::i;:::-;22079:15;;;22149:11;;;22145:20;;;22110:12;;;;22177:19;;;22174:39;;;22209:1;22206;22199:12;22174:39;22233:11;;;;22253:210;22269:6;22264:3;22261:15;22253:210;;;22342:3;22336:10;22323:23;;22359:31;22384:5;22359:31;:::i;:::-;22403:18;;;22286:12;;;;22441;;;;22253:210;;;22482:5;21482:1011;-1:-1:-1;;;;;;;;21482:1011:131:o;22498:135::-;22537:3;22558:17;;;22555:43;;22578:18;;:::i;:::-;-1:-1:-1;22625:1:131;22614:13;;22498:135::o;22638:128::-;22705:9;;;22726:11;;;22723:37;;;22740:18;;:::i;22771:772::-;22821:3;22862:5;22856:12;22891:36;22917:9;22891:36;:::i;:::-;22936:19;;;22974:4;22997:1;23014:18;;;23041:146;;;;23201:1;23196:341;;;;23007:530;;23041:146;-1:-1:-1;;23083:24:131;;23069:12;;;23062:46;23155:14;;23148:22;23145:1;23141:30;23132:40;;23128:49;;;-1:-1:-1;23041:146:131;;23196:341;23227:5;23224:1;23217:16;23274:2;23271:1;23261:16;23299:1;23313:174;23327:6;23324:1;23321:13;23313:174;;;23414:14;;23396:11;;;23392:20;;23385:44;23457:16;;;;23342:10;;23313:174;;;23511:11;;23507:20;;;-1:-1:-1;;23007:530:131;;;;;;22771:772;;;;:::o;23548:252::-;23635:5;23629:12;23624:3;23617:25;23599:3;23688:4;23681:5;23677:16;23671:23;23726:4;23719;23714:3;23710:14;23703:28;23747:47;23788:4;23783:3;23779:14;23765:12;23747:47;:::i;23805:461::-;23858:3;23896:5;23890:12;23923:6;23918:3;23911:19;23949:4;23978:2;23973:3;23969:12;23962:19;;24015:2;24008:5;24004:14;24036:1;24046:195;24060:6;24057:1;24054:13;24046:195;;;24125:13;;-1:-1:-1;;;;;24121:39:131;24109:52;;24181:12;;;;24216:15;;;;24157:1;24075:9;24046:195;;;-1:-1:-1;24257:3:131;;23805:461;-1:-1:-1;;;;;23805:461:131:o;24271:804::-;24631:6;24620:9;24613:25;24674:3;24669:2;24658:9;24654:18;24647:31;24594:4;24701:54;24750:3;24739:9;24735:19;24727:6;24701:54;:::i;:::-;24803:9;24795:6;24791:22;24786:2;24775:9;24771:18;24764:50;24837:42;24872:6;24864;24837:42;:::i;:::-;-1:-1:-1;;;;;24915:32:131;;24910:2;24895:18;;24888:60;24985:22;;;24979:3;24964:19;;24957:51;24823:56;-1:-1:-1;25025:44:131;24823:56;25054:6;25025:44;:::i;25269:500::-;25523:6;25512:9;25505:25;25566:2;25561;25550:9;25546:18;25539:30;25486:4;25592:53;25641:2;25630:9;25626:18;25618:6;25592:53;:::i;:::-;25693:9;25685:6;25681:22;25676:2;25665:9;25661:18;25654:50;25721:42;25756:6;25748;25721:42;:::i;26389:408::-;26591:2;26573:21;;;26630:2;26610:18;;;26603:30;-1:-1:-1;;;;;;;;;;;26664:2:131;26649:18;;26642:62;-1:-1:-1;;;26735:2:131;26720:18;;26713:42;26787:3;26772:19;;26389:408::o;26802:::-;27004:2;26986:21;;;27043:2;27023:18;;;27016:30;-1:-1:-1;;;;;;;;;;;27077:2:131;27062:18;;27055:62;-1:-1:-1;;;27148:2:131;27133:18;;27126:42;27200:3;27185:19;;26802:408::o;27921:315::-;-1:-1:-1;;;;;28096:32:131;;28078:51;;28165:2;28160;28145:18;;28138:30;;;-1:-1:-1;;28185:45:131;;28211:18;;28203:6;28185:45;:::i;28919:127::-;28980:10;28975:3;28971:20;28968:1;28961:31;29011:4;29008:1;29001:15;29035:4;29032:1;29025:15;29051:1653;29143:6;29174:2;29217;29205:9;29196:7;29192:23;29188:32;29185:52;;;29233:1;29230;29223:12;29185:52;29260:16;;-1:-1:-1;;;;;29325:14:131;;;29322:34;;;29352:1;29349;29342:12;29322:34;29375:22;;;;29431:4;29413:16;;;29409:27;29406:47;;;29449:1;29446;29439:12;29406:47;29475:22;;:::i;:::-;29526:2;29520:9;29513:5;29506:24;29568:2;29564;29560:11;29554:18;29581:33;29606:7;29581:33;:::i;:::-;29630:14;;;29623:31;29692:2;29684:11;;29678:18;29705:33;29678:18;29705:33;:::i;:::-;29765:2;29754:14;;29747:31;29817:2;29809:11;;29803:18;29833:16;;;29830:36;;;29862:1;29859;29852:12;29830:36;29885:17;;29936:2;29918:16;;;29914:25;29911:45;;;29952:1;29949;29942:12;29911:45;29980:22;;:::i;:::-;30033:2;30027:9;30018:7;30011:26;30076:2;30072;30068:11;30062:18;30105:2;30095:8;30092:16;30089:36;;;30121:1;30118;30111:12;30089:36;30144:17;;;-1:-1:-1;30192:4:131;30184:13;;30180:27;-1:-1:-1;30170:55:131;;30221:1;30218;30211:12;30170:55;30250:2;30244:9;30234:19;;30275:49;30291:32;30320:2;30291:32;:::i;30275:49::-;30347:2;30340:5;30333:17;30387:7;30382:2;30377;30373;30369:11;30365:20;30362:33;30359:53;;;30408:1;30405;30398:12;30359:53;30421:67;30485:2;30480;30473:5;30469:14;30464:2;30460;30456:11;30421:67;:::i;:::-;30504:16;;;30497:31;;;;-1:-1:-1;30555:2:131;30544:14;;30537:31;;;;-1:-1:-1;30615:3:131;30607:12;;;30601:19;30584:15;;;30577:44;30668:3;30660:12;;;30654:19;30637:15;;;30630:44;30548:5;29051:1653;-1:-1:-1;;;29051:1653:131:o;30709:407::-;30911:2;30893:21;;;30950:2;30930:18;;;30923:30;30989:34;30984:2;30969:18;;30962:62;-1:-1:-1;;;31055:2:131;31040:18;;31033:41;31106:3;31091:19;;30709:407::o;31121:143::-;31205:1;31198:5;31195:12;31185:46;;31211:18;;:::i;:::-;31240;;31121:143::o;31269:142::-;31352:1;31345:5;31342:12;31332:46;;31358:18;;:::i;31953:1260::-;32143:4;32185:3;32174:9;32170:19;32162:27;;32214:6;32208:13;32254:2;32248:9;32237;32230:28;32310:4;32306:2;32302:13;32296:20;32289:4;32278:9;32274:20;32267:50;32369:4;32365:2;32361:13;32355:20;32348:4;32337:9;32333:20;32326:50;32428:4;32424:2;32420:13;32414:20;32407:4;32396:9;32392:20;32385:50;;32482:4;32474:6;32470:17;32464:24;32497:64;32555:4;32544:9;32540:20;32526:12;32497:64;:::i;:::-;;32610:4;32602:6;32598:17;32592:24;32625:65;32684:4;32673:9;32669:20;32653:14;32625:65;:::i;:::-;-1:-1:-1;32739:4:131;32727:17;;;32721:24;31491:12;32821:4;32806:20;;31479:25;32876:4;32864:17;;;32858:24;31635:12;;-1:-1:-1;;;;;31631:21:131;;;32957:4;32942:20;;31619:34;31706:4;31695:16;;31689:23;31685:32;31669:14;;;31662:56;31767:4;31756:16;;31750:23;31734:14;;;31727:47;31812:16;;;31806:23;31790:14;;;31783:47;31868:16;;31862:23;31846:14;;;31839:47;31599:3;31924:16;;;31918:23;31902:14;;;31895:47;33000:17;;32994:24;33027:58;33077:6;33062:22;;32994:24;33027:58;:::i;:::-;;33134:4;33126:6;33122:17;33116:24;33149:58;33199:6;33188:9;33184:22;33168:14;33149:58;:::i;:::-;;31953:1260;;;;:::o;33218:979::-;33643:6;33632:9;33625:25;33606:4;33686:1;33682;33677:3;33673:11;33669:19;33736:2;33728:6;33724:15;33719:2;33708:9;33704:18;33697:43;33776:3;33771:2;33760:9;33756:18;33749:31;33803:46;33844:3;33833:9;33829:19;33821:6;33803:46;:::i;:::-;33897:2;33889:6;33885:15;33880:2;33869:9;33865:18;33858:43;33938:6;33932:3;33921:9;33917:19;33910:35;33994:9;33986:6;33982:22;33976:3;33965:9;33961:19;33954:51;34028:42;34063:6;34055;34028:42;:::i;:::-;34014:56;;;34119:9;34111:6;34107:22;34101:3;34090:9;34086:19;34079:51;34147:44;34184:6;34176;34147:44;:::i;:::-;34139:52;33218:979;-1:-1:-1;;;;;;;;;;33218:979:131:o;34202:613::-;34477:25;;;-1:-1:-1;;;;;34576:15:131;;;34571:2;34556:18;;34549:43;34628:15;;;34623:2;34608:18;;34601:43;34680:15;;34675:2;34660:18;;34653:43;34529:3;34727;34712:19;;34705:32;;;34458:4;;34754:55;;34789:19;;34781:6;34754:55;:::i;36989:812::-;-1:-1:-1;;;37395:3:131;37388:38;37370:3;37455:6;37449:13;37471:75;37539:6;37534:2;37529:3;37525:12;37518:4;37510:6;37506:17;37471:75;:::i;:::-;-1:-1:-1;;;37605:2:131;37565:16;;;37597:11;;;37590:40;37655:13;;37677:76;37655:13;37739:2;37731:11;;37724:4;37712:17;;37677:76;:::i;:::-;37773:17;37792:2;37769:26;;36989:812;-1:-1:-1;;;;36989:812:131:o;37806:245::-;37873:6;37926:2;37914:9;37905:7;37901:23;37897:32;37894:52;;;37942:1;37939;37932:12;37894:52;37974:9;37968:16;37993:28;38015:5;37993:28;:::i;39088:136::-;39127:3;39155:5;39145:39;;39164:18;;:::i;:::-;-1:-1:-1;;;39200:18:131;;39088:136::o;39997:287::-;40126:3;40164:6;40158:13;40180:66;40239:6;40234:3;40227:4;40219:6;40215:17;40180:66;:::i;:::-;40262:16;;;;;39997:287;-1:-1:-1;;39997:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7646,"length":32},{"start":7713,"length":32},{"start":7964,"length":32},{"start":8031,"length":32},{"start":8387,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":\"RegistryCommunityV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":"RegistryCommunityV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75245"},{"astId":70502,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)74978"},{"astId":70505,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)74978":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75245":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","id":72175,"exportedSymbols":{"AccessControlUpgradeable":[52697],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"ERC165Checker":[57919],"ERC1967Proxy":[55021],"FAllo":[74978],"IAllo":[2610],"IERC20":[56528],"IPointStrategy":[65536],"IRegistry":[2802],"IRegistryFactory":[70017],"ISafe":[75245],"Member":[70271],"Metadata":[3098],"PointSystem":[65545],"ProxyOwnableUpgrader":[70199],"ReentrancyGuardUpgradeable":[53237],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"SafeERC20":[56965],"Strategies":[70275],"UUPSUpgradeable":[55672],"Upgrades":[61176]},"nodeType":"SourceUnit","src":"42:26085:104","nodes":[{"id":70201,"nodeType":"PragmaDirective","src":"42:24:104","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70203,"nodeType":"ImportDirective","src":"68:70:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":56529,"symbolAliases":[{"foreign":{"id":70202,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56528,"src":"76:6:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70205,"nodeType":"ImportDirective","src":"139:82:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","file":"@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":56966,"symbolAliases":[{"foreign":{"id":70204,"name":"SafeERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56965,"src":"147:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70207,"nodeType":"ImportDirective","src":"222:92:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165Checker.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":57920,"symbolAliases":[{"foreign":{"id":70206,"name":"ERC165Checker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57919,"src":"230:13:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70209,"nodeType":"ImportDirective","src":"315:88:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":70208,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"323:15:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70211,"nodeType":"ImportDirective","src":"405:132:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":53238,"symbolAliases":[{"foreign":{"id":70210,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53237,"src":"413:26:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70213,"nodeType":"ImportDirective","src":"538:126:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":52698,"symbolAliases":[{"foreign":{"id":70212,"name":"AccessControlUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52697,"src":"546:24:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70215,"nodeType":"ImportDirective","src":"666:66:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"allo-v2-contracts/core/interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":2611,"symbolAliases":[{"foreign":{"id":70214,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"674:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70217,"nodeType":"ImportDirective","src":"733:65:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":70216,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"741:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70220,"nodeType":"ImportDirective","src":"799:84:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":70218,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"807:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70219,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"818:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70222,"nodeType":"ImportDirective","src":"884:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","file":"../interfaces/FAllo.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":74979,"symbolAliases":[{"foreign":{"id":70221,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74978,"src":"892:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70224,"nodeType":"ImportDirective","src":"931:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ISafe.sol","file":"../interfaces/ISafe.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":75262,"symbolAliases":[{"foreign":{"id":70223,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75245,"src":"939:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70226,"nodeType":"ImportDirective","src":"978:57:104","nodes":[],"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","file":"../IRegistryFactory.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":70018,"symbolAliases":[{"foreign":{"id":70225,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"986:16:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70231,"nodeType":"ImportDirective","src":"1036:143:104","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":70227,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"1049:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70228,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"1069:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70229,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"1089:30:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70230,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"1125:11:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70233,"nodeType":"ImportDirective","src":"1180:66:104","nodes":[],"absolutePath":"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol","file":"@openzeppelin/foundry/LegacyUpgrades.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":61297,"symbolAliases":[{"foreign":{"id":70232,"name":"Upgrades","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61176,"src":"1188:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70235,"nodeType":"ImportDirective","src":"1247:84:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":70234,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"1255:12:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70237,"nodeType":"ImportDirective","src":"1332:65:104","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":70236,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"1340:20:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70264,"nodeType":"StructDefinition","src":"2292:368:104","nodes":[],"canonicalName":"RegistryCommunityInitializeParamsV0_0","members":[{"constant":false,"id":70239,"mutability":"mutable","name":"_allo","nameLocation":"2351:5:104","nodeType":"VariableDeclaration","scope":70264,"src":"2343:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70238,"name":"address","nodeType":"ElementaryTypeName","src":"2343:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70242,"mutability":"mutable","name":"_gardenToken","nameLocation":"2369:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2362:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":70241,"nodeType":"UserDefinedTypeName","pathNode":{"id":70240,"name":"IERC20","nameLocations":["2362:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"2362:6:104"},"referencedDeclaration":56528,"src":"2362:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":70244,"mutability":"mutable","name":"_registerStakeAmount","nameLocation":"2395:20:104","nodeType":"VariableDeclaration","scope":70264,"src":"2387:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70243,"name":"uint256","nodeType":"ElementaryTypeName","src":"2387:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70246,"mutability":"mutable","name":"_communityFee","nameLocation":"2429:13:104","nodeType":"VariableDeclaration","scope":70264,"src":"2421:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70245,"name":"uint256","nodeType":"ElementaryTypeName","src":"2421:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70248,"mutability":"mutable","name":"_nonce","nameLocation":"2456:6:104","nodeType":"VariableDeclaration","scope":70264,"src":"2448:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70247,"name":"uint256","nodeType":"ElementaryTypeName","src":"2448:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70250,"mutability":"mutable","name":"_registryFactory","nameLocation":"2476:16:104","nodeType":"VariableDeclaration","scope":70264,"src":"2468:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70249,"name":"address","nodeType":"ElementaryTypeName","src":"2468:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70252,"mutability":"mutable","name":"_feeReceiver","nameLocation":"2506:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2498:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70251,"name":"address","nodeType":"ElementaryTypeName","src":"2498:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70255,"mutability":"mutable","name":"_metadata","nameLocation":"2533:9:104","nodeType":"VariableDeclaration","scope":70264,"src":"2524:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":70254,"nodeType":"UserDefinedTypeName","pathNode":{"id":70253,"name":"Metadata","nameLocations":["2524:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2524:8:104"},"referencedDeclaration":3098,"src":"2524:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":70257,"mutability":"mutable","name":"_councilSafe","nameLocation":"2564:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2548:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":70256,"name":"address","nodeType":"ElementaryTypeName","src":"2548:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":70259,"mutability":"mutable","name":"_communityName","nameLocation":"2589:14:104","nodeType":"VariableDeclaration","scope":70264,"src":"2582:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70258,"name":"string","nodeType":"ElementaryTypeName","src":"2582:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70261,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"2614:14:104","nodeType":"VariableDeclaration","scope":70264,"src":"2609:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70260,"name":"bool","nodeType":"ElementaryTypeName","src":"2609:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":70263,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"2641:16:104","nodeType":"VariableDeclaration","scope":70264,"src":"2634:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70262,"name":"string","nodeType":"ElementaryTypeName","src":"2634:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"RegistryCommunityInitializeParamsV0_0","nameLocation":"2299:37:104","scope":72175,"visibility":"public"},{"id":70271,"nodeType":"StructDefinition","src":"2662:86:104","nodes":[],"canonicalName":"Member","members":[{"constant":false,"id":70266,"mutability":"mutable","name":"member","nameLocation":"2690:6:104","nodeType":"VariableDeclaration","scope":70271,"src":"2682:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70265,"name":"address","nodeType":"ElementaryTypeName","src":"2682:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70268,"mutability":"mutable","name":"stakedAmount","nameLocation":"2710:12:104","nodeType":"VariableDeclaration","scope":70271,"src":"2702:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70267,"name":"uint256","nodeType":"ElementaryTypeName","src":"2702:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70270,"mutability":"mutable","name":"isRegistered","nameLocation":"2733:12:104","nodeType":"VariableDeclaration","scope":70271,"src":"2728:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70269,"name":"bool","nodeType":"ElementaryTypeName","src":"2728:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"Member","nameLocation":"2669:6:104","scope":72175,"visibility":"public"},{"id":70275,"nodeType":"StructDefinition","src":"2750:47:104","nodes":[],"canonicalName":"Strategies","members":[{"constant":false,"id":70274,"mutability":"mutable","name":"strategies","nameLocation":"2784:10:104","nodeType":"VariableDeclaration","scope":70275,"src":"2774:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70272,"name":"address","nodeType":"ElementaryTypeName","src":"2774:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70273,"nodeType":"ArrayTypeName","src":"2774:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"Strategies","nameLocation":"2757:10:104","scope":72175,"visibility":"public"},{"id":72174,"nodeType":"ContractDefinition","src":"2850:23276:104","nodes":[{"id":70286,"nodeType":"EventDefinition","src":"3131:29:104","nodes":[],"anonymous":false,"eventSelector":"aaded18d4d508696508b945d03ff3d168110dbb73e17aeda699745655fa958d2","name":"AlloSet","nameLocation":"3137:7:104","parameters":{"id":70285,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70284,"indexed":false,"mutability":"mutable","name":"_allo","nameLocation":"3153:5:104","nodeType":"VariableDeclaration","scope":70286,"src":"3145:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70283,"name":"address","nodeType":"ElementaryTypeName","src":"3145:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3144:15:104"}},{"id":70290,"nodeType":"EventDefinition","src":"3165:36:104","nodes":[],"anonymous":false,"eventSelector":"ad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb68872","name":"CouncilSafeSet","nameLocation":"3171:14:104","parameters":{"id":70289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70288,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"3194:5:104","nodeType":"VariableDeclaration","scope":70290,"src":"3186:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70287,"name":"address","nodeType":"ElementaryTypeName","src":"3186:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3185:15:104"}},{"id":70296,"nodeType":"EventDefinition","src":"3206:74:104","nodes":[],"anonymous":false,"eventSelector":"83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8","name":"CouncilSafeChangeStarted","nameLocation":"3212:24:104","parameters":{"id":70295,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70292,"indexed":false,"mutability":"mutable","name":"_safeOwner","nameLocation":"3245:10:104","nodeType":"VariableDeclaration","scope":70296,"src":"3237:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70291,"name":"address","nodeType":"ElementaryTypeName","src":"3237:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70294,"indexed":false,"mutability":"mutable","name":"_newSafeOwner","nameLocation":"3265:13:104","nodeType":"VariableDeclaration","scope":70296,"src":"3257:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70293,"name":"address","nodeType":"ElementaryTypeName","src":"3257:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3236:43:104"}},{"id":70302,"nodeType":"EventDefinition","src":"3285:63:104","nodes":[],"anonymous":false,"eventSelector":"67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f7689","name":"MemberRegistered","nameLocation":"3291:16:104","parameters":{"id":70301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70298,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3316:7:104","nodeType":"VariableDeclaration","scope":70302,"src":"3308:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70297,"name":"address","nodeType":"ElementaryTypeName","src":"3308:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70300,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3333:13:104","nodeType":"VariableDeclaration","scope":70302,"src":"3325:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70299,"name":"uint256","nodeType":"ElementaryTypeName","src":"3325:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3307:40:104"}},{"id":70308,"nodeType":"EventDefinition","src":"3353:67:104","nodes":[],"anonymous":false,"eventSelector":"a13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f4","name":"MemberUnregistered","nameLocation":"3359:18:104","parameters":{"id":70307,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70304,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3386:7:104","nodeType":"VariableDeclaration","scope":70308,"src":"3378:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70303,"name":"address","nodeType":"ElementaryTypeName","src":"3378:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70306,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3403:15:104","nodeType":"VariableDeclaration","scope":70308,"src":"3395:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70305,"name":"uint256","nodeType":"ElementaryTypeName","src":"3395:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3377:42:104"}},{"id":70316,"nodeType":"EventDefinition","src":"3425:87:104","nodes":[],"anonymous":false,"eventSelector":"b5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3","name":"MemberKicked","nameLocation":"3431:12:104","parameters":{"id":70315,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70310,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3452:7:104","nodeType":"VariableDeclaration","scope":70316,"src":"3444:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70309,"name":"address","nodeType":"ElementaryTypeName","src":"3444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70312,"indexed":false,"mutability":"mutable","name":"_transferAddress","nameLocation":"3469:16:104","nodeType":"VariableDeclaration","scope":70316,"src":"3461:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70311,"name":"address","nodeType":"ElementaryTypeName","src":"3461:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70314,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3495:15:104","nodeType":"VariableDeclaration","scope":70316,"src":"3487:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70313,"name":"uint256","nodeType":"ElementaryTypeName","src":"3487:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3443:68:104"}},{"id":70320,"nodeType":"EventDefinition","src":"3517:43:104","nodes":[],"anonymous":false,"eventSelector":"611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6","name":"CommunityFeeUpdated","nameLocation":"3523:19:104","parameters":{"id":70319,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70318,"indexed":false,"mutability":"mutable","name":"_newFee","nameLocation":"3551:7:104","nodeType":"VariableDeclaration","scope":70320,"src":"3543:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70317,"name":"uint256","nodeType":"ElementaryTypeName","src":"3543:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3542:17:104"}},{"id":70329,"nodeType":"EventDefinition","src":"3565:89:104","nodes":[],"anonymous":false,"eventSelector":"2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed03205","name":"RegistryInitialized","nameLocation":"3571:19:104","parameters":{"id":70328,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70322,"indexed":false,"mutability":"mutable","name":"_profileId","nameLocation":"3599:10:104","nodeType":"VariableDeclaration","scope":70329,"src":"3591:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70321,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3591:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":70324,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"3618:14:104","nodeType":"VariableDeclaration","scope":70329,"src":"3611:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70323,"name":"string","nodeType":"ElementaryTypeName","src":"3611:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70327,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"3643:9:104","nodeType":"VariableDeclaration","scope":70329,"src":"3634:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70326,"nodeType":"UserDefinedTypeName","pathNode":{"id":70325,"name":"Metadata","nameLocations":["3634:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"3634:8:104"},"referencedDeclaration":3098,"src":"3634:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"3590:63:104"}},{"id":70333,"nodeType":"EventDefinition","src":"3659:39:104","nodes":[],"anonymous":false,"eventSelector":"3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1","name":"StrategyAdded","nameLocation":"3665:13:104","parameters":{"id":70332,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70331,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3687:9:104","nodeType":"VariableDeclaration","scope":70333,"src":"3679:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70330,"name":"address","nodeType":"ElementaryTypeName","src":"3679:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3678:19:104"}},{"id":70337,"nodeType":"EventDefinition","src":"3703:41:104","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"3709:15:104","parameters":{"id":70336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70335,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3733:9:104","nodeType":"VariableDeclaration","scope":70337,"src":"3725:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70334,"name":"address","nodeType":"ElementaryTypeName","src":"3725:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3724:19:104"}},{"id":70345,"nodeType":"EventDefinition","src":"3749:93:104","nodes":[],"anonymous":false,"eventSelector":"f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec","name":"MemberActivatedStrategy","nameLocation":"3755:23:104","parameters":{"id":70344,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70339,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3787:7:104","nodeType":"VariableDeclaration","scope":70345,"src":"3779:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70338,"name":"address","nodeType":"ElementaryTypeName","src":"3779:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70341,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3804:9:104","nodeType":"VariableDeclaration","scope":70345,"src":"3796:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70340,"name":"address","nodeType":"ElementaryTypeName","src":"3796:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70343,"indexed":false,"mutability":"mutable","name":"_pointsToIncrease","nameLocation":"3823:17:104","nodeType":"VariableDeclaration","scope":70345,"src":"3815:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70342,"name":"uint256","nodeType":"ElementaryTypeName","src":"3815:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3778:63:104"}},{"id":70351,"nodeType":"EventDefinition","src":"3847:68:104","nodes":[],"anonymous":false,"eventSelector":"00de109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b","name":"MemberDeactivatedStrategy","nameLocation":"3853:25:104","parameters":{"id":70350,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70347,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3887:7:104","nodeType":"VariableDeclaration","scope":70351,"src":"3879:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70346,"name":"address","nodeType":"ElementaryTypeName","src":"3879:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70349,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3904:9:104","nodeType":"VariableDeclaration","scope":70351,"src":"3896:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70348,"name":"address","nodeType":"ElementaryTypeName","src":"3896:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3878:36:104"}},{"id":70355,"nodeType":"EventDefinition","src":"3920:47:104","nodes":[],"anonymous":false,"eventSelector":"5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f","name":"BasisStakedAmountSet","nameLocation":"3926:20:104","parameters":{"id":70354,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70353,"indexed":false,"mutability":"mutable","name":"_newAmount","nameLocation":"3955:10:104","nodeType":"VariableDeclaration","scope":70355,"src":"3947:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70352,"name":"uint256","nodeType":"ElementaryTypeName","src":"3947:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3946:20:104"}},{"id":70361,"nodeType":"EventDefinition","src":"3972:67:104","nodes":[],"anonymous":false,"eventSelector":"576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f","name":"MemberPowerIncreased","nameLocation":"3978:20:104","parameters":{"id":70360,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70357,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4007:7:104","nodeType":"VariableDeclaration","scope":70361,"src":"3999:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70356,"name":"address","nodeType":"ElementaryTypeName","src":"3999:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70359,"indexed":false,"mutability":"mutable","name":"_stakedAmount","nameLocation":"4024:13:104","nodeType":"VariableDeclaration","scope":70361,"src":"4016:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70358,"name":"uint256","nodeType":"ElementaryTypeName","src":"4016:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3998:40:104"}},{"id":70367,"nodeType":"EventDefinition","src":"4044:69:104","nodes":[],"anonymous":false,"eventSelector":"6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8","name":"MemberPowerDecreased","nameLocation":"4050:20:104","parameters":{"id":70366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70363,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4079:7:104","nodeType":"VariableDeclaration","scope":70367,"src":"4071:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70362,"name":"address","nodeType":"ElementaryTypeName","src":"4071:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70365,"indexed":false,"mutability":"mutable","name":"_unstakedAmount","nameLocation":"4096:15:104","nodeType":"VariableDeclaration","scope":70367,"src":"4088:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70364,"name":"uint256","nodeType":"ElementaryTypeName","src":"4088:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4070:42:104"}},{"id":70380,"nodeType":"EventDefinition","src":"4118:110:104","nodes":[],"anonymous":false,"eventSelector":"778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d283","name":"PoolCreated","nameLocation":"4124:11:104","parameters":{"id":70379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70369,"indexed":false,"mutability":"mutable","name":"_poolId","nameLocation":"4144:7:104","nodeType":"VariableDeclaration","scope":70380,"src":"4136:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70368,"name":"uint256","nodeType":"ElementaryTypeName","src":"4136:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70371,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4161:9:104","nodeType":"VariableDeclaration","scope":70380,"src":"4153:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70370,"name":"address","nodeType":"ElementaryTypeName","src":"4153:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70373,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"4180:10:104","nodeType":"VariableDeclaration","scope":70380,"src":"4172:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70372,"name":"address","nodeType":"ElementaryTypeName","src":"4172:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70375,"indexed":false,"mutability":"mutable","name":"_token","nameLocation":"4200:6:104","nodeType":"VariableDeclaration","scope":70380,"src":"4192:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70374,"name":"address","nodeType":"ElementaryTypeName","src":"4192:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70378,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4217:9:104","nodeType":"VariableDeclaration","scope":70380,"src":"4208:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70377,"nodeType":"UserDefinedTypeName","pathNode":{"id":70376,"name":"Metadata","nameLocations":["4208:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"4208:8:104"},"referencedDeclaration":3098,"src":"4208:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"4135:92:104"}},{"id":70382,"nodeType":"ErrorDefinition","src":"4414:28:104","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4420:19:104","parameters":{"id":70381,"nodeType":"ParameterList","parameters":[],"src":"4439:2:104"}},{"id":70384,"nodeType":"ErrorDefinition","src":"4447:29:104","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4453:20:104","parameters":{"id":70383,"nodeType":"ParameterList","parameters":[],"src":"4473:2:104"}},{"id":70388,"nodeType":"ErrorDefinition","src":"4481:38:104","nodes":[],"errorSelector":"fc4be72f","name":"UserNotInCouncil","nameLocation":"4487:16:104","parameters":{"id":70387,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70386,"mutability":"mutable","name":"_user","nameLocation":"4512:5:104","nodeType":"VariableDeclaration","scope":70388,"src":"4504:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70385,"name":"address","nodeType":"ElementaryTypeName","src":"4504:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4503:15:104"}},{"id":70390,"nodeType":"ErrorDefinition","src":"4524:26:104","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4530:17:104","parameters":{"id":70389,"nodeType":"ParameterList","parameters":[],"src":"4547:2:104"}},{"id":70392,"nodeType":"ErrorDefinition","src":"4555:30:104","nodes":[],"errorSelector":"9e4a65f6","name":"UserAlreadyRegistered","nameLocation":"4561:21:104","parameters":{"id":70391,"nodeType":"ParameterList","parameters":[],"src":"4582:2:104"}},{"id":70394,"nodeType":"ErrorDefinition","src":"4590:27:104","nodes":[],"errorSelector":"e9a644b8","name":"UserNotGardenOwner","nameLocation":"4596:18:104","parameters":{"id":70393,"nodeType":"ParameterList","parameters":[],"src":"4614:2:104"}},{"id":70396,"nodeType":"ErrorDefinition","src":"4622:29:104","nodes":[],"errorSelector":"d5b9bc96","name":"UserAlreadyActivated","nameLocation":"4628:20:104","parameters":{"id":70395,"nodeType":"ParameterList","parameters":[],"src":"4648:2:104"}},{"id":70398,"nodeType":"ErrorDefinition","src":"4656:31:104","nodes":[],"errorSelector":"c12369dc","name":"UserAlreadyDeactivated","nameLocation":"4662:22:104","parameters":{"id":70397,"nodeType":"ParameterList","parameters":[],"src":"4684:2:104"}},{"id":70400,"nodeType":"ErrorDefinition","src":"4692:23:104","nodes":[],"errorSelector":"968a4d2c","name":"StrategyExists","nameLocation":"4698:14:104","parameters":{"id":70399,"nodeType":"ParameterList","parameters":[],"src":"4712:2:104"}},{"id":70402,"nodeType":"ErrorDefinition","src":"4720:25:104","nodes":[],"errorSelector":"46c26e4b","name":"StrategyDisabled","nameLocation":"4726:16:104","parameters":{"id":70401,"nodeType":"ParameterList","parameters":[],"src":"4742:2:104"}},{"id":70404,"nodeType":"ErrorDefinition","src":"4750:26:104","nodes":[],"errorSelector":"ebcd0d6e","name":"SenderNotNewOwner","nameLocation":"4756:17:104","parameters":{"id":70403,"nodeType":"ParameterList","parameters":[],"src":"4773:2:104"}},{"id":70406,"nodeType":"ErrorDefinition","src":"4781:26:104","nodes":[],"errorSelector":"bbe79611","name":"SenderNotStrategy","nameLocation":"4787:17:104","parameters":{"id":70405,"nodeType":"ParameterList","parameters":[],"src":"4804:2:104"}},{"id":70408,"nodeType":"ErrorDefinition","src":"4812:26:104","nodes":[],"errorSelector":"c70d18aa","name":"ValueCannotBeZero","nameLocation":"4818:17:104","parameters":{"id":70407,"nodeType":"ParameterList","parameters":[],"src":"4835:2:104"}},{"id":70410,"nodeType":"ErrorDefinition","src":"4843:29:104","nodes":[],"errorSelector":"fe925f7d","name":"NewFeeGreaterThanMax","nameLocation":"4849:20:104","parameters":{"id":70409,"nodeType":"ParameterList","parameters":[],"src":"4869:2:104"}},{"id":70412,"nodeType":"ErrorDefinition","src":"4877:23:104","nodes":[],"errorSelector":"cb63dc72","name":"KickNotEnabled","nameLocation":"4883:14:104","parameters":{"id":70411,"nodeType":"ParameterList","parameters":[],"src":"4897:2:104"}},{"id":70414,"nodeType":"ErrorDefinition","src":"4905:26:104","nodes":[],"errorSelector":"d4d3290e","name":"PointsDeactivated","nameLocation":"4911:17:104","parameters":{"id":70413,"nodeType":"ParameterList","parameters":[],"src":"4928:2:104"}},{"id":70416,"nodeType":"ErrorDefinition","src":"4936:29:104","nodes":[],"errorSelector":"9c47d02e","name":"DecreaseUnderMinimum","nameLocation":"4942:20:104","parameters":{"id":70415,"nodeType":"ParameterList","parameters":[],"src":"4962:2:104"}},{"id":70422,"nodeType":"ErrorDefinition","src":"4970:80:104","nodes":[],"errorSelector":"8a11f318","name":"CantDecreaseMoreThanPower","nameLocation":"4976:25:104","parameters":{"id":70421,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70418,"mutability":"mutable","name":"_decreaseAmount","nameLocation":"5010:15:104","nodeType":"VariableDeclaration","scope":70422,"src":"5002:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70417,"name":"uint256","nodeType":"ElementaryTypeName","src":"5002:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70420,"mutability":"mutable","name":"_currentPower","nameLocation":"5035:13:104","nodeType":"VariableDeclaration","scope":70422,"src":"5027:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70419,"name":"uint256","nodeType":"ElementaryTypeName","src":"5027:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5001:48:104"}},{"id":70425,"nodeType":"UsingForDirective","src":"5056:32:104","nodes":[],"global":false,"libraryName":{"id":70423,"name":"ERC165Checker","nameLocations":["5062:13:104"],"nodeType":"IdentifierPath","referencedDeclaration":57919,"src":"5062:13:104"},"typeName":{"id":70424,"name":"address","nodeType":"ElementaryTypeName","src":"5080:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70429,"nodeType":"UsingForDirective","src":"5093:27:104","nodes":[],"global":false,"libraryName":{"id":70426,"name":"SafeERC20","nameLocations":["5099:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":56965,"src":"5099:9:104"},"typeName":{"id":70428,"nodeType":"UserDefinedTypeName","pathNode":{"id":70427,"name":"IERC20","nameLocations":["5113:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"5113:6:104"},"referencedDeclaration":56528,"src":"5113:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}},{"id":70432,"nodeType":"UsingForDirective","src":"5125:24:104","nodes":[],"global":false,"libraryName":{"id":70430,"name":"Clone","nameLocations":["5131:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":3002,"src":"5131:5:104"},"typeName":{"id":70431,"name":"address","nodeType":"ElementaryTypeName","src":"5141:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70440,"nodeType":"FunctionDefinition","src":"5202:92:104","nodes":[],"body":{"id":70439,"nodeType":"Block","src":"5265:29:104","nodes":[],"statements":[{"expression":{"hexValue":"302e30","id":70437,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5282:5:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"functionReturnParameters":70436,"id":70438,"nodeType":"Return","src":"5275:12:104"}]},"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"5211:7:104","parameters":{"id":70433,"nodeType":"ParameterList","parameters":[],"src":"5218:2:104"},"returnParameters":{"id":70436,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70435,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":70440,"src":"5250:13:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70434,"name":"string","nodeType":"ElementaryTypeName","src":"5250:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5249:15:104"},"scope":72174,"stateMutability":"pure","virtual":true,"visibility":"public"},{"id":70444,"nodeType":"VariableDeclaration","src":"5379:75:104","nodes":[],"constant":true,"documentation":{"id":70441,"nodeType":"StructuredDocumentation","src":"5299:75:104","text":"@notice The native address to represent native token eg: ETH in mainnet"},"functionSelector":"a0cf0aea","mutability":"constant","name":"NATIVE","nameLocation":"5403:6:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70442,"name":"address","nodeType":"ElementaryTypeName","src":"5379:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"hexValue":"307845656565654565656545654565654565456545656545454565656565456565656565656545456545","id":70443,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5412:42:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"},"visibility":"public"},{"id":70450,"nodeType":"VariableDeclaration","src":"5544:49:104","nodes":[],"constant":true,"documentation":{"id":70445,"nodeType":"StructuredDocumentation","src":"5460:79:104","text":"@notice The precision scale used in the contract to avoid loss of precision"},"functionSelector":"d7050f07","mutability":"constant","name":"PRECISION_SCALE","nameLocation":"5568:15:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70446,"name":"uint256","nodeType":"ElementaryTypeName","src":"5544:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":70449,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70447,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5586:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":70448,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5592:1:104","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"5586:7:104","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":70456,"nodeType":"VariableDeclaration","src":"5668:54:104","nodes":[],"constant":true,"documentation":{"id":70451,"nodeType":"StructuredDocumentation","src":"5599:64:104","text":"@notice The maximum fee that can be charged to the community"},"functionSelector":"bc063e1a","mutability":"constant","name":"MAX_FEE","nameLocation":"5692:7:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70452,"name":"uint256","nodeType":"ElementaryTypeName","src":"5668:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70455,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70453,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5702:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":70454,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"5707:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5702:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70459,"nodeType":"VariableDeclaration","src":"5795:34:104","nodes":[],"constant":false,"documentation":{"id":70457,"nodeType":"StructuredDocumentation","src":"5728:62:104","text":"@notice The amount of tokens required to register a member"},"functionSelector":"78a0b8a9","mutability":"mutable","name":"registerStakeAmount","nameLocation":"5810:19:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70458,"name":"uint256","nodeType":"ElementaryTypeName","src":"5795:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70462,"nodeType":"VariableDeclaration","src":"5906:27:104","nodes":[],"constant":false,"documentation":{"id":70460,"nodeType":"StructuredDocumentation","src":"5835:66:104","text":"@notice The fee charged to the community for each registration"},"functionSelector":"8961be6b","mutability":"mutable","name":"communityFee","nameLocation":"5921:12:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70461,"name":"uint256","nodeType":"ElementaryTypeName","src":"5906:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70465,"nodeType":"VariableDeclaration","src":"6000:25:104","nodes":[],"constant":false,"documentation":{"id":70463,"nodeType":"StructuredDocumentation","src":"5939:56:104","text":"@notice The nonce used to create new strategy clones"},"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"6015:10:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70464,"name":"uint256","nodeType":"ElementaryTypeName","src":"6000:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70468,"nodeType":"VariableDeclaration","src":"6099:24:104","nodes":[],"constant":false,"documentation":{"id":70466,"nodeType":"StructuredDocumentation","src":"6031:63:104","text":"@notice The profileId of the community in the Allo Registry"},"functionSelector":"08386eba","mutability":"mutable","name":"profileId","nameLocation":"6114:9:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70467,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6099:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":70471,"nodeType":"VariableDeclaration","src":"6180:25:104","nodes":[],"constant":false,"documentation":{"id":70469,"nodeType":"StructuredDocumentation","src":"6129:46:104","text":"@notice Enable or disable the kick feature"},"functionSelector":"1f787d28","mutability":"mutable","name":"isKickEnabled","nameLocation":"6192:13:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70470,"name":"bool","nodeType":"ElementaryTypeName","src":"6180:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"public"},{"id":70474,"nodeType":"VariableDeclaration","src":"6272:26:104","nodes":[],"constant":false,"documentation":{"id":70472,"nodeType":"StructuredDocumentation","src":"6212:55:104","text":"@notice The address that receives the community fee"},"functionSelector":"b3f00674","mutability":"mutable","name":"feeReceiver","nameLocation":"6287:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70473,"name":"address","nodeType":"ElementaryTypeName","src":"6272:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70477,"nodeType":"VariableDeclaration","src":"6356:30:104","nodes":[],"constant":false,"documentation":{"id":70475,"nodeType":"StructuredDocumentation","src":"6304:47:104","text":"@notice The address of the registry factory"},"functionSelector":"f86c5f89","mutability":"mutable","name":"registryFactory","nameLocation":"6371:15:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70476,"name":"address","nodeType":"ElementaryTypeName","src":"6356:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70480,"nodeType":"VariableDeclaration","src":"6453:38:104","nodes":[],"constant":false,"documentation":{"id":70478,"nodeType":"StructuredDocumentation","src":"6392:56:104","text":"@notice The address of the collateral vault template"},"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"6468:23:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70479,"name":"address","nodeType":"ElementaryTypeName","src":"6453:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70483,"nodeType":"VariableDeclaration","src":"6550:31:104","nodes":[],"constant":false,"documentation":{"id":70481,"nodeType":"StructuredDocumentation","src":"6497:48:104","text":"@notice The address of the strategy template"},"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"6565:16:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70482,"name":"address","nodeType":"ElementaryTypeName","src":"6550:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70486,"nodeType":"VariableDeclaration","src":"6649:41:104","nodes":[],"constant":false,"documentation":{"id":70484,"nodeType":"StructuredDocumentation","src":"6587:57:104","text":"@notice The address of the pending council safe owner"},"functionSelector":"68decabb","mutability":"mutable","name":"pendingCouncilSafe","nameLocation":"6672:18:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":70485,"name":"address","nodeType":"ElementaryTypeName","src":"6649:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"public"},{"id":70490,"nodeType":"VariableDeclaration","src":"6740:25:104","nodes":[],"constant":false,"documentation":{"id":70487,"nodeType":"StructuredDocumentation","src":"6697:38:104","text":"@notice The Registry Allo contract"},"functionSelector":"7b103999","mutability":"mutable","name":"registry","nameLocation":"6757:8:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":70489,"nodeType":"UserDefinedTypeName","pathNode":{"id":70488,"name":"IRegistry","nameLocations":["6740:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"6740:9:104"},"referencedDeclaration":2802,"src":"6740:9:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"public"},{"id":70494,"nodeType":"VariableDeclaration","src":"6828:25:104","nodes":[],"constant":false,"documentation":{"id":70491,"nodeType":"StructuredDocumentation","src":"6771:52:104","text":"@notice The token used to stake in the community"},"functionSelector":"db61d65c","mutability":"mutable","name":"gardenToken","nameLocation":"6842:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":70493,"nodeType":"UserDefinedTypeName","pathNode":{"id":70492,"name":"IERC20","nameLocations":["6828:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"6828:6:104"},"referencedDeclaration":56528,"src":"6828:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"public"},{"id":70498,"nodeType":"VariableDeclaration","src":"6909:24:104","nodes":[],"constant":false,"documentation":{"id":70495,"nodeType":"StructuredDocumentation","src":"6859:45:104","text":"@notice The council safe contract address"},"functionSelector":"6c53db9a","mutability":"mutable","name":"councilSafe","nameLocation":"6922:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"},"typeName":{"id":70497,"nodeType":"UserDefinedTypeName","pathNode":{"id":70496,"name":"ISafe","nameLocations":["6909:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":75245,"src":"6909:5:104"},"referencedDeclaration":75245,"src":"6909:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"visibility":"public"},{"id":70502,"nodeType":"VariableDeclaration","src":"6981:17:104","nodes":[],"constant":false,"documentation":{"id":70499,"nodeType":"StructuredDocumentation","src":"6939:37:104","text":"@notice The Allo contract address"},"functionSelector":"d6d8428d","mutability":"mutable","name":"allo","nameLocation":"6994:4:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"},"typeName":{"id":70501,"nodeType":"UserDefinedTypeName","pathNode":{"id":70500,"name":"FAllo","nameLocations":["6981:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":74978,"src":"6981:5:104"},"referencedDeclaration":74978,"src":"6981:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"visibility":"public"},{"id":70505,"nodeType":"VariableDeclaration","src":"7040:27:104","nodes":[],"constant":false,"documentation":{"id":70503,"nodeType":"StructuredDocumentation","src":"7005:30:104","text":"@notice The community name"},"functionSelector":"c6d572ae","mutability":"mutable","name":"communityName","nameLocation":"7054:13:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":70504,"name":"string","nodeType":"ElementaryTypeName","src":"7040:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":70508,"nodeType":"VariableDeclaration","src":"7125:30:104","nodes":[],"constant":false,"documentation":{"id":70506,"nodeType":"StructuredDocumentation","src":"7073:47:104","text":"@notice The covenant IPFS hash of community"},"functionSelector":"b64e39af","mutability":"mutable","name":"covenantIpfsHash","nameLocation":"7139:16:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":70507,"name":"string","nodeType":"ElementaryTypeName","src":"7125:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":70513,"nodeType":"VariableDeclaration","src":"7271:68:104","nodes":[],"constant":false,"documentation":{"id":70509,"nodeType":"StructuredDocumentation","src":"7219:47:104","text":"@notice List of enabled/disabled strategies"},"functionSelector":"3a871fe1","mutability":"mutable","name":"enabledStrategies","nameLocation":"7322:17:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":70512,"keyName":"strategy","keyNameLocation":"7287:8:104","keyType":{"id":70510,"name":"address","nodeType":"ElementaryTypeName","src":"7279:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7271:43:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isEnabled","valueNameLocation":"7304:9:104","valueType":{"id":70511,"name":"bool","nodeType":"ElementaryTypeName","src":"7299:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"public"},{"id":70520,"nodeType":"VariableDeclaration","src":"7407:98:104","nodes":[],"constant":false,"documentation":{"id":70514,"nodeType":"StructuredDocumentation","src":"7345:57:104","text":"@notice Power points for each member in each strategy"},"functionSelector":"65e3864c","mutability":"mutable","name":"memberPowerInStrategy","nameLocation":"7484:21:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":70519,"keyName":"strategy","keyNameLocation":"7423:8:104","keyType":{"id":70515,"name":"address","nodeType":"ElementaryTypeName","src":"7415:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7407:69:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70518,"keyName":"member","keyNameLocation":"7451:6:104","keyType":{"id":70516,"name":"address","nodeType":"ElementaryTypeName","src":"7443:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7435:40:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"power","valueNameLocation":"7469:5:104","valueType":{"id":70517,"name":"uint256","nodeType":"ElementaryTypeName","src":"7461:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":70526,"nodeType":"VariableDeclaration","src":"7605:60:104","nodes":[],"constant":false,"documentation":{"id":70521,"nodeType":"StructuredDocumentation","src":"7511:89:104","text":"@notice Member information as the staked amount and if is registered in the community"},"functionSelector":"88cfe684","mutability":"mutable","name":"addressToMemberInfo","nameLocation":"7646:19:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member)"},"typeName":{"id":70525,"keyName":"member","keyNameLocation":"7621:6:104","keyType":{"id":70522,"name":"address","nodeType":"ElementaryTypeName","src":"7613:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7605:33:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70524,"nodeType":"UserDefinedTypeName","pathNode":{"id":70523,"name":"Member","nameLocations":["7631:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"7631:6:104"},"referencedDeclaration":70271,"src":"7631:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}}},"visibility":"public"},{"id":70532,"nodeType":"VariableDeclaration","src":"7736:82:104","nodes":[],"constant":false,"documentation":{"id":70527,"nodeType":"StructuredDocumentation","src":"7671:60:104","text":"@notice List of strategies for each member are activated"},"functionSelector":"2b38c69c","mutability":"mutable","name":"strategiesByMember","nameLocation":"7800:18:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"typeName":{"id":70531,"keyName":"member","keyNameLocation":"7752:6:104","keyType":{"id":70528,"name":"address","nodeType":"ElementaryTypeName","src":"7744:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7736:56:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"valueName":"strategiesAddresses","valueNameLocation":"7772:19:104","valueType":{"baseType":{"id":70529,"name":"address","nodeType":"ElementaryTypeName","src":"7762:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70530,"nodeType":"ArrayTypeName","src":"7762:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"visibility":"public"},{"id":70539,"nodeType":"VariableDeclaration","src":"7896:107:104","nodes":[],"constant":false,"documentation":{"id":70533,"nodeType":"StructuredDocumentation","src":"7824:67:104","text":"@notice Mapping to check if a member is activated in a strategy"},"functionSelector":"477a5cc0","mutability":"mutable","name":"memberActivatedInStrategies","nameLocation":"7976:27:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"typeName":{"id":70538,"keyName":"member","keyNameLocation":"7912:6:104","keyType":{"id":70534,"name":"address","nodeType":"ElementaryTypeName","src":"7904:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7896:72:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70537,"keyName":"strategy","keyNameLocation":"7938:8:104","keyType":{"id":70535,"name":"address","nodeType":"ElementaryTypeName","src":"7930:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7922:45:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isActivated","valueNameLocation":"7955:11:104","valueType":{"id":70536,"name":"bool","nodeType":"ElementaryTypeName","src":"7950:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}}},"visibility":"public"},{"id":70543,"nodeType":"VariableDeclaration","src":"8096:24:104","nodes":[],"constant":false,"documentation":{"id":70540,"nodeType":"StructuredDocumentation","src":"8010:81:104","text":"@notice List of initial members to be added as pool managers in the Allo Pool"},"mutability":"mutable","name":"initialMembers","nameLocation":"8106:14:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[]"},"typeName":{"baseType":{"id":70541,"name":"address","nodeType":"ElementaryTypeName","src":"8096:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70542,"nodeType":"ArrayTypeName","src":"8096:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"id":70549,"nodeType":"VariableDeclaration","src":"8337:68:104","nodes":[],"constant":true,"documentation":{"id":70544,"nodeType":"StructuredDocumentation","src":"8292:40:104","text":"@notice Role to council safe members"},"functionSelector":"733a2d1f","mutability":"constant","name":"COUNCIL_MEMBER","nameLocation":"8361:14:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70545,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8337:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"434f554e43494c5f4d454d424552","id":70547,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8388:16:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""},"value":"COUNCIL_MEMBER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""}],"id":70546,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"8378:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70548,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8378:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":70566,"nodeType":"FunctionDefinition","src":"8578:167:104","nodes":[],"body":{"id":70565,"nodeType":"Block","src":"8627:118:104","nodes":[],"statements":[{"condition":{"id":70557,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8641:36:104","subExpression":{"arguments":[{"id":70553,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"8650:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":70554,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8666:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8670:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8666:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70552,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"8642:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":70556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8642:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70564,"nodeType":"IfStatement","src":"8637:102:104","trueBody":{"id":70563,"nodeType":"Block","src":"8679:60:104","statements":[{"errorCall":{"arguments":[{"expression":{"id":70559,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8717:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70560,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8721:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8717:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70558,"name":"UserNotInCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70388,"src":"8700:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70561,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8700:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70562,"nodeType":"RevertStatement","src":"8693:35:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"8587:15:104","parameters":{"id":70550,"nodeType":"ParameterList","parameters":[],"src":"8602:2:104"},"returnParameters":{"id":70551,"nodeType":"ParameterList","parameters":[],"src":"8627:0:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":70580,"nodeType":"FunctionDefinition","src":"8751:152:104","nodes":[],"body":{"id":70579,"nodeType":"Block","src":"8809:94:104","nodes":[],"statements":[{"condition":{"id":70573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8823:21:104","subExpression":{"arguments":[{"expression":{"id":70570,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8833:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8837:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8833:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70569,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"8824:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":70572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8824:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70578,"nodeType":"IfStatement","src":"8819:78:104","trueBody":{"id":70577,"nodeType":"Block","src":"8846:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70574,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"8867:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70575,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8867:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70576,"nodeType":"RevertStatement","src":"8860:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberSender","nameLocation":"8760:24:104","parameters":{"id":70567,"nodeType":"ParameterList","parameters":[],"src":"8784:2:104"},"returnParameters":{"id":70568,"nodeType":"ParameterList","parameters":[],"src":"8809:0:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":70595,"nodeType":"FunctionDefinition","src":"8909:157:104","nodes":[],"body":{"id":70594,"nodeType":"Block","src":"8975:91:104","nodes":[],"statements":[{"condition":{"id":70588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8989:18:104","subExpression":{"arguments":[{"id":70586,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70582,"src":"8999:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70585,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"8990:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":70587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8990:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70593,"nodeType":"IfStatement","src":"8985:75:104","trueBody":{"id":70592,"nodeType":"Block","src":"9009:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70589,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"9030:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70590,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9030:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70591,"nodeType":"RevertStatement","src":"9023:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberAddress","nameLocation":"8918:25:104","parameters":{"id":70583,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70582,"mutability":"mutable","name":"_sender","nameLocation":"8952:7:104","nodeType":"VariableDeclaration","scope":70595,"src":"8944:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70581,"name":"address","nodeType":"ElementaryTypeName","src":"8944:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8943:17:104"},"returnParameters":{"id":70584,"nodeType":"ParameterList","parameters":[],"src":"8975:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70610,"nodeType":"FunctionDefinition","src":"9072:163:104","nodes":[],"body":{"id":70609,"nodeType":"Block","src":"9134:101:104","nodes":[],"statements":[{"condition":{"id":70603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9148:29:104","subExpression":{"baseExpression":{"id":70600,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"9149:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":70602,"indexExpression":{"id":70601,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70597,"src":"9167:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9149:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70608,"nodeType":"IfStatement","src":"9144:85:104","trueBody":{"id":70607,"nodeType":"Block","src":"9179:50:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70604,"name":"StrategyDisabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70402,"src":"9200:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9200:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70606,"nodeType":"RevertStatement","src":"9193:25:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyEnabled","nameLocation":"9081:19:104","parameters":{"id":70598,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70597,"mutability":"mutable","name":"_strategy","nameLocation":"9109:9:104","nodeType":"VariableDeclaration","scope":70610,"src":"9101:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70596,"name":"address","nodeType":"ElementaryTypeName","src":"9101:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9100:19:104"},"returnParameters":{"id":70599,"nodeType":"ParameterList","parameters":[],"src":"9134:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70626,"nodeType":"FunctionDefinition","src":"9241:172:104","nodes":[],"body":{"id":70625,"nodeType":"Block","src":"9320:93:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70619,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70617,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70612,"src":"9334:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":70618,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70614,"src":"9345:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9334:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70624,"nodeType":"IfStatement","src":"9330:77:104","trueBody":{"id":70623,"nodeType":"Block","src":"9356:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70620,"name":"SenderNotStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70406,"src":"9377:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70621,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9377:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70622,"nodeType":"RevertStatement","src":"9370:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyAddress","nameLocation":"9250:19:104","parameters":{"id":70615,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70612,"mutability":"mutable","name":"_sender","nameLocation":"9278:7:104","nodeType":"VariableDeclaration","scope":70626,"src":"9270:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70611,"name":"address","nodeType":"ElementaryTypeName","src":"9270:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70614,"mutability":"mutable","name":"_strategy","nameLocation":"9295:9:104","nodeType":"VariableDeclaration","scope":70626,"src":"9287:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70613,"name":"address","nodeType":"ElementaryTypeName","src":"9287:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9269:36:104"},"returnParameters":{"id":70616,"nodeType":"ParameterList","parameters":[],"src":"9320:0:104"},"scope":72174,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":70644,"nodeType":"FunctionDefinition","src":"9419:190:104","nodes":[],"body":{"id":70643,"nodeType":"Block","src":"9485:124:104","nodes":[],"statements":[{"condition":{"id":70637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9499:51:104","subExpression":{"baseExpression":{"baseExpression":{"id":70631,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"9500:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":70634,"indexExpression":{"expression":{"id":70632,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9528:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70633,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9532:6:104","memberName":"sender","nodeType":"MemberAccess","src":"9528:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9500:39:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":70636,"indexExpression":{"id":70635,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"9540:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9500:50:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70642,"nodeType":"IfStatement","src":"9495:108:104","trueBody":{"id":70641,"nodeType":"Block","src":"9552:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70638,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70414,"src":"9573:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9573:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70640,"nodeType":"RevertStatement","src":"9566:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyActivatedInStrategy","nameLocation":"9428:23:104","parameters":{"id":70629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70628,"mutability":"mutable","name":"_strategy","nameLocation":"9460:9:104","nodeType":"VariableDeclaration","scope":70644,"src":"9452:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70627,"name":"address","nodeType":"ElementaryTypeName","src":"9452:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9451:19:104"},"returnParameters":{"id":70630,"nodeType":"ParameterList","parameters":[],"src":"9485:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70660,"nodeType":"FunctionDefinition","src":"9615:133:104","nodes":[],"body":{"id":70659,"nodeType":"Block","src":"9675:73:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70649,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70646,"src":"9689:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":70652,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9709:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":70651,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9701:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70650,"name":"address","nodeType":"ElementaryTypeName","src":"9701:7:104","typeDescriptions":{}}},"id":70653,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9701:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9689:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70658,"nodeType":"IfStatement","src":"9685:56:104","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70655,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70382,"src":"9720:19:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9720:21:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70657,"nodeType":"RevertStatement","src":"9713:28:104"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"9624:18:104","parameters":{"id":70647,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70646,"mutability":"mutable","name":"_address","nameLocation":"9651:8:104","nodeType":"VariableDeclaration","scope":70660,"src":"9643:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70645,"name":"address","nodeType":"ElementaryTypeName","src":"9643:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9642:18:104"},"returnParameters":{"id":70648,"nodeType":"ParameterList","parameters":[],"src":"9675:0:104"},"scope":72174,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":70672,"nodeType":"FunctionDefinition","src":"9754:110:104","nodes":[],"body":{"id":70671,"nodeType":"Block","src":"9820:44:104","nodes":[],"statements":[{"expression":{"id":70669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70667,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"9830:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70668,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70662,"src":"9849:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9830:27:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70670,"nodeType":"ExpressionStatement","src":"9830:27:104"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":70665,"kind":"modifierInvocation","modifierName":{"id":70664,"name":"onlyOwner","nameLocations":["9810:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9810:9:104"},"nodeType":"ModifierInvocation","src":"9810:9:104"}],"name":"setStrategyTemplate","nameLocation":"9763:19:104","parameters":{"id":70663,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70662,"mutability":"mutable","name":"template","nameLocation":"9791:8:104","nodeType":"VariableDeclaration","scope":70672,"src":"9783:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70661,"name":"address","nodeType":"ElementaryTypeName","src":"9783:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9782:18:104"},"returnParameters":{"id":70666,"nodeType":"ParameterList","parameters":[],"src":"9820:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70684,"nodeType":"FunctionDefinition","src":"9870:124:104","nodes":[],"body":{"id":70683,"nodeType":"Block","src":"9943:51:104","nodes":[],"statements":[{"expression":{"id":70681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70679,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"9953:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70680,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70674,"src":"9979:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9953:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70682,"nodeType":"ExpressionStatement","src":"9953:34:104"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":70677,"kind":"modifierInvocation","modifierName":{"id":70676,"name":"onlyOwner","nameLocations":["9933:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9933:9:104"},"nodeType":"ModifierInvocation","src":"9933:9:104"}],"name":"setCollateralVaultTemplate","nameLocation":"9879:26:104","parameters":{"id":70675,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70674,"mutability":"mutable","name":"template","nameLocation":"9914:8:104","nodeType":"VariableDeclaration","scope":70684,"src":"9906:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70673,"name":"address","nodeType":"ElementaryTypeName","src":"9906:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9905:18:104"},"returnParameters":{"id":70678,"nodeType":"ParameterList","parameters":[],"src":"9943:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70959,"nodeType":"FunctionDefinition","src":"10144:2497:104","nodes":[],"body":{"id":70958,"nodeType":"Block","src":"10351:2290:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":70701,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70693,"src":"10378:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70698,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10361:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract super RegistryCommunityV0_0)"}},"id":70700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10367:10:104","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70134,"src":"10361:16:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":70702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10361:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70703,"nodeType":"ExpressionStatement","src":"10361:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70704,"name":"__ReentrancyGuard_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53176,"src":"10395:22:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":70705,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10395:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70706,"nodeType":"ExpressionStatement","src":"10395:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70707,"name":"__AccessControl_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52409,"src":"10429:20:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":70708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10429:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70709,"nodeType":"ExpressionStatement","src":"10429:22:104"},{"expression":{"arguments":[{"id":70711,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"10476:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":70712,"name":"DEFAULT_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52392,"src":"10492:18:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":70710,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"10462:13:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":70713,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10462:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70714,"nodeType":"ExpressionStatement","src":"10462:49:104"},{"expression":{"arguments":[{"arguments":[{"expression":{"id":70718,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10549:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70719,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10556:12:104","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70242,"src":"10549:19:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":70717,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10541:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70716,"name":"address","nodeType":"ElementaryTypeName","src":"10541:7:104","typeDescriptions":{}}},"id":70720,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10541:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70715,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10522:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10522:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70722,"nodeType":"ExpressionStatement","src":"10522:48:104"},{"expression":{"arguments":[{"expression":{"id":70724,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10599:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70725,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10606:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"10599:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70723,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10580:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10580:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70727,"nodeType":"ExpressionStatement","src":"10580:39:104"},{"expression":{"arguments":[{"expression":{"id":70729,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10648:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10655:5:104","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70239,"src":"10648:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70728,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10629:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10629:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70732,"nodeType":"ExpressionStatement","src":"10629:32:104"},{"expression":{"arguments":[{"expression":{"id":70734,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10690:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70735,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10697:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"10690:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70733,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10671:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10671:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70737,"nodeType":"ExpressionStatement","src":"10671:43:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70738,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10729:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10736:13:104","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70246,"src":"10729:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":70740,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10753:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10729:25:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70748,"nodeType":"IfStatement","src":"10725:95:104","trueBody":{"id":70747,"nodeType":"Block","src":"10756:64:104","statements":[{"expression":{"arguments":[{"expression":{"id":70743,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10789:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70744,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10796:12:104","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70252,"src":"10789:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70742,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10770:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10770:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70746,"nodeType":"ExpressionStatement","src":"10770:39:104"}]}},{"expression":{"id":70754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70749,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"10829:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70751,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10842:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10849:5:104","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70239,"src":"10842:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70750,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74978,"src":"10836:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_FAllo_$74978_$","typeString":"type(contract FAllo)"}},"id":70753,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10836:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"src":"10829:26:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":70755,"nodeType":"ExpressionStatement","src":"10829:26:104"},{"expression":{"id":70759,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70756,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"10865:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70757,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10879:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10886:12:104","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70242,"src":"10879:19:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"src":"10865:33:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":70760,"nodeType":"ExpressionStatement","src":"10865:33:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70761,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10912:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70762,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10919:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70244,"src":"10912:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":70763,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10943:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10912:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70769,"nodeType":"IfStatement","src":"10908:89:104","trueBody":{"id":70768,"nodeType":"Block","src":"10946:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70765,"name":"ValueCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70408,"src":"10967:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10967:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70767,"nodeType":"RevertStatement","src":"10960:26:104"}]}},{"expression":{"id":70773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70770,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"11006:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70771,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11028:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70772,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11035:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70244,"src":"11028:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11006:49:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70774,"nodeType":"ExpressionStatement","src":"11006:49:104"},{"expression":{"id":70778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70775,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"11065:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70776,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11080:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70777,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11087:13:104","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70246,"src":"11080:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11065:35:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70779,"nodeType":"ExpressionStatement","src":"11065:35:104"},{"expression":{"id":70783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70780,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70471,"src":"11110:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70781,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11126:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70782,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11133:14:104","memberName":"_isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":70261,"src":"11126:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11110:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70784,"nodeType":"ExpressionStatement","src":"11110:37:104"},{"expression":{"id":70788,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70785,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"11157:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70786,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11173:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70787,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11180:14:104","memberName":"_communityName","nodeType":"MemberAccess","referencedDeclaration":70259,"src":"11173:21:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11157:37:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":70789,"nodeType":"ExpressionStatement","src":"11157:37:104"},{"expression":{"id":70793,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70790,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70508,"src":"11204:16:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70791,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11223:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70792,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11230:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":70263,"src":"11223:23:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11204:42:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":70794,"nodeType":"ExpressionStatement","src":"11204:42:104"},{"expression":{"id":70798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70795,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"11257:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70796,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11275:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11282:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"11275:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11257:41:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70799,"nodeType":"ExpressionStatement","src":"11257:41:104"},{"expression":{"id":70803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70800,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70474,"src":"11308:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70801,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11322:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70802,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11329:12:104","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70252,"src":"11322:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11308:33:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70804,"nodeType":"ExpressionStatement","src":"11308:33:104"},{"expression":{"id":70810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70805,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11351:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70807,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11371:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11378:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"11371:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70806,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75245,"src":"11365:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$75245_$","typeString":"type(contract ISafe)"}},"id":70809,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11365:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"src":"11351:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"id":70811,"nodeType":"ExpressionStatement","src":"11351:40:104"},{"expression":{"arguments":[{"id":70813,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"11413:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":70814,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11429:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70815,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11436:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"11429:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70812,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"11402:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":70816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11402:47:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70817,"nodeType":"ExpressionStatement","src":"11402:47:104"},{"expression":{"id":70824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70818,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70490,"src":"11460:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70820,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"11481:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":70821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11486:11:104","memberName":"getRegistry","nodeType":"MemberAccess","referencedDeclaration":74969,"src":"11481:16:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":70822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11481:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70819,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"11471:9:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$2802_$","typeString":"type(contract IRegistry)"}},"id":70823,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11471:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"src":"11460:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":70825,"nodeType":"ExpressionStatement","src":"11460:40:104"},{"assignments":[70830],"declarations":[{"constant":false,"id":70830,"mutability":"mutable","name":"pool_initialMembers","nameLocation":"11528:19:104","nodeType":"VariableDeclaration","scope":70958,"src":"11511:36:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70828,"name":"address","nodeType":"ElementaryTypeName","src":"11511:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70829,"nodeType":"ArrayTypeName","src":"11511:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":70831,"nodeType":"VariableDeclarationStatement","src":"11511:36:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"arguments":[{"id":70834,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11607:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":70833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11599:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70832,"name":"address","nodeType":"ElementaryTypeName","src":"11599:7:104","typeDescriptions":{}}},"id":70835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11599:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11620:4:104","memberName":"code","nodeType":"MemberAccess","src":"11599:25:104","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":70837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11625:6:104","memberName":"length","nodeType":"MemberAccess","src":"11599:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":70838,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11635:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11599:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":70897,"nodeType":"Block","src":"11756:266:104","statements":[{"assignments":[70860],"declarations":[{"constant":false,"id":70860,"mutability":"mutable","name":"owners","nameLocation":"11787:6:104","nodeType":"VariableDeclaration","scope":70897,"src":"11770:23:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70858,"name":"address","nodeType":"ElementaryTypeName","src":"11770:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70859,"nodeType":"ArrayTypeName","src":"11770:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":70864,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70861,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11796:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"id":70862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11808:9:104","memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":75160,"src":"11796:21:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":70863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11796:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11770:49:104"},{"expression":{"id":70874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70865,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11833:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70869,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11869:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11876:6:104","memberName":"length","nodeType":"MemberAccess","src":"11869:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"32","id":70871,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11885:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"11869:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70868,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11855:13:104","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":70866,"name":"address","nodeType":"ElementaryTypeName","src":"11859:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70867,"nodeType":"ArrayTypeName","src":"11859:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":70873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11855:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11833:54:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70875,"nodeType":"ExpressionStatement","src":"11833:54:104"},{"body":{"id":70895,"nodeType":"Block","src":"11945:67:104","statements":[{"expression":{"id":70893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70887,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11963:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70889,"indexExpression":{"id":70888,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11983:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11963:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":70890,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11988:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70892,"indexExpression":{"id":70891,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11995:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11988:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11963:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70894,"nodeType":"ExpressionStatement","src":"11963:34:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70880,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11921:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":70881,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11925:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11932:6:104","memberName":"length","nodeType":"MemberAccess","src":"11925:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11921:17:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70896,"initializationExpression":{"assignments":[70877],"declarations":[{"constant":false,"id":70877,"mutability":"mutable","name":"i","nameLocation":"11914:1:104","nodeType":"VariableDeclaration","scope":70896,"src":"11906:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70876,"name":"uint256","nodeType":"ElementaryTypeName","src":"11906:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70879,"initialValue":{"hexValue":"30","id":70878,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11918:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"11906:13:104"},"loopExpression":{"expression":{"id":70885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11940:3:104","subExpression":{"id":70884,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11940:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70886,"nodeType":"ExpressionStatement","src":"11940:3:104"},"nodeType":"ForStatement","src":"11901:111:104"}]},"id":70898,"nodeType":"IfStatement","src":"11595:427:104","trueBody":{"id":70855,"nodeType":"Block","src":"11638:112:104","statements":[{"expression":{"id":70846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70840,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11652:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"33","id":70844,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11688:1:104","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"}],"id":70843,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11674:13:104","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":70841,"name":"address","nodeType":"ElementaryTypeName","src":"11678:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70842,"nodeType":"ArrayTypeName","src":"11678:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":70845,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11674:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11652:38:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70847,"nodeType":"ExpressionStatement","src":"11652:38:104"},{"expression":{"id":70853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70848,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11704:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70850,"indexExpression":{"hexValue":"30","id":70849,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11724:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11704:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70851,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"11729:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11733:6:104","memberName":"sender","nodeType":"MemberAccess","src":"11729:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11704:35:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70854,"nodeType":"ExpressionStatement","src":"11704:35:104"}]}},{"expression":{"id":70909,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70899,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12032:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70904,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70900,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12052:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12072:6:104","memberName":"length","nodeType":"MemberAccess","src":"12052:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":70902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12081:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"12052:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12032:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":70907,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"12094:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":70906,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12086:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70905,"name":"address","nodeType":"ElementaryTypeName","src":"12086:7:104","typeDescriptions":{}}},"id":70908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12086:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12032:74:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70910,"nodeType":"ExpressionStatement","src":"12032:74:104"},{"expression":{"id":70921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70911,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12116:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70916,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70915,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70912,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12136:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12156:6:104","memberName":"length","nodeType":"MemberAccess","src":"12136:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"32","id":70914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12165:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12136:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12116:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":70919,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12178:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":70918,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12170:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70917,"name":"address","nodeType":"ElementaryTypeName","src":"12170:7:104","typeDescriptions":{}}},"id":70920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12170:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12116:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70922,"nodeType":"ExpressionStatement","src":"12116:67:104"},{"expression":{"id":70937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70923,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"12271:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70926,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12318:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70927,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12325:6:104","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"12318:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70928,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"12333:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":70929,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12348:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70930,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12355:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70255,"src":"12348:16:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[{"id":70933,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12374:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":70932,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12366:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70931,"name":"address","nodeType":"ElementaryTypeName","src":"12366:7:104","typeDescriptions":{}}},"id":70934,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12366:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70935,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12381:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":70924,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70490,"src":"12295:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":70925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12304:13:104","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"12295:22:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":70936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12295:106:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"12271:130:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":70938,"nodeType":"ExpressionStatement","src":"12271:130:104"},{"expression":{"id":70941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70939,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"12412:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70940,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12429:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12412:36:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":70942,"nodeType":"ExpressionStatement","src":"12412:36:104"},{"expression":{"id":70945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70943,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"12459:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70944,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70689,"src":"12478:17:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12459:36:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70946,"nodeType":"ExpressionStatement","src":"12459:36:104"},{"expression":{"id":70949,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70947,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"12505:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70948,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70691,"src":"12531:24:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12505:50:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70950,"nodeType":"ExpressionStatement","src":"12505:50:104"},{"eventCall":{"arguments":[{"id":70952,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"12591:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":70953,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"12602:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":70954,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12617:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70955,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12624:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70255,"src":"12617:16:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":70951,"name":"RegistryInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70329,"src":"12571:19:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (bytes32,string memory,struct Metadata memory)"}},"id":70956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12571:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70957,"nodeType":"EmitStatement","src":"12566:68:104"}]},"functionSelector":"34196355","implemented":true,"kind":"function","modifiers":[{"id":70696,"kind":"modifierInvocation","modifierName":{"id":70695,"name":"initializer","nameLocations":["10339:11:104"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10339:11:104"},"nodeType":"ModifierInvocation","src":"10339:11:104"}],"name":"initialize","nameLocation":"10153:10:104","parameters":{"id":70694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70687,"mutability":"mutable","name":"params","nameLocation":"10218:6:104","nodeType":"VariableDeclaration","scope":70959,"src":"10173:51:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":70686,"nodeType":"UserDefinedTypeName","pathNode":{"id":70685,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["10173:37:104"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"10173:37:104"},"referencedDeclaration":70264,"src":"10173:37:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":70689,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"10242:17:104","nodeType":"VariableDeclaration","scope":70959,"src":"10234:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70688,"name":"address","nodeType":"ElementaryTypeName","src":"10234:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70691,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10277:24:104","nodeType":"VariableDeclaration","scope":70959,"src":"10269:32:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70690,"name":"address","nodeType":"ElementaryTypeName","src":"10269:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70693,"mutability":"mutable","name":"_owner","nameLocation":"10319:6:104","nodeType":"VariableDeclaration","scope":70959,"src":"10311:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70692,"name":"address","nodeType":"ElementaryTypeName","src":"10311:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10163:168:104"},"returnParameters":{"id":70697,"nodeType":"ParameterList","parameters":[],"src":"10351:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":71009,"nodeType":"FunctionDefinition","src":"12647:531:104","nodes":[],"body":{"id":71008,"nodeType":"Block","src":"12843:335:104","nodes":[],"statements":[{"assignments":[70975],"declarations":[{"constant":false,"id":70975,"mutability":"mutable","name":"strategyProxy","nameLocation":"12861:13:104","nodeType":"VariableDeclaration","scope":71008,"src":"12853:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70974,"name":"address","nodeType":"ElementaryTypeName","src":"12853:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71000,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":70983,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"12940:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70982,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12932:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70981,"name":"address","nodeType":"ElementaryTypeName","src":"12932:7:104","typeDescriptions":{}}},"id":70984,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12932:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":70987,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"12998:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":70988,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13013:4:104","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"12998:19:104","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":70989,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13018:8:104","memberName":"selector","nodeType":"MemberAccess","src":"12998:28:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":70992,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"13036:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}],"id":70991,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13028:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70990,"name":"address","nodeType":"ElementaryTypeName","src":"13028:7:104","typeDescriptions":{}}},"id":70993,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13028:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70994,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"13043:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":70995,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"13068:5:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":70996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13068:7:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70985,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"12975:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"12979:18:104","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"12975:22:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":70997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12975:101:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"12898:16:104","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":70979,"nodeType":"UserDefinedTypeName","pathNode":{"id":70978,"name":"ERC1967Proxy","nameLocations":["12902:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"12902:12:104"},"referencedDeclaration":55021,"src":"12902:12:104","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":70998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12898:192:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":70977,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12877:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70976,"name":"address","nodeType":"ElementaryTypeName","src":"12877:7:104","typeDescriptions":{}}},"id":70999,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12877:223:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"12853:247:104"},{"expression":{"arguments":[{"id":71002,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70975,"src":"13129:13:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71003,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70961,"src":"13144:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71004,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70964,"src":"13152:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},{"id":71005,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70967,"src":"13161:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71001,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[71009,71081],"referencedDeclaration":71081,"src":"13118:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_0 memory,struct Metadata memory) returns (uint256,address)"}},"id":71006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13118:53:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"functionReturnParameters":70973,"id":71007,"nodeType":"Return","src":"13111:60:104"}]},"functionSelector":"524e59e8","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"12656:10:104","parameters":{"id":70968,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70961,"mutability":"mutable","name":"_token","nameLocation":"12675:6:104","nodeType":"VariableDeclaration","scope":71009,"src":"12667:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70960,"name":"address","nodeType":"ElementaryTypeName","src":"12667:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70964,"mutability":"mutable","name":"_params","nameLocation":"12721:7:104","nodeType":"VariableDeclaration","scope":71009,"src":"12683:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":70963,"nodeType":"UserDefinedTypeName","pathNode":{"id":70962,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["12683:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"12683:30:104"},"referencedDeclaration":65657,"src":"12683:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":70967,"mutability":"mutable","name":"_metadata","nameLocation":"12746:9:104","nodeType":"VariableDeclaration","scope":71009,"src":"12730:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70966,"nodeType":"UserDefinedTypeName","pathNode":{"id":70965,"name":"Metadata","nameLocations":["12730:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12730:8:104"},"referencedDeclaration":3098,"src":"12730:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12666:90:104"},"returnParameters":{"id":70973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70970,"mutability":"mutable","name":"poolId","nameLocation":"12813:6:104","nodeType":"VariableDeclaration","scope":71009,"src":"12805:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70969,"name":"uint256","nodeType":"ElementaryTypeName","src":"12805:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70972,"mutability":"mutable","name":"strategy","nameLocation":"12829:8:104","nodeType":"VariableDeclaration","scope":71009,"src":"12821:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70971,"name":"address","nodeType":"ElementaryTypeName","src":"12821:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12804:34:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71081,"nodeType":"FunctionDefinition","src":"13184:660:104","nodes":[],"body":{"id":71080,"nodeType":"Block","src":"13409:435:104","nodes":[],"statements":[{"assignments":[71027],"declarations":[{"constant":false,"id":71027,"mutability":"mutable","name":"token","nameLocation":"13427:5:104","nodeType":"VariableDeclaration","scope":71080,"src":"13419:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71026,"name":"address","nodeType":"ElementaryTypeName","src":"13419:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71029,"initialValue":{"id":71028,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70444,"src":"13435:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"13419:22:104"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71030,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13455:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":71033,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13473:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":71032,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13465:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71031,"name":"address","nodeType":"ElementaryTypeName","src":"13465:7:104","typeDescriptions":{}}},"id":71034,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13465:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13455:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71041,"nodeType":"IfStatement","src":"13451:65:104","trueBody":{"id":71040,"nodeType":"Block","src":"13477:39:104","statements":[{"expression":{"id":71038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71036,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71027,"src":"13491:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71037,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13499:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13491:14:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71039,"nodeType":"ExpressionStatement","src":"13491:14:104"}]}},{"expression":{"id":71044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71042,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13525:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71043,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71011,"src":"13536:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13525:20:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71045,"nodeType":"ExpressionStatement","src":"13525:20:104"},{"assignments":[71050],"declarations":[{"constant":false,"id":71050,"mutability":"mutable","name":"_pool_managers","nameLocation":"13573:14:104","nodeType":"VariableDeclaration","scope":71080,"src":"13556:31:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71048,"name":"address","nodeType":"ElementaryTypeName","src":"13556:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71049,"nodeType":"ArrayTypeName","src":"13556:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71052,"initialValue":{"id":71051,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"13590:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"13556:48:104"},{"expression":{"id":71067,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71053,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71022,"src":"13615:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71056,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"13671:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":71057,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13682:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71060,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71016,"src":"13703:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"expression":{"id":71058,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13692:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":71059,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13696:6:104","memberName":"encode","nodeType":"MemberAccess","src":"13692:10:104","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":71061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13692:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":71062,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71027,"src":"13713:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71063,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13720:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":71064,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71019,"src":"13723:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":71065,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71050,"src":"13734:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":71054,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"13624:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":71055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13629:28:104","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":74964,"src":"13624:33:104","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":71066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13624:134:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"13615:143:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71068,"nodeType":"ExpressionStatement","src":"13615:143:104"},{"eventCall":{"arguments":[{"id":71070,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71022,"src":"13786:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71071,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13794:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71074,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13812:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71073,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13804:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71072,"name":"address","nodeType":"ElementaryTypeName","src":"13804:7:104","typeDescriptions":{}}},"id":71075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13804:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71076,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13819:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71077,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71019,"src":"13827:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71069,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70380,"src":"13774:11:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":71078,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13774:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71079,"nodeType":"EmitStatement","src":"13769:68:104"}]},"functionSelector":"e16d0e32","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"13193:10:104","parameters":{"id":71020,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71011,"mutability":"mutable","name":"_strategy","nameLocation":"13221:9:104","nodeType":"VariableDeclaration","scope":71081,"src":"13213:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71010,"name":"address","nodeType":"ElementaryTypeName","src":"13213:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71013,"mutability":"mutable","name":"_token","nameLocation":"13248:6:104","nodeType":"VariableDeclaration","scope":71081,"src":"13240:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71012,"name":"address","nodeType":"ElementaryTypeName","src":"13240:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71016,"mutability":"mutable","name":"_params","nameLocation":"13302:7:104","nodeType":"VariableDeclaration","scope":71081,"src":"13264:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":71015,"nodeType":"UserDefinedTypeName","pathNode":{"id":71014,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["13264:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"13264:30:104"},"referencedDeclaration":65657,"src":"13264:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":71019,"mutability":"mutable","name":"_metadata","nameLocation":"13335:9:104","nodeType":"VariableDeclaration","scope":71081,"src":"13319:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":71018,"nodeType":"UserDefinedTypeName","pathNode":{"id":71017,"name":"Metadata","nameLocations":["13319:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"13319:8:104"},"referencedDeclaration":3098,"src":"13319:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"13203:147:104"},"returnParameters":{"id":71025,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71022,"mutability":"mutable","name":"poolId","nameLocation":"13383:6:104","nodeType":"VariableDeclaration","scope":71081,"src":"13375:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71021,"name":"uint256","nodeType":"ElementaryTypeName","src":"13375:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71024,"mutability":"mutable","name":"strategy","nameLocation":"13399:8:104","nodeType":"VariableDeclaration","scope":71081,"src":"13391:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71023,"name":"address","nodeType":"ElementaryTypeName","src":"13391:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13374:34:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71198,"nodeType":"FunctionDefinition","src":"13850:1170:104","nodes":[],"body":{"id":71197,"nodeType":"Block","src":"13948:1072:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71091,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"13984:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71090,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"13958:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71092,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13958:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71093,"nodeType":"ExpressionStatement","src":"13958:34:104"},{"expression":{"arguments":[{"id":71095,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14022:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71094,"name":"onlyStrategyEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70610,"src":"14002:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14002:30:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71097,"nodeType":"ExpressionStatement","src":"14002:30:104"},{"expression":{"arguments":[{"id":71099,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14061:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71098,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"14042:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71100,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14042:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71101,"nodeType":"ExpressionStatement","src":"14042:29:104"},{"condition":{"baseExpression":{"baseExpression":{"id":71102,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"14086:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71104,"indexExpression":{"id":71103,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14114:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14086:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71106,"indexExpression":{"id":71105,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14123:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14086:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71111,"nodeType":"IfStatement","src":"14082:107:104","trueBody":{"id":71110,"nodeType":"Block","src":"14135:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71107,"name":"UserAlreadyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70396,"src":"14156:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14156:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71109,"nodeType":"RevertStatement","src":"14149:29:104"}]}},{"assignments":[71114],"declarations":[{"constant":false,"id":71114,"mutability":"mutable","name":"member","nameLocation":"14213:6:104","nodeType":"VariableDeclaration","scope":71197,"src":"14199:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":71113,"nodeType":"UserDefinedTypeName","pathNode":{"id":71112,"name":"Member","nameLocations":["14199:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"14199:6:104"},"referencedDeclaration":70271,"src":"14199:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71118,"initialValue":{"baseExpression":{"id":71115,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"14222:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71117,"indexExpression":{"id":71116,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14242:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14222:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"14199:51:104"},{"assignments":[71120],"declarations":[{"constant":false,"id":71120,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"14269:17:104","nodeType":"VariableDeclaration","scope":71197,"src":"14261:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71119,"name":"uint256","nodeType":"ElementaryTypeName","src":"14261:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71123,"initialValue":{"expression":{"id":71121,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71114,"src":"14289:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":71122,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14296:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"14289:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14261:47:104"},{"assignments":[71125],"declarations":[{"constant":false,"id":71125,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"14326:16:104","nodeType":"VariableDeclaration","scope":71197,"src":"14318:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71124,"name":"uint256","nodeType":"ElementaryTypeName","src":"14318:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71127,"initialValue":{"id":71126,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"14345:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14318:46:104"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71129,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14394:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71128,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14379:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71130,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14379:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14405:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14379:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71132,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14379:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":71133,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14425:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71134,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14437:9:104","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"14425:21:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14379:67:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71148,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14568:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71147,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14553:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14553:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14579:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14553:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14553:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":71152,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14599:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14611:5:104","memberName":"Fixed","nodeType":"MemberAccess","referencedDeclaration":65541,"src":"14599:17:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14553:63:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71166,"nodeType":"IfStatement","src":"14549:180:104","trueBody":{"id":71165,"nodeType":"Block","src":"14618:111:104","statements":[{"expression":{"id":71163,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71155,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14632:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71160,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14691:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71161,"name":"totalStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71120,"src":"14700:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":71157,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14666:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71156,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14651:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14651:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14677:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14651:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14651:67:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14632:86:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71164,"nodeType":"ExpressionStatement","src":"14632:86:104"}]}},"id":71167,"nodeType":"IfStatement","src":"14375:354:104","trueBody":{"id":71146,"nodeType":"Block","src":"14448:95:104","statements":[{"expression":{"id":71144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71136,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14462:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71141,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14521:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71142,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14530:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"arguments":[{"id":71138,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14496:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71137,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14481:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14481:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14507:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14481:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14481:51:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14462:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71145,"nodeType":"ExpressionStatement","src":"14462:70:104"}]}},{"expression":{"id":71174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71168,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"14739:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71171,"indexExpression":{"id":71169,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14761:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14739:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71172,"indexExpression":{"id":71170,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14770:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14739:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71173,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14783:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14739:60:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71175,"nodeType":"ExpressionStatement","src":"14739:60:104"},{"expression":{"id":71182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71176,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"14828:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71179,"indexExpression":{"id":71177,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14856:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14828:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71180,"indexExpression":{"id":71178,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14865:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14828:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71181,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14878:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"14828:54:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71183,"nodeType":"ExpressionStatement","src":"14828:54:104"},{"expression":{"arguments":[{"id":71188,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14926:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"baseExpression":{"id":71184,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"14893:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71186,"indexExpression":{"id":71185,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14912:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14893:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":71187,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14921:4:104","memberName":"push","nodeType":"MemberAccess","src":"14893:32:104","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer,address)"}},"id":71189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14893:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71190,"nodeType":"ExpressionStatement","src":"14893:43:104"},{"eventCall":{"arguments":[{"id":71192,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14976:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71193,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14985:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71194,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14996:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71191,"name":"MemberActivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70345,"src":"14952:23:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":71195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14952:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71196,"nodeType":"EmitStatement","src":"14947:66:104"}]},"functionSelector":"0d4a8b49","implemented":true,"kind":"function","modifiers":[{"id":71088,"kind":"modifierInvocation","modifierName":{"id":71087,"name":"nonReentrant","nameLocations":["13935:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"13935:12:104"},"nodeType":"ModifierInvocation","src":"13935:12:104"}],"name":"activateMemberInStrategy","nameLocation":"13859:24:104","parameters":{"id":71086,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71083,"mutability":"mutable","name":"_member","nameLocation":"13892:7:104","nodeType":"VariableDeclaration","scope":71198,"src":"13884:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71082,"name":"address","nodeType":"ElementaryTypeName","src":"13884:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71085,"mutability":"mutable","name":"_strategy","nameLocation":"13909:9:104","nodeType":"VariableDeclaration","scope":71198,"src":"13901:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71084,"name":"address","nodeType":"ElementaryTypeName","src":"13901:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13883:36:104"},"returnParameters":{"id":71089,"nodeType":"ParameterList","parameters":[],"src":"13948:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71257,"nodeType":"FunctionDefinition","src":"15026:699:104","nodes":[],"body":{"id":71256,"nodeType":"Block","src":"15113:612:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71206,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15149:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71205,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"15123:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15123:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71208,"nodeType":"ExpressionStatement","src":"15123:34:104"},{"expression":{"arguments":[{"id":71210,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15186:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71209,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"15167:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15167:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71212,"nodeType":"ExpressionStatement","src":"15167:29:104"},{"expression":{"arguments":[{"expression":{"id":71214,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15226:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71215,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15230:6:104","memberName":"sender","nodeType":"MemberAccess","src":"15226:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71216,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15238:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71213,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70626,"src":"15206:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":71217,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15206:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71218,"nodeType":"ExpressionStatement","src":"15206:42:104"},{"condition":{"id":71224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"15263:48:104","subExpression":{"baseExpression":{"baseExpression":{"id":71219,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"15264:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71221,"indexExpression":{"id":71220,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15292:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15264:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71223,"indexExpression":{"id":71222,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15301:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15264:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71229,"nodeType":"IfStatement","src":"15259:110:104","trueBody":{"id":71228,"nodeType":"Block","src":"15313:56:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71225,"name":"UserAlreadyDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70398,"src":"15334:22:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71226,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15334:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71227,"nodeType":"RevertStatement","src":"15327:31:104"}]}},{"expression":{"id":71236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71230,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"15379:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71233,"indexExpression":{"id":71231,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15407:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15379:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71234,"indexExpression":{"id":71232,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15416:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15379:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":71235,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15429:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15379:55:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71237,"nodeType":"ExpressionStatement","src":"15379:55:104"},{"expression":{"id":71244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71238,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"15444:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71241,"indexExpression":{"id":71239,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15466:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15444:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71242,"indexExpression":{"id":71240,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15475:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15444:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":71243,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15488:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15444:45:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71245,"nodeType":"ExpressionStatement","src":"15444:45:104"},{"expression":{"arguments":[{"id":71247,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15524:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71248,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15533:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71246,"name":"removeStrategyFromMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71310,"src":"15499:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15499:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71250,"nodeType":"ExpressionStatement","src":"15499:44:104"},{"eventCall":{"arguments":[{"id":71252,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15699:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71253,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15708:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71251,"name":"MemberDeactivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70351,"src":"15673:25:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15673:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71255,"nodeType":"EmitStatement","src":"15668:50:104"}]},"functionSelector":"22bcf999","implemented":true,"kind":"function","modifiers":[],"name":"deactivateMemberInStrategy","nameLocation":"15035:26:104","parameters":{"id":71203,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71200,"mutability":"mutable","name":"_member","nameLocation":"15070:7:104","nodeType":"VariableDeclaration","scope":71257,"src":"15062:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71199,"name":"address","nodeType":"ElementaryTypeName","src":"15062:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71202,"mutability":"mutable","name":"_strategy","nameLocation":"15087:9:104","nodeType":"VariableDeclaration","scope":71257,"src":"15079:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71201,"name":"address","nodeType":"ElementaryTypeName","src":"15079:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15061:36:104"},"returnParameters":{"id":71204,"nodeType":"ParameterList","parameters":[],"src":"15113:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71310,"nodeType":"FunctionDefinition","src":"15731:433:104","nodes":[],"body":{"id":71309,"nodeType":"Block","src":"15818:346:104","nodes":[],"statements":[{"assignments":[71268],"declarations":[{"constant":false,"id":71268,"mutability":"mutable","name":"memberStrategies","nameLocation":"15846:16:104","nodeType":"VariableDeclaration","scope":71309,"src":"15828:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71266,"name":"address","nodeType":"ElementaryTypeName","src":"15828:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71267,"nodeType":"ArrayTypeName","src":"15828:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71272,"initialValue":{"baseExpression":{"id":71269,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"15865:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71271,"indexExpression":{"id":71270,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71259,"src":"15884:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15865:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15828:64:104"},{"body":{"id":71307,"nodeType":"Block","src":"15956:202:104","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":71284,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"15974:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71286,"indexExpression":{"id":71285,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15991:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15974:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":71287,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71261,"src":"15997:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15974:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71306,"nodeType":"IfStatement","src":"15970:178:104","trueBody":{"id":71305,"nodeType":"Block","src":"16008:140:104","statements":[{"expression":{"id":71298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71289,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16026:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71291,"indexExpression":{"id":71290,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"16043:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16026:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71292,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16048:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71297,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71293,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16065:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16082:6:104","memberName":"length","nodeType":"MemberAccess","src":"16065:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71295,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16091:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"16065:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16048:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16026:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71299,"nodeType":"ExpressionStatement","src":"16026:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71300,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16111:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16128:3:104","memberName":"pop","nodeType":"MemberAccess","src":"16111:20:104","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":71303,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16111:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71304,"nodeType":"ExpressionStatement","src":"16111:22:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71277,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15922:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71278,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"15926:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15943:6:104","memberName":"length","nodeType":"MemberAccess","src":"15926:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15922:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71308,"initializationExpression":{"assignments":[71274],"declarations":[{"constant":false,"id":71274,"mutability":"mutable","name":"i","nameLocation":"15915:1:104","nodeType":"VariableDeclaration","scope":71308,"src":"15907:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71273,"name":"uint256","nodeType":"ElementaryTypeName","src":"15907:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71276,"initialValue":{"hexValue":"30","id":71275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15919:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"15907:13:104"},"loopExpression":{"expression":{"id":71282,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"15951:3:104","subExpression":{"id":71281,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15951:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71283,"nodeType":"ExpressionStatement","src":"15951:3:104"},"nodeType":"ForStatement","src":"15902:256:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyFromMember","nameLocation":"15740:24:104","parameters":{"id":71262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71259,"mutability":"mutable","name":"_member","nameLocation":"15773:7:104","nodeType":"VariableDeclaration","scope":71310,"src":"15765:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71258,"name":"address","nodeType":"ElementaryTypeName","src":"15765:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71261,"mutability":"mutable","name":"_strategy","nameLocation":"15790:9:104","nodeType":"VariableDeclaration","scope":71310,"src":"15782:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71260,"name":"address","nodeType":"ElementaryTypeName","src":"15782:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15764:36:104"},"returnParameters":{"id":71263,"nodeType":"ParameterList","parameters":[],"src":"15818:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71401,"nodeType":"FunctionDefinition","src":"16170:1009:104","nodes":[],"body":{"id":71400,"nodeType":"Block","src":"16244:935:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71317,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70580,"src":"16254:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71318,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16254:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71319,"nodeType":"ExpressionStatement","src":"16254:26:104"},{"assignments":[71321],"declarations":[{"constant":false,"id":71321,"mutability":"mutable","name":"member","nameLocation":"16298:6:104","nodeType":"VariableDeclaration","scope":71400,"src":"16290:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71320,"name":"address","nodeType":"ElementaryTypeName","src":"16290:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71324,"initialValue":{"expression":{"id":71322,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16307:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16311:6:104","memberName":"sender","nodeType":"MemberAccess","src":"16307:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16290:27:104"},{"assignments":[71329],"declarations":[{"constant":false,"id":71329,"mutability":"mutable","name":"memberStrategies","nameLocation":"16344:16:104","nodeType":"VariableDeclaration","scope":71400,"src":"16327:33:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71327,"name":"address","nodeType":"ElementaryTypeName","src":"16327:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71328,"nodeType":"ArrayTypeName","src":"16327:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71333,"initialValue":{"baseExpression":{"id":71330,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"16363:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71332,"indexExpression":{"id":71331,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16382:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16363:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"16327:62:104"},{"assignments":[71335],"declarations":[{"constant":false,"id":71335,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"16408:16:104","nodeType":"VariableDeclaration","scope":71400,"src":"16400:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71334,"name":"uint256","nodeType":"ElementaryTypeName","src":"16400:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71336,"nodeType":"VariableDeclarationStatement","src":"16400:24:104"},{"body":{"id":71375,"nodeType":"Block","src":"16489:482:104","statements":[{"expression":{"id":71358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71348,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16608:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71355,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16677:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71356,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"16685:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"baseExpression":{"id":71350,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16642:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71352,"indexExpression":{"id":71351,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16659:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16642:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71349,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"16627:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16627:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71354,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16663:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"16627:49:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16627:72:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16608:91:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71359,"nodeType":"ExpressionStatement","src":"16608:91:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71362,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71360,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16717:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":71361,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16737:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"16717:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71374,"nodeType":"IfStatement","src":"16713:232:104","trueBody":{"id":71373,"nodeType":"Block","src":"16740:205:104","statements":[{"expression":{"id":71371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71363,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"16758:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71368,"indexExpression":{"id":71364,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16780:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16758:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71369,"indexExpression":{"baseExpression":{"id":71365,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16788:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71367,"indexExpression":{"id":71366,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16805:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16788:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16758:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71370,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16812:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16758:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71372,"nodeType":"ExpressionStatement","src":"16758:70:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71344,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71341,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16455:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71342,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16459:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16476:6:104","memberName":"length","nodeType":"MemberAccess","src":"16459:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16455:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71376,"initializationExpression":{"assignments":[71338],"declarations":[{"constant":false,"id":71338,"mutability":"mutable","name":"i","nameLocation":"16448:1:104","nodeType":"VariableDeclaration","scope":71376,"src":"16440:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71337,"name":"uint256","nodeType":"ElementaryTypeName","src":"16440:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71340,"initialValue":{"hexValue":"30","id":71339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16452:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"16440:13:104"},"loopExpression":{"expression":{"id":71346,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"16484:3:104","subExpression":{"id":71345,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16484:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71347,"nodeType":"ExpressionStatement","src":"16484:3:104"},"nodeType":"ForStatement","src":"16435:536:104"},{"expression":{"arguments":[{"id":71380,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17010:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71383,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17026:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71382,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17018:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71381,"name":"address","nodeType":"ElementaryTypeName","src":"17018:7:104","typeDescriptions":{}}},"id":71384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17018:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71385,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17033:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71377,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"16981:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16993:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"16981:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":71386,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16981:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71387,"nodeType":"ExpressionStatement","src":"16981:66:104"},{"expression":{"id":71393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71388,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"17057:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71390,"indexExpression":{"id":71389,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17077:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17057:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71391,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17085:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"17057:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71392,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17101:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17057:57:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71394,"nodeType":"ExpressionStatement","src":"17057:57:104"},{"eventCall":{"arguments":[{"id":71396,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17150:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71397,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17158:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71395,"name":"MemberPowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70361,"src":"17129:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71398,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17129:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71399,"nodeType":"EmitStatement","src":"17124:48:104"}]},"functionSelector":"559de05d","implemented":true,"kind":"function","modifiers":[{"id":71315,"kind":"modifierInvocation","modifierName":{"id":71314,"name":"nonReentrant","nameLocations":["16231:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"16231:12:104"},"nodeType":"ModifierInvocation","src":"16231:12:104"}],"name":"increasePower","nameLocation":"16179:13:104","parameters":{"id":71313,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71312,"mutability":"mutable","name":"_amountStaked","nameLocation":"16201:13:104","nodeType":"VariableDeclaration","scope":71401,"src":"16193:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71311,"name":"uint256","nodeType":"ElementaryTypeName","src":"16193:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16192:23:104"},"returnParameters":{"id":71316,"nodeType":"ParameterList","parameters":[],"src":"16244:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71551,"nodeType":"FunctionDefinition","src":"17322:1562:104","nodes":[],"body":{"id":71550,"nodeType":"Block","src":"17398:1486:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71408,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70580,"src":"17408:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71409,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17408:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71410,"nodeType":"ExpressionStatement","src":"17408:26:104"},{"assignments":[71412],"declarations":[{"constant":false,"id":71412,"mutability":"mutable","name":"member","nameLocation":"17452:6:104","nodeType":"VariableDeclaration","scope":71550,"src":"17444:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71411,"name":"address","nodeType":"ElementaryTypeName","src":"17444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71415,"initialValue":{"expression":{"id":71413,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17461:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17465:6:104","memberName":"sender","nodeType":"MemberAccess","src":"17461:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17444:27:104"},{"assignments":[71420],"declarations":[{"constant":false,"id":71420,"mutability":"mutable","name":"memberStrategies","nameLocation":"17499:16:104","nodeType":"VariableDeclaration","scope":71550,"src":"17481:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71418,"name":"address","nodeType":"ElementaryTypeName","src":"17481:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71419,"nodeType":"ArrayTypeName","src":"17481:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71424,"initialValue":{"baseExpression":{"id":71421,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"17518:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71423,"indexExpression":{"id":71422,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17537:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17518:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17481:63:104"},{"assignments":[71426],"declarations":[{"constant":false,"id":71426,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"17563:16:104","nodeType":"VariableDeclaration","scope":71550,"src":"17555:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71425,"name":"uint256","nodeType":"ElementaryTypeName","src":"17555:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71427,"nodeType":"VariableDeclarationStatement","src":"17555:24:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71433,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":71428,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"17594:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71430,"indexExpression":{"id":71429,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17614:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17594:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71431,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17622:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"17594:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":71432,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"17637:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17594:58:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":71434,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"17655:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17594:80:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71440,"nodeType":"IfStatement","src":"17590:140:104","trueBody":{"id":71439,"nodeType":"Block","src":"17676:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71436,"name":"DecreaseUnderMinimum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70416,"src":"17697:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17697:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71438,"nodeType":"RevertStatement","src":"17690:29:104"}]}},{"expression":{"arguments":[{"id":71444,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17764:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71445,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"17772:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71441,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"17739:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71443,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17751:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"17739:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17739:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71447,"nodeType":"ExpressionStatement","src":"17739:49:104"},{"body":{"id":71536,"nodeType":"Block","src":"17852:897:104","statements":[{"assignments":[71460],"declarations":[{"constant":false,"id":71460,"mutability":"mutable","name":"strategy","nameLocation":"17874:8:104","nodeType":"VariableDeclaration","scope":71536,"src":"17866:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71459,"name":"address","nodeType":"ElementaryTypeName","src":"17866:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71464,"initialValue":{"baseExpression":{"id":71461,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"17885:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71463,"indexExpression":{"id":71462,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17902:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17885:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17866:38:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":71468,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"17954:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":71467,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"17949:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":71469,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17949:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":71470,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17970:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"17949:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":71465,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"17922:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17931:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"17922:26:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":71471,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17922:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71534,"nodeType":"Block","src":"18472:250:104","statements":[{"expression":{"id":71523,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71514,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18557:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71516,"indexExpression":{"id":71515,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18574:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18557:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71517,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18579:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71522,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71518,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18596:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18613:6:104","memberName":"length","nodeType":"MemberAccess","src":"18596:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71520,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18622:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"18596:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18579:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18557:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71524,"nodeType":"ExpressionStatement","src":"18557:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71525,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18642:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18659:3:104","memberName":"pop","nodeType":"MemberAccess","src":"18642:20:104","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":71528,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18642:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71529,"nodeType":"ExpressionStatement","src":"18642:22:104"},{"expression":{"arguments":[{"id":71531,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"18698:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71530,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"18682:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71532,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18682:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71533,"nodeType":"ExpressionStatement","src":"18682:25:104"}]},"id":71535,"nodeType":"IfStatement","src":"17918:804:104","trueBody":{"id":71513,"nodeType":"Block","src":"17984:482:104","statements":[{"expression":{"id":71480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71472,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18002:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71477,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18060:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71478,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18068:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":71474,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"18036:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71473,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"18021:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18021:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18046:13:104","memberName":"decreasePower","nodeType":"MemberAccess","referencedDeclaration":65529,"src":"18021:38:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71479,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18021:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18002:82:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71481,"nodeType":"ExpressionStatement","src":"18002:82:104"},{"assignments":[71483],"declarations":[{"constant":false,"id":71483,"mutability":"mutable","name":"currentPower","nameLocation":"18110:12:104","nodeType":"VariableDeclaration","scope":71513,"src":"18102:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71482,"name":"uint256","nodeType":"ElementaryTypeName","src":"18102:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71491,"initialValue":{"baseExpression":{"baseExpression":{"id":71484,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"18125:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71486,"indexExpression":{"id":71485,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18147:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18125:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71490,"indexExpression":{"baseExpression":{"id":71487,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18155:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71489,"indexExpression":{"id":71488,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18172:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18155:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18125:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"18102:73:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71492,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18197:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":71493,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71483,"src":"18216:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18197:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71511,"nodeType":"Block","src":"18341:111:104","statements":[{"expression":{"id":71509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71501,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"18363:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71506,"indexExpression":{"id":71502,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18385:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18363:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71507,"indexExpression":{"baseExpression":{"id":71503,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18393:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71505,"indexExpression":{"id":71504,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18410:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18393:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18363:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":71508,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18417:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18363:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71510,"nodeType":"ExpressionStatement","src":"18363:70:104"}]},"id":71512,"nodeType":"IfStatement","src":"18193:259:104","trueBody":{"id":71500,"nodeType":"Block","src":"18230:105:104","statements":[{"errorCall":{"arguments":[{"id":71496,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18285:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71497,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71483,"src":"18303:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71495,"name":"CantDecreaseMoreThanPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70422,"src":"18259:25:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":71498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18259:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71499,"nodeType":"RevertStatement","src":"18252:64:104"}]}}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71452,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17818:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71453,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"17822:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71454,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17839:6:104","memberName":"length","nodeType":"MemberAccess","src":"17822:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17818:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71537,"initializationExpression":{"assignments":[71449],"declarations":[{"constant":false,"id":71449,"mutability":"mutable","name":"i","nameLocation":"17811:1:104","nodeType":"VariableDeclaration","scope":71537,"src":"17803:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71448,"name":"uint256","nodeType":"ElementaryTypeName","src":"17803:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71451,"initialValue":{"hexValue":"30","id":71450,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17815:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17803:13:104"},"loopExpression":{"expression":{"id":71457,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"17847:3:104","subExpression":{"id":71456,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17847:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71458,"nodeType":"ExpressionStatement","src":"17847:3:104"},"nodeType":"ForStatement","src":"17798:951:104"},{"expression":{"id":71543,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71538,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"18758:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71540,"indexExpression":{"id":71539,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18778:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18758:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18786:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"18758:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":71542,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18802:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18758:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71544,"nodeType":"ExpressionStatement","src":"18758:59:104"},{"eventCall":{"arguments":[{"id":71546,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18853:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71547,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18861:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71545,"name":"MemberPowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70367,"src":"18832:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18832:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71549,"nodeType":"EmitStatement","src":"18827:50:104"}]},"functionSelector":"5ecf71c5","implemented":true,"kind":"function","modifiers":[{"id":71406,"kind":"modifierInvocation","modifierName":{"id":71405,"name":"nonReentrant","nameLocations":["17385:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"17385:12:104"},"nodeType":"ModifierInvocation","src":"17385:12:104"}],"name":"decreasePower","nameLocation":"17331:13:104","parameters":{"id":71404,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71403,"mutability":"mutable","name":"_amountUnstaked","nameLocation":"17353:15:104","nodeType":"VariableDeclaration","scope":71551,"src":"17345:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71402,"name":"uint256","nodeType":"ElementaryTypeName","src":"17345:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17344:25:104"},"returnParameters":{"id":71407,"nodeType":"ParameterList","parameters":[],"src":"17398:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71567,"nodeType":"FunctionDefinition","src":"18890:173:104","nodes":[],"body":{"id":71566,"nodeType":"Block","src":"18998:65:104","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":71560,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"19015:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71562,"indexExpression":{"id":71561,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71553,"src":"19037:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19015:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71564,"indexExpression":{"id":71563,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71555,"src":"19046:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19015:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71559,"id":71565,"nodeType":"Return","src":"19008:48:104"}]},"functionSelector":"7817ee4f","implemented":true,"kind":"function","modifiers":[],"name":"getMemberPowerInStrategy","nameLocation":"18899:24:104","parameters":{"id":71556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71553,"mutability":"mutable","name":"_member","nameLocation":"18932:7:104","nodeType":"VariableDeclaration","scope":71567,"src":"18924:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71552,"name":"address","nodeType":"ElementaryTypeName","src":"18924:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71555,"mutability":"mutable","name":"_strategy","nameLocation":"18949:9:104","nodeType":"VariableDeclaration","scope":71567,"src":"18941:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71554,"name":"address","nodeType":"ElementaryTypeName","src":"18941:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18923:36:104"},"returnParameters":{"id":71559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71567,"src":"18989:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71557,"name":"uint256","nodeType":"ElementaryTypeName","src":"18989:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18988:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71580,"nodeType":"FunctionDefinition","src":"19069:151:104","nodes":[],"body":{"id":71579,"nodeType":"Block","src":"19155:65:104","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":71574,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"19172:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71576,"indexExpression":{"id":71575,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71569,"src":"19192:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19172:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71577,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19201:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"19172:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71573,"id":71578,"nodeType":"Return","src":"19165:48:104"}]},"functionSelector":"2c611c4a","implemented":true,"kind":"function","modifiers":[],"name":"getMemberStakedAmount","nameLocation":"19078:21:104","parameters":{"id":71570,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71569,"mutability":"mutable","name":"_member","nameLocation":"19108:7:104","nodeType":"VariableDeclaration","scope":71580,"src":"19100:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71568,"name":"address","nodeType":"ElementaryTypeName","src":"19100:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19099:17:104"},"returnParameters":{"id":71573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71572,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71580,"src":"19146:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71571,"name":"uint256","nodeType":"ElementaryTypeName","src":"19146:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19145:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71617,"nodeType":"FunctionDefinition","src":"19226:321:104","nodes":[],"body":{"id":71616,"nodeType":"Block","src":"19286:261:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71585,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"19296:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19296:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71587,"nodeType":"ExpressionStatement","src":"19296:17:104"},{"assignments":[71589],"declarations":[{"constant":false,"id":71589,"mutability":"mutable","name":"strategy","nameLocation":"19331:8:104","nodeType":"VariableDeclaration","scope":71616,"src":"19323:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71588,"name":"address","nodeType":"ElementaryTypeName","src":"19323:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71598,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":71594,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71582,"src":"19363:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71592,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"19350:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":71593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19355:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":74977,"src":"19350:12:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":71595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19350:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":71596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19371:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"19350:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":71591,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19342:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71590,"name":"address","nodeType":"ElementaryTypeName","src":"19342:7:104","typeDescriptions":{}}},"id":71597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19342:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19323:57:104"},{"expression":{"arguments":[{"id":71600,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19409:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71599,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"19390:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19390:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71602,"nodeType":"ExpressionStatement","src":"19390:28:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":71606,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"19464:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":71605,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"19459:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":71607,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19459:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":71608,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19480:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"19459:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":71603,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19432:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71604,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19441:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"19432:26:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":71609,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19432:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71615,"nodeType":"IfStatement","src":"19428:113:104","trueBody":{"id":71614,"nodeType":"Block","src":"19494:47:104","statements":[{"expression":{"arguments":[{"id":71611,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19521:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71610,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"19508:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71612,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19508:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71613,"nodeType":"ExpressionStatement","src":"19508:22:104"}]}}]},"functionSelector":"82d6a1e7","implemented":true,"kind":"function","modifiers":[],"name":"addStrategyByPoolId","nameLocation":"19235:19:104","parameters":{"id":71583,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71582,"mutability":"mutable","name":"poolId","nameLocation":"19263:6:104","nodeType":"VariableDeclaration","scope":71617,"src":"19255:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71581,"name":"uint256","nodeType":"ElementaryTypeName","src":"19255:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19254:16:104"},"returnParameters":{"id":71584,"nodeType":"ParameterList","parameters":[],"src":"19286:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71630,"nodeType":"FunctionDefinition","src":"19553:128:104","nodes":[],"body":{"id":71629,"nodeType":"Block","src":"19611:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71622,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"19621:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19621:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71624,"nodeType":"ExpressionStatement","src":"19621:17:104"},{"expression":{"arguments":[{"id":71626,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71619,"src":"19661:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71625,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"19648:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19648:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71628,"nodeType":"ExpressionStatement","src":"19648:26:104"}]},"functionSelector":"223e5479","implemented":true,"kind":"function","modifiers":[],"name":"addStrategy","nameLocation":"19562:11:104","parameters":{"id":71620,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71619,"mutability":"mutable","name":"_newStrategy","nameLocation":"19582:12:104","nodeType":"VariableDeclaration","scope":71630,"src":"19574:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71618,"name":"address","nodeType":"ElementaryTypeName","src":"19574:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19573:22:104"},"returnParameters":{"id":71621,"nodeType":"ParameterList","parameters":[],"src":"19611:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71654,"nodeType":"FunctionDefinition","src":"19687:252:104","nodes":[],"body":{"id":71653,"nodeType":"Block","src":"19748:191:104","nodes":[],"statements":[{"condition":{"baseExpression":{"id":71635,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"19762:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71637,"indexExpression":{"id":71636,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19780:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19762:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71642,"nodeType":"IfStatement","src":"19758:85:104","trueBody":{"id":71641,"nodeType":"Block","src":"19795:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71638,"name":"StrategyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70400,"src":"19816:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19816:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71640,"nodeType":"RevertStatement","src":"19809:23:104"}]}},{"expression":{"id":71647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71643,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"19852:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71645,"indexExpression":{"id":71644,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19870:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"19852:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71646,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"19886:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"19852:38:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71648,"nodeType":"ExpressionStatement","src":"19852:38:104"},{"eventCall":{"arguments":[{"id":71650,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19919:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71649,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70333,"src":"19905:13:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71651,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19905:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71652,"nodeType":"EmitStatement","src":"19900:32:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addStrategy","nameLocation":"19696:12:104","parameters":{"id":71633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71632,"mutability":"mutable","name":"_newStrategy","nameLocation":"19717:12:104","nodeType":"VariableDeclaration","scope":71654,"src":"19709:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71631,"name":"address","nodeType":"ElementaryTypeName","src":"19709:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19708:22:104"},"returnParameters":{"id":71634,"nodeType":"ParameterList","parameters":[],"src":"19748:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71682,"nodeType":"FunctionDefinition","src":"19945:237:104","nodes":[],"body":{"id":71681,"nodeType":"Block","src":"20008:174:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71659,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20018:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20018:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71661,"nodeType":"ExpressionStatement","src":"20018:17:104"},{"assignments":[71663],"declarations":[{"constant":false,"id":71663,"mutability":"mutable","name":"strategy","nameLocation":"20053:8:104","nodeType":"VariableDeclaration","scope":71681,"src":"20045:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71662,"name":"address","nodeType":"ElementaryTypeName","src":"20045:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71672,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":71668,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71656,"src":"20085:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71666,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"20072:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":71667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":74977,"src":"20072:12:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":71669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20072:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":71670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"20093:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"20072:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":71665,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20064:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71664,"name":"address","nodeType":"ElementaryTypeName","src":"20064:7:104","typeDescriptions":{}}},"id":71671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20064:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"20045:57:104"},{"expression":{"arguments":[{"id":71674,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71663,"src":"20131:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71673,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20112:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20112:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71676,"nodeType":"ExpressionStatement","src":"20112:28:104"},{"expression":{"arguments":[{"id":71678,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71663,"src":"20166:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71677,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"20150:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20150:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71680,"nodeType":"ExpressionStatement","src":"20150:25:104"}]},"functionSelector":"73265c37","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyByPoolId","nameLocation":"19954:22:104","parameters":{"id":71657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71656,"mutability":"mutable","name":"poolId","nameLocation":"19985:6:104","nodeType":"VariableDeclaration","scope":71682,"src":"19977:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71655,"name":"uint256","nodeType":"ElementaryTypeName","src":"19977:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19976:16:104"},"returnParameters":{"id":71658,"nodeType":"ParameterList","parameters":[],"src":"20008:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71702,"nodeType":"FunctionDefinition","src":"20188:194:104","nodes":[],"body":{"id":71701,"nodeType":"Block","src":"20249:133:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71688,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20278:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71687,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20259:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20259:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71690,"nodeType":"ExpressionStatement","src":"20259:29:104"},{"expression":{"id":71695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71691,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"20298:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71693,"indexExpression":{"id":71692,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20316:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"20298:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":71694,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"20329:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"20298:36:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71696,"nodeType":"ExpressionStatement","src":"20298:36:104"},{"eventCall":{"arguments":[{"id":71698,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20365:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71697,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70337,"src":"20349:15:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71699,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20349:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71700,"nodeType":"EmitStatement","src":"20344:31:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeStrategy","nameLocation":"20197:15:104","parameters":{"id":71685,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71684,"mutability":"mutable","name":"_strategy","nameLocation":"20221:9:104","nodeType":"VariableDeclaration","scope":71702,"src":"20213:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71683,"name":"address","nodeType":"ElementaryTypeName","src":"20213:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20212:19:104"},"returnParameters":{"id":71686,"nodeType":"ParameterList","parameters":[],"src":"20249:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71715,"nodeType":"FunctionDefinition","src":"20388:128:104","nodes":[],"body":{"id":71714,"nodeType":"Block","src":"20446:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71707,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20456:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20456:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71709,"nodeType":"ExpressionStatement","src":"20456:17:104"},{"expression":{"arguments":[{"id":71711,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71704,"src":"20499:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71710,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"20483:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71712,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20483:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71713,"nodeType":"ExpressionStatement","src":"20483:26:104"}]},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategy","nameLocation":"20397:14:104","parameters":{"id":71705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71704,"mutability":"mutable","name":"_strategy","nameLocation":"20420:9:104","nodeType":"VariableDeclaration","scope":71715,"src":"20412:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71703,"name":"address","nodeType":"ElementaryTypeName","src":"20412:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20411:19:104"},"returnParameters":{"id":71706,"nodeType":"ParameterList","parameters":[],"src":"20446:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71740,"nodeType":"FunctionDefinition","src":"20522:248:104","nodes":[],"body":{"id":71739,"nodeType":"Block","src":"20584:186:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71720,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20594:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20594:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71722,"nodeType":"ExpressionStatement","src":"20594:17:104"},{"expression":{"arguments":[{"id":71724,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71717,"src":"20640:5:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71723,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20621:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20621:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71726,"nodeType":"ExpressionStatement","src":"20621:25:104"},{"expression":{"id":71729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71727,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20656:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71728,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71717,"src":"20677:5:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"20656:26:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":71730,"nodeType":"ExpressionStatement","src":"20656:26:104"},{"eventCall":{"arguments":[{"arguments":[{"id":71734,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"20730:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":71733,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20722:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71732,"name":"address","nodeType":"ElementaryTypeName","src":"20722:7:104","typeDescriptions":{}}},"id":71735,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20722:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71736,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20744:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71731,"name":"CouncilSafeChangeStarted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70296,"src":"20697:24:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20697:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71738,"nodeType":"EmitStatement","src":"20692:71:104"}]},"functionSelector":"397e2543","implemented":true,"kind":"function","modifiers":[],"name":"setCouncilSafe","nameLocation":"20531:14:104","parameters":{"id":71718,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71717,"mutability":"mutable","name":"_safe","nameLocation":"20562:5:104","nodeType":"VariableDeclaration","scope":71740,"src":"20546:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":71716,"name":"address","nodeType":"ElementaryTypeName","src":"20546:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"20545:23:104"},"returnParameters":{"id":71719,"nodeType":"ParameterList","parameters":[],"src":"20584:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71757,"nodeType":"FunctionDefinition","src":"20776:187:104","nodes":[],"body":{"id":71756,"nodeType":"Block","src":"20823:140:104","nodes":[],"statements":[{"expression":{"id":71747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71743,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"20833:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71745,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20853:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71744,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75245,"src":"20847:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$75245_$","typeString":"type(contract ISafe)"}},"id":71746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20847:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"src":"20833:39:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"id":71748,"nodeType":"ExpressionStatement","src":"20833:39:104"},{"expression":{"id":71750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"20882:25:104","subExpression":{"id":71749,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20889:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71751,"nodeType":"ExpressionStatement","src":"20882:25:104"},{"eventCall":{"arguments":[{"id":71753,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20937:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71752,"name":"CouncilSafeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70290,"src":"20922:14:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71754,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20922:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71755,"nodeType":"EmitStatement","src":"20917:39:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_changeCouncilSafe","nameLocation":"20785:18:104","parameters":{"id":71741,"nodeType":"ParameterList","parameters":[],"src":"20803:2:104"},"returnParameters":{"id":71742,"nodeType":"ParameterList","parameters":[],"src":"20823:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71773,"nodeType":"FunctionDefinition","src":"20969:179:104","nodes":[],"body":{"id":71772,"nodeType":"Block","src":"21013:135:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71763,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71760,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21027:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21031:6:104","memberName":"sender","nodeType":"MemberAccess","src":"21027:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":71762,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"21041:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"21027:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71768,"nodeType":"IfStatement","src":"21023:89:104","trueBody":{"id":71767,"nodeType":"Block","src":"21061:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71764,"name":"SenderNotNewOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70404,"src":"21082:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71765,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21082:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71766,"nodeType":"RevertStatement","src":"21075:26:104"}]}},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71769,"name":"_changeCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71757,"src":"21121:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":71770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21121:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71771,"nodeType":"ExpressionStatement","src":"21121:20:104"}]},"functionSelector":"b5058c50","implemented":true,"kind":"function","modifiers":[],"name":"acceptCouncilSafe","nameLocation":"20978:17:104","parameters":{"id":71758,"nodeType":"ParameterList","parameters":[],"src":"20995:2:104"},"returnParameters":{"id":71759,"nodeType":"ParameterList","parameters":[],"src":"21013:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71791,"nodeType":"FunctionDefinition","src":"21154:190:104","nodes":[],"body":{"id":71790,"nodeType":"Block","src":"21234:110:104","nodes":[],"statements":[{"assignments":[71782],"declarations":[{"constant":false,"id":71782,"mutability":"mutable","name":"newMember","nameLocation":"21258:9:104","nodeType":"VariableDeclaration","scope":71790,"src":"21244:23:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":71781,"nodeType":"UserDefinedTypeName","pathNode":{"id":71780,"name":"Member","nameLocations":["21244:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"21244:6:104"},"referencedDeclaration":70271,"src":"21244:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71786,"initialValue":{"baseExpression":{"id":71783,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"21270:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71785,"indexExpression":{"id":71784,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71775,"src":"21290:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21270:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21244:54:104"},{"expression":{"expression":{"id":71787,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71782,"src":"21315:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":71788,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21325:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70270,"src":"21315:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":71779,"id":71789,"nodeType":"Return","src":"21308:29:104"}]},"functionSelector":"a230c524","implemented":true,"kind":"function","modifiers":[],"name":"isMember","nameLocation":"21163:8:104","parameters":{"id":71776,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71775,"mutability":"mutable","name":"_member","nameLocation":"21180:7:104","nodeType":"VariableDeclaration","scope":71791,"src":"21172:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71774,"name":"address","nodeType":"ElementaryTypeName","src":"21172:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21171:17:104"},"returnParameters":{"id":71779,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71778,"mutability":"mutable","name":"_isMember","nameLocation":"21223:9:104","nodeType":"VariableDeclaration","scope":71791,"src":"21218:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71777,"name":"bool","nodeType":"ElementaryTypeName","src":"21218:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"21217:16:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71910,"nodeType":"FunctionDefinition","src":"21350:1932:104","nodes":[],"body":{"id":71909,"nodeType":"Block","src":"21412:1870:104","nodes":[],"statements":[{"assignments":[71797],"declarations":[{"constant":false,"id":71797,"mutability":"mutable","name":"_member","nameLocation":"21430:7:104","nodeType":"VariableDeclaration","scope":71909,"src":"21422:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71796,"name":"address","nodeType":"ElementaryTypeName","src":"21422:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71800,"initialValue":{"expression":{"id":71798,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21440:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21444:6:104","memberName":"sender","nodeType":"MemberAccess","src":"21440:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"21422:28:104"},{"assignments":[71803],"declarations":[{"constant":false,"id":71803,"mutability":"mutable","name":"newMember","nameLocation":"21475:9:104","nodeType":"VariableDeclaration","scope":71909,"src":"21460:24:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"},"typeName":{"id":71802,"nodeType":"UserDefinedTypeName","pathNode":{"id":71801,"name":"Member","nameLocations":["21460:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"21460:6:104"},"referencedDeclaration":70271,"src":"21460:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71807,"initialValue":{"baseExpression":{"id":71804,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"21487:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71806,"indexExpression":{"id":71805,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"21507:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21487:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21460:55:104"},{"assignments":[71810],"declarations":[{"constant":false,"id":71810,"mutability":"mutable","name":"gardensFactory","nameLocation":"21542:14:104","nodeType":"VariableDeclaration","scope":71909,"src":"21525:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":71809,"nodeType":"UserDefinedTypeName","pathNode":{"id":71808,"name":"IRegistryFactory","nameLocations":["21525:16:104"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"21525:16:104"},"referencedDeclaration":70017,"src":"21525:16:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":71814,"initialValue":{"arguments":[{"id":71812,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"21576:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71811,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"21559:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":71813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21559:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"21525:67:104"},{"assignments":[71816],"declarations":[{"constant":false,"id":71816,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"21610:18:104","nodeType":"VariableDeclaration","scope":71909,"src":"21602:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71815,"name":"uint256","nodeType":"ElementaryTypeName","src":"21602:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71826,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71819,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71817,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21632:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71818,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"21654:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21632:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71820,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21631:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71823,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21671:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71822,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"21677:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21671:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71824,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21670:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21631:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21602:91:104"},{"assignments":[71828],"declarations":[{"constant":false,"id":71828,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"21711:16:104","nodeType":"VariableDeclaration","scope":71909,"src":"21703:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71827,"name":"uint256","nodeType":"ElementaryTypeName","src":"21703:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71844,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71829,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21743:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":71834,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21803:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21795:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71832,"name":"address","nodeType":"ElementaryTypeName","src":"21795:7:104","typeDescriptions":{}}},"id":71835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21795:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71830,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71810,"src":"21765:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21780:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"21765:29:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":71836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21765:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21743:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71838,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21742:68:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71841,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21814:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71840,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"21820:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21814:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71842,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21813:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21742:94:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21703:133:104"},{"condition":{"id":71848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"21850:18:104","subExpression":{"arguments":[{"id":71846,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"21860:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71845,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"21851:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":71847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21851:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71908,"nodeType":"IfStatement","src":"21846:1430:104","trueBody":{"id":71907,"nodeType":"Block","src":"21870:1406:104","statements":[{"expression":{"id":71853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":71849,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71803,"src":"21884:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member storage pointer"}},"id":71851,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21894:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70270,"src":"21884:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"21909:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"21884:29:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71854,"nodeType":"ExpressionStatement","src":"21884:29:104"},{"expression":{"id":71859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":71855,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71803,"src":"21928:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member storage pointer"}},"id":71857,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21938:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"21928:22:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71858,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21953:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21928:44:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71860,"nodeType":"ExpressionStatement","src":"21928:44:104"},{"expression":{"arguments":[{"id":71864,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"22170:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71867,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22187:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71866,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22179:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71865,"name":"address","nodeType":"ElementaryTypeName","src":"22179:7:104","typeDescriptions":{}}},"id":71868,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22179:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71869,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"22194:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71870,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22216:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22194:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71872,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"22237:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22194:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71861,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"22124:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22136:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"22124:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":71874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22124:143:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71875,"nodeType":"ExpressionStatement","src":"22124:143:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71876,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22692:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71877,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22713:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22692:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71887,"nodeType":"IfStatement","src":"22688:178:104","trueBody":{"id":71886,"nodeType":"Block","src":"22716:150:104","statements":[{"expression":{"arguments":[{"id":71882,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70474,"src":"22819:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71883,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22832:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71879,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"22794:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22806:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"22794:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71884,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22794:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71885,"nodeType":"ExpressionStatement","src":"22794:57:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71890,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71888,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"22949:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22968:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22949:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71901,"nodeType":"IfStatement","src":"22945:255:104","trueBody":{"id":71900,"nodeType":"Block","src":"22971:229:104","statements":[{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71894,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71810,"src":"23128:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23143:21:104","memberName":"getGardensFeeReceiver","nodeType":"MemberAccess","referencedDeclaration":70009,"src":"23128:36:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":71896,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23128:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71897,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"23168:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71891,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"23103:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23115:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"23103:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71898,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23103:82:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71899,"nodeType":"ExpressionStatement","src":"23103:82:104"}]}},{"eventCall":{"arguments":[{"id":71903,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"23236:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71904,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23245:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71902,"name":"MemberRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70302,"src":"23219:16:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23219:46:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71906,"nodeType":"EmitStatement","src":"23214:51:104"}]}}]},"functionSelector":"3517aa7d","implemented":true,"kind":"function","modifiers":[{"id":71794,"kind":"modifierInvocation","modifierName":{"id":71793,"name":"nonReentrant","nameLocations":["21399:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"21399:12:104"},"nodeType":"ModifierInvocation","src":"21399:12:104"}],"name":"stakeAndRegisterMember","nameLocation":"21359:22:104","parameters":{"id":71792,"nodeType":"ParameterList","parameters":[],"src":"21381:2:104"},"returnParameters":{"id":71795,"nodeType":"ParameterList","parameters":[],"src":"21412:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71959,"nodeType":"FunctionDefinition","src":"23288:477:104","nodes":[],"body":{"id":71958,"nodeType":"Block","src":"23360:405:104","nodes":[],"statements":[{"assignments":[71917],"declarations":[{"constant":false,"id":71917,"mutability":"mutable","name":"gardensFactory","nameLocation":"23387:14:104","nodeType":"VariableDeclaration","scope":71958,"src":"23370:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":71916,"nodeType":"UserDefinedTypeName","pathNode":{"id":71915,"name":"IRegistryFactory","nameLocations":["23370:16:104"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"23370:16:104"},"referencedDeclaration":70017,"src":"23370:16:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":71921,"initialValue":{"arguments":[{"id":71919,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"23421:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71918,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"23404:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":71920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23404:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"23370:67:104"},{"assignments":[71923],"declarations":[{"constant":false,"id":71923,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"23455:18:104","nodeType":"VariableDeclaration","scope":71958,"src":"23447:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71922,"name":"uint256","nodeType":"ElementaryTypeName","src":"23447:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71933,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71924,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23477:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71925,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"23499:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23477:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71927,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23476:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71930,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71928,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23516:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71929,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"23522:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23516:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71931,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23515:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23476:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23447:91:104"},{"assignments":[71935],"declarations":[{"constant":false,"id":71935,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"23556:16:104","nodeType":"VariableDeclaration","scope":71958,"src":"23548:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71934,"name":"uint256","nodeType":"ElementaryTypeName","src":"23548:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71951,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71936,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23588:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":71941,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23648:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23640:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71939,"name":"address","nodeType":"ElementaryTypeName","src":"23640:7:104","typeDescriptions":{}}},"id":71942,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23640:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71937,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71917,"src":"23610:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23625:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"23610:29:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":71943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23610:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23588:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71945,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23587:68:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71948,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71946,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23659:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71947,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"23665:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23659:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71949,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23658:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23587:94:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23548:133:104"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71956,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71952,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23699:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71953,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71923,"src":"23721:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23699:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71955,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71935,"src":"23742:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23699:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71914,"id":71957,"nodeType":"Return","src":"23692:66:104"}]},"functionSelector":"28c309e9","implemented":true,"kind":"function","modifiers":[],"name":"getStakeAmountWithFees","nameLocation":"23297:22:104","parameters":{"id":71911,"nodeType":"ParameterList","parameters":[],"src":"23319:2:104"},"returnParameters":{"id":71914,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71913,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71959,"src":"23351:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71912,"name":"uint256","nodeType":"ElementaryTypeName","src":"23351:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23350:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71967,"nodeType":"FunctionDefinition","src":"23771:115:104","nodes":[],"body":{"id":71966,"nodeType":"Block","src":"23843:43:104","nodes":[],"statements":[{"expression":{"id":71964,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23860:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71963,"id":71965,"nodeType":"Return","src":"23853:26:104"}]},"functionSelector":"0331383c","implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"23780:20:104","parameters":{"id":71960,"nodeType":"ParameterList","parameters":[],"src":"23800:2:104"},"returnParameters":{"id":71963,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71962,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71967,"src":"23834:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71961,"name":"uint256","nodeType":"ElementaryTypeName","src":"23834:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23833:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":71984,"nodeType":"FunctionDefinition","src":"23892:190:104","nodes":[],"body":{"id":71983,"nodeType":"Block","src":"23959:123:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71972,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"23969:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71973,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23969:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71974,"nodeType":"ExpressionStatement","src":"23969:17:104"},{"expression":{"id":71977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71975,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23996:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71976,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"24018:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23996:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71978,"nodeType":"ExpressionStatement","src":"23996:32:104"},{"eventCall":{"arguments":[{"id":71980,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"24064:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71979,"name":"BasisStakedAmountSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70355,"src":"24043:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":71981,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24043:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71982,"nodeType":"EmitStatement","src":"24038:37:104"}]},"functionSelector":"31f61bca","implemented":true,"kind":"function","modifiers":[],"name":"setBasisStakedAmount","nameLocation":"23901:20:104","parameters":{"id":71970,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71969,"mutability":"mutable","name":"_newAmount","nameLocation":"23930:10:104","nodeType":"VariableDeclaration","scope":71984,"src":"23922:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71968,"name":"uint256","nodeType":"ElementaryTypeName","src":"23922:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23921:20:104"},"returnParameters":{"id":71971,"nodeType":"ParameterList","parameters":[],"src":"23959:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72009,"nodeType":"FunctionDefinition","src":"24088:288:104","nodes":[],"body":{"id":72008,"nodeType":"Block","src":"24154:222:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71989,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"24164:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24164:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71991,"nodeType":"ExpressionStatement","src":"24164:17:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71994,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71992,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24195:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":71993,"name":"MAX_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70456,"src":"24214:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24195:26:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71999,"nodeType":"IfStatement","src":"24191:86:104","trueBody":{"id":71998,"nodeType":"Block","src":"24223:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71995,"name":"NewFeeGreaterThanMax","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70410,"src":"24244:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24244:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71997,"nodeType":"RevertStatement","src":"24237:29:104"}]}},{"expression":{"id":72002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72000,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"24286:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72001,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24301:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24286:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72003,"nodeType":"ExpressionStatement","src":"24286:31:104"},{"eventCall":{"arguments":[{"id":72005,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24352:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72004,"name":"CommunityFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70320,"src":"24332:19:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":72006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24332:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72007,"nodeType":"EmitStatement","src":"24327:42:104"}]},"functionSelector":"0d12bbdb","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityFee","nameLocation":"24097:15:104","parameters":{"id":71987,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71986,"mutability":"mutable","name":"_newCommunityFee","nameLocation":"24121:16:104","nodeType":"VariableDeclaration","scope":72009,"src":"24113:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71985,"name":"uint256","nodeType":"ElementaryTypeName","src":"24113:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"24112:26:104"},"returnParameters":{"id":71988,"nodeType":"ParameterList","parameters":[],"src":"24154:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72022,"nodeType":"FunctionDefinition","src":"24419:133:104","nodes":[],"body":{"id":72021,"nodeType":"Block","src":"24496:56:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":72017,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"24521:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72018,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72011,"src":"24537:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72016,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"24513:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":72019,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24513:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72015,"id":72020,"nodeType":"Return","src":"24506:39:104"}]},"functionSelector":"ebd7dc52","implemented":true,"kind":"function","modifiers":[],"name":"isCouncilMember","nameLocation":"24428:15:104","parameters":{"id":72012,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72011,"mutability":"mutable","name":"_member","nameLocation":"24452:7:104","nodeType":"VariableDeclaration","scope":72022,"src":"24444:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72010,"name":"address","nodeType":"ElementaryTypeName","src":"24444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24443:17:104"},"returnParameters":{"id":72015,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72014,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72022,"src":"24490:4:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72013,"name":"bool","nodeType":"ElementaryTypeName","src":"24490:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"24489:6:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72072,"nodeType":"FunctionDefinition","src":"24558:465:104","nodes":[],"body":{"id":72071,"nodeType":"Block","src":"24614:409:104","nodes":[],"statements":[{"assignments":[72028],"declarations":[{"constant":false,"id":72028,"mutability":"mutable","name":"_member","nameLocation":"24632:7:104","nodeType":"VariableDeclaration","scope":72071,"src":"24624:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72027,"name":"address","nodeType":"ElementaryTypeName","src":"24624:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72031,"initialValue":{"expression":{"id":72029,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24642:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72030,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24646:6:104","memberName":"sender","nodeType":"MemberAccess","src":"24642:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"24624:28:104"},{"expression":{"arguments":[{"id":72033,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24688:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72032,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"24662:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":72034,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24662:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72035,"nodeType":"ExpressionStatement","src":"24662:34:104"},{"expression":{"arguments":[{"id":72037,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24730:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72036,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72109,"src":"24706:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72038,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24706:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72039,"nodeType":"ExpressionStatement","src":"24706:32:104"},{"assignments":[72042],"declarations":[{"constant":false,"id":72042,"mutability":"mutable","name":"member","nameLocation":"24762:6:104","nodeType":"VariableDeclaration","scope":72071,"src":"24748:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":72041,"nodeType":"UserDefinedTypeName","pathNode":{"id":72040,"name":"Member","nameLocations":["24748:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"24748:6:104"},"referencedDeclaration":70271,"src":"24748:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72046,"initialValue":{"baseExpression":{"id":72043,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"24771:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72045,"indexExpression":{"id":72044,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24791:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24771:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"24748:51:104"},{"expression":{"id":72050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24809:35:104","subExpression":{"baseExpression":{"id":72047,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"24816:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72049,"indexExpression":{"id":72048,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24836:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24816:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72051,"nodeType":"ExpressionStatement","src":"24809:35:104"},{"expression":{"id":72055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24854:34:104","subExpression":{"baseExpression":{"id":72052,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"24861:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72054,"indexExpression":{"id":72053,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24880:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24861:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72056,"nodeType":"ExpressionStatement","src":"24854:34:104"},{"expression":{"arguments":[{"id":72060,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24924:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72061,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72042,"src":"24933:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72062,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24940:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"24933:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72057,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"24899:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24911:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"24899:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72063,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24899:54:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72064,"nodeType":"ExpressionStatement","src":"24899:54:104"},{"eventCall":{"arguments":[{"id":72066,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24987:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72067,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72042,"src":"24996:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25003:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"24996:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72065,"name":"MemberUnregistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70308,"src":"24968:18:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24968:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72070,"nodeType":"EmitStatement","src":"24963:53:104"}]},"functionSelector":"b99b4370","implemented":true,"kind":"function","modifiers":[{"id":72025,"kind":"modifierInvocation","modifierName":{"id":72024,"name":"nonReentrant","nameLocations":["24601:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"24601:12:104"},"nodeType":"ModifierInvocation","src":"24601:12:104"}],"name":"unregisterMember","nameLocation":"24567:16:104","parameters":{"id":72023,"nodeType":"ParameterList","parameters":[],"src":"24583:2:104"},"returnParameters":{"id":72026,"nodeType":"ParameterList","parameters":[],"src":"24614:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72109,"nodeType":"FunctionDefinition","src":"25029:474:104","nodes":[],"body":{"id":72108,"nodeType":"Block","src":"25096:407:104","nodes":[],"statements":[{"assignments":[72081],"declarations":[{"constant":false,"id":72081,"mutability":"mutable","name":"memberStrategies","nameLocation":"25123:16:104","nodeType":"VariableDeclaration","scope":72108,"src":"25106:33:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72079,"name":"address","nodeType":"ElementaryTypeName","src":"25106:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72080,"nodeType":"ArrayTypeName","src":"25106:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72085,"initialValue":{"baseExpression":{"id":72082,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"25142:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72084,"indexExpression":{"id":72083,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72074,"src":"25161:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25142:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25106:63:104"},{"body":{"id":72106,"nodeType":"Block","src":"25299:198:104","statements":[{"expression":{"arguments":[{"id":72103,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72074,"src":"25478:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"baseExpression":{"id":72098,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72081,"src":"25440:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72100,"indexExpression":{"id":72099,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25457:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25440:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72097,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"25425:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":72101,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25425:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":72102,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25461:16:104","memberName":"deactivatePoints","nodeType":"MemberAccess","referencedDeclaration":65511,"src":"25425:52:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":72104,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25425:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72105,"nodeType":"ExpressionStatement","src":"25425:61:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72093,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72090,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25265:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":72091,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72081,"src":"25269:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72092,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25286:6:104","memberName":"length","nodeType":"MemberAccess","src":"25269:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25265:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72107,"initializationExpression":{"assignments":[72087],"declarations":[{"constant":false,"id":72087,"mutability":"mutable","name":"i","nameLocation":"25258:1:104","nodeType":"VariableDeclaration","scope":72107,"src":"25250:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72086,"name":"uint256","nodeType":"ElementaryTypeName","src":"25250:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72089,"initialValue":{"hexValue":"30","id":72088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25262:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25250:13:104"},"loopExpression":{"expression":{"id":72095,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25294:3:104","subExpression":{"id":72094,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25294:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72096,"nodeType":"ExpressionStatement","src":"25294:3:104"},"nodeType":"ForStatement","src":"25245:252:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"deactivateAllStrategies","nameLocation":"25038:23:104","parameters":{"id":72075,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72074,"mutability":"mutable","name":"_member","nameLocation":"25070:7:104","nodeType":"VariableDeclaration","scope":72109,"src":"25062:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72073,"name":"address","nodeType":"ElementaryTypeName","src":"25062:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25061:17:104"},"returnParameters":{"id":72076,"nodeType":"ParameterList","parameters":[],"src":"25096:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72169,"nodeType":"FunctionDefinition","src":"25509:583:104","nodes":[],"body":{"id":72168,"nodeType":"Block","src":"25600:492:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72118,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"25610:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25610:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72120,"nodeType":"ExpressionStatement","src":"25610:17:104"},{"condition":{"id":72122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25641:14:104","subExpression":{"id":72121,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70471,"src":"25642:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72127,"nodeType":"IfStatement","src":"25637:68:104","trueBody":{"id":72126,"nodeType":"Block","src":"25657:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72123,"name":"KickNotEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70412,"src":"25678:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25678:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72125,"nodeType":"RevertStatement","src":"25671:23:104"}]}},{"condition":{"id":72131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25718:18:104","subExpression":{"arguments":[{"id":72129,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25728:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72128,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"25719:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":72130,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25719:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72136,"nodeType":"IfStatement","src":"25714:75:104","trueBody":{"id":72135,"nodeType":"Block","src":"25738:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72132,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"25759:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72133,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25759:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72134,"nodeType":"RevertStatement","src":"25752:26:104"}]}},{"assignments":[72139],"declarations":[{"constant":false,"id":72139,"mutability":"mutable","name":"member","nameLocation":"25812:6:104","nodeType":"VariableDeclaration","scope":72168,"src":"25798:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":72138,"nodeType":"UserDefinedTypeName","pathNode":{"id":72137,"name":"Member","nameLocations":["25798:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"25798:6:104"},"referencedDeclaration":70271,"src":"25798:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72143,"initialValue":{"baseExpression":{"id":72140,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"25821:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72142,"indexExpression":{"id":72141,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25841:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25821:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25798:51:104"},{"expression":{"arguments":[{"id":72145,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25883:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72144,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72109,"src":"25859:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72146,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25859:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72147,"nodeType":"ExpressionStatement","src":"25859:32:104"},{"expression":{"id":72151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"25901:35:104","subExpression":{"baseExpression":{"id":72148,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"25908:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72150,"indexExpression":{"id":72149,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25928:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"25908:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72152,"nodeType":"ExpressionStatement","src":"25901:35:104"},{"expression":{"arguments":[{"id":72156,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72113,"src":"25972:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72157,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72139,"src":"25990:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72158,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25997:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"25990:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72153,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"25947:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25959:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"25947:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25947:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72160,"nodeType":"ExpressionStatement","src":"25947:63:104"},{"eventCall":{"arguments":[{"id":72162,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"26038:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72163,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72113,"src":"26047:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72164,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72139,"src":"26065:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72165,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26072:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"26065:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72161,"name":"MemberKicked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70316,"src":"26025:12:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":72166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26025:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72167,"nodeType":"EmitStatement","src":"26020:65:104"}]},"functionSelector":"6871eb4d","implemented":true,"kind":"function","modifiers":[{"id":72116,"kind":"modifierInvocation","modifierName":{"id":72115,"name":"nonReentrant","nameLocations":["25587:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"25587:12:104"},"nodeType":"ModifierInvocation","src":"25587:12:104"}],"name":"kickMember","nameLocation":"25518:10:104","parameters":{"id":72114,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72111,"mutability":"mutable","name":"_member","nameLocation":"25537:7:104","nodeType":"VariableDeclaration","scope":72169,"src":"25529:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72110,"name":"address","nodeType":"ElementaryTypeName","src":"25529:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72113,"mutability":"mutable","name":"_transferAddress","nameLocation":"25554:16:104","nodeType":"VariableDeclaration","scope":72169,"src":"25546:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72112,"name":"address","nodeType":"ElementaryTypeName","src":"25546:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25528:43:104"},"returnParameters":{"id":72117,"nodeType":"ParameterList","parameters":[],"src":"25600:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72173,"nodeType":"VariableDeclaration","src":"26098:25:104","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"26118:5:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":72170,"name":"uint256","nodeType":"ElementaryTypeName","src":"26098:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72172,"length":{"hexValue":"3530","id":72171,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26106:2:104","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"26098:11:104","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":70277,"name":"ProxyOwnableUpgrader","nameLocations":["2884:20:104"],"nodeType":"IdentifierPath","referencedDeclaration":70199,"src":"2884:20:104"},"id":70278,"nodeType":"InheritanceSpecifier","src":"2884:20:104"},{"baseName":{"id":70279,"name":"ReentrancyGuardUpgradeable","nameLocations":["2906:26:104"],"nodeType":"IdentifierPath","referencedDeclaration":53237,"src":"2906:26:104"},"id":70280,"nodeType":"InheritanceSpecifier","src":"2906:26:104"},{"baseName":{"id":70281,"name":"AccessControlUpgradeable","nameLocations":["2934:24:104"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"2934:24:104"},"id":70282,"nodeType":"InheritanceSpecifier","src":"2934:24:104"}],"canonicalName":"RegistryCommunityV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":70276,"nodeType":"StructuredDocumentation","src":"2799:51:104","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_0","nameLocation":"2859:21:104","scope":72175,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":104} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json b/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json index 24640894..333cfff3 100644 --- a/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json +++ b/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516160a36200004d60003960008181611e4301528181611e8601528181611f8101528181611fc4015261211601526160a36000f3fe608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004538565b62000d59565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004564565b62000d91565b005b348015620003f057600080fd5b50620003e162000402366004620045a6565b62000e07565b3480156200041557600080fd5b50620003e162000427366004620045e4565b6200118a565b3480156200043a57600080fd5b50620003e16200044c366004620045e4565b620011a2565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e4565b620011cf565b3480156200049f57600080fd5b50620003e1620004b1366004620045a6565b620011e4565b348015620004c457600080fd5b5062000395620004d636600462004564565b620012de565b348015620004e957600080fd5b5062000395620012f3565b3480156200050157600080fd5b50620005196200051336600462004604565b620013f8565b6040516200037a919062004640565b3480156200053557600080fd5b506200039562000547366004620045e4565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004654565b62001432565b3480156200059857600080fd5b50620003e1620005aa36600462004564565b62001459565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004864565b62001499565b348015620005fa57600080fd5b50620003e162001b59565b3480156200061257600080fd5b50620003e16200062436600462004654565b62001dbb565b3480156200063757600080fd5b50620003e162000649366004620045e4565b62001e39565b3480156200065c57600080fd5b50620003e16200066e366004620045e4565b62001f0a565b3480156200068157600080fd5b506200036e62000693366004620045e4565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a6565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f7565b62001f77565b3480156200070d57600080fd5b50620007256200071f36600462004c7b565b62002038565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002109565b3480156200076857600080fd5b50620003e16200077a36600462004564565b620021ba565b3480156200078d57600080fd5b50620007256200079f36600462004e5c565b62002406565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004564565b6200266e565b348015620007fa57600080fd5b50620003956200080c366004620045a6565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a6565b62002a08565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b5b565b348015620008ba57600080fd5b50620003e1620008cc36600462004564565b62002b71565b348015620008df57600080fd5b506200039560008051602062005fe783398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a6565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004564565b62002c0d565b348015620009d257600080fd5b5062000725620009e436600462004ed0565b62002ccb565b348015620009f757600080fd5b5062000a3862000a09366004620045e4565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e58565b34801562000a9d57600080fd5b506200036e62000aaf36600462004654565b62002ef3565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e4565b62002f1e565b34801562000b2857600080fd5b50620003e162000b3a366004620045e4565b62002f68565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f95565b34801562000b8c57600080fd5b5062000b9762002fcc565b6040516200037a919062004fb7565b34801562000bb357600080fd5b50620003e162003063565b34801562000bcb57600080fd5b50620003956200316d565b34801562000be357600080fd5b50620003e162000bf5366004620045e4565b6200317f565b34801562000c0857600080fd5b5062000b97620031b4565b34801562000c2057600080fd5b50620003e162000c3236600462004654565b620031c4565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fcc565b620031e6565b34801562000cc857600080fd5b506200036e62000cda366004620045e4565b620032a7565b34801562000ced57600080fd5b50620003e162000cff366004620045e4565b620032c4565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b5062000b97604051806040016040528060038152602001620302e360ec1b81525081565b60006001600160e01b03198216637965db0b60e01b148062000d8b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9b62003335565b62000daa612710600a62005055565b81111562000dcb5760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e1162003372565b62000e1c82620033cd565b62000e2781620033f6565b62000e328162003431565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7b57604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f09573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2f919062005085565b600381111562000f435762000f436200506f565b0362000fc85760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f7a908890600090600401620050a5565b6020604051808303816000875af115801562000f9a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc09190620050be565b9050620010c4565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af11580156200100b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001031919062005085565b60038111156200104557620010456200506f565b14620010c45760405163782aadff60e01b81526001600160a01b0385169063782aadff906200107b9088908690600401620050a5565b6020604051808303816000875af11580156200109b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c19190620050be565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200117090879087908590620050d8565b60405180910390a1505050620011866001606555565b5050565b6200119462003335565b6200119f8162003460565b50565b620011ac620034be565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d962003335565b6200119f8162003521565b620011ef82620033cd565b620011fa8162003431565b620012063382620035b3565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124e57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a08282620035e6565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012d2929190620050fc565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001313612710606462005055565b60fc5460fb5462001325919062005055565b62001331919062005116565b9050600062001344612710606462005055565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137290309060040162004640565b602060405180830381865afa15801562001390573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b69190620050be565b60fb54620013c5919062005055565b620013d1919062005116565b9050808260fb54620013e4919062005139565b620013f0919062005139565b935050505090565b61010d60205281600052604060002081815481106200141657600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143d82620012de565b62001448816200371c565b62001454838362003728565b505050565b6200146362003335565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000dfc565b600054610100900460ff1615808015620014ba5750600054600160ff909116105b80620014df5750620014cc30620037b2565b158015620014df575060005460ff166001145b620015485760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156200156c576000805461ff0019166101001790555b62001577826200317f565b62001581620037c1565b6200158b620037f5565b620015a760008051602062005fe783398151915260006200381f565b620015b6856020015162003431565b620015c685610100015162003431565b8451620015d39062003431565b620015e28560a0015162003431565b606085015115620015fc57620015fc8560c0015162003431565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001657576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016949082620051dd565b5061016085015161010990620016ab9082620051dd565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017209060008051602062005fe78339815191529062003728565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200179b9190620052a9565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001827576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018015762001801620052c9565b60200260200101906001600160a01b031690816001600160a01b03168152505062001964565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa15801562001872573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200189c9190810190620052df565b905080516002620018ae919062005139565b6001600160401b03811115620018c857620018c86200467c565b604051908082528060200260200182016040528015620018f2578160200160208202803683370190505b50915060005b81518110156200196157818181518110620019175762001917620052c9565b6020026020010151838281518110620019345762001934620052c9565b6001600160a01b039092166020928302919091019091015280620019588162005378565b915050620018f8565b50505b6101065481516001600160a01b03909116908290620019869060019062005394565b81518110620019995762001999620052c9565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019cb919062005394565b81518110620019de57620019de620052c9565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a319291610108913090889060040162005496565b6020604051808303816000875af115801562001a51573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a779190620050be565b60fe55805162001a909061010f90602084019062004492565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001b029290916101089190620054f6565b60405180910390a150801562001b52576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b6362003372565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b94612710606462005055565b60fc5460fb5462001ba6919062005055565b62001bb2919062005116565b9050600062001bc5612710606462005055565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf390309060040162004640565b602060405180830381865afa15801562001c11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c379190620050be565b60fb5462001c46919062005055565b62001c52919062005116565b905062001c5f8562002f1e565b62001da95760028401805460ff1916600190811790915560fb5490850181905562001cb99086903090849062001c9790879062005139565b62001ca3919062005139565b610105546001600160a01b031692919062003874565b811562001ce65760ff546101055462001ce6916001600160a01b03918216916101009091041684620038d0565b801562001d6b5762001d6b836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d30573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d569190620052a9565b610105546001600160a01b03169083620038d0565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001da0929190620050a5565b60405180910390a15b505050505062001db96001606555565b565b6001600160a01b038116331462001e2d5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153f565b620011868282620038f2565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e845760405162461bcd60e51b81526004016200153f9062005525565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb86200395c565b6001600160a01b03161462001ee15760405162461bcd60e51b81526004016200153f9062005560565b62001eec8162003979565b604080516000808252602082019092526200119f91839190620039bb565b62001f1462003335565b62001f1f8162003431565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000dfc9392169190620050fc565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fc25760405162461bcd60e51b81526004016200153f9062005525565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff66200395c565b6001600160a01b0316146200201f5760405162461bcd60e51b81526004016200153f9062005560565b6200202a8262003979565b6200118682826001620039bb565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206e62002e58565b60405160240162002082939291906200559b565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020c190620044f8565b620020ce929190620055be565b604051809103906000f080158015620020eb573d6000803e3d6000fd5b509050620020fc81878787620031e6565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a65760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153f565b506000805160206200602783398151915290565b620021c462003372565b620021ce62003b33565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200223257602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002213575b50505050509050600080600090505b82518110156200236d57828181518110620022605762002260620052c9565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002297929190620050a5565b6020604051808303816000875af1158015620022b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022dd9190620050be565b9150811562002358576001600160a01b038416600090815261010b602052604081208451849290869085908110620023195762002319620052c9565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020600082825462002352919062005139565b90915550505b80620023648162005378565b91505062002241565b506101055462002389906001600160a01b031684308762003874565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b790849062005139565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023f09085908790620050a5565b60405180910390a15050506200119f6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243c62002e58565b60405160240162002450939291906200559b565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248f90620044f8565b6200249c929190620055be565b604051809103906000f080158015620024b9573d6000803e3d6000fd5b509050620024ca8187878762002ccb565b60c087015191945092506001600160a01b0316620025d5576103e88560e00151511115620025535760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153f565b600083604051602001620025689190620055e4565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025d257620025bd828860e001518381518110620025af57620025af620052c9565b602002602001015162003728565b80620025c98162005378565b91505062002583565b50505b6200263183604051602001620025ec9190620055e4565b604051602081830303815290604052805190602001208460405160200162002615919062005601565b604051602081830303815290604052805190602001206200381f565b620026658360405160200162002648919062005601565b604051602081830303815290604052805190602001208362003728565b50935093915050565b6200267862003372565b6200268262003b33565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b690869062005394565b1015620026d657604051634e23e81760e11b815260040160405180910390fd5b61010554620026f0906001600160a01b03168486620038d0565b60005b8254811015620029a0576000838281548110620027145762002714620052c9565b6000918252602090912001546001600160a01b031690506200273e8163f1801e6160e01b62003b5c565b15620028c457604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027749088908a90600401620050a5565b6020604051808303816000875af115801562002794573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027ba9190620050be565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027fb57620027fb620052c9565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284f576040516311423e6360e31b815260048101859052602481018290526044016200153f565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620028825762002882620052c9565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b890849062005394565b9091555050506200298a565b83548490620028d69060019062005394565b81548110620028e957620028e9620052c9565b9060005260206000200160009054906101000a90046001600160a01b03168483815481106200291c576200291c620052c9565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295d576200295d62005624565b600082815260209020810160001990810180546001600160a01b03191690550190556200298a8162003460565b5080620029978162005378565b915050620026f3565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cf90849062005394565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023f09085908790620050a5565b62002a1262003372565b62002a1c62003335565b60ff80541662002a3f576040516365b1ee3960e11b815260040160405180910390fd5b62002a4a8262002f1e565b62002a6857604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab98362003b84565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0e9216908490620038d0565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4793929190620050d8565b60405180910390a150620011866001606555565b62002b65620034be565b62001db9600062003c99565b62002b7b62003335565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bf191908101906200563a565b60200151905062002c028162003431565b620011868162003460565b62002c1762003335565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c63573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8d91908101906200563a565b60200151905062002c9e8162003431565b62002cba6001600160a01b03821663f1801e6160e01b62003b5c565b156200118657620011868162003521565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf65750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5457602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d35575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d8c908b9060200162005805565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc49796959493929190620058ae565b6020604051808303816000875af115801562002de4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e0a9190620050be565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e459594939291906200591f565b60405180910390a1505094509492505050565b60008062002e6e6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee5575060408051601f3d908101601f1916820190925262002ee291810190620052a9565b60015b62000d8b57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f72620034be565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fc2576040516375e686b760e11b815260040160405180910390fd5b62001db962003ceb565b610109805462002fdc906200514f565b80601f01602080910402602001604051908101604052809291908181526020018280546200300a906200514f565b80156200305b5780601f106200302f576101008083540402835291602001916200305b565b820191906000526020600020905b8154815290600101906020018083116200303d57829003601f168201915b505050505081565b6200306d62003372565b336200307981620033cd565b620030848162003b84565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030ff919062004506565b60208101516101055462003121916001600160a01b03909116908490620038d0565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003158929190620050a5565b60405180910390a1505062001db96001606555565b6200317c612710600a62005055565b81565b600054610100900460ff16620031a95760405162461bcd60e51b81526004016200153f906200595b565b6200119f8162003c99565b610108805462002fdc906200514f565b620031cf82620012de565b620031da816200371c565b620014548383620038f2565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032115750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003250575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d8c908b90602001620059a6565b600062000d8b60008051602062005fe78339815191528362002ef3565b620032ce620034be565b6001600160a01b038116620031a95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153f565b6200335060008051602062005fe78339815191523362002ef3565b62001db9573360405163fc4be72f60e01b81526004016200153f919062004640565b600260655403620033c65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153f565b6002606555565b620033d88162002f1e565b6200119f57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119f576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119f576040516303988b8160e61b815260040160405180910390fd5b6001606555565b6200346b8162003431565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000dfc90839062004640565b33620034c962002e58565b6001600160a01b03161462001db95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153f565b6001600160a01b038116600090815261010a602052604090205460ff16156200355d576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000dfc90839062004640565b806001600160a01b0316826001600160a01b031614620011865760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371657826001600160a01b03168282815481106200362a576200362a620052c9565b6000918252602090912001546001600160a01b031603620037015781548290620036579060019062005394565b815481106200366a576200366a620052c9565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369d576200369d620052c9565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036de57620036de62005624565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370d8162005378565b91505062003601565b50505050565b6200119f813362003d4f565b62003734828262002ef3565b6200118657600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376e3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037eb5760405162461bcd60e51b81526004016200153f906200595b565b62001db962003db3565b600054610100900460ff1662001db95760405162461bcd60e51b81526004016200153f906200595b565b60006200382c83620012de565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003716846323b872dd60e01b8585856040516024016200389893929190620050d8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003ddd565b620014548363a9059cbb60e01b848460405160240162003898929190620050a5565b620038fe828262002ef3565b156200118657600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006027833981519152546001600160a01b031690565b336200398462002e58565b6001600160a01b0316146200119f57336200399e62002e58565b60405163163678e960e01b81526004016200153f929190620050fc565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039f157620014548362003eb9565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4e575060408051601f3d908101601f1916820190925262003a4b91810190620050be565b60015b62003ab35760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153f565b60008051602062006027833981519152811462003b255760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153f565b506200145483838362003f58565b62003b3e3362002f1e565b62001db957604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b698362003f83565b801562003b7d575062003b7d838362003fbb565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bf157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bd2575b5050505050905060005b8151811015620014545781818151811062003c1a5762003c1a620052c9565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4f919062004640565b600060405180830381600087803b15801562003c6a57600080fd5b505af115801562003c7f573d6000803e3d6000fd5b50505050808062003c909062005378565b91505062003bfb565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d459060009062004640565b60405180910390a1565b62003d5b828262002ef3565b620011865762003d6b8162004046565b62003d7883602062004059565b60405160200162003d8b92919062005a2f565b60408051601f198184030181529082905262461bcd60e51b82526200153f9160040162004fb7565b600054610100900460ff16620034595760405162461bcd60e51b81526004016200153f906200595b565b600062003e34826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042129092919063ffffffff16565b905080516000148062003e5857508080602001905181019062003e58919062005aa2565b620014545760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153f565b62003ec481620037b2565b62003f285760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153f565b6000805160206200602783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f63836200422b565b60008251118062003f715750805b1562001454576200371683836200426d565b600062003f98826301ffc9a760e01b62003fbb565b801562000d8b575062003fb4826001600160e01b031962003fbb565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402e575060208210155b80156200403b5750600081115b979650505050505050565b606062000d8b6001600160a01b03831660145b606060006200406a83600262005055565b6200407790600262005139565b6001600160401b038111156200409157620040916200467c565b6040519080825280601f01601f191660200182016040528015620040bc576020820181803683370190505b509050600360fc1b81600081518110620040da57620040da620052c9565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106200410c576200410c620052c9565b60200101906001600160f81b031916908160001a90535060006200413284600262005055565b6200413f90600162005139565b90505b6001811115620041c1576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041775762004177620052c9565b1a60f81b828281518110620041905762004190620052c9565b60200101906001600160f81b031916908160001a90535060049490941c93620041b98162005ac2565b905062004142565b50831562003b7d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153f565b606062004223848460008562004295565b949350505050565b620042368162003eb9565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7d838360405180606001604052806027815260200162006047602791396200436d565b606082471015620042f85760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153f565b600080866001600160a01b0316858760405162004316919062005adc565b60006040518083038185875af1925050503d806000811462004355576040519150601f19603f3d011682016040523d82523d6000602084013e6200435a565b606091505b50915091506200403b87838387620043eb565b6060600080856001600160a01b0316856040516200438c919062005adc565b600060405180830381855af49150503d8060008114620043c9576040519150601f19603f3d011682016040523d82523d6000602084013e620043ce565b606091505b5091509150620043e186838387620043eb565b9695505050505050565b606083156200445f57825160000362004457576200440985620037b2565b620044575760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153f565b508162004223565b620042238383815115620044765781518083602001fd5b8060405162461bcd60e51b81526004016200153f919062004fb7565b828054828255906000526020600020908101928215620044ea579160200282015b82811115620044ea57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b3565b5062002eef92915062004521565b6104ec8062005afb83390190565b50805460008255906000526020600020908101906200119f91905b5b8082111562002eef576000815560010162004522565b6000602082840312156200454b57600080fd5b81356001600160e01b03198116811462003b7d57600080fd5b6000602082840312156200457757600080fd5b5035919050565b6001600160a01b03811681146200119f57600080fd5b8035620045a1816200457e565b919050565b60008060408385031215620045ba57600080fd5b8235620045c7816200457e565b91506020830135620045d9816200457e565b809150509250929050565b600060208284031215620045f757600080fd5b813562003b7d816200457e565b600080604083850312156200461857600080fd5b823562004625816200457e565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466857600080fd5b823591506020830135620045d9816200457e565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b757620046b76200467c565b60405290565b60405161018081016001600160401b0381118282101715620046b757620046b76200467c565b60405160c081016001600160401b0381118282101715620046b757620046b76200467c565b60405161010081016001600160401b0381118282101715620046b757620046b76200467c565b604051601f8201601f191681016001600160401b03811182821017156200475957620047596200467c565b604052919050565b60006001600160401b038211156200477d576200477d6200467c565b50601f01601f191660200190565b6000620047a26200479c8462004761565b6200472e565b9050828152838383011115620047b757600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047e057600080fd5b62003b7d838335602085016200478b565b6000604082840312156200480457600080fd5b6200480e62004692565b82358152905060208201356001600160401b038111156200482e57600080fd5b6200483c84828501620047ce565b60208301525092915050565b80151581146200119f57600080fd5b8035620045a18162004848565b600080600080608085870312156200487b57600080fd5b84356001600160401b03808211156200489357600080fd5b908601906101808289031215620048a957600080fd5b620048b3620046bd565b620048be8362004594565b8152620048ce6020840162004594565b6020820152604083013560408201526060830135606082015260808301356080820152620048ff60a0840162004594565b60a08201526200491260c0840162004594565b60c082015260e0830135828111156200492a57600080fd5b620049388a828601620047f1565b60e0830152506101006200494e81850162004594565b9082015261012083810135838111156200496757600080fd5b620049758b828701620047ce565b8284015250506101406200498b81850162004857565b908201526101608381013583811115620049a457600080fd5b620049b28b828701620047ce565b828401525050809650505050620049cc6020860162004594565b9250620049dc6040860162004594565b9150620049ec6060860162004594565b905092959194509250565b6000806040838503121562004a0b57600080fd5b823562004a18816200457e565b915060208301356001600160401b0381111562004a3457600080fd5b8301601f8101851362004a4657600080fd5b62004a57858235602084016200478b565b9150509250929050565b60006080828403121562004a7457600080fd5b604051608081016001600160401b038111828210171562004a995762004a996200467c565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b803560038110620045a157600080fd5b600481106200119f57600080fd5b8035620045a18162004ada565b60006020828403121562004b0857600080fd5b604051602081016001600160401b038111828210171562004b2d5762004b2d6200467c565b6040529135825250919050565b600060c0828403121562004b4d57600080fd5b62004b57620046e3565b9050813562004b66816200457e565b8152602082013562004b78816200457e565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bc157600080fd5b60405160e081016001600160401b038111828210171562004be65762004be66200467c565b60405290508062004bf8848462004a61565b815262004c086080840162004aca565b602082015260a083013562004c1d8162004ada565b604082015262004c318460c0850162004af5565b606082015262004c458460e0850162004b3a565b60808201526101a083013562004c5b816200457e565b60a082015262004c6f6101c0840162004594565b60c08201525092915050565b6000806000610220848603121562004c9257600080fd5b833562004c9f816200457e565b925062004cb0856020860162004bad565b91506102008401356001600160401b0381111562004ccd57600080fd5b62004cdb86828701620047f1565b9150509250925092565b60006001600160401b0382111562004d015762004d016200467c565b5060051b60200190565b600082601f83011262004d1d57600080fd5b8135602062004d306200479c8362004ce5565b82815260059290921b8401810191818101908684111562004d5057600080fd5b8286015b8481101562004d7857803562004d6a816200457e565b835291830191830162004d54565b509695505050505050565b6000610200828403121562004d9757600080fd5b62004da162004708565b905062004daf838362004a61565b815262004dbf6080830162004aca565b602082015262004dd260a0830162004ae8565b604082015262004de68360c0840162004af5565b606082015262004dfa8360e0840162004b3a565b608082015262004e0e6101a0830162004594565b60a082015262004e226101c0830162004594565b60c08201526101e08201356001600160401b0381111562004e4257600080fd5b62004e508482850162004d0b565b60e08301525092915050565b60008060006060848603121562004e7257600080fd5b833562004e7f816200457e565b925060208401356001600160401b038082111562004e9c57600080fd5b62004eaa8783880162004d83565b9350604086013591508082111562004ec157600080fd5b5062004cdb86828701620047f1565b6000806000806080858703121562004ee757600080fd5b843562004ef4816200457e565b9350602085013562004f06816200457e565b925060408501356001600160401b038082111562004f2357600080fd5b62004f318883890162004d83565b9350606087013591508082111562004f4857600080fd5b5062004f5787828801620047f1565b91505092959194509250565b60005b8381101562004f8057818101518382015260200162004f66565b50506000910152565b6000815180845262004fa381602086016020860162004f63565b601f01601f19169290920160200192915050565b60208152600062003b7d602083018462004f89565b600080600080610240858703121562004fe457600080fd5b843562004ff1816200457e565b9350602085013562005003816200457e565b925062005014866040870162004bad565b91506102208501356001600160401b038111156200503157600080fd5b62004f5787828801620047f1565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d8b5762000d8b6200503f565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509857600080fd5b815162003b7d8162004ada565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050d157600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513457634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d8b5762000d8b6200503f565b600181811c908216806200516457607f821691505b6020821081036200518557634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145457600081815260208120601f850160051c81016020861015620051b45750805b601f850160051c820191505b81811015620051d557828155600101620051c0565b505050505050565b81516001600160401b03811115620051f957620051f96200467c565b62005211816200520a84546200514f565b846200518b565b602080601f831160018114620052495760008415620052305750858301515b600019600386901b1c1916600185901b178555620051d5565b600085815260208120601f198616915b828110156200527a5788860151825594840194600190910190840162005259565b5085821015620052995787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052bc57600080fd5b815162003b7d816200457e565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f357600080fd5b82516001600160401b038111156200530a57600080fd5b8301601f810185136200531c57600080fd5b80516200532d6200479c8262004ce5565b81815260059190911b820183019083810190878311156200534d57600080fd5b928401925b828410156200403b57835162005368816200457e565b8252928401929084019062005352565b6000600182016200538d576200538d6200503f565b5060010190565b8181038181111562000d8b5762000d8b6200503f565b60008154620053b9816200514f565b808552602060018381168015620053d95760018114620053f45762005424565b60ff1985168884015283151560051b88018301955062005424565b866000528260002060005b858110156200541c5781548a8201860152908301908401620053ff565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004223604085018262004f89565b600081518084526020808501945080840160005b838110156200548b5781516001600160a01b03168752958201959082019060010162005464565b509495945050505050565b85815260a060208201526000620054b160a0830187620053aa565b8281036040840152620054c581876200542f565b6001600160a01b038616606085015283810360808501529050620054ea818562005450565b98975050505050505050565b838152606060208201526000620055116060830185620053aa565b8281036040840152620043e181856200542f565b6020808252602c908201526000805160206200600783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042239083018462004f89565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564e57600080fd5b82516001600160401b03808211156200566657600080fd5b9084019060c082870312156200567b57600080fd5b62005685620046e3565b825181528383015162005698816200457e565b818501526040830151620056ac816200457e565b6040820152606083015182811115620056c457600080fd5b830160408189031215620056d757600080fd5b620056e162004692565b815181528582015184811115620056f757600080fd5b82019350601f840189136200570b57600080fd5b835191506200571e6200479c8362004761565b82815289878487010111156200573357600080fd5b620057448388830189880162004f63565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a957620057a96200506f565b9052565b60048110620057a957620057a96200506f565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b602081526200581960208201835162005770565b600060208301516200582f60a084018262005796565b5060408301516200584460c0840182620057ad565b5060608301515160e0830152608083015162005865610100840182620057c0565b5060a08301516200587b6101c084018262004633565b5060c0830151620058916101e084018262004633565b5060e0830151610200838101526200422361022084018262005450565b878152600060018060a01b03808916602084015260e06040840152620058d860e084018962004f89565b818816606085015286608085015283810360a0850152620058fa81876200542f565b91505082810360c084015262005911818562005450565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200403b908301846200542f565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059bc82845162005770565b6020830151620059d0608084018262005796565b506040830151620059e560a0840182620057ad565b5060608301515160c0830152608083015162005a0560e0840182620057c0565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6381601785016020880162004f63565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9681602884016020880162004f63565b01602801949350505050565b60006020828403121562005ab557600080fd5b815162003b7d8162004848565b60008162005ad45762005ad46200503f565b506000190190565b6000825162005af081846020870162004f63565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220eb4556dd26edee48f4bb15c8bc758359b6156c983f6a75864cfbb4f7fa99c7ed64736f6c63430008130033","sourceMap":"522:2047:108:-:0;;;1088:4:64;1045:48;;522:2047:108;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004538565b62000d59565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004564565b62000d91565b005b348015620003f057600080fd5b50620003e162000402366004620045a6565b62000e07565b3480156200041557600080fd5b50620003e162000427366004620045e4565b6200118a565b3480156200043a57600080fd5b50620003e16200044c366004620045e4565b620011a2565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e4565b620011cf565b3480156200049f57600080fd5b50620003e1620004b1366004620045a6565b620011e4565b348015620004c457600080fd5b5062000395620004d636600462004564565b620012de565b348015620004e957600080fd5b5062000395620012f3565b3480156200050157600080fd5b50620005196200051336600462004604565b620013f8565b6040516200037a919062004640565b3480156200053557600080fd5b506200039562000547366004620045e4565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004654565b62001432565b3480156200059857600080fd5b50620003e1620005aa36600462004564565b62001459565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004864565b62001499565b348015620005fa57600080fd5b50620003e162001b59565b3480156200061257600080fd5b50620003e16200062436600462004654565b62001dbb565b3480156200063757600080fd5b50620003e162000649366004620045e4565b62001e39565b3480156200065c57600080fd5b50620003e16200066e366004620045e4565b62001f0a565b3480156200068157600080fd5b506200036e62000693366004620045e4565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a6565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f7565b62001f77565b3480156200070d57600080fd5b50620007256200071f36600462004c7b565b62002038565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002109565b3480156200076857600080fd5b50620003e16200077a36600462004564565b620021ba565b3480156200078d57600080fd5b50620007256200079f36600462004e5c565b62002406565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004564565b6200266e565b348015620007fa57600080fd5b50620003956200080c366004620045a6565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a6565b62002a08565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b5b565b348015620008ba57600080fd5b50620003e1620008cc36600462004564565b62002b71565b348015620008df57600080fd5b506200039560008051602062005fe783398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a6565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004564565b62002c0d565b348015620009d257600080fd5b5062000725620009e436600462004ed0565b62002ccb565b348015620009f757600080fd5b5062000a3862000a09366004620045e4565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e58565b34801562000a9d57600080fd5b506200036e62000aaf36600462004654565b62002ef3565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e4565b62002f1e565b34801562000b2857600080fd5b50620003e162000b3a366004620045e4565b62002f68565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f95565b34801562000b8c57600080fd5b5062000b9762002fcc565b6040516200037a919062004fb7565b34801562000bb357600080fd5b50620003e162003063565b34801562000bcb57600080fd5b50620003956200316d565b34801562000be357600080fd5b50620003e162000bf5366004620045e4565b6200317f565b34801562000c0857600080fd5b5062000b97620031b4565b34801562000c2057600080fd5b50620003e162000c3236600462004654565b620031c4565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fcc565b620031e6565b34801562000cc857600080fd5b506200036e62000cda366004620045e4565b620032a7565b34801562000ced57600080fd5b50620003e162000cff366004620045e4565b620032c4565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b5062000b97604051806040016040528060038152602001620302e360ec1b81525081565b60006001600160e01b03198216637965db0b60e01b148062000d8b57506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9b62003335565b62000daa612710600a62005055565b81111562000dcb5760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e1162003372565b62000e1c82620033cd565b62000e2781620033f6565b62000e328162003431565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7b57604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f09573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2f919062005085565b600381111562000f435762000f436200506f565b0362000fc85760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f7a908890600090600401620050a5565b6020604051808303816000875af115801562000f9a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc09190620050be565b9050620010c4565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af11580156200100b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001031919062005085565b60038111156200104557620010456200506f565b14620010c45760405163782aadff60e01b81526001600160a01b0385169063782aadff906200107b9088908690600401620050a5565b6020604051808303816000875af11580156200109b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c19190620050be565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200117090879087908590620050d8565b60405180910390a1505050620011866001606555565b5050565b6200119462003335565b6200119f8162003460565b50565b620011ac620034be565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d962003335565b6200119f8162003521565b620011ef82620033cd565b620011fa8162003431565b620012063382620035b3565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124e57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a08282620035e6565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012d2929190620050fc565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001313612710606462005055565b60fc5460fb5462001325919062005055565b62001331919062005116565b9050600062001344612710606462005055565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137290309060040162004640565b602060405180830381865afa15801562001390573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b69190620050be565b60fb54620013c5919062005055565b620013d1919062005116565b9050808260fb54620013e4919062005139565b620013f0919062005139565b935050505090565b61010d60205281600052604060002081815481106200141657600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143d82620012de565b62001448816200371c565b62001454838362003728565b505050565b6200146362003335565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000dfc565b600054610100900460ff1615808015620014ba5750600054600160ff909116105b80620014df5750620014cc30620037b2565b158015620014df575060005460ff166001145b620015485760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff1916600117905580156200156c576000805461ff0019166101001790555b62001577826200317f565b62001581620037c1565b6200158b620037f5565b620015a760008051602062005fe783398151915260006200381f565b620015b6856020015162003431565b620015c685610100015162003431565b8451620015d39062003431565b620015e28560a0015162003431565b606085015115620015fc57620015fc8560c0015162003431565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001657576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016949082620051dd565b5061016085015161010990620016ab9082620051dd565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017209060008051602062005fe78339815191529062003728565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001775573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200179b9190620052a9565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001827576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018015762001801620052c9565b60200260200101906001600160a01b031690816001600160a01b03168152505062001964565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa15801562001872573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200189c9190810190620052df565b905080516002620018ae919062005139565b6001600160401b03811115620018c857620018c86200467c565b604051908082528060200260200182016040528015620018f2578160200160208202803683370190505b50915060005b81518110156200196157818181518110620019175762001917620052c9565b6020026020010151838281518110620019345762001934620052c9565b6001600160a01b039092166020928302919091019091015280620019588162005378565b915050620018f8565b50505b6101065481516001600160a01b03909116908290620019869060019062005394565b81518110620019995762001999620052c9565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019cb919062005394565b81518110620019de57620019de620052c9565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a319291610108913090889060040162005496565b6020604051808303816000875af115801562001a51573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a779190620050be565b60fe55805162001a909061010f90602084019062004492565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001b029290916101089190620054f6565b60405180910390a150801562001b52576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b6362003372565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b94612710606462005055565b60fc5460fb5462001ba6919062005055565b62001bb2919062005116565b9050600062001bc5612710606462005055565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf390309060040162004640565b602060405180830381865afa15801562001c11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c379190620050be565b60fb5462001c46919062005055565b62001c52919062005116565b905062001c5f8562002f1e565b62001da95760028401805460ff1916600190811790915560fb5490850181905562001cb99086903090849062001c9790879062005139565b62001ca3919062005139565b610105546001600160a01b031692919062003874565b811562001ce65760ff546101055462001ce6916001600160a01b03918216916101009091041684620038d0565b801562001d6b5762001d6b836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d30573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d569190620052a9565b610105546001600160a01b03169083620038d0565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001da0929190620050a5565b60405180910390a15b505050505062001db96001606555565b565b6001600160a01b038116331462001e2d5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153f565b620011868282620038f2565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e845760405162461bcd60e51b81526004016200153f9062005525565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb86200395c565b6001600160a01b03161462001ee15760405162461bcd60e51b81526004016200153f9062005560565b62001eec8162003979565b604080516000808252602082019092526200119f91839190620039bb565b62001f1462003335565b62001f1f8162003431565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000dfc9392169190620050fc565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fc25760405162461bcd60e51b81526004016200153f9062005525565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff66200395c565b6001600160a01b0316146200201f5760405162461bcd60e51b81526004016200153f9062005560565b6200202a8262003979565b6200118682826001620039bb565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206e62002e58565b60405160240162002082939291906200559b565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020c190620044f8565b620020ce929190620055be565b604051809103906000f080158015620020eb573d6000803e3d6000fd5b509050620020fc81878787620031e6565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a65760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153f565b506000805160206200602783398151915290565b620021c462003372565b620021ce62003b33565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200223257602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002213575b50505050509050600080600090505b82518110156200236d57828181518110620022605762002260620052c9565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002297929190620050a5565b6020604051808303816000875af1158015620022b7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022dd9190620050be565b9150811562002358576001600160a01b038416600090815261010b602052604081208451849290869085908110620023195762002319620052c9565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020600082825462002352919062005139565b90915550505b80620023648162005378565b91505062002241565b506101055462002389906001600160a01b031684308762003874565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b790849062005139565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023f09085908790620050a5565b60405180910390a15050506200119f6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243c62002e58565b60405160240162002450939291906200559b565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248f90620044f8565b6200249c929190620055be565b604051809103906000f080158015620024b9573d6000803e3d6000fd5b509050620024ca8187878762002ccb565b60c087015191945092506001600160a01b0316620025d5576103e88560e00151511115620025535760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153f565b600083604051602001620025689190620055e4565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025d257620025bd828860e001518381518110620025af57620025af620052c9565b602002602001015162003728565b80620025c98162005378565b91505062002583565b50505b6200263183604051602001620025ec9190620055e4565b604051602081830303815290604052805190602001208460405160200162002615919062005601565b604051602081830303815290604052805190602001206200381f565b620026658360405160200162002648919062005601565b604051602081830303815290604052805190602001208362003728565b50935093915050565b6200267862003372565b6200268262003b33565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b690869062005394565b1015620026d657604051634e23e81760e11b815260040160405180910390fd5b61010554620026f0906001600160a01b03168486620038d0565b60005b8254811015620029a0576000838281548110620027145762002714620052c9565b6000918252602090912001546001600160a01b031690506200273e8163f1801e6160e01b62003b5c565b15620028c457604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027749088908a90600401620050a5565b6020604051808303816000875af115801562002794573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027ba9190620050be565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027fb57620027fb620052c9565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284f576040516311423e6360e31b815260048101859052602481018290526044016200153f565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620028825762002882620052c9565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b890849062005394565b9091555050506200298a565b83548490620028d69060019062005394565b81548110620028e957620028e9620052c9565b9060005260206000200160009054906101000a90046001600160a01b03168483815481106200291c576200291c620052c9565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295d576200295d62005624565b600082815260209020810160001990810180546001600160a01b03191690550190556200298a8162003460565b5080620029978162005378565b915050620026f3565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cf90849062005394565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023f09085908790620050a5565b62002a1262003372565b62002a1c62003335565b60ff80541662002a3f576040516365b1ee3960e11b815260040160405180910390fd5b62002a4a8262002f1e565b62002a6857604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab98362003b84565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0e9216908490620038d0565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4793929190620050d8565b60405180910390a150620011866001606555565b62002b65620034be565b62001db9600062003c99565b62002b7b62003335565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bf191908101906200563a565b60200151905062002c028162003431565b620011868162003460565b62002c1762003335565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c63573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8d91908101906200563a565b60200151905062002c9e8162003431565b62002cba6001600160a01b03821663f1801e6160e01b62003b5c565b156200118657620011868162003521565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf65750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5457602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d35575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d8c908b9060200162005805565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc49796959493929190620058ae565b6020604051808303816000875af115801562002de4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e0a9190620050be565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e459594939291906200591f565b60405180910390a1505094509492505050565b60008062002e6e6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee5575060408051601f3d908101601f1916820190925262002ee291810190620052a9565b60015b62000d8b57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f72620034be565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fc2576040516375e686b760e11b815260040160405180910390fd5b62001db962003ceb565b610109805462002fdc906200514f565b80601f01602080910402602001604051908101604052809291908181526020018280546200300a906200514f565b80156200305b5780601f106200302f576101008083540402835291602001916200305b565b820191906000526020600020905b8154815290600101906020018083116200303d57829003601f168201915b505050505081565b6200306d62003372565b336200307981620033cd565b620030848162003b84565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030ff919062004506565b60208101516101055462003121916001600160a01b03909116908490620038d0565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003158929190620050a5565b60405180910390a1505062001db96001606555565b6200317c612710600a62005055565b81565b600054610100900460ff16620031a95760405162461bcd60e51b81526004016200153f906200595b565b6200119f8162003c99565b610108805462002fdc906200514f565b620031cf82620012de565b620031da816200371c565b620014548383620038f2565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032115750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003250575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d8c908b90602001620059a6565b600062000d8b60008051602062005fe78339815191528362002ef3565b620032ce620034be565b6001600160a01b038116620031a95760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153f565b6200335060008051602062005fe78339815191523362002ef3565b62001db9573360405163fc4be72f60e01b81526004016200153f919062004640565b600260655403620033c65760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153f565b6002606555565b620033d88162002f1e565b6200119f57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119f576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119f576040516303988b8160e61b815260040160405180910390fd5b6001606555565b6200346b8162003431565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000dfc90839062004640565b33620034c962002e58565b6001600160a01b03161462001db95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153f565b6001600160a01b038116600090815261010a602052604090205460ff16156200355d576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000dfc90839062004640565b806001600160a01b0316826001600160a01b031614620011865760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371657826001600160a01b03168282815481106200362a576200362a620052c9565b6000918252602090912001546001600160a01b031603620037015781548290620036579060019062005394565b815481106200366a576200366a620052c9565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369d576200369d620052c9565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036de57620036de62005624565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370d8162005378565b91505062003601565b50505050565b6200119f813362003d4f565b62003734828262002ef3565b6200118657600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376e3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037eb5760405162461bcd60e51b81526004016200153f906200595b565b62001db962003db3565b600054610100900460ff1662001db95760405162461bcd60e51b81526004016200153f906200595b565b60006200382c83620012de565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003716846323b872dd60e01b8585856040516024016200389893929190620050d8565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003ddd565b620014548363a9059cbb60e01b848460405160240162003898929190620050a5565b620038fe828262002ef3565b156200118657600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006027833981519152546001600160a01b031690565b336200398462002e58565b6001600160a01b0316146200119f57336200399e62002e58565b60405163163678e960e01b81526004016200153f929190620050fc565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039f157620014548362003eb9565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4e575060408051601f3d908101601f1916820190925262003a4b91810190620050be565b60015b62003ab35760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153f565b60008051602062006027833981519152811462003b255760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153f565b506200145483838362003f58565b62003b3e3362002f1e565b62001db957604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b698362003f83565b801562003b7d575062003b7d838362003fbb565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bf157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bd2575b5050505050905060005b8151811015620014545781818151811062003c1a5762003c1a620052c9565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4f919062004640565b600060405180830381600087803b15801562003c6a57600080fd5b505af115801562003c7f573d6000803e3d6000fd5b50505050808062003c909062005378565b91505062003bfb565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d459060009062004640565b60405180910390a1565b62003d5b828262002ef3565b620011865762003d6b8162004046565b62003d7883602062004059565b60405160200162003d8b92919062005a2f565b60408051601f198184030181529082905262461bcd60e51b82526200153f9160040162004fb7565b600054610100900460ff16620034595760405162461bcd60e51b81526004016200153f906200595b565b600062003e34826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042129092919063ffffffff16565b905080516000148062003e5857508080602001905181019062003e58919062005aa2565b620014545760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153f565b62003ec481620037b2565b62003f285760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153f565b6000805160206200602783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f63836200422b565b60008251118062003f715750805b1562001454576200371683836200426d565b600062003f98826301ffc9a760e01b62003fbb565b801562000d8b575062003fb4826001600160e01b031962003fbb565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402e575060208210155b80156200403b5750600081115b979650505050505050565b606062000d8b6001600160a01b03831660145b606060006200406a83600262005055565b6200407790600262005139565b6001600160401b038111156200409157620040916200467c565b6040519080825280601f01601f191660200182016040528015620040bc576020820181803683370190505b509050600360fc1b81600081518110620040da57620040da620052c9565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106200410c576200410c620052c9565b60200101906001600160f81b031916908160001a90535060006200413284600262005055565b6200413f90600162005139565b90505b6001811115620041c1576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041775762004177620052c9565b1a60f81b828281518110620041905762004190620052c9565b60200101906001600160f81b031916908160001a90535060049490941c93620041b98162005ac2565b905062004142565b50831562003b7d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153f565b606062004223848460008562004295565b949350505050565b620042368162003eb9565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7d838360405180606001604052806027815260200162006047602791396200436d565b606082471015620042f85760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153f565b600080866001600160a01b0316858760405162004316919062005adc565b60006040518083038185875af1925050503d806000811462004355576040519150601f19603f3d011682016040523d82523d6000602084013e6200435a565b606091505b50915091506200403b87838387620043eb565b6060600080856001600160a01b0316856040516200438c919062005adc565b600060405180830381855af49150503d8060008114620043c9576040519150601f19603f3d011682016040523d82523d6000602084013e620043ce565b606091505b5091509150620043e186838387620043eb565b9695505050505050565b606083156200445f57825160000362004457576200440985620037b2565b620044575760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153f565b508162004223565b620042238383815115620044765781518083602001fd5b8060405162461bcd60e51b81526004016200153f919062004fb7565b828054828255906000526020600020908101928215620044ea579160200282015b82811115620044ea57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b3565b5062002eef92915062004521565b6104ec8062005afb83390190565b50805460008255906000526020600020908101906200119f91905b5b8082111562002eef576000815560010162004522565b6000602082840312156200454b57600080fd5b81356001600160e01b03198116811462003b7d57600080fd5b6000602082840312156200457757600080fd5b5035919050565b6001600160a01b03811681146200119f57600080fd5b8035620045a1816200457e565b919050565b60008060408385031215620045ba57600080fd5b8235620045c7816200457e565b91506020830135620045d9816200457e565b809150509250929050565b600060208284031215620045f757600080fd5b813562003b7d816200457e565b600080604083850312156200461857600080fd5b823562004625816200457e565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466857600080fd5b823591506020830135620045d9816200457e565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b757620046b76200467c565b60405290565b60405161018081016001600160401b0381118282101715620046b757620046b76200467c565b60405160c081016001600160401b0381118282101715620046b757620046b76200467c565b60405161010081016001600160401b0381118282101715620046b757620046b76200467c565b604051601f8201601f191681016001600160401b03811182821017156200475957620047596200467c565b604052919050565b60006001600160401b038211156200477d576200477d6200467c565b50601f01601f191660200190565b6000620047a26200479c8462004761565b6200472e565b9050828152838383011115620047b757600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047e057600080fd5b62003b7d838335602085016200478b565b6000604082840312156200480457600080fd5b6200480e62004692565b82358152905060208201356001600160401b038111156200482e57600080fd5b6200483c84828501620047ce565b60208301525092915050565b80151581146200119f57600080fd5b8035620045a18162004848565b600080600080608085870312156200487b57600080fd5b84356001600160401b03808211156200489357600080fd5b908601906101808289031215620048a957600080fd5b620048b3620046bd565b620048be8362004594565b8152620048ce6020840162004594565b6020820152604083013560408201526060830135606082015260808301356080820152620048ff60a0840162004594565b60a08201526200491260c0840162004594565b60c082015260e0830135828111156200492a57600080fd5b620049388a828601620047f1565b60e0830152506101006200494e81850162004594565b9082015261012083810135838111156200496757600080fd5b620049758b828701620047ce565b8284015250506101406200498b81850162004857565b908201526101608381013583811115620049a457600080fd5b620049b28b828701620047ce565b828401525050809650505050620049cc6020860162004594565b9250620049dc6040860162004594565b9150620049ec6060860162004594565b905092959194509250565b6000806040838503121562004a0b57600080fd5b823562004a18816200457e565b915060208301356001600160401b0381111562004a3457600080fd5b8301601f8101851362004a4657600080fd5b62004a57858235602084016200478b565b9150509250929050565b60006080828403121562004a7457600080fd5b604051608081016001600160401b038111828210171562004a995762004a996200467c565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b803560038110620045a157600080fd5b600481106200119f57600080fd5b8035620045a18162004ada565b60006020828403121562004b0857600080fd5b604051602081016001600160401b038111828210171562004b2d5762004b2d6200467c565b6040529135825250919050565b600060c0828403121562004b4d57600080fd5b62004b57620046e3565b9050813562004b66816200457e565b8152602082013562004b78816200457e565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bc157600080fd5b60405160e081016001600160401b038111828210171562004be65762004be66200467c565b60405290508062004bf8848462004a61565b815262004c086080840162004aca565b602082015260a083013562004c1d8162004ada565b604082015262004c318460c0850162004af5565b606082015262004c458460e0850162004b3a565b60808201526101a083013562004c5b816200457e565b60a082015262004c6f6101c0840162004594565b60c08201525092915050565b6000806000610220848603121562004c9257600080fd5b833562004c9f816200457e565b925062004cb0856020860162004bad565b91506102008401356001600160401b0381111562004ccd57600080fd5b62004cdb86828701620047f1565b9150509250925092565b60006001600160401b0382111562004d015762004d016200467c565b5060051b60200190565b600082601f83011262004d1d57600080fd5b8135602062004d306200479c8362004ce5565b82815260059290921b8401810191818101908684111562004d5057600080fd5b8286015b8481101562004d7857803562004d6a816200457e565b835291830191830162004d54565b509695505050505050565b6000610200828403121562004d9757600080fd5b62004da162004708565b905062004daf838362004a61565b815262004dbf6080830162004aca565b602082015262004dd260a0830162004ae8565b604082015262004de68360c0840162004af5565b606082015262004dfa8360e0840162004b3a565b608082015262004e0e6101a0830162004594565b60a082015262004e226101c0830162004594565b60c08201526101e08201356001600160401b0381111562004e4257600080fd5b62004e508482850162004d0b565b60e08301525092915050565b60008060006060848603121562004e7257600080fd5b833562004e7f816200457e565b925060208401356001600160401b038082111562004e9c57600080fd5b62004eaa8783880162004d83565b9350604086013591508082111562004ec157600080fd5b5062004cdb86828701620047f1565b6000806000806080858703121562004ee757600080fd5b843562004ef4816200457e565b9350602085013562004f06816200457e565b925060408501356001600160401b038082111562004f2357600080fd5b62004f318883890162004d83565b9350606087013591508082111562004f4857600080fd5b5062004f5787828801620047f1565b91505092959194509250565b60005b8381101562004f8057818101518382015260200162004f66565b50506000910152565b6000815180845262004fa381602086016020860162004f63565b601f01601f19169290920160200192915050565b60208152600062003b7d602083018462004f89565b600080600080610240858703121562004fe457600080fd5b843562004ff1816200457e565b9350602085013562005003816200457e565b925062005014866040870162004bad565b91506102208501356001600160401b038111156200503157600080fd5b62004f5787828801620047f1565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d8b5762000d8b6200503f565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509857600080fd5b815162003b7d8162004ada565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050d157600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513457634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d8b5762000d8b6200503f565b600181811c908216806200516457607f821691505b6020821081036200518557634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145457600081815260208120601f850160051c81016020861015620051b45750805b601f850160051c820191505b81811015620051d557828155600101620051c0565b505050505050565b81516001600160401b03811115620051f957620051f96200467c565b62005211816200520a84546200514f565b846200518b565b602080601f831160018114620052495760008415620052305750858301515b600019600386901b1c1916600185901b178555620051d5565b600085815260208120601f198616915b828110156200527a5788860151825594840194600190910190840162005259565b5085821015620052995787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052bc57600080fd5b815162003b7d816200457e565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f357600080fd5b82516001600160401b038111156200530a57600080fd5b8301601f810185136200531c57600080fd5b80516200532d6200479c8262004ce5565b81815260059190911b820183019083810190878311156200534d57600080fd5b928401925b828410156200403b57835162005368816200457e565b8252928401929084019062005352565b6000600182016200538d576200538d6200503f565b5060010190565b8181038181111562000d8b5762000d8b6200503f565b60008154620053b9816200514f565b808552602060018381168015620053d95760018114620053f45762005424565b60ff1985168884015283151560051b88018301955062005424565b866000528260002060005b858110156200541c5781548a8201860152908301908401620053ff565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004223604085018262004f89565b600081518084526020808501945080840160005b838110156200548b5781516001600160a01b03168752958201959082019060010162005464565b509495945050505050565b85815260a060208201526000620054b160a0830187620053aa565b8281036040840152620054c581876200542f565b6001600160a01b038616606085015283810360808501529050620054ea818562005450565b98975050505050505050565b838152606060208201526000620055116060830185620053aa565b8281036040840152620043e181856200542f565b6020808252602c908201526000805160206200600783398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600783398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042239083018462004f89565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564e57600080fd5b82516001600160401b03808211156200566657600080fd5b9084019060c082870312156200567b57600080fd5b62005685620046e3565b825181528383015162005698816200457e565b818501526040830151620056ac816200457e565b6040820152606083015182811115620056c457600080fd5b830160408189031215620056d757600080fd5b620056e162004692565b815181528582015184811115620056f757600080fd5b82019350601f840189136200570b57600080fd5b835191506200571e6200479c8362004761565b82815289878487010111156200573357600080fd5b620057448388830189880162004f63565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a957620057a96200506f565b9052565b60048110620057a957620057a96200506f565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b602081526200581960208201835162005770565b600060208301516200582f60a084018262005796565b5060408301516200584460c0840182620057ad565b5060608301515160e0830152608083015162005865610100840182620057c0565b5060a08301516200587b6101c084018262004633565b5060c0830151620058916101e084018262004633565b5060e0830151610200838101526200422361022084018262005450565b878152600060018060a01b03808916602084015260e06040840152620058d860e084018962004f89565b818816606085015286608085015283810360a0850152620058fa81876200542f565b91505082810360c084015262005911818562005450565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200403b908301846200542f565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059bc82845162005770565b6020830151620059d0608084018262005796565b506040830151620059e560a0840182620057ad565b5060608301515160c0830152608083015162005a0560e0840182620057c0565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6381601785016020880162004f63565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9681602884016020880162004f63565b01602801949350505050565b60006020828403121562005ab557600080fd5b815162003b7d8162004848565b60008162005ad45762005ad46200503f565b506000190190565b6000825162005af081846020870162004f63565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220eb4556dd26edee48f4bb15c8bc758359b6156c983f6a75864cfbb4f7fa99c7ed64736f6c63430008130033","sourceMap":"522:2047:108:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:43;;;;;;;;;;-1:-1:-1;3050:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:142;;463:22;445:41;;433:2;418:18;3050:213:43;;;;;;;;23671:115:107;;;;;;;;;;-1:-1:-1;23760:19:107;;23671:115;;;643:25:142;;;631:2;616:18;23671:115:107;497:177:142;5999:24:107;;;;;;;;;;;;;;;;23988:288;;;;;;;;;;-1:-1:-1;23988:288:107;;;;;:::i;:::-;;:::i;:::-;;13750:1170;;;;;;;;;;-1:-1:-1;13750:1170:107;;;;;:::i;:::-;;:::i;20288:128::-;;;;;;;;;;-1:-1:-1;20288:128:107;;;;;:::i;:::-;;:::i;9654:110::-;;;;;;;;;;-1:-1:-1;9654:110:107;;;;;:::i;:::-;;:::i;6080:25::-;;;;;;;;;;-1:-1:-1;6080:25:107;;;;;;;;19453:128;;;;;;;;;;-1:-1:-1;19453:128:107;;;;;:::i;:::-;;:::i;14926:699::-;;;;;;;;;;-1:-1:-1;14926:699:107;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23188:477:107:-;;;;;;;;;;;;;:::i;7636:82::-;;;;;;;;;;-1:-1:-1;7636:82:107;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;18969:151::-;;;;;;;;;;-1:-1:-1;18969:151:107;;;;;:::i;:::-;-1:-1:-1;;;;;19072:28:107;19046:7;19072:28;;;:19;:28;;;;;:41;;;;18969:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23792:190:107:-;;;;;;;;;;-1:-1:-1;23792:190:107;;;;;:::i;:::-;;:::i;5900:25::-;;;;;;;;;;;;;;;;10044:2497;;;;;;;;;;-1:-1:-1;10044:2497:107;;;;;:::i;:::-;;:::i;21250:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20422:248:107:-;;;;;;;;;;-1:-1:-1;20422:248:107;;;;;:::i;:::-;;:::i;7171:68::-;;;;;;;;;;-1:-1:-1;7171:68:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;7796:107;;;;;;;;;;-1:-1:-1;7796:107:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12547:531:107:-;;;;;;;;;;-1:-1:-1;12547:531:107;;;;;:::i;:::-;;:::i;:::-;;;;12805:25:142;;;-1:-1:-1;;;;;12866:32:142;;;12861:2;12846:18;;12839:60;12778:18;12547:531:107;12631:274:142;2762:131:64;;;;;;;;;;;;;:::i;16070:1009:107:-;;;;;;;;;;-1:-1:-1;16070:1009:107;;;;;:::i;:::-;;:::i;584:1317:108:-;;;;;;;;;;-1:-1:-1;584:1317:108;;;;;:::i;:::-;;:::i;6450:31:107:-;;;;;;;;;;-1:-1:-1;6450:31:107;;;;-1:-1:-1;;;;;6450:31:107;;;17222:1562;;;;;;;;;;-1:-1:-1;17222:1562:107;;;;;:::i;:::-;;:::i;7307:98::-;;;;;;;;;;-1:-1:-1;7307:98:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25409:583;;;;;;;;;;-1:-1:-1;25409:583:107;;;;;:::i;:::-;;:::i;6549:41::-;;;;;;;;;;-1:-1:-1;6549:41:107;;;;-1:-1:-1;;;;;6549:41:107;;;6809:24;;;;;;;;;;-1:-1:-1;6809:24:107;;;;-1:-1:-1;;;;;6809:24:107;;;2085:101:45;;;;;;;;;;;;;:::i;19845:237:107:-;;;;;;;;;;-1:-1:-1;19845:237:107;;;;;:::i;:::-;;:::i;8237:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8237:68:107;;6353:38;;;;;;;;;;-1:-1:-1;6353:38:107;;;;-1:-1:-1;;;;;6353:38:107;;;18790:173;;;;;;;;;;-1:-1:-1;18790:173:107;;;;;:::i;:::-;-1:-1:-1;;;;;18915:30:107;;;18889:7;18915:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18790:173;5695:34;;;;;;;;;;;;;;;;6640:25;;;;;;;;;;-1:-1:-1;6640:25:107;;;;-1:-1:-1;;;;;6640:25:107;;;19126:321;;;;;;;;;;-1:-1:-1;19126:321:107;;;;;:::i;:::-;;:::i;1907:660:108:-;;;;;;;;;;-1:-1:-1;1907:660:108;;;;;:::i;:::-;;:::i;7505:60:107:-;;;;;;;;;;-1:-1:-1;7505:60:107;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7505:60:107;;;;;;;;;;;;;-1:-1:-1;;;;;17412:32:142;;;17394:51;;17476:2;17461:18;;17454:34;;;;17531:14;17524:22;17504:18;;;17497:50;17382:2;17367:18;7505:60:107;17198:355:142;5806:27:107;;;;;;;;;;;;;;;;525:604:105;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5279:75:107:-;;;;;;;;;;;;5312:42;5279:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21054:190:107;;;;;;;;;;-1:-1:-1;21054:190:107;;;;;:::i;:::-;;:::i;9770:124::-;;;;;;;;;;-1:-1:-1;9770:124:107;;;;;:::i;:::-;;:::i;6172:26::-;;;;;;;;;;-1:-1:-1;6172:26:107;;;;;;;-1:-1:-1;;;;;6172:26:107;;;20869:179;;;;;;;;;;;;;:::i;7025:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24458:465::-;;;;;;;;;;;;;:::i;5568:54::-;;;;;;;;;;;;;:::i;404:115:105:-;;;;;;;;;;-1:-1:-1;404:115:105;;;;;:::i;:::-;;:::i;6940:27:107:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6881:17:107:-;;;;;;;;;;-1:-1:-1;6881:17:107;;;;-1:-1:-1;;;;;6881:17:107;;;5444:49;;;;;;;;;;;;5486:7;5444:49;;6728:25;;;;;;;;;;-1:-1:-1;6728:25:107;;;;-1:-1:-1;;;;;6728:25:107;;;13084:660;;;;;;;;;;-1:-1:-1;13084:660:107;;;;;:::i;:::-;;:::i;24319:133::-;;;;;;;;;;-1:-1:-1;24319:133:107;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6256:30:107:-;;;;;;;;;;-1:-1:-1;6256:30:107;;;;-1:-1:-1;;;;;6256:30:107;;;5155:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5155:38:107;;;;;3050:213:43;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;23988:288:107:-;24064:17;:15;:17::i;:::-;5602:20;5486:7;5602:2;:20;:::i;:::-;24095:16;:26;24091:86;;;24144:22;;-1:-1:-1;;;24144:22:107;;;;;;;;;;;24091:86;24186:12;:31;;;24232:37;;643:25:142;;;24232:37:107;;631:2:142;616:18;24232:37:107;;;;;;;;23988:288;:::o;13750:1170::-;2526:21:48;:19;:21::i;:::-;13858:34:107::1;13884:7;13858:25;:34::i;:::-;13902:30;13922:9;13902:19;:30::i;:::-;13942:29;13961:9;13942:18;:29::i;:::-;-1:-1:-1::0;;;;;13986:36:107;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;13982:107;;;14056:22;;-1:-1:-1::0;;;14056:22:107::1;;;;;;;;;;;13982:107;-1:-1:-1::0;;;;;14122:28:107;;::::1;14099:20;14122:28:::0;;;:19:::1;:28;::::0;;;;;;;;14099:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14245:19:::1;::::0;14325:21:::1;14294:9;-1:-1:-1::0;;;;;14279:40:107::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14275:354:::1;;14381:51;::::0;-1:-1:-1;;;14381:51:107;;-1:-1:-1;;;;;14381:39:107;::::1;::::0;::::1;::::0;:51:::1;::::0;14421:7;;14430:1:::1;::::0;14381:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14362:70;;14275:354;;;14499:17;14468:9;-1:-1:-1::0;;;;;14453:40:107::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14449:180;;14551:67;::::0;-1:-1:-1;;;14551:67:107;;-1:-1:-1;;;;;14551:39:107;::::1;::::0;::::1;::::0;:67:::1;::::0;14591:7;;14600:17;;14551:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14532:86;;14449:180;-1:-1:-1::0;;;;;14639:30:107;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14728:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14728:54:107::1;14778:4;14728:54:::0;;::::1;::::0;;;14793:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14793:43:107::1;::::0;;::::1;::::0;;;14852:61;::::1;::::0;::::1;::::0;14661:7;;14670:9;;14683:16;;14852:61:::1;:::i;:::-;;;;;;;;13848:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13750:1170:107;;:::o;20288:128::-;20356:17;:15;:17::i;:::-;20383:26;20399:9;20383:15;:26::i;:::-;20288:128;:::o;9654:110::-;1355:13:45;:11;:13::i;:::-;9730:16:107::1;:27:::0;;-1:-1:-1;;;;;;9730:27:107::1;-1:-1:-1::0;;;;;9730:27:107;;;::::1;::::0;;;::::1;::::0;;9654:110::o;19453:128::-;19521:17;:15;:17::i;:::-;19548:26;19561:12;19548;:26::i;14926:699::-;15023:34;15049:7;15023:25;:34::i;:::-;15067:29;15086:9;15067:18;:29::i;:::-;15106:42;15126:10;15138:9;15106:19;:42::i;:::-;-1:-1:-1;;;;;15164:36:107;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15159:110;;15234:24;;-1:-1:-1;;;15234:24:107;;;;;;;;;;;15159:110;-1:-1:-1;;;;;15279:36:107;;;15329:5;15279:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15279:55:107;;;15344:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15399:44;15307:7;15316:9;15399:24;:44::i;:::-;15573:45;15599:7;15608:9;15573:45;;;;;;;:::i;:::-;;;;;;;;14926:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23188:477:107:-;23321:15;;23251:7;;-1:-1:-1;;;;;23321:15:107;23251:7;23416:21;5486:7;23416:3;:21;:::i;:::-;23399:12;;23377:19;;:34;;;;:::i;:::-;23376:62;;;;:::i;:::-;23347:91;-1:-1:-1;23448:24:107;23559:21;5486:7;23559:3;:21;:::i;:::-;23510:44;;-1:-1:-1;;;23510:44:107;;-1:-1:-1;;;;;23510:29:107;;;;;:44;;23548:4;;23510:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23488:19;;:66;;;;:::i;:::-;23487:94;;;;:::i;:::-;23448:133;;23642:16;23621:18;23599:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23592:66;;;;;23188:477;:::o;7636:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7636:82:107;;-1:-1:-1;7636:82:107;;-1:-1:-1;7636:82:107:o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23792:190:107:-;23869:17;:15;:17::i;:::-;23896:19;:32;;;23943;;643:25:142;;;23943:32:107;;631:2:142;616:18;23943:32:107;497:177:142;10044:2497:107;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22268:2:142;3325:201:47;;;22250:21:142;22307:2;22287:18;;;22280:30;22346:34;22326:18;;;22319:62;-1:-1:-1;;;22397:18:142;;;22390:44;22451:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10261:24:107::1;10278:6;10261:16;:24::i;:::-;10295;:22;:24::i;:::-;10329:22;:20;:22::i;:::-;10362:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10362:13:107;:49::i;:::-;10422:48;10449:6;:19;;;10422:18;:48::i;:::-;10480:39;10499:6;:19;;;10480:18;:39::i;:::-;10548:12:::0;;10529:32:::1;::::0;:18:::1;:32::i;:::-;10571:43;10590:6;:23;;;10571:18;:43::i;:::-;10629:20;::::0;::::1;::::0;:25;10625:95:::1;;10670:39;10689:6;:19;;;10670:18;:39::i;:::-;10742:12:::0;;10729:4:::1;:26:::0;;-1:-1:-1;;;;;10729:26:107;;::::1;-1:-1:-1::0;;;;;;10729:26:107;;::::1;;::::0;;;10779:19:::1;::::0;::::1;::::0;10765:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10812:27:::1;::::0;::::1;::::0;10742:12:::1;10812:32:::0;10808:89:::1;;10867:19;;-1:-1:-1::0;;;10867:19:107::1;;;;;;;;;;;10808:89;10928:27;::::0;::::1;::::0;10906:19:::1;:49:::0;10980:20:::1;::::0;::::1;::::0;10965:12:::1;:35:::0;11026:21:::1;::::0;::::1;::::0;11010:13:::1;:37:::0;;-1:-1:-1;;11010:37:107::1;::::0;::::1;;::::0;;;::::1;::::0;;11073:21:::1;::::0;::::1;::::0;11057:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11123:23:107::1;::::0;::::1;::::0;11104:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11175:23:107::1;::::0;::::1;::::0;11157:15:::1;:41:::0;;-1:-1:-1;;;;;;11157:41:107;;::::1;-1:-1:-1::0;;;;;11157:41:107;;::::1;;::::0;;11222:19:::1;::::0;::::1;::::0;11208:11:::1;:33:::0;;-1:-1:-1;;;;;;11208:33:107::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11271:19;;::::1;::::0;11251:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11302:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8278:27:107;11302:10:::1;:47::i;:::-;11381:4;;;;;;;;;-1:-1:-1::0;;;;;11381:4:107::1;-1:-1:-1::0;;;;;11381:16:107::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11360:8;:40:::0;;-1:-1:-1;;;;;;11360:40:107::1;-1:-1:-1::0;;;;;11360:40:107;;::::1;;::::0;;11507:11:::1;::::0;11411:36:::1;::::0;11507:11:::1;11499:32;-1:-1:-1::0;11499:37:107;11495:427:::1;;11574:16;::::0;;11588:1:::1;11574:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11574:16:107::1;11552:38;;11629:10;11604:19;11624:1;11604:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11604:35:107::1;;;-1:-1:-1::0;;;;;11604:35:107::1;;;::::0;::::1;11495:427;;;11696:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11696:23:107;;;;11670::::1;::::0;-1:-1:-1;;;;;11696:11:107::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11670;;11696;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11696:23:107::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11670:49;;11769:6;:13;11785:1;11769:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11755:32:107::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11755:32:107::1;;11733:54;;11806:9;11801:111;11825:6;:13;11821:1;:17;11801:111;;;11888:6;11895:1;11888:9;;;;;;;;:::i;:::-;;;;;;;11863:19;11883:1;11863:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11863:34:107;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11840:3;::::1;::::0;::::1;:::i;:::-;;;;11801:111;;;;11656:266;11495:427;11994:11;::::0;11952:26;;-1:-1:-1;;;;;11994:11:107;;::::1;::::0;11932:19;;11952:30:::1;::::0;11994:11;;11952:30:::1;:::i;:::-;11932:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;11932:74:107::1;;;-1:-1:-1::0;;;;;11932:74:107::1;;;::::0;::::1;12078:4;12016:19;12065:1;12036:19;:26;:30;;;;:::i;:::-;12016:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12016:67:107;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12195:8:::1;::::0;12218:13:::1;::::0;::::1;::::0;12248:16:::1;::::0;::::1;::::0;12195:106:::1;::::0;-1:-1:-1;;;12195:106:107;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12218:13;12233::::1;::::0;12274:4:::1;::::0;12281:19;;12195:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12171:9;:130:::0;12312:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12359:16:107::1;:36:::0;;-1:-1:-1;;;;;12359:36:107;;::::1;-1:-1:-1::0;;;;;;12359:36:107;;::::1;;::::0;;;12405:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12491:9:::1;::::0;12517:16:::1;::::0;::::1;::::0;12471:63:::1;::::0;::::1;::::0;::::1;::::0;12491:9;;12502:13:::1;::::0;12517:16;12471:63:::1;:::i;:::-;;;;;;;;10251:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;29847:36:142;;3721:14:47;;29835:2:142;29820:18;3721:14:47;;;;;;;3647:99;3269:483;10044:2497:107;;;;:::o;21250:1932::-;2526:21:48;:19;:21::i;:::-;21340:10:107::1;21322:15;21387:28:::0;;;:19:::1;:28;::::0;;;;21476:15:::1;::::0;21387:28;;-1:-1:-1;;;;;21476:15:107;;::::1;::::0;21571:21:::1;5486:7;21571:3;:21;:::i;:::-;21554:12;;21532:19;;:34;;;;:::i;:::-;21531:62;;;;:::i;:::-;21502:91:::0;-1:-1:-1;21603:24:107::1;21714:21;5486:7;21714:3;:21;:::i;:::-;21665:44;::::0;-1:-1:-1;;;21665:44:107;;-1:-1:-1;;;;;21665:29:107;::::1;::::0;::::1;::::0;:44:::1;::::0;21703:4:::1;::::0;21665:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21643:19;;:66;;;;:::i;:::-;21642:94;;;;:::i;:::-;21603:133;;21751:17;21760:7;21751:8;:17::i;:::-;21746:1430;;21784:22;::::0;::::1;:29:::0;;-1:-1:-1;;21784:29:107::1;21809:4;21784:29:::0;;::::1;::::0;;;21853:19:::1;::::0;21828:22;;::::1;:44:::0;;;22024:143:::1;::::0;22070:7;;22087:4:::1;::::0;22137:16;;22094:40:::1;::::0;22116:18;;22094:40:::1;:::i;:::-;:59;;;;:::i;:::-;22024:11;::::0;-1:-1:-1;;;;;22024:11:107::1;::::0;:143;;:28:::1;:143::i;:::-;22592:22:::0;;22588:178:::1;;22719:11;::::0;22694::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22694:11:107;;::::1;::::0;22719::::1;::::0;;::::1;;22732:18:::0;22694:24:::1;:57::i;:::-;22849:20:::0;;22845:255:::1;;23003:82;23028:14;-1:-1:-1::0;;;;;23028:36:107::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23003:11;::::0;-1:-1:-1;;;;;23003:11:107::1;::::0;23068:16;23003:24:::1;:82::i;:::-;23119:46;23136:7;23145:19;;23119:46;;;;;;;:::i;:::-;;;;;;;;21746:1430;21312:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21250:1932:107:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;30096:2:142;6476:83:43;;;30078:21:142;30135:2;30115:18;;;30108:30;30174:34;30154:18;;;30147:62;-1:-1:-1;;;30225:18:142;;;30218:45;30280:19;;6476:83:43;29894:411:142;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20422:248:107:-:0;20494:17;:15;:17::i;:::-;20521:25;20540:5;20521:18;:25::i;:::-;20556:18;:26;;-1:-1:-1;;;;;;20556:26:107;-1:-1:-1;;;;;20556:26:107;;;;;;;;;20630:11;;20597:66;;;;;;20630:11;;;20556:26;20597:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12547:531:107:-:0;12840:16;;12936:4;;12943:23;;12705:14;;;;;;-1:-1:-1;;;;;12840:16:107;;;;-1:-1:-1;;;12898:28:107;12936:4;;;12943:23;12968:7;:5;:7::i;:::-;12875:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;12875:101:107;;;;;;;;;;;;;;-1:-1:-1;;;;;12875:101:107;-1:-1:-1;;;;;;12875:101:107;;;;;;;;;;12798:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12753:247;;13018:53;13029:13;13044:6;13052:7;13061:9;13018:10;:53::i;:::-;13011:60;;;;;12547:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;32364:2:142;2064:92:64;;;32346:21:142;32403:2;32383:18;;;32376:30;32442:34;32422:18;;;32415:62;-1:-1:-1;;;32493:18:142;;;32486:54;32557:19;;2064:92:64;32162:420:142;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16070:1009:107:-;2526:21:48;:19;:21::i;:::-;16154:26:107::1;:24;:26::i;:::-;16207:10;16190:14;16263:26:::0;;;:18:::1;:26;::::0;;;;;;;16227:62;;;;;;::::1;::::0;;;;;;;;;;;;16263:26;;16227:62;;::::1;16263:26:::0;16227:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16227:62:107::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16300:24;16340:9:::0;16352:1:::1;16340:13;;16335:536;16359:16;:23;16355:1;:27;16335:536;;;16542:16;16559:1;16542:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16527:49:107::1;;16577:6;16585:13;16527:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16508:91:::0;-1:-1:-1;16617:21:107;;16613:232:::1;;-1:-1:-1::0;;;;;16658:29:107;::::1;;::::0;;;:21:::1;:29;::::0;;;;16688:19;;16712:16;;16658:29;16688:16;;16705:1;;16688:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16658:50:107::1;-1:-1:-1::0;;;;;16658:50:107::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16613:232:107::1;16384:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16335:536;;;-1:-1:-1::0;16881:11:107::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16881:11:107::1;16910:6:::0;16926:4:::1;16933:13:::0;16881:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;16957:27:107;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17001:13;;16957:27;:57:::1;::::0;17001:13;;16957:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17029:43:107::1;::::0;::::1;::::0;::::1;::::0;17050:6;;17058:13;;17029:43:::1;:::i;:::-;;;;;;;;16144:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;584:1317:108;877:16;;973:4;;980:23;;742:14;;;;;;-1:-1:-1;;;;;877:16:108;;;;-1:-1:-1;;;935:28:108;973:4;;;980:23;1005:7;:5;:7::i;:::-;912:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;912:101:108;;;;;;;;;;;;;;-1:-1:-1;;;;;912:101:108;-1:-1:-1;;;;;;912:101:108;;;;;;;;;;835:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;790:247;;1068:53;1079:13;1094:6;1102:7;1111:9;1068:10;:53::i;:::-;1144:19;;;;1047:74;;-1:-1:-1;1047:74:108;-1:-1:-1;;;;;;1136:42:108;1132:454;;1232:4;1198:7;:24;;;:31;:38;1194:134;;;1256:57;;-1:-1:-1;;;1256:57:108;;32789:2:142;1256:57:108;;;32771:21:142;32828:2;32808:18;;;32801:30;32867:34;32847:18;;;32840:62;-1:-1:-1;;;32918:18:142;;;32911:45;32973:19;;1256:57:108;32587:411:142;1194:134:108;1341:21;1405:6;1375:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1365:48;;;;;;1341:72;;1432:9;1427:149;1451:7;:24;;;:31;1447:1;:35;1427:149;;;1507:54;1518:13;1533:7;:24;;;1558:1;1533:27;;;;;;;;:::i;:::-;;;;;;;1507:10;:54::i;:::-;1484:3;;;;:::i;:::-;;;;1427:149;;;;1180:406;1132:454;1667:141;1734:6;1704:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1694:48;;;;;;1790:6;1754:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1744:54;;;;;;1667:13;:141::i;:::-;1818:76;1875:6;1839:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1829:54;;;;;;1885:8;1818:10;:76::i;:::-;780:1121;584:1317;;;;;;:::o;17222:1562:107:-;2526:21:48;:19;:21::i;:::-;17308:26:107::1;:24;:26::i;:::-;17361:10;17344:14;17418:26:::0;;;:18:::1;:26;::::0;;;;;;;17555:19:::1;::::0;17494::::1;:27:::0;;;;;;:40:::1;;::::0;17418:26;;17344:14;17555:19;17494:58:::1;::::0;17537:15;;17494:58:::1;:::i;:::-;:80;17490:140;;;17597:22;;-1:-1:-1::0;;;17597:22:107::1;;;;;;;;;;;17490:140;17639:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17639:11:107::1;17664:6:::0;17672:15;17639:24:::1;:49::i;:::-;17703:9;17698:951;17722:23:::0;;17718:27;::::1;17698:951;;;17766:16;17785;17802:1;17785:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17785:19:107::1;::::0;-1:-1:-1;17822:60:107::1;17785:19:::0;-1:-1:-1;;;17822:26:107::1;:60::i;:::-;17818:804;;;17921:63;::::0;-1:-1:-1;;;17921:63:107;;-1:-1:-1;;;;;17921:38:107;::::1;::::0;::::1;::::0;:63:::1;::::0;17960:6;;17968:15;;17921:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17902:82;;18002:20;18025:21;:29;18047:6;-1:-1:-1::0;;;;;18025:29:107::1;-1:-1:-1::0;;;;;18025:29:107::1;;;;;;;;;;;;:50;18055:16;18072:1;18055:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18055:19:107::1;18025:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18097:31:107;;::::1;18093:259;;;18159:57;::::0;-1:-1:-1;;;18159:57:107;;::::1;::::0;::::1;33842:25:142::0;;;33883:18;;;33876:34;;;33815:18;;18159:57:107::1;33668:248:142::0;18093:259:107::1;-1:-1:-1::0;;;;;18263:29:107;::::1;;::::0;;;:21:::1;:29;::::0;;;;18293:19;;18317:16;;18263:29;18293:16;;18310:1;;18293:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18293:19:107::1;18263:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18293:19;18263:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17884:482:107::1;17818:804;;;18496:23:::0;;18479:16;;18496:27:::1;::::0;18522:1:::1;::::0;18496:27:::1;:::i;:::-;18479:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18479:45:107::1;18457:16;18474:1;18457:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18457:67:107::1;;;;;-1:-1:-1::0;;;;;18457:67:107::1;;;;;;18542:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18542:22:107;;;;;-1:-1:-1;;;;;;18542:22:107::1;::::0;;;;;18582:25:::1;18598:8:::0;18582:15:::1;:25::i;:::-;-1:-1:-1::0;17747:3:107;::::1;::::0;::::1;:::i;:::-;;;;17698:951;;;-1:-1:-1::0;;;;;;18658:27:107;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18702:15;;18658:27;:59:::1;::::0;18702:15;;18658:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18732:45:107::1;::::0;::::1;::::0;::::1;::::0;18753:6;;18761:15;;18732:45:::1;:::i;25409:583::-:0;2526:21:48;:19;:21::i;:::-;25510:17:107::1;:15;:17::i;:::-;25542:13;::::0;;::::1;25537:68;;25578:16;;-1:-1:-1::0;;;25578:16:107::1;;;;;;;;;;;25537:68;25619:17;25628:7;25619:8;:17::i;:::-;25614:75;;25659:19;;-1:-1:-1::0;;;25659:19:107::1;;;;;;;;;;;25614:75;-1:-1:-1::0;;;;;25721:28:107;;::::1;25698:20;25721:28:::0;;;:19:::1;:28;::::0;;;;;;;;25698:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25759:32:::1;25741:7:::0;25759:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25808:28:107;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25801:35;;-1:-1:-1;;;;;;25801:35:107::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25801:35:107::1;::::0;;25890:19;::::1;::::0;25847:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25872:16;;25847:24:::1;:63::i;:::-;25925:60;25938:7;25947:16;25965:6;:19;;;25925:60;;;;;;;;:::i;:::-;;;;;;;;25500:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19845:237:107:-:0;19918:17;:15;:17::i;:::-;19972:4;;:20;;-1:-1:-1;;;19972:20:107;;;;;643:25:142;;;19945:16:107;;-1:-1:-1;;;;;19972:4:107;;:12;;616:18:142;;19972:20:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19972:20:107;;;;;;;;;;;;:::i;:::-;:29;;;19945:57;;20012:28;20031:8;20012:18;:28::i;:::-;20050:25;20066:8;20050:15;:25::i;19126:321::-;19196:17;:15;:17::i;:::-;19250:4;;:20;;-1:-1:-1;;;19250:20:107;;;;;643:25:142;;;19223:16:107;;-1:-1:-1;;;;;19250:4:107;;:12;;616:18:142;;19250:20:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19250:20:107;;;;;;;;;;;;:::i;:::-;:29;;;19223:57;;19290:28;19309:8;19290:18;:28::i;:::-;19332:60;-1:-1:-1;;;;;19332:26:107;;-1:-1:-1;;;19332:26:107;:60::i;:::-;19328:113;;;19408:22;19421:8;19408:12;:22::i;1907:660:108:-;2098:14;;5312:42:107;-1:-1:-1;;;;;2178:20:108;;;2174:65;;-1:-1:-1;2222:6:108;2174:65;2259:9;2248:20;;2279:31;2313:14;2279:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2279:48:108;;;;;;;;;;;;;;;;-1:-1:-1;;2347:4:108;;2394:9;;2415:19;;2279:48;;-1:-1:-1;;;;;;2347:4:108;;;;:33;;-1:-1:-1;2394:9:108;;-1:-1:-1;2405:8:108;;-1:-1:-1;2415:19:108;;2426:7;;2415:19;;;:::i;:::-;;;;;;;;;;;;;2436:5;2443:1;2446:9;2457:14;2347:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2338:143;;2497:63;2509:6;2517:8;2535:4;2542:6;2550:9;2497:63;;;;;;;;;;:::i;:::-;;;;;;;;2132:435;;1907:660;;;;;;;:::o;525:604:105:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:105;591:49;;715:12;-1:-1:-1;;;;;707:33:105;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:105:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:105;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:105;;;;;;;;-1:-1:-1;;876:40:105;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:105:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21054:190:107:-;-1:-1:-1;;;;;21170:28:107;;;21118:14;21170:28;;;:19;:28;;;;;;;;;21144:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21054:190::o;9770:124::-;1355:13:45;:11;:13::i;:::-;9853:23:107::1;:34:::0;;-1:-1:-1;;;;;;9853:34:107::1;-1:-1:-1::0;;;;;9853:34:107;;;::::1;::::0;;;::::1;::::0;;9770:124::o;20869:179::-;20941:18;;-1:-1:-1;;;;;20941:18:107;20927:10;:32;20923:89;;20982:19;;-1:-1:-1;;;20982:19:107;;;;;;;;;;;20923:89;21021:20;:18;:20::i;7025:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24458:465::-;2526:21:48;:19;:21::i;:::-;24542:10:107::1;24562:34;24542:10:::0;24562:25:::1;:34::i;:::-;24606:32;24630:7;24606:23;:32::i;:::-;-1:-1:-1::0;;;;;24671:28:107;;::::1;24648:20;24671:28:::0;;;:19:::1;:28;::::0;;;;;;;24648:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24716:28;;;-1:-1:-1;;;;;;24709:35:107;;::::1;::::0;;;;;;;-1:-1:-1;;24709:35:107;;::::1;::::0;;;24761:18:::1;:27:::0;;;;;24648:51;;24754:34:::1;::::0;24761:27;24754:34:::1;:::i;:::-;24833:19;::::0;::::1;::::0;24799:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24799:11:107;;::::1;::::0;24824:7;;24799:24:::1;:54::i;:::-;24868:48;24887:7;24896:6;:19;;;24868:48;;;;;;;:::i;:::-;;;;;;;;24514:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5568:54:107;5602:20;5486:7;5602:2;:20;:::i;:::-;5568:54;:::o;404:115:105:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:105::1;499:12;480:18;:32::i;6940:27:107:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13084:660:107:-:0;13275:14;;5312:42;-1:-1:-1;;;;;13355:20:107;;;13351:65;;-1:-1:-1;13399:6:107;13351:65;13436:9;13425:20;;13456:31;13490:14;13456:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13456:48:107;;;;;;;;;;;;;;;;-1:-1:-1;;13524:4:107;;13571:9;;13592:19;;13456:48;;-1:-1:-1;;;;;;13524:4:107;;;;:33;;-1:-1:-1;13571:9:107;;-1:-1:-1;13582:8:107;;-1:-1:-1;13592:19:107;;13603:7;;13592:19;;;:::i;24319:133::-;24390:4;24413:32;-1:-1:-1;;;;;;;;;;;24437:7:107;24413;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;41132:2:142;2415:73:45::1;::::0;::::1;41114:21:142::0;41171:2;41151:18;;;41144:30;41210:34;41190:18;;;41183:62;-1:-1:-1;;;41261:18:142;;;41254:36;41307:19;;2415:73:45::1;40930:402:142::0;8478:167:107;8542:35;-1:-1:-1;;;;;;;;;;;8566:10:107;8542:7;:35::i;:::-;8537:102;;8617:10;8600:28;;-1:-1:-1;;;8600:28:107;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;41539:2:142;2725:63:48;;;41521:21:142;41578:2;41558:18;;;41551:30;41617:33;41597:18;;;41590:61;41668:18;;2725:63:48;41337:355:142;2725:63:48;1851:1;2863:7;:18;2601:287::o;8809:157:107:-;8890:17;8899:7;8890:8;:17::i;:::-;8885:75;;8930:19;;-1:-1:-1;;;8930:19:107;;;;;;;;;;;8972:163;-1:-1:-1;;;;;9049:28:107;;;;;;:17;:28;;;;;;;;9044:85;;9100:18;;-1:-1:-1;;;9100:18:107;;;;;;;;;;;9515:133;-1:-1:-1;;;;;9589:22:107;;9585:56;;9620:21;;-1:-1:-1;;;9620:21:107;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20088:194:107:-;20159:29;20178:9;20159:18;:29::i;:::-;-1:-1:-1;;;;;20198:28:107;;20229:5;20198:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20198:36:107;;;20249:26;;;;;20216:9;;20249:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;41899:2:142;1675:68:45;;;41881:21:142;;;41918:18;;;41911:30;41977:34;41957:18;;;41950:62;42029:18;;1675:68:45;41697:356:142;19587:252:107;-1:-1:-1;;;;;19662:31:107;;;;;;:17;:31;;;;;;;;19658:85;;;19716:16;;-1:-1:-1;;;19716:16:107;;;;;;;;;;;19658:85;-1:-1:-1;;;;;19752:31:107;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19752:38:107;19786:4;19752:38;;;19805:27;;;;;19770:12;;19805:27;:::i;9141:172::-;9245:9;-1:-1:-1;;;;;9234:20:107;:7;-1:-1:-1;;;;;9234:20:107;;9230:77;;9277:19;;-1:-1:-1;;;9277:19:107;;;;;;;;;;;15631:433;-1:-1:-1;;;;;15765:27:107;;15728:34;15765:27;;;:18;:27;;;;;;15802:256;15826:23;;15822:27;;15802:256;;;15897:9;-1:-1:-1;;;;;15874:32:107;:16;15891:1;15874:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15874:19:107;:32;15870:178;;15965:23;;15948:16;;15965:27;;15991:1;;15965:27;:::i;:::-;15948:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15948:45:107;15926:16;15943:1;15926:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;15926:67:107;;;;;-1:-1:-1;;;;;15926:67:107;;;;;;16011:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16011:22:107;;;;;-1:-1:-1;;;;;;16011:22:107;;;;;;15870:178;15851:3;;;;:::i;:::-;;;;15802:256;;;;15718:346;15631:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:105:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:105;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:105;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;42260:2:142;3262:56:60;;;42242:21:142;42299:2;42279:18;;;42272:30;42338:34;42318:18;;;42311:62;-1:-1:-1;;;42389:18:142;;;42382:44;42443:19;;3262:56:60;42058:410:142;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;42675:2:142;3140:82:60;;;42657:21:142;42714:2;42694:18;;;42687:30;42753:34;42733:18;;;42726:62;-1:-1:-1;;;42804:18:142;;;42797:39;42853:19;;3140:82:60;42473:405:142;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8651:152:107:-;8724:20;8733:10;8724:8;:20::i;:::-;8719:78;;8767:19;;-1:-1:-1;;;8767:19:107;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;24929:474:107:-;-1:-1:-1;;;;;25042:27:107;;25006:33;25042:27;;;:18;:27;;;;;;;;25006:63;;;;;;;;;;;;;;;;;;;25042:27;;25006:63;;;25042:27;25006:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25006:63:107;;;;;;;;;;;;;;;;;;;;;;;25150:9;25145:252;25169:16;:23;25165:1;:27;25145:252;;;25340:16;25357:1;25340:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25325:52:107;;25378:7;25325:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25194:3;;;;;:::i;:::-;;;;25145:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20676::107:-;20753:18;;;20733:11;:39;;-1:-1:-1;;;;;;20733:39:107;;;-1:-1:-1;;;;;20753:18:107;;20733:39;;;;20782:25;;;20822:34;;;;;;20753:18;;20822:34;:::i;:::-;;;;;;;;20676:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;44368:2:142;5697:111:73;;;44350:21:142;44407:2;44387:18;;;44380:30;44446:34;44426:18;;;44419:62;-1:-1:-1;;;44497:18:142;;;44490:40;44547:19;;5697:111:73;44166:406:142;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;44779:2:142;1479:95:60;;;44761:21:142;44818:2;44798:18;;;44791:30;44857:34;44837:18;;;44830:62;-1:-1:-1;;;44908:18:142;;;44901:43;44961:19;;1479:95:60;44577:409:142;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;45153:33:142;;4592:71:81;;;;45135:52:142;;;;4592:71:81;;;;;;;;;;45108:18:142;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;45541:2:142;2228:55:52;;;45523:21:142;;;45560:18;;;45553:30;45619:34;45599:18;;;45592:62;45671:18;;2228:55:52;45339:356:142;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;45902:2:142;5354:81:76;;;45884:21:142;45941:2;45921:18;;;45914:30;45980:34;45960:18;;;45953:62;-1:-1:-1;;;46031:18:142;;;46024:36;46077:19;;5354:81:76;45700:402:142;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;46601:2:142;8113:60:76;;;46583:21:142;46640:2;46620:18;;;46613:30;46679:31;46659:18;;;46652:59;46728:18;;8113:60:76;46399:353:142;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:142;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:142;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:142;;861:180;-1:-1:-1;861:180:142:o;1046:131::-;-1:-1:-1;;;;;1121:31:142;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:142;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:142:o;2471:104::-;-1:-1:-1;;;;;2537:31:142;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:142;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:142;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:142;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:142;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:255::-;4092:2;4086:9;4134:6;4122:19;;-1:-1:-1;;;;;4156:34:142;;4192:22;;;4153:62;4150:88;;;4218:18;;:::i;4280:275::-;4351:2;4345:9;4416:2;4397:13;;-1:-1:-1;;4393:27:142;4381:40;;-1:-1:-1;;;;;4436:34:142;;4472:22;;;4433:62;4430:88;;;4498:18;;:::i;:::-;4534:2;4527:22;4280:275;;-1:-1:-1;4280:275:142:o;4560:187::-;4609:4;-1:-1:-1;;;;;4631:30:142;;4628:56;;;4664:18;;:::i;:::-;-1:-1:-1;4730:2:142;4709:15;-1:-1:-1;;4705:29:142;4736:4;4701:40;;4560:187::o;4752:338::-;4817:5;4846:53;4862:36;4891:6;4862:36;:::i;:::-;4846:53;:::i;:::-;4837:62;;4922:6;4915:5;4908:21;4962:3;4953:6;4948:3;4944:16;4941:25;4938:45;;;4979:1;4976;4969:12;4938:45;5028:6;5023:3;5016:4;5009:5;5005:16;4992:43;5082:1;5075:4;5066:6;5059:5;5055:18;5051:29;5044:40;4752:338;;;;;:::o;5095:222::-;5138:5;5191:3;5184:4;5176:6;5172:17;5168:27;5158:55;;5209:1;5206;5199:12;5158:55;5231:80;5307:3;5298:6;5285:20;5278:4;5270:6;5266:17;5231:80;:::i;5322:411::-;5377:5;5425:4;5413:9;5408:3;5404:19;5400:30;5397:50;;;5443:1;5440;5433:12;5397:50;5465:22;;:::i;:::-;5510:23;;5496:38;;5456:31;-1:-1:-1;5585:2:142;5570:18;;5557:32;-1:-1:-1;;;;;5601:30:142;;5598:50;;;5644:1;5641;5634:12;5598:50;5680:46;5722:3;5713:6;5702:9;5698:22;5680:46;:::i;:::-;5675:2;5668:5;5664:14;5657:70;;5322:411;;;;:::o;5738:118::-;5824:5;5817:13;5810:21;5803:5;5800:32;5790:60;;5846:1;5843;5836:12;5861:128;5926:20;;5955:28;5926:20;5955:28;:::i;5994:1871::-;6136:6;6144;6152;6160;6213:3;6201:9;6192:7;6188:23;6184:33;6181:53;;;6230:1;6227;6220:12;6181:53;6257:23;;-1:-1:-1;;;;;6329:14:142;;;6326:34;;;6356:1;6353;6346:12;6326:34;6379:22;;;;6435:6;6417:16;;;6413:29;6410:49;;;6455:1;6452;6445:12;6410:49;6481:22;;:::i;:::-;6526;6545:2;6526:22;:::i;:::-;6519:5;6512:37;6581:31;6608:2;6604;6600:11;6581:31;:::i;:::-;6576:2;6569:5;6565:14;6558:55;6666:2;6662;6658:11;6645:25;6640:2;6633:5;6629:14;6622:49;6724:2;6720;6716:11;6703:25;6698:2;6691:5;6687:14;6680:49;6783:3;6779:2;6775:12;6762:26;6756:3;6749:5;6745:15;6738:51;6822:32;6849:3;6845:2;6841:12;6822:32;:::i;:::-;6816:3;6809:5;6805:15;6798:57;6888:32;6915:3;6911:2;6907:12;6888:32;:::i;:::-;6882:3;6875:5;6871:15;6864:57;6967:3;6963:2;6959:12;6946:26;6997:2;6987:8;6984:16;6981:36;;;7013:1;7010;7003:12;6981:36;7050:54;7096:7;7085:8;7081:2;7077:17;7050:54;:::i;:::-;7044:3;7037:5;7033:15;7026:79;;7124:3;7159:31;7186:2;7182;7178:11;7159:31;:::i;:::-;7143:14;;;7136:55;7210:3;7251:11;;;7238:25;7275:16;;;7272:36;;;7304:1;7301;7294:12;7272:36;7340:45;7377:7;7366:8;7362:2;7358:17;7340:45;:::i;:::-;7335:2;7328:5;7324:14;7317:69;;;7405:3;7440:28;7464:2;7460;7456:11;7440:28;:::i;:::-;7424:14;;;7417:52;7488:3;7529:11;;;7516:25;7553:16;;;7550:36;;;7582:1;7579;7572:12;7550:36;7618:45;7655:7;7644:8;7640:2;7636:17;7618:45;:::i;:::-;7613:2;7606:5;7602:14;7595:69;;;7683:5;7673:15;;;;;7707:38;7741:2;7730:9;7726:18;7707:38;:::i;:::-;7697:48;;7764:38;7798:2;7787:9;7783:18;7764:38;:::i;:::-;7754:48;;7821:38;7855:2;7844:9;7840:18;7821:38;:::i;:::-;7811:48;;5994:1871;;;;;;;:::o;8130:585::-;8207:6;8215;8268:2;8256:9;8247:7;8243:23;8239:32;8236:52;;;8284:1;8281;8274:12;8236:52;8323:9;8310:23;8342:31;8367:5;8342:31;:::i;:::-;8392:5;-1:-1:-1;8448:2:142;8433:18;;8420:32;-1:-1:-1;;;;;8464:30:142;;8461:50;;;8507:1;8504;8497:12;8461:50;8530:22;;8583:4;8575:13;;8571:27;-1:-1:-1;8561:55:142;;8612:1;8609;8602:12;8561:55;8635:74;8701:7;8696:2;8683:16;8678:2;8674;8670:11;8635:74;:::i;:::-;8625:84;;;8130:585;;;;;:::o;8720:605::-;8775:5;8823:4;8811:9;8806:3;8802:19;8798:30;8795:50;;;8841:1;8838;8831:12;8795:50;8874:2;8868:9;8916:4;8904:17;;-1:-1:-1;;;;;8936:34:142;;8972:22;;;8933:62;8930:88;;;8998:18;;:::i;:::-;9038:10;9034:2;9027:22;;9067:6;9058:15;;9110:9;9097:23;9089:6;9082:39;9182:2;9171:9;9167:18;9154:32;9149:2;9141:6;9137:15;9130:57;9248:2;9237:9;9233:18;9220:32;9215:2;9207:6;9203:15;9196:57;9314:2;9303:9;9299:18;9286:32;9281:2;9273:6;9269:15;9262:57;;8720:605;;;;:::o;9330:153::-;9408:20;;9457:1;9447:12;;9437:40;;9473:1;9470;9463:12;9488:110;9572:1;9565:5;9562:12;9552:40;;9588:1;9585;9578:12;9603:152;9680:20;;9709:40;9680:20;9709:40;:::i;9760:416::-;9824:5;9872:4;9860:9;9855:3;9851:19;9847:30;9844:50;;;9890:1;9887;9880:12;9844:50;9923:2;9917:9;9965:4;9953:17;;-1:-1:-1;;;;;9985:34:142;;10021:22;;;9982:62;9979:88;;;10047:18;;:::i;:::-;10083:2;10076:22;10146:23;;10131:39;;-1:-1:-1;10116:6:142;9760:416;-1:-1:-1;9760:416:142:o;10181:701::-;10244:5;10292:4;10280:9;10275:3;10271:19;10267:30;10264:50;;;10310:1;10307;10300:12;10264:50;10332:22;;:::i;:::-;10323:31;;10391:9;10378:23;10410:33;10435:7;10410:33;:::i;:::-;10452:22;;10526:2;10511:18;;10498:32;10539:33;10498:32;10539:33;:::i;:::-;10604:7;10599:2;10592:5;10588:14;10581:31;;10672:2;10661:9;10657:18;10644:32;10639:2;10632:5;10628:14;10621:56;10737:2;10726:9;10722:18;10709:32;10704:2;10697:5;10693:14;10686:56;10803:3;10792:9;10788:19;10775:33;10769:3;10762:5;10758:15;10751:58;10870:3;10859:9;10855:19;10842:33;10836:3;10829:5;10825:15;10818:58;10181:701;;;;:::o;10887:1090::-;10962:5;11010:6;10998:9;10993:3;10989:19;10985:32;10982:52;;;11030:1;11027;11020:12;10982:52;11063:2;11057:9;11105:4;11093:17;;-1:-1:-1;;;;;11125:34:142;;11161:22;;;11122:62;11119:88;;;11187:18;;:::i;:::-;11223:2;11216:22;11256:6;-1:-1:-1;11256:6:142;11286:42;11324:3;11313:9;11286:42;:::i;:::-;11278:6;11271:58;11364:49;11408:3;11397:9;11393:19;11364:49;:::i;:::-;11357:4;11349:6;11345:17;11338:76;11466:3;11455:9;11451:19;11438:33;11480:42;11514:7;11480:42;:::i;:::-;11550:2;11538:15;;11531:32;11598:61;11655:3;11649;11634:19;;11598:61;:::i;:::-;11591:4;11583:6;11579:17;11572:88;11694:61;11751:3;11744:4;11733:9;11729:20;11694:61;:::i;:::-;11688:3;11680:6;11676:16;11669:87;11808:3;11797:9;11793:19;11780:33;11822;11847:7;11822:33;:::i;:::-;11883:3;11871:16;;11864:33;11931:39;11965:3;11950:19;;11931:39;:::i;:::-;11925:3;11917:6;11913:16;11906:65;;10887:1090;;;;:::o;11982:644::-;12134:6;12142;12150;12203:3;12191:9;12182:7;12178:23;12174:33;12171:53;;;12220:1;12217;12210:12;12171:53;12259:9;12246:23;12278:31;12303:5;12278:31;:::i;:::-;12328:5;-1:-1:-1;12352:75:142;12419:7;12414:2;12399:18;;12352:75;:::i;:::-;12342:85;-1:-1:-1;12478:3:142;12463:19;;12450:33;-1:-1:-1;;;;;12495:30:142;;12492:50;;;12538:1;12535;12528:12;12492:50;12561:59;12612:7;12603:6;12592:9;12588:22;12561:59;:::i;:::-;12551:69;;;11982:644;;;;;:::o;12910:183::-;12970:4;-1:-1:-1;;;;;12992:30:142;;12989:56;;;13025:18;;:::i;:::-;-1:-1:-1;13070:1:142;13066:14;13082:4;13062:25;;12910:183::o;13098:737::-;13152:5;13205:3;13198:4;13190:6;13186:17;13182:27;13172:55;;13223:1;13220;13213:12;13172:55;13259:6;13246:20;13285:4;13309:60;13325:43;13365:2;13325:43;:::i;13309:60::-;13403:15;;;13489:1;13485:10;;;;13473:23;;13469:32;;;13434:12;;;;13513:15;;;13510:35;;;13541:1;13538;13531:12;13510:35;13577:2;13569:6;13565:15;13589:217;13605:6;13600:3;13597:15;13589:217;;;13685:3;13672:17;13702:31;13727:5;13702:31;:::i;:::-;13746:18;;13784:12;;;;13622;;13589:217;;;-1:-1:-1;13824:5:142;13098:737;-1:-1:-1;;;;;;13098:737:142:o;13840:974::-;13921:5;13969:6;13957:9;13952:3;13948:19;13944:32;13941:52;;;13989:1;13986;13979:12;13941:52;14011:22;;:::i;:::-;14002:31;;14056:42;14094:3;14083:9;14056:42;:::i;:::-;14049:5;14042:57;14133:49;14177:3;14166:9;14162:19;14133:49;:::i;:::-;14126:4;14119:5;14115:16;14108:75;14217:48;14260:3;14249:9;14245:19;14217:48;:::i;:::-;14210:4;14203:5;14199:16;14192:74;14300:61;14357:3;14351;14340:9;14336:19;14300:61;:::i;:::-;14293:4;14286:5;14282:16;14275:87;14395:60;14451:3;14445;14434:9;14430:19;14395:60;:::i;:::-;14389:3;14382:5;14378:15;14371:85;14489:39;14523:3;14512:9;14508:19;14489:39;:::i;:::-;14483:3;14476:5;14472:15;14465:64;14562:39;14596:3;14585:9;14581:19;14562:39;:::i;:::-;14556:3;14545:15;;14538:64;14653:3;14638:19;;14625:33;-1:-1:-1;;;;;14670:30:142;;14667:50;;;14713:1;14710;14703:12;14667:50;14750:57;14803:3;14794:6;14783:9;14779:22;14750:57;:::i;:::-;14744:3;14737:5;14733:15;14726:82;;13840:974;;;;:::o;14819:777::-;14971:6;14979;14987;15040:2;15028:9;15019:7;15015:23;15011:32;15008:52;;;15056:1;15053;15046:12;15008:52;15095:9;15082:23;15114:31;15139:5;15114:31;:::i;:::-;15164:5;-1:-1:-1;15220:2:142;15205:18;;15192:32;-1:-1:-1;;;;;15273:14:142;;;15270:34;;;15300:1;15297;15290:12;15270:34;15323:85;15400:7;15391:6;15380:9;15376:22;15323:85;:::i;:::-;15313:95;;15461:2;15450:9;15446:18;15433:32;15417:48;;15490:2;15480:8;15477:16;15474:36;;;15506:1;15503;15496:12;15474:36;;15529:61;15582:7;15571:8;15560:9;15556:24;15529:61;:::i;16274:919::-;16435:6;16443;16451;16459;16512:3;16500:9;16491:7;16487:23;16483:33;16480:53;;;16529:1;16526;16519:12;16480:53;16568:9;16555:23;16587:31;16612:5;16587:31;:::i;:::-;16637:5;-1:-1:-1;16694:2:142;16679:18;;16666:32;16707:33;16666:32;16707:33;:::i;:::-;16759:7;-1:-1:-1;16817:2:142;16802:18;;16789:32;-1:-1:-1;;;;;16870:14:142;;;16867:34;;;16897:1;16894;16887:12;16867:34;16920:85;16997:7;16988:6;16977:9;16973:22;16920:85;:::i;:::-;16910:95;;17058:2;17047:9;17043:18;17030:32;17014:48;;17087:2;17077:8;17074:16;17071:36;;;17103:1;17100;17093:12;17071:36;;17126:61;17179:7;17168:8;17157:9;17153:24;17126:61;:::i;:::-;17116:71;;;16274:919;;;;;;;:::o;17558:250::-;17643:1;17653:113;17667:6;17664:1;17661:13;17653:113;;;17743:11;;;17737:18;17724:11;;;17717:39;17689:2;17682:10;17653:113;;;-1:-1:-1;;17800:1:142;17782:16;;17775:27;17558:250::o;17813:271::-;17855:3;17893:5;17887:12;17920:6;17915:3;17908:19;17936:76;18005:6;17998:4;17993:3;17989:14;17982:4;17975:5;17971:16;17936:76;:::i;:::-;18066:2;18045:15;-1:-1:-1;;18041:29:142;18032:39;;;;18073:4;18028:50;;17813:271;-1:-1:-1;;17813:271:142:o;18089:220::-;18238:2;18227:9;18220:21;18201:4;18258:45;18299:2;18288:9;18284:18;18276:6;18258:45;:::i;18761:785::-;18922:6;18930;18938;18946;18999:3;18987:9;18978:7;18974:23;18970:33;18967:53;;;19016:1;19013;19006:12;18967:53;19055:9;19042:23;19074:31;19099:5;19074:31;:::i;:::-;19124:5;-1:-1:-1;19181:2:142;19166:18;;19153:32;19194:33;19153:32;19194:33;:::i;:::-;19246:7;-1:-1:-1;19272:75:142;19339:7;19334:2;19319:18;;19272:75;:::i;:::-;19262:85;-1:-1:-1;19398:3:142;19383:19;;19370:33;-1:-1:-1;;;;;19415:30:142;;19412:50;;;19458:1;19455;19448:12;19412:50;19481:59;19532:7;19523:6;19512:9;19508:22;19481:59;:::i;19551:127::-;19612:10;19607:3;19603:20;19600:1;19593:31;19643:4;19640:1;19633:15;19667:4;19664:1;19657:15;19683:168;19756:9;;;19787;;19804:15;;;19798:22;;19784:37;19774:71;;19825:18;;:::i;19856:127::-;19917:10;19912:3;19908:20;19905:1;19898:31;19948:4;19945:1;19938:15;19972:4;19969:1;19962:15;19988:277;20075:6;20128:2;20116:9;20107:7;20103:23;20099:32;20096:52;;;20144:1;20141;20134:12;20096:52;20176:9;20170:16;20195:40;20229:5;20195:40;:::i;20270:282::-;-1:-1:-1;;;;;20470:32:142;;;;20452:51;;20534:2;20519:18;;20512:34;20440:2;20425:18;;20270:282::o;20557:184::-;20627:6;20680:2;20668:9;20659:7;20655:23;20651:32;20648:52;;;20696:1;20693;20686:12;20648:52;-1:-1:-1;20719:16:142;;20557:184;-1:-1:-1;20557:184:142:o;21025:375::-;-1:-1:-1;;;;;21283:15:142;;;21265:34;;21335:15;;;;21330:2;21315:18;;21308:43;21382:2;21367:18;;21360:34;;;;21215:2;21200:18;;21025:375::o;21405:304::-;-1:-1:-1;;;;;21635:15:142;;;21617:34;;21687:15;;21682:2;21667:18;;21660:43;21567:2;21552:18;;21405:304::o;21714:217::-;21754:1;21780;21770:132;;21824:10;21819:3;21815:20;21812:1;21805:31;21859:4;21856:1;21849:15;21887:4;21884:1;21877:15;21770:132;-1:-1:-1;21916:9:142;;21714:217::o;21936:125::-;22001:9;;;22022:10;;;22019:36;;;22035:18;;:::i;22481:380::-;22560:1;22556:12;;;;22603;;;22624:61;;22678:4;22670:6;22666:17;22656:27;;22624:61;22731:2;22723:6;22720:14;22700:18;22697:38;22694:161;;22777:10;22772:3;22768:20;22765:1;22758:31;22812:4;22809:1;22802:15;22840:4;22837:1;22830:15;22694:161;;22481:380;;;:::o;22992:545::-;23094:2;23089:3;23086:11;23083:448;;;23130:1;23155:5;23151:2;23144:17;23200:4;23196:2;23186:19;23270:2;23258:10;23254:19;23251:1;23247:27;23241:4;23237:38;23306:4;23294:10;23291:20;23288:47;;;-1:-1:-1;23329:4:142;23288:47;23384:2;23379:3;23375:12;23372:1;23368:20;23362:4;23358:31;23348:41;;23439:82;23457:2;23450:5;23447:13;23439:82;;;23502:17;;;23483:1;23472:13;23439:82;;;23443:3;;;22992:545;;;:::o;23713:1352::-;23833:10;;-1:-1:-1;;;;;23855:30:142;;23852:56;;;23888:18;;:::i;:::-;23917:97;24007:6;23967:38;23999:4;23993:11;23967:38;:::i;:::-;23961:4;23917:97;:::i;:::-;24069:4;;24133:2;24122:14;;24150:1;24145:663;;;;24852:1;24869:6;24866:89;;;-1:-1:-1;24921:19:142;;;24915:26;24866:89;-1:-1:-1;;23670:1:142;23666:11;;;23662:24;23658:29;23648:40;23694:1;23690:11;;;23645:57;24968:81;;24115:944;;24145:663;22939:1;22932:14;;;22976:4;22963:18;;-1:-1:-1;;24181:20:142;;;24299:236;24313:7;24310:1;24307:14;24299:236;;;24402:19;;;24396:26;24381:42;;24494:27;;;;24462:1;24450:14;;;;24329:19;;24299:236;;;24303:3;24563:6;24554:7;24551:19;24548:201;;;24624:19;;;24618:26;-1:-1:-1;;24707:1:142;24703:14;;;24719:3;24699:24;24695:37;24691:42;24676:58;24661:74;;24548:201;-1:-1:-1;;;;;24795:1:142;24779:14;;;24775:22;24762:36;;-1:-1:-1;23713:1352:142:o;25070:251::-;25140:6;25193:2;25181:9;25172:7;25168:23;25164:32;25161:52;;;25209:1;25206;25199:12;25161:52;25241:9;25235:16;25260:31;25285:5;25260:31;:::i;25326:127::-;25387:10;25382:3;25378:20;25375:1;25368:31;25418:4;25415:1;25408:15;25442:4;25439:1;25432:15;25458:956;25553:6;25584:2;25627;25615:9;25606:7;25602:23;25598:32;25595:52;;;25643:1;25640;25633:12;25595:52;25670:16;;-1:-1:-1;;;;;25698:30:142;;25695:50;;;25741:1;25738;25731:12;25695:50;25764:22;;25817:4;25809:13;;25805:27;-1:-1:-1;25795:55:142;;25846:1;25843;25836:12;25795:55;25875:2;25869:9;25898:60;25914:43;25954:2;25914:43;:::i;25898:60::-;25992:15;;;26074:1;26070:10;;;;26062:19;;26058:28;;;26023:12;;;;26098:19;;;26095:39;;;26130:1;26127;26120:12;26095:39;26154:11;;;;26174:210;26190:6;26185:3;26182:15;26174:210;;;26263:3;26257:10;26280:31;26305:5;26280:31;:::i;:::-;26324:18;;26207:12;;;;26362;;;;26174:210;;26419:135;26458:3;26479:17;;;26476:43;;26499:18;;:::i;:::-;-1:-1:-1;26546:1:142;26535:13;;26419:135::o;26559:128::-;26626:9;;;26647:11;;;26644:37;;;26661:18;;:::i;26692:772::-;26742:3;26783:5;26777:12;26812:36;26838:9;26812:36;:::i;:::-;26857:19;;;26895:4;26918:1;26935:18;;;26962:146;;;;27122:1;27117:341;;;;26928:530;;26962:146;-1:-1:-1;;27004:24:142;;26990:12;;;26983:46;27076:14;;27069:22;27066:1;27062:30;27053:40;;27049:49;;;-1:-1:-1;26962:146:142;;27117:341;27148:5;27145:1;27138:16;27195:2;27192:1;27182:16;27220:1;27234:174;27248:6;27245:1;27242:13;27234:174;;;27335:14;;27317:11;;;27313:20;;27306:44;27378:16;;;;27263:10;;27234:174;;;27432:11;;27428:20;;;-1:-1:-1;;26928:530:142;;;;;;26692:772;;;;:::o;27469:252::-;27556:5;27550:12;27545:3;27538:25;27520:3;27609:4;27602:5;27598:16;27592:23;27647:4;27640;27635:3;27631:14;27624:28;27668:47;27709:4;27704:3;27700:14;27686:12;27668:47;:::i;27726:461::-;27779:3;27817:5;27811:12;27844:6;27839:3;27832:19;27870:4;27899:2;27894:3;27890:12;27883:19;;27936:2;27929:5;27925:14;27957:1;27967:195;27981:6;27978:1;27975:13;27967:195;;;28046:13;;-1:-1:-1;;;;;28042:39:142;28030:52;;28102:12;;;;28137:15;;;;28078:1;27996:9;27967:195;;;-1:-1:-1;28178:3:142;;27726:461;-1:-1:-1;;;;;27726:461:142:o;28192:804::-;28552:6;28541:9;28534:25;28595:3;28590:2;28579:9;28575:18;28568:31;28515:4;28622:54;28671:3;28660:9;28656:19;28648:6;28622:54;:::i;:::-;28724:9;28716:6;28712:22;28707:2;28696:9;28692:18;28685:50;28758:42;28793:6;28785;28758:42;:::i;:::-;-1:-1:-1;;;;;28836:32:142;;28831:2;28816:18;;28809:60;28906:22;;;28900:3;28885:19;;28878:51;28744:56;-1:-1:-1;28946:44:142;28744:56;28975:6;28946:44;:::i;:::-;28938:52;28192:804;-1:-1:-1;;;;;;;;28192:804:142:o;29190:500::-;29444:6;29433:9;29426:25;29487:2;29482;29471:9;29467:18;29460:30;29407:4;29513:53;29562:2;29551:9;29547:18;29539:6;29513:53;:::i;:::-;29614:9;29606:6;29602:22;29597:2;29586:9;29582:18;29575:50;29642:42;29677:6;29669;29642:42;:::i;30310:408::-;30512:2;30494:21;;;30551:2;30531:18;;;30524:30;-1:-1:-1;;;;;;;;;;;30585:2:142;30570:18;;30563:62;-1:-1:-1;;;30656:2:142;30641:18;;30634:42;30708:3;30693:19;;30310:408::o;30723:::-;30925:2;30907:21;;;30964:2;30944:18;;;30937:30;-1:-1:-1;;;;;;;;;;;30998:2:142;30983:18;;30976:62;-1:-1:-1;;;31069:2:142;31054:18;;31047:42;31121:3;31106:19;;30723:408::o;31453:384::-;-1:-1:-1;;;;;31711:15:142;;;31693:34;;31763:15;;;31758:2;31743:18;;31736:43;31815:15;;;31810:2;31795:18;;31788:43;31643:2;31628:18;;31453:384::o;31842:315::-;-1:-1:-1;;;;;32017:32:142;;31999:51;;32086:2;32081;32066:18;;32059:30;;;-1:-1:-1;;32106:45:142;;32132:18;;32124:6;32106:45;:::i;33003:324::-;-1:-1:-1;;;33233:24:142;;33282:1;33273:11;;33266:27;;;;33318:2;33309:12;;33003:324::o;33332:331::-;-1:-1:-1;;;33562:30:142;;33617:2;33608:12;;33601:28;;;;33654:2;33645:12;;33332:331::o;33921:127::-;33982:10;33977:3;33973:20;33970:1;33963:31;34013:4;34010:1;34003:15;34037:4;34034:1;34027:15;34053:1653;34145:6;34176:2;34219;34207:9;34198:7;34194:23;34190:32;34187:52;;;34235:1;34232;34225:12;34187:52;34262:16;;-1:-1:-1;;;;;34327:14:142;;;34324:34;;;34354:1;34351;34344:12;34324:34;34377:22;;;;34433:4;34415:16;;;34411:27;34408:47;;;34451:1;34448;34441:12;34408:47;34477:22;;:::i;:::-;34528:2;34522:9;34515:5;34508:24;34570:2;34566;34562:11;34556:18;34583:33;34608:7;34583:33;:::i;:::-;34632:14;;;34625:31;34694:2;34686:11;;34680:18;34707:33;34680:18;34707:33;:::i;:::-;34767:2;34756:14;;34749:31;34819:2;34811:11;;34805:18;34835:16;;;34832:36;;;34864:1;34861;34854:12;34832:36;34887:17;;34938:2;34920:16;;;34916:25;34913:45;;;34954:1;34951;34944:12;34913:45;34982:22;;:::i;:::-;35035:2;35029:9;35020:7;35013:26;35078:2;35074;35070:11;35064:18;35107:2;35097:8;35094:16;35091:36;;;35123:1;35120;35113:12;35091:36;35146:17;;;-1:-1:-1;35194:4:142;35186:13;;35182:27;-1:-1:-1;35172:55:142;;35223:1;35220;35213:12;35172:55;35252:2;35246:9;35236:19;;35277:49;35293:32;35322:2;35293:32;:::i;35277:49::-;35349:2;35342:5;35335:17;35389:7;35384:2;35379;35375;35371:11;35367:20;35364:33;35361:53;;;35410:1;35407;35400:12;35361:53;35423:67;35487:2;35482;35475:5;35471:14;35466:2;35462;35458:11;35423:67;:::i;:::-;35506:16;;;35499:31;;;;-1:-1:-1;35557:2:142;35546:14;;35539:31;;;;-1:-1:-1;35617:3:142;35609:12;;;35603:19;35586:15;;;35579:44;35670:3;35662:12;;;35656:19;35639:15;;;35632:44;35550:5;34053:1653;-1:-1:-1;;;34053:1653:142:o;35711:261::-;35791:5;35785:12;35780:3;35773:25;35847:4;35840:5;35836:16;35830:23;35823:4;35818:3;35814:14;35807:47;35903:4;35896:5;35892:16;35886:23;35879:4;35874:3;35870:14;35863:47;35959:4;35952:5;35948:16;35942:23;35935:4;35930:3;35926:14;35919:47;;;35711:261::o;35977:143::-;36061:1;36054:5;36051:12;36041:46;;36067:18;;:::i;:::-;36096;;35977:143::o;36125:142::-;36208:1;36201:5;36198:12;36188:46;;36214:18;;:::i;36272:437::-;36396:12;;-1:-1:-1;;;;;36392:21:142;;;36380:34;;36467:4;36456:16;;;36450:23;36446:32;;;36430:14;;;36423:56;36528:4;36517:16;;;36511:23;36495:14;;;36488:47;36584:4;36573:16;;;36567:23;36551:14;;;36544:47;36640:4;36629:16;;;36623:23;36607:14;;;36600:47;36360:3;36685:16;;;36679:23;36663:14;;36656:47;36272:437::o;36714:1197::-;36941:2;36930:9;36923:21;36953:61;37010:2;36999:9;36995:18;36986:6;36980:13;36953:61;:::i;:::-;36904:4;37061:2;37053:6;37049:15;37043:22;37074:63;37132:3;37121:9;37117:19;37103:12;37074:63;:::i;:::-;;37186:4;37178:6;37174:17;37168:24;37201:64;37260:3;37249:9;37245:19;37229:14;37201:64;:::i;:::-;;37326:4;37318:6;37314:17;37308:24;37302:31;37296:3;37285:9;37281:19;37274:60;37383:4;37375:6;37371:17;37365:24;37398:71;37464:3;37453:9;37449:19;37433:14;37398:71;:::i;:::-;;37518:3;37510:6;37506:16;37500:23;37532:55;37582:3;37571:9;37567:19;37551:14;37532:55;:::i;:::-;;37636:3;37628:6;37624:16;37618:23;37650:55;37700:3;37689:9;37685:19;37669:14;37650:55;:::i;:::-;-1:-1:-1;37754:3:142;37742:16;;37736:23;37778:6;37800:18;;;37793:30;37840:65;37900:3;37885:19;;37736:23;37840:65;:::i;37916:979::-;38341:6;38330:9;38323:25;38304:4;38384:1;38380;38375:3;38371:11;38367:19;38434:2;38426:6;38422:15;38417:2;38406:9;38402:18;38395:43;38474:3;38469:2;38458:9;38454:18;38447:31;38501:46;38542:3;38531:9;38527:19;38519:6;38501:46;:::i;:::-;38595:2;38587:6;38583:15;38578:2;38567:9;38563:18;38556:43;38636:6;38630:3;38619:9;38615:19;38608:35;38692:9;38684:6;38680:22;38674:3;38663:9;38659:19;38652:51;38726:42;38761:6;38753;38726:42;:::i;:::-;38712:56;;;38817:9;38809:6;38805:22;38799:3;38788:9;38784:19;38777:51;38845:44;38882:6;38874;38845:44;:::i;:::-;38837:52;37916:979;-1:-1:-1;;;;;;;;;;37916:979:142:o;38900:613::-;39175:25;;;-1:-1:-1;;;;;39274:15:142;;;39269:2;39254:18;;39247:43;39326:15;;;39321:2;39306:18;;39299:43;39378:15;;39373:2;39358:18;;39351:43;39227:3;39425;39410:19;;39403:32;;;39156:4;;39452:55;;39487:19;;39479:6;39452:55;:::i;39518:407::-;39720:2;39702:21;;;39759:2;39739:18;;;39732:30;39798:34;39793:2;39778:18;;39771:62;-1:-1:-1;;;39864:2:142;39849:18;;39842:41;39915:3;39900:19;;39518:407::o;39930:995::-;40120:4;40162:3;40151:9;40147:19;40139:27;;40175:52;40217:9;40208:6;40202:13;40175:52;:::i;:::-;40274:4;40266:6;40262:17;40256:24;40289:64;40347:4;40336:9;40332:20;40318:12;40289:64;:::i;:::-;;40402:4;40394:6;40390:17;40384:24;40417:65;40476:4;40465:9;40461:20;40445:14;40417:65;:::i;:::-;;40544:4;40536:6;40532:17;40526:24;40520:31;40513:4;40502:9;40498:20;40491:61;40601:4;40593:6;40589:17;40583:24;40616:72;40682:4;40671:9;40667:20;40651:14;40616:72;:::i;:::-;-1:-1:-1;40737:4:142;40725:17;;40719:24;-1:-1:-1;;;;;40821:23:142;;;40812:6;40797:22;;40790:55;40907:4;40895:17;;;40889:24;40885:33;;;40876:6;40861:22;;;40854:65;39930:995;:::o;43099:812::-;-1:-1:-1;;;43505:3:142;43498:38;43480:3;43565:6;43559:13;43581:75;43649:6;43644:2;43639:3;43635:12;43628:4;43620:6;43616:17;43581:75;:::i;:::-;-1:-1:-1;;;43715:2:142;43675:16;;;43707:11;;;43700:40;43765:13;;43787:76;43765:13;43849:2;43841:11;;43834:4;43822:17;;43787:76;:::i;:::-;43883:17;43902:2;43879:26;;43099:812;-1:-1:-1;;;;43099:812:142:o;43916:245::-;43983:6;44036:2;44024:9;44015:7;44011:23;44007:32;44004:52;;;44052:1;44049;44042:12;44004:52;44084:9;44078:16;44103:28;44125:5;44103:28;:::i;45198:136::-;45237:3;45265:5;45255:39;;45274:18;;:::i;:::-;-1:-1:-1;;;45310:18:142;;45198:136::o;46107:287::-;46236:3;46274:6;46268:13;46290:66;46349:6;46344:3;46337:4;46329:6;46325:17;46290:66;:::i;:::-;46372:16;;;;;46107:287;-1:-1:-1;;46107:287:142:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7747,"length":32},{"start":7814,"length":32},{"start":8065,"length":32},{"start":8132,"length":32},{"start":8470,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"579eb7e5","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"8659ffdd","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":\"RegistryCommunityV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":"RegistryCommunityV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70985,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70988,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70991,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70994,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70997,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":71000,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":71003,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":71006,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":71009,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":71012,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":71016,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":71020,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":71024,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)76451"},{"astId":71028,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)76184"},{"astId":71031,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":71034,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":71039,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":71046,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":71052,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70802_storage)"},{"astId":71058,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":71065,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":71069,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72699,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)76184":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)76451":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70802_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70802_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70802_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70797,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70799,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70801,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","id":72930,"exportedSymbols":{"ArbitrableConfig":[65628],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"ERC1967Proxy":[55021],"Metadata":[3098],"PointSystemConfig":[65614],"ProposalType":[65540],"RegistryCommunityInitializeParamsV0_0":[70795],"RegistryCommunityV0_0":[72700],"RegistryCommunityV0_1":[72929]},"nodeType":"SourceUnit","src":"42:2528:108","nodes":[{"id":72702,"nodeType":"PragmaDirective","src":"42:24:108","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72707,"nodeType":"ImportDirective","src":"68:147:108","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"./RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72930,"sourceUnit":72701,"symbolAliases":[{"foreign":{"id":72703,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"81:21:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72704,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"108:8:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72705,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"122:12:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72706,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70795,"src":"140:37:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72713,"nodeType":"ImportDirective","src":"216:153:108","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72930,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":72708,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"229:14:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72709,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"249:17:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72710,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"272:16:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72711,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"294:12:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72712,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"312:14:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72716,"nodeType":"ImportDirective","src":"371:98:108","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"@src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":72930,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":72714,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"379:14:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72715,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"395:30:108","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72929,"nodeType":"ContractDefinition","src":"522:2047:108","nodes":[{"id":72856,"nodeType":"FunctionDefinition","src":"584:1317:108","nodes":[],"body":{"id":72855,"nodeType":"Block","src":"780:1121:108","nodes":[],"statements":[{"assignments":[72735],"declarations":[{"constant":false,"id":72735,"mutability":"mutable","name":"strategyProxy","nameLocation":"798:13:108","nodeType":"VariableDeclaration","scope":72855,"src":"790:21:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72734,"name":"address","nodeType":"ElementaryTypeName","src":"790:7:108","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72760,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72743,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71009,"src":"877:16:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72742,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"869:7:108","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72741,"name":"address","nodeType":"ElementaryTypeName","src":"869:7:108","typeDescriptions":{}}},"id":72744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"869:25:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72747,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"935:14:108","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":72748,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"950:4:108","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"935:19:108","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":72749,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"955:8:108","memberName":"selector","nodeType":"MemberAccess","src":"935:28:108","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":72752,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"973:4:108","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}],"id":72751,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"965:7:108","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72750,"name":"address","nodeType":"ElementaryTypeName","src":"965:7:108","typeDescriptions":{}}},"id":72753,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"965:13:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72754,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71006,"src":"980:23:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72755,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70689],"referencedDeclaration":70689,"src":"1005:5:108","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72756,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1005:7:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72745,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"912:3:108","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72746,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"916:18:108","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"912:22:108","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"912:101:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72740,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"835:16:108","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72739,"nodeType":"UserDefinedTypeName","pathNode":{"id":72738,"name":"ERC1967Proxy","nameLocations":["839:12:108"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"839:12:108"},"referencedDeclaration":55021,"src":"839:12:108","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"835:192:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72737,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"814:7:108","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72736,"name":"address","nodeType":"ElementaryTypeName","src":"814:7:108","typeDescriptions":{}}},"id":72759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"814:223:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"790:247:108"},{"expression":{"id":72770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":72761,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"1048:6:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72762,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72732,"src":"1056:8:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":72763,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"1047:18:108","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72765,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72735,"src":"1079:13:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72766,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72721,"src":"1094:6:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72767,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72724,"src":"1102:7:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},{"id":72768,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72727,"src":"1111:9:108","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72764,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[72856,72928,71535,71607],"referencedDeclaration":72928,"src":"1068:10:108","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_1 memory,struct Metadata memory) returns (uint256,address)"}},"id":72769,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1068:53:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"src":"1047:74:108","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72771,"nodeType":"ExpressionStatement","src":"1047:74:108"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":72774,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72724,"src":"1144:7:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72775,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1152:11:108","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"1144:19:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72773,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1136:7:108","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72772,"name":"address","nodeType":"ElementaryTypeName","src":"1136:7:108","typeDescriptions":{}}},"id":72776,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:28:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72779,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1176:1:108","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72778,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1168:7:108","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72777,"name":"address","nodeType":"ElementaryTypeName","src":"1168:7:108","typeDescriptions":{}}},"id":72780,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1168:10:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1136:42:108","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72826,"nodeType":"IfStatement","src":"1132:454:108","trueBody":{"id":72825,"nodeType":"Block","src":"1180:406:108","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72786,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":72782,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72724,"src":"1198:7:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72783,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1206:16:108","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1198:24:108","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72784,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1223:6:108","memberName":"length","nodeType":"MemberAccess","src":"1198:31:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"31303030","id":72785,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1232:4:108","typeDescriptions":{"typeIdentifier":"t_rational_1000_by_1","typeString":"int_const 1000"},"value":"1000"},"src":"1198:38:108","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72792,"nodeType":"IfStatement","src":"1194:134:108","trueBody":{"id":72791,"nodeType":"Block","src":"1238:90:108","statements":[{"expression":{"arguments":[{"hexValue":"546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626572732c206d61782069732031303030","id":72788,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1263:49:108","typeDescriptions":{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""},"value":"Too many initial allowlist members, max is 1000"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""}],"id":72787,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"1256:6:108","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":72789,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1256:57:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72790,"nodeType":"ExpressionStatement","src":"1256:57:108"}]}},{"assignments":[72794],"declarations":[{"constant":false,"id":72794,"mutability":"mutable","name":"allowlistRole","nameLocation":"1349:13:108","nodeType":"VariableDeclaration","scope":72825,"src":"1341:21:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":72793,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1341:7:108","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":72802,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72798,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1392:11:108","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72799,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"1405:6:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72796,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1375:3:108","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72797,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1379:12:108","memberName":"encodePacked","nodeType":"MemberAccess","src":"1375:16:108","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1375:37:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72795,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1365:9:108","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72801,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:48:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1341:72:108"},{"body":{"id":72823,"nodeType":"Block","src":"1489:87:108","statements":[{"expression":{"arguments":[{"id":72816,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72794,"src":"1518:13:108","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"expression":{"id":72817,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72724,"src":"1533:7:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72818,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1541:16:108","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1533:24:108","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72820,"indexExpression":{"id":72819,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72804,"src":"1558:1:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1533:27:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72815,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1507:10:108","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72821,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1507:54:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72822,"nodeType":"ExpressionStatement","src":"1507:54:108"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72807,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72804,"src":"1447:1:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"expression":{"id":72808,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72724,"src":"1451:7:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1459:16:108","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1451:24:108","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1476:6:108","memberName":"length","nodeType":"MemberAccess","src":"1451:31:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1447:35:108","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72824,"initializationExpression":{"assignments":[72804],"declarations":[{"constant":false,"id":72804,"mutability":"mutable","name":"i","nameLocation":"1440:1:108","nodeType":"VariableDeclaration","scope":72824,"src":"1432:9:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72803,"name":"uint256","nodeType":"ElementaryTypeName","src":"1432:7:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72806,"initialValue":{"hexValue":"30","id":72805,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1444:1:108","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"1432:13:108"},"loopExpression":{"expression":{"id":72813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"1484:3:108","subExpression":{"id":72812,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72804,"src":"1484:1:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72814,"nodeType":"ExpressionStatement","src":"1484:3:108"},"nodeType":"ForStatement","src":"1427:149:108"}]}},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1721:11:108","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72832,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"1734:6:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72829,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1704:3:108","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1708:12:108","memberName":"encodePacked","nodeType":"MemberAccess","src":"1704:16:108","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72833,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1704:37:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72828,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1694:9:108","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1694:48:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72838,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1771:17:108","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72839,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"1790:6:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72836,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1754:3:108","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72837,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1758:12:108","memberName":"encodePacked","nodeType":"MemberAccess","src":"1754:16:108","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1754:43:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72835,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1744:9:108","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72841,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1744:54:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":72827,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"1667:13:108","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":72842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1667:141:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72843,"nodeType":"ExpressionStatement","src":"1667:141:108"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72848,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1856:17:108","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72849,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"1875:6:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72846,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1839:3:108","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72847,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1843:12:108","memberName":"encodePacked","nodeType":"MemberAccess","src":"1839:16:108","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72850,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1839:43:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72845,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1829:9:108","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72851,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1829:54:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72852,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72732,"src":"1885:8:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72844,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1818:10:108","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72853,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1818:76:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72854,"nodeType":"ExpressionStatement","src":"1818:76:108"}]},"functionSelector":"579eb7e5","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"593:10:108","parameters":{"id":72728,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72721,"mutability":"mutable","name":"_token","nameLocation":"612:6:108","nodeType":"VariableDeclaration","scope":72856,"src":"604:14:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72720,"name":"address","nodeType":"ElementaryTypeName","src":"604:7:108","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72724,"mutability":"mutable","name":"_params","nameLocation":"658:7:108","nodeType":"VariableDeclaration","scope":72856,"src":"620:45:108","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72723,"nodeType":"UserDefinedTypeName","pathNode":{"id":72722,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["620:30:108"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"620:30:108"},"referencedDeclaration":69242,"src":"620:30:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72727,"mutability":"mutable","name":"_metadata","nameLocation":"683:9:108","nodeType":"VariableDeclaration","scope":72856,"src":"667:25:108","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72726,"nodeType":"UserDefinedTypeName","pathNode":{"id":72725,"name":"Metadata","nameLocations":["667:8:108"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"667:8:108"},"referencedDeclaration":3098,"src":"667:8:108","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"603:90:108"},"returnParameters":{"id":72733,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72730,"mutability":"mutable","name":"poolId","nameLocation":"750:6:108","nodeType":"VariableDeclaration","scope":72856,"src":"742:14:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72729,"name":"uint256","nodeType":"ElementaryTypeName","src":"742:7:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72732,"mutability":"mutable","name":"strategy","nameLocation":"766:8:108","nodeType":"VariableDeclaration","scope":72856,"src":"758:16:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72731,"name":"address","nodeType":"ElementaryTypeName","src":"758:7:108","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"741:34:108"},"scope":72929,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72928,"nodeType":"FunctionDefinition","src":"1907:660:108","nodes":[],"body":{"id":72927,"nodeType":"Block","src":"2132:435:108","nodes":[],"statements":[{"assignments":[72874],"declarations":[{"constant":false,"id":72874,"mutability":"mutable","name":"token","nameLocation":"2150:5:108","nodeType":"VariableDeclaration","scope":72927,"src":"2142:13:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72873,"name":"address","nodeType":"ElementaryTypeName","src":"2142:7:108","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72876,"initialValue":{"id":72875,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70970,"src":"2158:6:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2142:22:108"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72877,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72860,"src":"2178:6:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":72880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2196:1:108","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72879,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2188:7:108","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72878,"name":"address","nodeType":"ElementaryTypeName","src":"2188:7:108","typeDescriptions":{}}},"id":72881,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2188:10:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2178:20:108","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72888,"nodeType":"IfStatement","src":"2174:65:108","trueBody":{"id":72887,"nodeType":"Block","src":"2200:39:108","statements":[{"expression":{"id":72885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72883,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72874,"src":"2214:5:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72884,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72860,"src":"2222:6:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2214:14:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72886,"nodeType":"ExpressionStatement","src":"2214:14:108"}]}},{"expression":{"id":72891,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72889,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72871,"src":"2248:8:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72890,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72858,"src":"2259:9:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2248:20:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72892,"nodeType":"ExpressionStatement","src":"2248:20:108"},{"assignments":[72897],"declarations":[{"constant":false,"id":72897,"mutability":"mutable","name":"_pool_managers","nameLocation":"2296:14:108","nodeType":"VariableDeclaration","scope":72927,"src":"2279:31:108","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72895,"name":"address","nodeType":"ElementaryTypeName","src":"2279:7:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72896,"nodeType":"ArrayTypeName","src":"2279:9:108","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72899,"initialValue":{"id":72898,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71069,"src":"2313:14:108","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2279:48:108"},{"expression":{"id":72914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72900,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72869,"src":"2338:6:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72903,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70994,"src":"2394:9:108","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72904,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72871,"src":"2405:8:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72907,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72863,"src":"2426:7:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":72905,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2415:3:108","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72906,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2419:6:108","memberName":"encode","nodeType":"MemberAccess","src":"2415:10:108","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2415:19:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":72909,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72874,"src":"2436:5:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":72910,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2443:1:108","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":72911,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72866,"src":"2446:9:108","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":72912,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72897,"src":"2457:14:108","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":72901,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71028,"src":"2347:4:108","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76184","typeString":"contract FAllo"}},"id":72902,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2352:28:108","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":76170,"src":"2347:33:108","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":72913,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2347:134:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2338:143:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72915,"nodeType":"ExpressionStatement","src":"2338:143:108"},{"eventCall":{"arguments":[{"id":72917,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72869,"src":"2509:6:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72918,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72871,"src":"2517:8:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72921,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2535:4:108","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}],"id":72920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2527:7:108","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72919,"name":"address","nodeType":"ElementaryTypeName","src":"2527:7:108","typeDescriptions":{}}},"id":72922,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2527:13:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72923,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72860,"src":"2542:6:108","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72924,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72866,"src":"2550:9:108","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72916,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70911,"src":"2497:11:108","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":72925,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2497:63:108","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72926,"nodeType":"EmitStatement","src":"2492:68:108"}]},"functionSelector":"8659ffdd","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"1916:10:108","parameters":{"id":72867,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72858,"mutability":"mutable","name":"_strategy","nameLocation":"1944:9:108","nodeType":"VariableDeclaration","scope":72928,"src":"1936:17:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72857,"name":"address","nodeType":"ElementaryTypeName","src":"1936:7:108","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72860,"mutability":"mutable","name":"_token","nameLocation":"1971:6:108","nodeType":"VariableDeclaration","scope":72928,"src":"1963:14:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72859,"name":"address","nodeType":"ElementaryTypeName","src":"1963:7:108","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72863,"mutability":"mutable","name":"_params","nameLocation":"2025:7:108","nodeType":"VariableDeclaration","scope":72928,"src":"1987:45:108","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72862,"nodeType":"UserDefinedTypeName","pathNode":{"id":72861,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1987:30:108"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1987:30:108"},"referencedDeclaration":69242,"src":"1987:30:108","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72866,"mutability":"mutable","name":"_metadata","nameLocation":"2058:9:108","nodeType":"VariableDeclaration","scope":72928,"src":"2042:25:108","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72865,"nodeType":"UserDefinedTypeName","pathNode":{"id":72864,"name":"Metadata","nameLocations":["2042:8:108"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2042:8:108"},"referencedDeclaration":3098,"src":"2042:8:108","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"1926:147:108"},"returnParameters":{"id":72872,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72869,"mutability":"mutable","name":"poolId","nameLocation":"2106:6:108","nodeType":"VariableDeclaration","scope":72928,"src":"2098:14:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72868,"name":"uint256","nodeType":"ElementaryTypeName","src":"2098:7:108","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72871,"mutability":"mutable","name":"strategy","nameLocation":"2122:8:108","nodeType":"VariableDeclaration","scope":72928,"src":"2114:16:108","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72870,"name":"address","nodeType":"ElementaryTypeName","src":"2114:7:108","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2097:34:108"},"scope":72929,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":72718,"name":"RegistryCommunityV0_0","nameLocations":["556:21:108"],"nodeType":"IdentifierPath","referencedDeclaration":72700,"src":"556:21:108"},"id":72719,"nodeType":"InheritanceSpecifier","src":"556:21:108"}],"canonicalName":"RegistryCommunityV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72717,"nodeType":"StructuredDocumentation","src":"471:51:108","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72929,72700,52697,53970,53982,52770,53237,70711,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_1","nameLocation":"531:21:108","scope":72930,"usedErrors":[70634,70913,70915,70919,70921,70923,70925,70927,70929,70931,70933,70935,70937,70939,70941,70943,70945,70947,70953]}],"license":"AGPL-3.0-only"},"id":108} \ No newline at end of file +{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516160a06200004d60003960008181611e4001528181611e8301528181611f7e01528181611fc1015261211301526160a06000f3fe608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004535565b62000d56565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004561565b62000d8e565b005b348015620003f057600080fd5b50620003e162000402366004620045a3565b62000e04565b3480156200041557600080fd5b50620003e162000427366004620045e1565b62001187565b3480156200043a57600080fd5b50620003e16200044c366004620045e1565b6200119f565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e1565b620011cc565b3480156200049f57600080fd5b50620003e1620004b1366004620045a3565b620011e1565b348015620004c457600080fd5b5062000395620004d636600462004561565b620012db565b348015620004e957600080fd5b5062000395620012f0565b3480156200050157600080fd5b50620005196200051336600462004601565b620013f5565b6040516200037a91906200463d565b3480156200053557600080fd5b506200039562000547366004620045e1565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004651565b6200142f565b3480156200059857600080fd5b50620003e1620005aa36600462004561565b62001456565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004861565b62001496565b348015620005fa57600080fd5b50620003e162001b56565b3480156200061257600080fd5b50620003e16200062436600462004651565b62001db8565b3480156200063757600080fd5b50620003e162000649366004620045e1565b62001e36565b3480156200065c57600080fd5b50620003e16200066e366004620045e1565b62001f07565b3480156200068157600080fd5b506200036e62000693366004620045e1565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a3565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f4565b62001f74565b3480156200070d57600080fd5b50620007256200071f36600462004c78565b62002035565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002106565b3480156200076857600080fd5b50620003e16200077a36600462004561565b620021b7565b3480156200078d57600080fd5b50620007256200079f36600462004e59565b62002403565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004561565b6200266b565b348015620007fa57600080fd5b50620003956200080c366004620045a3565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a3565b62002a05565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b58565b348015620008ba57600080fd5b50620003e1620008cc36600462004561565b62002b6e565b348015620008df57600080fd5b506200039560008051602062005fe483398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a3565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004561565b62002c0a565b348015620009d257600080fd5b5062000725620009e436600462004ecd565b62002cc8565b348015620009f757600080fd5b5062000a3862000a09366004620045e1565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e55565b34801562000a9d57600080fd5b506200036e62000aaf36600462004651565b62002ef0565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e1565b62002f1b565b34801562000b2857600080fd5b50620003e162000b3a366004620045e1565b62002f65565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f92565b34801562000b8c57600080fd5b5062000b9762002fc9565b6040516200037a919062004fb4565b34801562000bb357600080fd5b50620003e162003060565b34801562000bcb57600080fd5b50620003956200316a565b34801562000be357600080fd5b50620003e162000bf5366004620045e1565b6200317c565b34801562000c0857600080fd5b5062000b97620031b1565b34801562000c2057600080fd5b50620003e162000c3236600462004651565b620031c1565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fc9565b620031e3565b34801562000cc857600080fd5b506200036e62000cda366004620045e1565b620032a4565b34801562000ced57600080fd5b50620003e162000cff366004620045e1565b620032c1565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b97565b60006001600160e01b03198216637965db0b60e01b148062000d8857506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9862003332565b62000da7612710600a62005052565b81111562000dc85760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e0e6200336f565b62000e1982620033ca565b62000e2481620033f3565b62000e2f816200342e565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7857604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f06573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2c919062005082565b600381111562000f405762000f406200506c565b0362000fc55760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f77908890600090600401620050a2565b6020604051808303816000875af115801562000f97573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fbd9190620050bb565b9050620010c1565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001008573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200102e919062005082565b60038111156200104257620010426200506c565b14620010c15760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010789088908690600401620050a2565b6020604051808303816000875af115801562001098573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010be9190620050bb565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200116d90879087908590620050d5565b60405180910390a1505050620011836001606555565b5050565b6200119162003332565b6200119c816200345d565b50565b620011a9620034bb565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d662003332565b6200119c816200351e565b620011ec82620033ca565b620011f7816200342e565b620012033382620035b0565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124b57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200129d8282620035e3565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012cf929190620050f9565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001310612710606462005052565b60fc5460fb5462001322919062005052565b6200132e919062005113565b9050600062001341612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200136f9030906004016200463d565b602060405180830381865afa1580156200138d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b39190620050bb565b60fb54620013c2919062005052565b620013ce919062005113565b9050808260fb54620013e1919062005136565b620013ed919062005136565b935050505090565b61010d60205281600052604060002081815481106200141357600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143a82620012db565b620014458162003719565b62001451838362003725565b505050565b6200146062003332565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000df9565b600054610100900460ff1615808015620014b75750600054600160ff909116105b80620014dc5750620014c930620037af565b158015620014dc575060005460ff166001145b620015455760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001569576000805461ff0019166101001790555b62001574826200317c565b6200157e620037be565b62001588620037f2565b620015a460008051602062005fe483398151915260006200381c565b620015b385602001516200342e565b620015c38561010001516200342e565b8451620015d0906200342e565b620015df8560a001516200342e565b606085015115620015f957620015f98560c001516200342e565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001654576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016919082620051da565b5061016085015161010990620016a89082620051da565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b03191691851684029190911790559087015161010680549092169281169290921790556200171d9060008051602062005fe48339815191529062003725565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001772573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017989190620052a6565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001824576040805160038082526080820190925290602082016060803683370190505090503381600081518110620017fe57620017fe620052c6565b60200260200101906001600160a01b031690816001600160a01b03168152505062001961565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200186f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018999190810190620052dc565b905080516002620018ab919062005136565b6001600160401b03811115620018c557620018c562004679565b604051908082528060200260200182016040528015620018ef578160200160208202803683370190505b50915060005b81518110156200195e57818181518110620019145762001914620052c6565b6020026020010151838281518110620019315762001931620052c6565b6001600160a01b039092166020928302919091019091015280620019558162005375565b915050620018f5565b50505b6101065481516001600160a01b03909116908290620019839060019062005391565b81518110620019965762001996620052c6565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019c8919062005391565b81518110620019db57620019db620052c6565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a2e9291610108913090889060040162005493565b6020604051808303816000875af115801562001a4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a749190620050bb565b60fe55805162001a8d9061010f9060208401906200448f565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aff9290916101089190620054f3565b60405180910390a150801562001b4f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b606200336f565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b91612710606462005052565b60fc5460fb5462001ba3919062005052565b62001baf919062005113565b9050600062001bc2612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf09030906004016200463d565b602060405180830381865afa15801562001c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c349190620050bb565b60fb5462001c43919062005052565b62001c4f919062005113565b905062001c5c8562002f1b565b62001da65760028401805460ff1916600190811790915560fb5490850181905562001cb69086903090849062001c9490879062005136565b62001ca0919062005136565b610105546001600160a01b031692919062003871565b811562001ce35760ff546101055462001ce3916001600160a01b03918216916101009091041684620038cd565b801562001d685762001d68836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d539190620052a6565b610105546001600160a01b03169083620038cd565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d9d929190620050a2565b60405180910390a15b505050505062001db66001606555565b565b6001600160a01b038116331462001e2a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153c565b620011838282620038ef565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e815760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb562003959565b6001600160a01b03161462001ede5760405162461bcd60e51b81526004016200153c906200555d565b62001ee98162003976565b604080516000808252602082019092526200119c91839190620039b8565b62001f1162003332565b62001f1c816200342e565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000df99392169190620050f9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fbf5760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff362003959565b6001600160a01b0316146200201c5760405162461bcd60e51b81526004016200153c906200555d565b620020278262003976565b6200118382826001620039b8565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206b62002e55565b6040516024016200207f9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020be90620044f5565b620020cb929190620055bb565b604051809103906000f080158015620020e8573d6000803e3d6000fd5b509050620020f981878787620031e3565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153c565b506000805160206200602483398151915290565b620021c16200336f565b620021cb62003b30565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200222f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002210575b50505050509050600080600090505b82518110156200236a578281815181106200225d576200225d620052c6565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002294929190620050a2565b6020604051808303816000875af1158015620022b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022da9190620050bb565b9150811562002355576001600160a01b038416600090815261010b602052604081208451849290869085908110620023165762002316620052c6565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546200234f919062005136565b90915550505b80620023618162005375565b9150506200223e565b506101055462002386906001600160a01b031684308762003871565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b490849062005136565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023ed9085908790620050a2565b60405180910390a15050506200119c6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243962002e55565b6040516024016200244d9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248c90620044f5565b62002499929190620055bb565b604051809103906000f080158015620024b6573d6000803e3d6000fd5b509050620024c78187878762002cc8565b60c087015191945092506001600160a01b0316620025d2576103e88560e00151511115620025505760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153c565b600083604051602001620025659190620055e1565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025cf57620025ba828860e001518381518110620025ac57620025ac620052c6565b602002602001015162003725565b80620025c68162005375565b91505062002580565b50505b6200262e83604051602001620025e99190620055e1565b6040516020818303038152906040528051906020012084604051602001620026129190620055fe565b604051602081830303815290604052805190602001206200381c565b6200266283604051602001620026459190620055fe565b604051602081830303815290604052805190602001208362003725565b50935093915050565b620026756200336f565b6200267f62003b30565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b390869062005391565b1015620026d357604051634e23e81760e11b815260040160405180910390fd5b61010554620026ed906001600160a01b03168486620038cd565b60005b82548110156200299d576000838281548110620027115762002711620052c6565b6000918252602090912001546001600160a01b031690506200273b8163f1801e6160e01b62003b59565b15620028c157604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027719088908a90600401620050a2565b6020604051808303816000875af115801562002791573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027b79190620050bb565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027f857620027f8620052c6565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284c576040516311423e6360e31b815260048101859052602481018290526044016200153c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200287f576200287f620052c6565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b590849062005391565b90915550505062002987565b83548490620028d39060019062005391565b81548110620028e657620028e6620052c6565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029195762002919620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295a576200295a62005621565b600082815260209020810160001990810180546001600160a01b031916905501905562002987816200345d565b5080620029948162005375565b915050620026f0565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cc90849062005391565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023ed9085908790620050a2565b62002a0f6200336f565b62002a1962003332565b60ff80541662002a3c576040516365b1ee3960e11b815260040160405180910390fd5b62002a478262002f1b565b62002a6557604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab68362003b81565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0b9216908490620038cd565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4493929190620050d5565b60405180910390a150620011836001606555565b62002b62620034bb565b62001db6600062003c96565b62002b7862003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bee919081019062005637565b60200151905062002bff816200342e565b62001183816200345d565b62002c1462003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c60573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8a919081019062005637565b60200151905062002c9b816200342e565b62002cb76001600160a01b03821663f1801e6160e01b62003b59565b15620011835762001183816200351e565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf35750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d32575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b9060200162005802565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc19796959493929190620058ab565b6020604051808303816000875af115801562002de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e079190620050bb565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e429594939291906200591c565b60405180910390a1505094509492505050565b60008062002e6b6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8557919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee2575060408051601f3d908101601f1916820190925262002edf91810190620052a6565b60015b62000d8857919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f6f620034bb565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fbf576040516375e686b760e11b815260040160405180910390fd5b62001db662003ce8565b610109805462002fd9906200514c565b80601f016020809104026020016040519081016040528092919081815260200182805462003007906200514c565b8015620030585780601f106200302c5761010080835404028352916020019162003058565b820191906000526020600020905b8154815290600101906020018083116200303a57829003601f168201915b505050505081565b6200306a6200336f565b336200307681620033ca565b620030818162003b81565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030fc919062004503565b6020810151610105546200311e916001600160a01b03909116908490620038cd565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003155929190620050a2565b60405180910390a1505062001db66001606555565b62003179612710600a62005052565b81565b600054610100900460ff16620031a65760405162461bcd60e51b81526004016200153c9062005958565b6200119c8162003c96565b610108805462002fd9906200514c565b620031cc82620012db565b620031d78162003719565b620014518383620038ef565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b038616156200320e5750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116200324d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b90602001620059a3565b600062000d8860008051602062005fe48339815191528362002ef0565b620032cb620034bb565b6001600160a01b038116620031a65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153c565b6200334d60008051602062005fe48339815191523362002ef0565b62001db6573360405163fc4be72f60e01b81526004016200153c91906200463d565b600260655403620033c35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153c565b6002606555565b620033d58162002f1b565b6200119c57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119c576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119c576040516303988b8160e61b815260040160405180910390fd5b6001606555565b62003468816200342e565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000df99083906200463d565b33620034c662002e55565b6001600160a01b03161462001db65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153c565b6001600160a01b038116600090815261010a602052604090205460ff16156200355a576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000df99083906200463d565b806001600160a01b0316826001600160a01b031614620011835760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371357826001600160a01b0316828281548110620036275762003627620052c6565b6000918252602090912001546001600160a01b031603620036fe5781548290620036549060019062005391565b81548110620036675762003667620052c6565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369a576200369a620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036db57620036db62005621565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370a8162005375565b915050620035fe565b50505050565b6200119c813362003d4c565b62003731828262002ef0565b6200118357600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376b3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037e85760405162461bcd60e51b81526004016200153c9062005958565b62001db662003db0565b600054610100900460ff1662001db65760405162461bcd60e51b81526004016200153c9062005958565b60006200382983620012db565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003713846323b872dd60e01b8585856040516024016200389593929190620050d5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003dda565b620014518363a9059cbb60e01b848460405160240162003895929190620050a2565b620038fb828262002ef0565b156200118357600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006024833981519152546001600160a01b031690565b336200398162002e55565b6001600160a01b0316146200119c57336200399b62002e55565b60405163163678e960e01b81526004016200153c929190620050f9565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039ee57620014518362003eb6565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4b575060408051601f3d908101601f1916820190925262003a4891810190620050bb565b60015b62003ab05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153c565b60008051602062006024833981519152811462003b225760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153c565b506200145183838362003f55565b62003b3b3362002f1b565b62001db657604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b668362003f80565b801562003b7a575062003b7a838362003fb8565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bee57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bcf575b5050505050905060005b8151811015620014515781818151811062003c175762003c17620052c6565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4c91906200463d565b600060405180830381600087803b15801562003c6757600080fd5b505af115801562003c7c573d6000803e3d6000fd5b50505050808062003c8d9062005375565b91505062003bf8565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d42906000906200463d565b60405180910390a1565b62003d58828262002ef0565b620011835762003d688162004043565b62003d7583602062004056565b60405160200162003d8892919062005a2c565b60408051601f198184030181529082905262461bcd60e51b82526200153c9160040162004fb4565b600054610100900460ff16620034565760405162461bcd60e51b81526004016200153c9062005958565b600062003e31826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200420f9092919063ffffffff16565b905080516000148062003e5557508080602001905181019062003e55919062005a9f565b620014515760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153c565b62003ec181620037af565b62003f255760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153c565b6000805160206200602483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f608362004228565b60008251118062003f6e5750805b1562001451576200371383836200426a565b600062003f95826301ffc9a760e01b62003fb8565b801562000d88575062003fb1826001600160e01b031962003fb8565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402b575060208210155b8015620040385750600081115b979650505050505050565b606062000d886001600160a01b03831660145b606060006200406783600262005052565b6200407490600262005136565b6001600160401b038111156200408e576200408e62004679565b6040519080825280601f01601f191660200182016040528015620040b9576020820181803683370190505b509050600360fc1b81600081518110620040d757620040d7620052c6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041095762004109620052c6565b60200101906001600160f81b031916908160001a90535060006200412f84600262005052565b6200413c90600162005136565b90505b6001811115620041be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041745762004174620052c6565b1a60f81b8282815181106200418d576200418d620052c6565b60200101906001600160f81b031916908160001a90535060049490941c93620041b68162005abf565b90506200413f565b50831562003b7a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153c565b606062004220848460008562004292565b949350505050565b620042338162003eb6565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7a838360405180606001604052806027815260200162006044602791396200436a565b606082471015620042f55760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153c565b600080866001600160a01b0316858760405162004313919062005ad9565b60006040518083038185875af1925050503d806000811462004352576040519150601f19603f3d011682016040523d82523d6000602084013e62004357565b606091505b50915091506200403887838387620043e8565b6060600080856001600160a01b03168560405162004389919062005ad9565b600060405180830381855af49150503d8060008114620043c6576040519150601f19603f3d011682016040523d82523d6000602084013e620043cb565b606091505b5091509150620043de86838387620043e8565b9695505050505050565b606083156200445c57825160000362004454576200440685620037af565b620044545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153c565b508162004220565b620042208383815115620044735781518083602001fd5b8060405162461bcd60e51b81526004016200153c919062004fb4565b828054828255906000526020600020908101928215620044e7579160200282015b82811115620044e757825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b0565b5062002eec9291506200451e565b6104ec8062005af883390190565b50805460008255906000526020600020908101906200119c91905b5b8082111562002eec57600081556001016200451f565b6000602082840312156200454857600080fd5b81356001600160e01b03198116811462003b7a57600080fd5b6000602082840312156200457457600080fd5b5035919050565b6001600160a01b03811681146200119c57600080fd5b80356200459e816200457b565b919050565b60008060408385031215620045b757600080fd5b8235620045c4816200457b565b91506020830135620045d6816200457b565b809150509250929050565b600060208284031215620045f457600080fd5b813562003b7a816200457b565b600080604083850312156200461557600080fd5b823562004622816200457b565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466557600080fd5b823591506020830135620045d6816200457b565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b457620046b462004679565b60405290565b60405161018081016001600160401b0381118282101715620046b457620046b462004679565b60405160c081016001600160401b0381118282101715620046b457620046b462004679565b60405161010081016001600160401b0381118282101715620046b457620046b462004679565b604051601f8201601f191681016001600160401b038111828210171562004756576200475662004679565b604052919050565b60006001600160401b038211156200477a576200477a62004679565b50601f01601f191660200190565b60006200479f62004799846200475e565b6200472b565b9050828152838383011115620047b457600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047dd57600080fd5b62003b7a8383356020850162004788565b6000604082840312156200480157600080fd5b6200480b6200468f565b82358152905060208201356001600160401b038111156200482b57600080fd5b6200483984828501620047cb565b60208301525092915050565b80151581146200119c57600080fd5b80356200459e8162004845565b600080600080608085870312156200487857600080fd5b84356001600160401b03808211156200489057600080fd5b908601906101808289031215620048a657600080fd5b620048b0620046ba565b620048bb8362004591565b8152620048cb6020840162004591565b6020820152604083013560408201526060830135606082015260808301356080820152620048fc60a0840162004591565b60a08201526200490f60c0840162004591565b60c082015260e0830135828111156200492757600080fd5b620049358a828601620047ee565b60e0830152506101006200494b81850162004591565b9082015261012083810135838111156200496457600080fd5b620049728b828701620047cb565b8284015250506101406200498881850162004854565b908201526101608381013583811115620049a157600080fd5b620049af8b828701620047cb565b828401525050809650505050620049c96020860162004591565b9250620049d96040860162004591565b9150620049e96060860162004591565b905092959194509250565b6000806040838503121562004a0857600080fd5b823562004a15816200457b565b915060208301356001600160401b0381111562004a3157600080fd5b8301601f8101851362004a4357600080fd5b62004a548582356020840162004788565b9150509250929050565b60006080828403121562004a7157600080fd5b604051608081016001600160401b038111828210171562004a965762004a9662004679565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200459e57600080fd5b600481106200119c57600080fd5b80356200459e8162004ad7565b60006020828403121562004b0557600080fd5b604051602081016001600160401b038111828210171562004b2a5762004b2a62004679565b6040529135825250919050565b600060c0828403121562004b4a57600080fd5b62004b54620046e0565b9050813562004b63816200457b565b8152602082013562004b75816200457b565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bbe57600080fd5b60405160e081016001600160401b038111828210171562004be35762004be362004679565b60405290508062004bf5848462004a5e565b815262004c056080840162004ac7565b602082015260a083013562004c1a8162004ad7565b604082015262004c2e8460c0850162004af2565b606082015262004c428460e0850162004b37565b60808201526101a083013562004c58816200457b565b60a082015262004c6c6101c0840162004591565b60c08201525092915050565b6000806000610220848603121562004c8f57600080fd5b833562004c9c816200457b565b925062004cad856020860162004baa565b91506102008401356001600160401b0381111562004cca57600080fd5b62004cd886828701620047ee565b9150509250925092565b60006001600160401b0382111562004cfe5762004cfe62004679565b5060051b60200190565b600082601f83011262004d1a57600080fd5b8135602062004d2d620047998362004ce2565b82815260059290921b8401810191818101908684111562004d4d57600080fd5b8286015b8481101562004d7557803562004d67816200457b565b835291830191830162004d51565b509695505050505050565b6000610200828403121562004d9457600080fd5b62004d9e62004705565b905062004dac838362004a5e565b815262004dbc6080830162004ac7565b602082015262004dcf60a0830162004ae5565b604082015262004de38360c0840162004af2565b606082015262004df78360e0840162004b37565b608082015262004e0b6101a0830162004591565b60a082015262004e1f6101c0830162004591565b60c08201526101e08201356001600160401b0381111562004e3f57600080fd5b62004e4d8482850162004d08565b60e08301525092915050565b60008060006060848603121562004e6f57600080fd5b833562004e7c816200457b565b925060208401356001600160401b038082111562004e9957600080fd5b62004ea78783880162004d80565b9350604086013591508082111562004ebe57600080fd5b5062004cd886828701620047ee565b6000806000806080858703121562004ee457600080fd5b843562004ef1816200457b565b9350602085013562004f03816200457b565b925060408501356001600160401b038082111562004f2057600080fd5b62004f2e8883890162004d80565b9350606087013591508082111562004f4557600080fd5b5062004f5487828801620047ee565b91505092959194509250565b60005b8381101562004f7d57818101518382015260200162004f63565b50506000910152565b6000815180845262004fa081602086016020860162004f60565b601f01601f19169290920160200192915050565b60208152600062003b7a602083018462004f86565b600080600080610240858703121562004fe157600080fd5b843562004fee816200457b565b9350602085013562005000816200457b565b925062005011866040870162004baa565b91506102208501356001600160401b038111156200502e57600080fd5b62004f5487828801620047ee565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d885762000d886200503c565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509557600080fd5b815162003b7a8162004ad7565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050ce57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513157634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d885762000d886200503c565b600181811c908216806200516157607f821691505b6020821081036200518257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145157600081815260208120601f850160051c81016020861015620051b15750805b601f850160051c820191505b81811015620051d257828155600101620051bd565b505050505050565b81516001600160401b03811115620051f657620051f662004679565b6200520e816200520784546200514c565b8462005188565b602080601f8311600181146200524657600084156200522d5750858301515b600019600386901b1c1916600185901b178555620051d2565b600085815260208120601f198616915b82811015620052775788860151825594840194600190910190840162005256565b5085821015620052965787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052b957600080fd5b815162003b7a816200457b565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f057600080fd5b82516001600160401b038111156200530757600080fd5b8301601f810185136200531957600080fd5b80516200532a620047998262004ce2565b81815260059190911b820183019083810190878311156200534a57600080fd5b928401925b828410156200403857835162005365816200457b565b825292840192908401906200534f565b6000600182016200538a576200538a6200503c565b5060010190565b8181038181111562000d885762000d886200503c565b60008154620053b6816200514c565b808552602060018381168015620053d65760018114620053f15762005421565b60ff1985168884015283151560051b88018301955062005421565b866000528260002060005b85811015620054195781548a8201860152908301908401620053fc565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004220604085018262004f86565b600081518084526020808501945080840160005b83811015620054885781516001600160a01b03168752958201959082019060010162005461565b509495945050505050565b85815260a060208201526000620054ae60a0830187620053a7565b8281036040840152620054c281876200542c565b6001600160a01b038616606085015283810360808501529050620054e781856200544d565b98975050505050505050565b8381526060602082015260006200550e6060830185620053a7565b8281036040840152620043de81856200542c565b6020808252602c908201526000805160206200600483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042209083018462004f86565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564b57600080fd5b82516001600160401b03808211156200566357600080fd5b9084019060c082870312156200567857600080fd5b62005682620046e0565b825181528383015162005695816200457b565b818501526040830151620056a9816200457b565b6040820152606083015182811115620056c157600080fd5b830160408189031215620056d457600080fd5b620056de6200468f565b815181528582015184811115620056f457600080fd5b82019350601f840189136200570857600080fd5b835191506200571b62004799836200475e565b82815289878487010111156200573057600080fd5b620057418388830189880162004f60565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a657620057a66200506c565b9052565b60048110620057a657620057a66200506c565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b60208152620058166020820183516200576d565b600060208301516200582c60a084018262005793565b5060408301516200584160c0840182620057aa565b5060608301515160e0830152608083015162005862610100840182620057bd565b5060a0830151620058786101c084018262004630565b5060c08301516200588e6101e084018262004630565b5060e083015161020083810152620042206102208401826200544d565b878152600060018060a01b03808916602084015260e06040840152620058d560e084018962004f86565b818816606085015286608085015283810360a0850152620058f781876200542c565b91505082810360c08401526200590e81856200544d565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062004038908301846200542c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059b98284516200576d565b6020830151620059cd608084018262005793565b506040830151620059e260a0840182620057aa565b5060608301515160c0830152608083015162005a0260e0840182620057bd565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6081601785016020880162004f60565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9381602884016020880162004f60565b01602801949350505050565b60006020828403121562005ab257600080fd5b815162003b7a8162004845565b60008162005ad15762005ad16200503c565b506000190190565b6000825162005aed81846020870162004f60565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207ce949f081211803b391e338567b30f6f7ff7b2a3be667962cb25daddcea92e564736f6c63430008130033","sourceMap":"522:2047:105:-:0;;;1088:4:64;1045:48;;522:2047:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004535565b62000d56565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004561565b62000d8e565b005b348015620003f057600080fd5b50620003e162000402366004620045a3565b62000e04565b3480156200041557600080fd5b50620003e162000427366004620045e1565b62001187565b3480156200043a57600080fd5b50620003e16200044c366004620045e1565b6200119f565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e1565b620011cc565b3480156200049f57600080fd5b50620003e1620004b1366004620045a3565b620011e1565b348015620004c457600080fd5b5062000395620004d636600462004561565b620012db565b348015620004e957600080fd5b5062000395620012f0565b3480156200050157600080fd5b50620005196200051336600462004601565b620013f5565b6040516200037a91906200463d565b3480156200053557600080fd5b506200039562000547366004620045e1565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004651565b6200142f565b3480156200059857600080fd5b50620003e1620005aa36600462004561565b62001456565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004861565b62001496565b348015620005fa57600080fd5b50620003e162001b56565b3480156200061257600080fd5b50620003e16200062436600462004651565b62001db8565b3480156200063757600080fd5b50620003e162000649366004620045e1565b62001e36565b3480156200065c57600080fd5b50620003e16200066e366004620045e1565b62001f07565b3480156200068157600080fd5b506200036e62000693366004620045e1565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a3565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f4565b62001f74565b3480156200070d57600080fd5b50620007256200071f36600462004c78565b62002035565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002106565b3480156200076857600080fd5b50620003e16200077a36600462004561565b620021b7565b3480156200078d57600080fd5b50620007256200079f36600462004e59565b62002403565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004561565b6200266b565b348015620007fa57600080fd5b50620003956200080c366004620045a3565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a3565b62002a05565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b58565b348015620008ba57600080fd5b50620003e1620008cc36600462004561565b62002b6e565b348015620008df57600080fd5b506200039560008051602062005fe483398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a3565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004561565b62002c0a565b348015620009d257600080fd5b5062000725620009e436600462004ecd565b62002cc8565b348015620009f757600080fd5b5062000a3862000a09366004620045e1565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e55565b34801562000a9d57600080fd5b506200036e62000aaf36600462004651565b62002ef0565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e1565b62002f1b565b34801562000b2857600080fd5b50620003e162000b3a366004620045e1565b62002f65565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f92565b34801562000b8c57600080fd5b5062000b9762002fc9565b6040516200037a919062004fb4565b34801562000bb357600080fd5b50620003e162003060565b34801562000bcb57600080fd5b50620003956200316a565b34801562000be357600080fd5b50620003e162000bf5366004620045e1565b6200317c565b34801562000c0857600080fd5b5062000b97620031b1565b34801562000c2057600080fd5b50620003e162000c3236600462004651565b620031c1565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fc9565b620031e3565b34801562000cc857600080fd5b506200036e62000cda366004620045e1565b620032a4565b34801562000ced57600080fd5b50620003e162000cff366004620045e1565b620032c1565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b97565b60006001600160e01b03198216637965db0b60e01b148062000d8857506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9862003332565b62000da7612710600a62005052565b81111562000dc85760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e0e6200336f565b62000e1982620033ca565b62000e2481620033f3565b62000e2f816200342e565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7857604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f06573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2c919062005082565b600381111562000f405762000f406200506c565b0362000fc55760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f77908890600090600401620050a2565b6020604051808303816000875af115801562000f97573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fbd9190620050bb565b9050620010c1565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001008573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200102e919062005082565b60038111156200104257620010426200506c565b14620010c15760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010789088908690600401620050a2565b6020604051808303816000875af115801562001098573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010be9190620050bb565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200116d90879087908590620050d5565b60405180910390a1505050620011836001606555565b5050565b6200119162003332565b6200119c816200345d565b50565b620011a9620034bb565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d662003332565b6200119c816200351e565b620011ec82620033ca565b620011f7816200342e565b620012033382620035b0565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124b57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200129d8282620035e3565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012cf929190620050f9565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001310612710606462005052565b60fc5460fb5462001322919062005052565b6200132e919062005113565b9050600062001341612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200136f9030906004016200463d565b602060405180830381865afa1580156200138d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b39190620050bb565b60fb54620013c2919062005052565b620013ce919062005113565b9050808260fb54620013e1919062005136565b620013ed919062005136565b935050505090565b61010d60205281600052604060002081815481106200141357600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143a82620012db565b620014458162003719565b62001451838362003725565b505050565b6200146062003332565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000df9565b600054610100900460ff1615808015620014b75750600054600160ff909116105b80620014dc5750620014c930620037af565b158015620014dc575060005460ff166001145b620015455760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001569576000805461ff0019166101001790555b62001574826200317c565b6200157e620037be565b62001588620037f2565b620015a460008051602062005fe483398151915260006200381c565b620015b385602001516200342e565b620015c38561010001516200342e565b8451620015d0906200342e565b620015df8560a001516200342e565b606085015115620015f957620015f98560c001516200342e565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001654576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016919082620051da565b5061016085015161010990620016a89082620051da565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b03191691851684029190911790559087015161010680549092169281169290921790556200171d9060008051602062005fe48339815191529062003725565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001772573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017989190620052a6565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001824576040805160038082526080820190925290602082016060803683370190505090503381600081518110620017fe57620017fe620052c6565b60200260200101906001600160a01b031690816001600160a01b03168152505062001961565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200186f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018999190810190620052dc565b905080516002620018ab919062005136565b6001600160401b03811115620018c557620018c562004679565b604051908082528060200260200182016040528015620018ef578160200160208202803683370190505b50915060005b81518110156200195e57818181518110620019145762001914620052c6565b6020026020010151838281518110620019315762001931620052c6565b6001600160a01b039092166020928302919091019091015280620019558162005375565b915050620018f5565b50505b6101065481516001600160a01b03909116908290620019839060019062005391565b81518110620019965762001996620052c6565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019c8919062005391565b81518110620019db57620019db620052c6565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a2e9291610108913090889060040162005493565b6020604051808303816000875af115801562001a4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a749190620050bb565b60fe55805162001a8d9061010f9060208401906200448f565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aff9290916101089190620054f3565b60405180910390a150801562001b4f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b606200336f565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b91612710606462005052565b60fc5460fb5462001ba3919062005052565b62001baf919062005113565b9050600062001bc2612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf09030906004016200463d565b602060405180830381865afa15801562001c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c349190620050bb565b60fb5462001c43919062005052565b62001c4f919062005113565b905062001c5c8562002f1b565b62001da65760028401805460ff1916600190811790915560fb5490850181905562001cb69086903090849062001c9490879062005136565b62001ca0919062005136565b610105546001600160a01b031692919062003871565b811562001ce35760ff546101055462001ce3916001600160a01b03918216916101009091041684620038cd565b801562001d685762001d68836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d539190620052a6565b610105546001600160a01b03169083620038cd565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d9d929190620050a2565b60405180910390a15b505050505062001db66001606555565b565b6001600160a01b038116331462001e2a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153c565b620011838282620038ef565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e815760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb562003959565b6001600160a01b03161462001ede5760405162461bcd60e51b81526004016200153c906200555d565b62001ee98162003976565b604080516000808252602082019092526200119c91839190620039b8565b62001f1162003332565b62001f1c816200342e565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000df99392169190620050f9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fbf5760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff362003959565b6001600160a01b0316146200201c5760405162461bcd60e51b81526004016200153c906200555d565b620020278262003976565b6200118382826001620039b8565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206b62002e55565b6040516024016200207f9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020be90620044f5565b620020cb929190620055bb565b604051809103906000f080158015620020e8573d6000803e3d6000fd5b509050620020f981878787620031e3565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153c565b506000805160206200602483398151915290565b620021c16200336f565b620021cb62003b30565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200222f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002210575b50505050509050600080600090505b82518110156200236a578281815181106200225d576200225d620052c6565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002294929190620050a2565b6020604051808303816000875af1158015620022b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022da9190620050bb565b9150811562002355576001600160a01b038416600090815261010b602052604081208451849290869085908110620023165762002316620052c6565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546200234f919062005136565b90915550505b80620023618162005375565b9150506200223e565b506101055462002386906001600160a01b031684308762003871565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b490849062005136565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023ed9085908790620050a2565b60405180910390a15050506200119c6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243962002e55565b6040516024016200244d9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248c90620044f5565b62002499929190620055bb565b604051809103906000f080158015620024b6573d6000803e3d6000fd5b509050620024c78187878762002cc8565b60c087015191945092506001600160a01b0316620025d2576103e88560e00151511115620025505760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153c565b600083604051602001620025659190620055e1565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025cf57620025ba828860e001518381518110620025ac57620025ac620052c6565b602002602001015162003725565b80620025c68162005375565b91505062002580565b50505b6200262e83604051602001620025e99190620055e1565b6040516020818303038152906040528051906020012084604051602001620026129190620055fe565b604051602081830303815290604052805190602001206200381c565b6200266283604051602001620026459190620055fe565b604051602081830303815290604052805190602001208362003725565b50935093915050565b620026756200336f565b6200267f62003b30565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b390869062005391565b1015620026d357604051634e23e81760e11b815260040160405180910390fd5b61010554620026ed906001600160a01b03168486620038cd565b60005b82548110156200299d576000838281548110620027115762002711620052c6565b6000918252602090912001546001600160a01b031690506200273b8163f1801e6160e01b62003b59565b15620028c157604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027719088908a90600401620050a2565b6020604051808303816000875af115801562002791573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027b79190620050bb565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027f857620027f8620052c6565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284c576040516311423e6360e31b815260048101859052602481018290526044016200153c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200287f576200287f620052c6565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b590849062005391565b90915550505062002987565b83548490620028d39060019062005391565b81548110620028e657620028e6620052c6565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029195762002919620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295a576200295a62005621565b600082815260209020810160001990810180546001600160a01b031916905501905562002987816200345d565b5080620029948162005375565b915050620026f0565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cc90849062005391565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023ed9085908790620050a2565b62002a0f6200336f565b62002a1962003332565b60ff80541662002a3c576040516365b1ee3960e11b815260040160405180910390fd5b62002a478262002f1b565b62002a6557604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab68362003b81565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0b9216908490620038cd565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4493929190620050d5565b60405180910390a150620011836001606555565b62002b62620034bb565b62001db6600062003c96565b62002b7862003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bee919081019062005637565b60200151905062002bff816200342e565b62001183816200345d565b62002c1462003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c60573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8a919081019062005637565b60200151905062002c9b816200342e565b62002cb76001600160a01b03821663f1801e6160e01b62003b59565b15620011835762001183816200351e565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf35750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d32575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b9060200162005802565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc19796959493929190620058ab565b6020604051808303816000875af115801562002de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e079190620050bb565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e429594939291906200591c565b60405180910390a1505094509492505050565b60008062002e6b6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8557919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee2575060408051601f3d908101601f1916820190925262002edf91810190620052a6565b60015b62000d8857919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f6f620034bb565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fbf576040516375e686b760e11b815260040160405180910390fd5b62001db662003ce8565b610109805462002fd9906200514c565b80601f016020809104026020016040519081016040528092919081815260200182805462003007906200514c565b8015620030585780601f106200302c5761010080835404028352916020019162003058565b820191906000526020600020905b8154815290600101906020018083116200303a57829003601f168201915b505050505081565b6200306a6200336f565b336200307681620033ca565b620030818162003b81565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030fc919062004503565b6020810151610105546200311e916001600160a01b03909116908490620038cd565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003155929190620050a2565b60405180910390a1505062001db66001606555565b62003179612710600a62005052565b81565b600054610100900460ff16620031a65760405162461bcd60e51b81526004016200153c9062005958565b6200119c8162003c96565b610108805462002fd9906200514c565b620031cc82620012db565b620031d78162003719565b620014518383620038ef565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b038616156200320e5750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116200324d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b90602001620059a3565b600062000d8860008051602062005fe48339815191528362002ef0565b620032cb620034bb565b6001600160a01b038116620031a65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153c565b6200334d60008051602062005fe48339815191523362002ef0565b62001db6573360405163fc4be72f60e01b81526004016200153c91906200463d565b600260655403620033c35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153c565b6002606555565b620033d58162002f1b565b6200119c57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119c576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119c576040516303988b8160e61b815260040160405180910390fd5b6001606555565b62003468816200342e565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000df99083906200463d565b33620034c662002e55565b6001600160a01b03161462001db65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153c565b6001600160a01b038116600090815261010a602052604090205460ff16156200355a576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000df99083906200463d565b806001600160a01b0316826001600160a01b031614620011835760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371357826001600160a01b0316828281548110620036275762003627620052c6565b6000918252602090912001546001600160a01b031603620036fe5781548290620036549060019062005391565b81548110620036675762003667620052c6565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369a576200369a620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036db57620036db62005621565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370a8162005375565b915050620035fe565b50505050565b6200119c813362003d4c565b62003731828262002ef0565b6200118357600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376b3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037e85760405162461bcd60e51b81526004016200153c9062005958565b62001db662003db0565b600054610100900460ff1662001db65760405162461bcd60e51b81526004016200153c9062005958565b60006200382983620012db565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003713846323b872dd60e01b8585856040516024016200389593929190620050d5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003dda565b620014518363a9059cbb60e01b848460405160240162003895929190620050a2565b620038fb828262002ef0565b156200118357600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006024833981519152546001600160a01b031690565b336200398162002e55565b6001600160a01b0316146200119c57336200399b62002e55565b60405163163678e960e01b81526004016200153c929190620050f9565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039ee57620014518362003eb6565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4b575060408051601f3d908101601f1916820190925262003a4891810190620050bb565b60015b62003ab05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153c565b60008051602062006024833981519152811462003b225760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153c565b506200145183838362003f55565b62003b3b3362002f1b565b62001db657604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b668362003f80565b801562003b7a575062003b7a838362003fb8565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bee57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bcf575b5050505050905060005b8151811015620014515781818151811062003c175762003c17620052c6565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4c91906200463d565b600060405180830381600087803b15801562003c6757600080fd5b505af115801562003c7c573d6000803e3d6000fd5b50505050808062003c8d9062005375565b91505062003bf8565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d42906000906200463d565b60405180910390a1565b62003d58828262002ef0565b620011835762003d688162004043565b62003d7583602062004056565b60405160200162003d8892919062005a2c565b60408051601f198184030181529082905262461bcd60e51b82526200153c9160040162004fb4565b600054610100900460ff16620034565760405162461bcd60e51b81526004016200153c9062005958565b600062003e31826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200420f9092919063ffffffff16565b905080516000148062003e5557508080602001905181019062003e55919062005a9f565b620014515760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153c565b62003ec181620037af565b62003f255760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153c565b6000805160206200602483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f608362004228565b60008251118062003f6e5750805b1562001451576200371383836200426a565b600062003f95826301ffc9a760e01b62003fb8565b801562000d88575062003fb1826001600160e01b031962003fb8565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402b575060208210155b8015620040385750600081115b979650505050505050565b606062000d886001600160a01b03831660145b606060006200406783600262005052565b6200407490600262005136565b6001600160401b038111156200408e576200408e62004679565b6040519080825280601f01601f191660200182016040528015620040b9576020820181803683370190505b509050600360fc1b81600081518110620040d757620040d7620052c6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041095762004109620052c6565b60200101906001600160f81b031916908160001a90535060006200412f84600262005052565b6200413c90600162005136565b90505b6001811115620041be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041745762004174620052c6565b1a60f81b8282815181106200418d576200418d620052c6565b60200101906001600160f81b031916908160001a90535060049490941c93620041b68162005abf565b90506200413f565b50831562003b7a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153c565b606062004220848460008562004292565b949350505050565b620042338162003eb6565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7a838360405180606001604052806027815260200162006044602791396200436a565b606082471015620042f55760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153c565b600080866001600160a01b0316858760405162004313919062005ad9565b60006040518083038185875af1925050503d806000811462004352576040519150601f19603f3d011682016040523d82523d6000602084013e62004357565b606091505b50915091506200403887838387620043e8565b6060600080856001600160a01b03168560405162004389919062005ad9565b600060405180830381855af49150503d8060008114620043c6576040519150601f19603f3d011682016040523d82523d6000602084013e620043cb565b606091505b5091509150620043de86838387620043e8565b9695505050505050565b606083156200445c57825160000362004454576200440685620037af565b620044545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153c565b508162004220565b620042208383815115620044735781518083602001fd5b8060405162461bcd60e51b81526004016200153c919062004fb4565b828054828255906000526020600020908101928215620044e7579160200282015b82811115620044e757825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b0565b5062002eec9291506200451e565b6104ec8062005af883390190565b50805460008255906000526020600020908101906200119c91905b5b8082111562002eec57600081556001016200451f565b6000602082840312156200454857600080fd5b81356001600160e01b03198116811462003b7a57600080fd5b6000602082840312156200457457600080fd5b5035919050565b6001600160a01b03811681146200119c57600080fd5b80356200459e816200457b565b919050565b60008060408385031215620045b757600080fd5b8235620045c4816200457b565b91506020830135620045d6816200457b565b809150509250929050565b600060208284031215620045f457600080fd5b813562003b7a816200457b565b600080604083850312156200461557600080fd5b823562004622816200457b565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466557600080fd5b823591506020830135620045d6816200457b565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b457620046b462004679565b60405290565b60405161018081016001600160401b0381118282101715620046b457620046b462004679565b60405160c081016001600160401b0381118282101715620046b457620046b462004679565b60405161010081016001600160401b0381118282101715620046b457620046b462004679565b604051601f8201601f191681016001600160401b038111828210171562004756576200475662004679565b604052919050565b60006001600160401b038211156200477a576200477a62004679565b50601f01601f191660200190565b60006200479f62004799846200475e565b6200472b565b9050828152838383011115620047b457600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047dd57600080fd5b62003b7a8383356020850162004788565b6000604082840312156200480157600080fd5b6200480b6200468f565b82358152905060208201356001600160401b038111156200482b57600080fd5b6200483984828501620047cb565b60208301525092915050565b80151581146200119c57600080fd5b80356200459e8162004845565b600080600080608085870312156200487857600080fd5b84356001600160401b03808211156200489057600080fd5b908601906101808289031215620048a657600080fd5b620048b0620046ba565b620048bb8362004591565b8152620048cb6020840162004591565b6020820152604083013560408201526060830135606082015260808301356080820152620048fc60a0840162004591565b60a08201526200490f60c0840162004591565b60c082015260e0830135828111156200492757600080fd5b620049358a828601620047ee565b60e0830152506101006200494b81850162004591565b9082015261012083810135838111156200496457600080fd5b620049728b828701620047cb565b8284015250506101406200498881850162004854565b908201526101608381013583811115620049a157600080fd5b620049af8b828701620047cb565b828401525050809650505050620049c96020860162004591565b9250620049d96040860162004591565b9150620049e96060860162004591565b905092959194509250565b6000806040838503121562004a0857600080fd5b823562004a15816200457b565b915060208301356001600160401b0381111562004a3157600080fd5b8301601f8101851362004a4357600080fd5b62004a548582356020840162004788565b9150509250929050565b60006080828403121562004a7157600080fd5b604051608081016001600160401b038111828210171562004a965762004a9662004679565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200459e57600080fd5b600481106200119c57600080fd5b80356200459e8162004ad7565b60006020828403121562004b0557600080fd5b604051602081016001600160401b038111828210171562004b2a5762004b2a62004679565b6040529135825250919050565b600060c0828403121562004b4a57600080fd5b62004b54620046e0565b9050813562004b63816200457b565b8152602082013562004b75816200457b565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bbe57600080fd5b60405160e081016001600160401b038111828210171562004be35762004be362004679565b60405290508062004bf5848462004a5e565b815262004c056080840162004ac7565b602082015260a083013562004c1a8162004ad7565b604082015262004c2e8460c0850162004af2565b606082015262004c428460e0850162004b37565b60808201526101a083013562004c58816200457b565b60a082015262004c6c6101c0840162004591565b60c08201525092915050565b6000806000610220848603121562004c8f57600080fd5b833562004c9c816200457b565b925062004cad856020860162004baa565b91506102008401356001600160401b0381111562004cca57600080fd5b62004cd886828701620047ee565b9150509250925092565b60006001600160401b0382111562004cfe5762004cfe62004679565b5060051b60200190565b600082601f83011262004d1a57600080fd5b8135602062004d2d620047998362004ce2565b82815260059290921b8401810191818101908684111562004d4d57600080fd5b8286015b8481101562004d7557803562004d67816200457b565b835291830191830162004d51565b509695505050505050565b6000610200828403121562004d9457600080fd5b62004d9e62004705565b905062004dac838362004a5e565b815262004dbc6080830162004ac7565b602082015262004dcf60a0830162004ae5565b604082015262004de38360c0840162004af2565b606082015262004df78360e0840162004b37565b608082015262004e0b6101a0830162004591565b60a082015262004e1f6101c0830162004591565b60c08201526101e08201356001600160401b0381111562004e3f57600080fd5b62004e4d8482850162004d08565b60e08301525092915050565b60008060006060848603121562004e6f57600080fd5b833562004e7c816200457b565b925060208401356001600160401b038082111562004e9957600080fd5b62004ea78783880162004d80565b9350604086013591508082111562004ebe57600080fd5b5062004cd886828701620047ee565b6000806000806080858703121562004ee457600080fd5b843562004ef1816200457b565b9350602085013562004f03816200457b565b925060408501356001600160401b038082111562004f2057600080fd5b62004f2e8883890162004d80565b9350606087013591508082111562004f4557600080fd5b5062004f5487828801620047ee565b91505092959194509250565b60005b8381101562004f7d57818101518382015260200162004f63565b50506000910152565b6000815180845262004fa081602086016020860162004f60565b601f01601f19169290920160200192915050565b60208152600062003b7a602083018462004f86565b600080600080610240858703121562004fe157600080fd5b843562004fee816200457b565b9350602085013562005000816200457b565b925062005011866040870162004baa565b91506102208501356001600160401b038111156200502e57600080fd5b62004f5487828801620047ee565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d885762000d886200503c565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509557600080fd5b815162003b7a8162004ad7565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050ce57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513157634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d885762000d886200503c565b600181811c908216806200516157607f821691505b6020821081036200518257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145157600081815260208120601f850160051c81016020861015620051b15750805b601f850160051c820191505b81811015620051d257828155600101620051bd565b505050505050565b81516001600160401b03811115620051f657620051f662004679565b6200520e816200520784546200514c565b8462005188565b602080601f8311600181146200524657600084156200522d5750858301515b600019600386901b1c1916600185901b178555620051d2565b600085815260208120601f198616915b82811015620052775788860151825594840194600190910190840162005256565b5085821015620052965787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052b957600080fd5b815162003b7a816200457b565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f057600080fd5b82516001600160401b038111156200530757600080fd5b8301601f810185136200531957600080fd5b80516200532a620047998262004ce2565b81815260059190911b820183019083810190878311156200534a57600080fd5b928401925b828410156200403857835162005365816200457b565b825292840192908401906200534f565b6000600182016200538a576200538a6200503c565b5060010190565b8181038181111562000d885762000d886200503c565b60008154620053b6816200514c565b808552602060018381168015620053d65760018114620053f15762005421565b60ff1985168884015283151560051b88018301955062005421565b866000528260002060005b85811015620054195781548a8201860152908301908401620053fc565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004220604085018262004f86565b600081518084526020808501945080840160005b83811015620054885781516001600160a01b03168752958201959082019060010162005461565b509495945050505050565b85815260a060208201526000620054ae60a0830187620053a7565b8281036040840152620054c281876200542c565b6001600160a01b038616606085015283810360808501529050620054e781856200544d565b98975050505050505050565b8381526060602082015260006200550e6060830185620053a7565b8281036040840152620043de81856200542c565b6020808252602c908201526000805160206200600483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042209083018462004f86565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564b57600080fd5b82516001600160401b03808211156200566357600080fd5b9084019060c082870312156200567857600080fd5b62005682620046e0565b825181528383015162005695816200457b565b818501526040830151620056a9816200457b565b6040820152606083015182811115620056c157600080fd5b830160408189031215620056d457600080fd5b620056de6200468f565b815181528582015184811115620056f457600080fd5b82019350601f840189136200570857600080fd5b835191506200571b62004799836200475e565b82815289878487010111156200573057600080fd5b620057418388830189880162004f60565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a657620057a66200506c565b9052565b60048110620057a657620057a66200506c565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b60208152620058166020820183516200576d565b600060208301516200582c60a084018262005793565b5060408301516200584160c0840182620057aa565b5060608301515160e0830152608083015162005862610100840182620057bd565b5060a0830151620058786101c084018262004630565b5060c08301516200588e6101e084018262004630565b5060e083015161020083810152620042206102208401826200544d565b878152600060018060a01b03808916602084015260e06040840152620058d560e084018962004f86565b818816606085015286608085015283810360a0850152620058f781876200542c565b91505082810360c08401526200590e81856200544d565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062004038908301846200542c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059b98284516200576d565b6020830151620059cd608084018262005793565b506040830151620059e260a0840182620057aa565b5060608301515160c0830152608083015162005a0260e0840182620057bd565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6081601785016020880162004f60565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9381602884016020880162004f60565b01602801949350505050565b60006020828403121562005ab257600080fd5b815162003b7a8162004845565b60008162005ad15762005ad16200503c565b506000190190565b6000825162005aed81846020870162004f60565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207ce949f081211803b391e338567b30f6f7ff7b2a3be667962cb25daddcea92e564736f6c63430008130033","sourceMap":"522:2047:105:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:43;;;;;;;;;;-1:-1:-1;3050:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:131;;463:22;445:41;;433:2;418:18;3050:213:43;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:131;;;631:2;616:18;23771:115:104;497:177:131;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19069:151::-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;12805:25:131;;;-1:-1:-1;;;;;12866:32:131;;;12861:2;12846:18;;12839:60;12778:18;12647:531:104;12631:274:131;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;584:1317:105:-;;;;;;;;;;-1:-1:-1;584:1317:105;;;;;:::i;:::-;;:::i;6550:31:104:-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18890:173;5795:34;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;1907:660:105:-;;;;;;;;;;-1:-1:-1;1907:660:105;;;;;:::i;:::-;;:::i;7605:60:104:-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;17412:32:131;;;17394:51;;17476:2;17461:18;;17454:34;;;;17531:14;17524:22;17504:18;;;17497:50;17382:2;17367:18;7605:60:104;17198:355:131;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;5202:92;;;;;;;;;;-1:-1:-1;5275:12:104;;;;;;;;;;;;-1:-1:-1;;;5275:12:104;;;;5202:92;;3050:213:43;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;24088:288:104:-;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:131;;;24332:37:104;;631:2:131;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:131;;;24043:32:104;;631:2:131;616:18;24043:32:104;497:177:131;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22268:2:131;3325:201:47;;;22250:21:131;22307:2;22287:18;;;22280:30;22346:34;22326:18;;;22319:62;-1:-1:-1;;;22397:18:131;;;22390:44;22451:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;29847:36:131;;3721:14:47;;29835:2:131;29820:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;30096:2:131;6476:83:43;;;30078:21:131;30135:2;30115:18;;;30108:30;30174:34;30154:18;;;30147:62;-1:-1:-1;;;30225:18:131;;;30218:45;30280:19;;6476:83:43;29894:411:131;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;32364:2:131;2064:92:64;;;32346:21:131;32403:2;32383:18;;;32376:30;32442:34;32422:18;;;32415:62;-1:-1:-1;;;32493:18:131;;;32486:54;32557:19;;2064:92:64;32162:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;584:1317:105;877:16;;973:4;;980:23;;742:14;;;;;;-1:-1:-1;;;;;877:16:105;;;;-1:-1:-1;;;935:28:105;973:4;;;980:23;1005:7;:5;:7::i;:::-;912:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;912:101:105;;;;;;;;;;;;;;-1:-1:-1;;;;;912:101:105;-1:-1:-1;;;;;;912:101:105;;;;;;;;;;835:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;790:247;;1068:53;1079:13;1094:6;1102:7;1111:9;1068:10;:53::i;:::-;1144:19;;;;1047:74;;-1:-1:-1;1047:74:105;-1:-1:-1;;;;;;1136:42:105;1132:454;;1232:4;1198:7;:24;;;:31;:38;1194:134;;;1256:57;;-1:-1:-1;;;1256:57:105;;32789:2:131;1256:57:105;;;32771:21:131;32828:2;32808:18;;;32801:30;32867:34;32847:18;;;32840:62;-1:-1:-1;;;32918:18:131;;;32911:45;32973:19;;1256:57:105;32587:411:131;1194:134:105;1341:21;1405:6;1375:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1365:48;;;;;;1341:72;;1432:9;1427:149;1451:7;:24;;;:31;1447:1;:35;1427:149;;;1507:54;1518:13;1533:7;:24;;;1558:1;1533:27;;;;;;;;:::i;:::-;;;;;;;1507:10;:54::i;:::-;1484:3;;;;:::i;:::-;;;;1427:149;;;;1180:406;1132:454;1667:141;1734:6;1704:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1694:48;;;;;;1790:6;1754:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1744:54;;;;;;1667:13;:141::i;:::-;1818:76;1875:6;1839:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1829:54;;;;;;1885:8;1818:10;:76::i;:::-;780:1121;584:1317;;;;;;:::o;17322:1562:104:-;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;33842:25:131::0;;;33883:18;;;33876:34;;;33815:18;;18259:57:104::1;33668:248:131::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:131;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:131;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:131;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:131;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;1907:660:105:-;2098:14;;5412:42:104;-1:-1:-1;;;;;2178:20:105;;;2174:65;;-1:-1:-1;2222:6:105;2174:65;2259:9;2248:20;;2279:31;2313:14;2279:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2279:48:105;;;;;;;;;;;;;;;;-1:-1:-1;;2347:4:105;;2394:9;;2415:19;;2279:48;;-1:-1:-1;;;;;;2347:4:105;;;;:33;;-1:-1:-1;2394:9:105;;-1:-1:-1;2405:8:105;;-1:-1:-1;2415:19:105;;2426:7;;2415:19;;;:::i;:::-;;;;;;;;;;;;;2436:5;2443:1;2446:9;2457:14;2347:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2338:143;;2497:63;2509:6;2517:8;2535:4;2542:6;2550:9;2497:63;;;;;;;;;;:::i;:::-;;;;;;;;2132:435;;1907:660;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;41132:2:131;2415:73:45::1;::::0;::::1;41114:21:131::0;41171:2;41151:18;;;41144:30;41210:34;41190:18;;;41183:62;-1:-1:-1;;;41261:18:131;;;41254:36;41307:19;;2415:73:45::1;40930:402:131::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;41539:2:131;2725:63:48;;;41521:21:131;41578:2;41558:18;;;41551:30;41617:33;41597:18;;;41590:61;41668:18;;2725:63:48;41337:355:131;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;41899:2:131;1675:68:45;;;41881:21:131;;;41918:18;;;41911:30;41977:34;41957:18;;;41950:62;42029:18;;1675:68:45;41697:356:131;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;42260:2:131;3262:56:60;;;42242:21:131;42299:2;42279:18;;;42272:30;42338:34;42318:18;;;42311:62;-1:-1:-1;;;42389:18:131;;;42382:44;42443:19;;3262:56:60;42058:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;42675:2:131;3140:82:60;;;42657:21:131;42714:2;42694:18;;;42687:30;42753:34;42733:18;;;42726:62;-1:-1:-1;;;42804:18:131;;;42797:39;42853:19;;3140:82:60;42473:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;44368:2:131;5697:111:73;;;44350:21:131;44407:2;44387:18;;;44380:30;44446:34;44426:18;;;44419:62;-1:-1:-1;;;44497:18:131;;;44490:40;44547:19;;5697:111:73;44166:406:131;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;44779:2:131;1479:95:60;;;44761:21:131;44818:2;44798:18;;;44791:30;44857:34;44837:18;;;44830:62;-1:-1:-1;;;44908:18:131;;;44901:43;44961:19;;1479:95:60;44577:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;45153:33:131;;4592:71:81;;;;45135:52:131;;;;4592:71:81;;;;;;;;;;45108:18:131;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;45541:2:131;2228:55:52;;;45523:21:131;;;45560:18;;;45553:30;45619:34;45599:18;;;45592:62;45671:18;;2228:55:52;45339:356:131;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;45902:2:131;5354:81:76;;;45884:21:131;45941:2;45921:18;;;45914:30;45980:34;45960:18;;;45953:62;-1:-1:-1;;;46031:18:131;;;46024:36;46077:19;;5354:81:76;45700:402:131;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;46601:2:131;8113:60:76;;;46583:21:131;46640:2;46620:18;;;46613:30;46679:31;46659:18;;;46652:59;46728:18;;8113:60:76;46399:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:131;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:131;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:131;;861:180;-1:-1:-1;861:180:131:o;1046:131::-;-1:-1:-1;;;;;1121:31:131;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:131;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:131:o;2471:104::-;-1:-1:-1;;;;;2537:31:131;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:131;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:131;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:131;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:131;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:255::-;4092:2;4086:9;4134:6;4122:19;;-1:-1:-1;;;;;4156:34:131;;4192:22;;;4153:62;4150:88;;;4218:18;;:::i;4280:275::-;4351:2;4345:9;4416:2;4397:13;;-1:-1:-1;;4393:27:131;4381:40;;-1:-1:-1;;;;;4436:34:131;;4472:22;;;4433:62;4430:88;;;4498:18;;:::i;:::-;4534:2;4527:22;4280:275;;-1:-1:-1;4280:275:131:o;4560:187::-;4609:4;-1:-1:-1;;;;;4631:30:131;;4628:56;;;4664:18;;:::i;:::-;-1:-1:-1;4730:2:131;4709:15;-1:-1:-1;;4705:29:131;4736:4;4701:40;;4560:187::o;4752:338::-;4817:5;4846:53;4862:36;4891:6;4862:36;:::i;:::-;4846:53;:::i;:::-;4837:62;;4922:6;4915:5;4908:21;4962:3;4953:6;4948:3;4944:16;4941:25;4938:45;;;4979:1;4976;4969:12;4938:45;5028:6;5023:3;5016:4;5009:5;5005:16;4992:43;5082:1;5075:4;5066:6;5059:5;5055:18;5051:29;5044:40;4752:338;;;;;:::o;5095:222::-;5138:5;5191:3;5184:4;5176:6;5172:17;5168:27;5158:55;;5209:1;5206;5199:12;5158:55;5231:80;5307:3;5298:6;5285:20;5278:4;5270:6;5266:17;5231:80;:::i;5322:411::-;5377:5;5425:4;5413:9;5408:3;5404:19;5400:30;5397:50;;;5443:1;5440;5433:12;5397:50;5465:22;;:::i;:::-;5510:23;;5496:38;;5456:31;-1:-1:-1;5585:2:131;5570:18;;5557:32;-1:-1:-1;;;;;5601:30:131;;5598:50;;;5644:1;5641;5634:12;5598:50;5680:46;5722:3;5713:6;5702:9;5698:22;5680:46;:::i;:::-;5675:2;5668:5;5664:14;5657:70;;5322:411;;;;:::o;5738:118::-;5824:5;5817:13;5810:21;5803:5;5800:32;5790:60;;5846:1;5843;5836:12;5861:128;5926:20;;5955:28;5926:20;5955:28;:::i;5994:1871::-;6136:6;6144;6152;6160;6213:3;6201:9;6192:7;6188:23;6184:33;6181:53;;;6230:1;6227;6220:12;6181:53;6257:23;;-1:-1:-1;;;;;6329:14:131;;;6326:34;;;6356:1;6353;6346:12;6326:34;6379:22;;;;6435:6;6417:16;;;6413:29;6410:49;;;6455:1;6452;6445:12;6410:49;6481:22;;:::i;:::-;6526;6545:2;6526:22;:::i;:::-;6519:5;6512:37;6581:31;6608:2;6604;6600:11;6581:31;:::i;:::-;6576:2;6569:5;6565:14;6558:55;6666:2;6662;6658:11;6645:25;6640:2;6633:5;6629:14;6622:49;6724:2;6720;6716:11;6703:25;6698:2;6691:5;6687:14;6680:49;6783:3;6779:2;6775:12;6762:26;6756:3;6749:5;6745:15;6738:51;6822:32;6849:3;6845:2;6841:12;6822:32;:::i;:::-;6816:3;6809:5;6805:15;6798:57;6888:32;6915:3;6911:2;6907:12;6888:32;:::i;:::-;6882:3;6875:5;6871:15;6864:57;6967:3;6963:2;6959:12;6946:26;6997:2;6987:8;6984:16;6981:36;;;7013:1;7010;7003:12;6981:36;7050:54;7096:7;7085:8;7081:2;7077:17;7050:54;:::i;:::-;7044:3;7037:5;7033:15;7026:79;;7124:3;7159:31;7186:2;7182;7178:11;7159:31;:::i;:::-;7143:14;;;7136:55;7210:3;7251:11;;;7238:25;7275:16;;;7272:36;;;7304:1;7301;7294:12;7272:36;7340:45;7377:7;7366:8;7362:2;7358:17;7340:45;:::i;:::-;7335:2;7328:5;7324:14;7317:69;;;7405:3;7440:28;7464:2;7460;7456:11;7440:28;:::i;:::-;7424:14;;;7417:52;7488:3;7529:11;;;7516:25;7553:16;;;7550:36;;;7582:1;7579;7572:12;7550:36;7618:45;7655:7;7644:8;7640:2;7636:17;7618:45;:::i;:::-;7613:2;7606:5;7602:14;7595:69;;;7683:5;7673:15;;;;;7707:38;7741:2;7730:9;7726:18;7707:38;:::i;:::-;7697:48;;7764:38;7798:2;7787:9;7783:18;7764:38;:::i;:::-;7754:48;;7821:38;7855:2;7844:9;7840:18;7821:38;:::i;:::-;7811:48;;5994:1871;;;;;;;:::o;8130:585::-;8207:6;8215;8268:2;8256:9;8247:7;8243:23;8239:32;8236:52;;;8284:1;8281;8274:12;8236:52;8323:9;8310:23;8342:31;8367:5;8342:31;:::i;:::-;8392:5;-1:-1:-1;8448:2:131;8433:18;;8420:32;-1:-1:-1;;;;;8464:30:131;;8461:50;;;8507:1;8504;8497:12;8461:50;8530:22;;8583:4;8575:13;;8571:27;-1:-1:-1;8561:55:131;;8612:1;8609;8602:12;8561:55;8635:74;8701:7;8696:2;8683:16;8678:2;8674;8670:11;8635:74;:::i;:::-;8625:84;;;8130:585;;;;;:::o;8720:605::-;8775:5;8823:4;8811:9;8806:3;8802:19;8798:30;8795:50;;;8841:1;8838;8831:12;8795:50;8874:2;8868:9;8916:4;8904:17;;-1:-1:-1;;;;;8936:34:131;;8972:22;;;8933:62;8930:88;;;8998:18;;:::i;:::-;9038:10;9034:2;9027:22;;9067:6;9058:15;;9110:9;9097:23;9089:6;9082:39;9182:2;9171:9;9167:18;9154:32;9149:2;9141:6;9137:15;9130:57;9248:2;9237:9;9233:18;9220:32;9215:2;9207:6;9203:15;9196:57;9314:2;9303:9;9299:18;9286:32;9281:2;9273:6;9269:15;9262:57;;8720:605;;;;:::o;9330:153::-;9408:20;;9457:1;9447:12;;9437:40;;9473:1;9470;9463:12;9488:110;9572:1;9565:5;9562:12;9552:40;;9588:1;9585;9578:12;9603:152;9680:20;;9709:40;9680:20;9709:40;:::i;9760:416::-;9824:5;9872:4;9860:9;9855:3;9851:19;9847:30;9844:50;;;9890:1;9887;9880:12;9844:50;9923:2;9917:9;9965:4;9953:17;;-1:-1:-1;;;;;9985:34:131;;10021:22;;;9982:62;9979:88;;;10047:18;;:::i;:::-;10083:2;10076:22;10146:23;;10131:39;;-1:-1:-1;10116:6:131;9760:416;-1:-1:-1;9760:416:131:o;10181:701::-;10244:5;10292:4;10280:9;10275:3;10271:19;10267:30;10264:50;;;10310:1;10307;10300:12;10264:50;10332:22;;:::i;:::-;10323:31;;10391:9;10378:23;10410:33;10435:7;10410:33;:::i;:::-;10452:22;;10526:2;10511:18;;10498:32;10539:33;10498:32;10539:33;:::i;:::-;10604:7;10599:2;10592:5;10588:14;10581:31;;10672:2;10661:9;10657:18;10644:32;10639:2;10632:5;10628:14;10621:56;10737:2;10726:9;10722:18;10709:32;10704:2;10697:5;10693:14;10686:56;10803:3;10792:9;10788:19;10775:33;10769:3;10762:5;10758:15;10751:58;10870:3;10859:9;10855:19;10842:33;10836:3;10829:5;10825:15;10818:58;10181:701;;;;:::o;10887:1090::-;10962:5;11010:6;10998:9;10993:3;10989:19;10985:32;10982:52;;;11030:1;11027;11020:12;10982:52;11063:2;11057:9;11105:4;11093:17;;-1:-1:-1;;;;;11125:34:131;;11161:22;;;11122:62;11119:88;;;11187:18;;:::i;:::-;11223:2;11216:22;11256:6;-1:-1:-1;11256:6:131;11286:42;11324:3;11313:9;11286:42;:::i;:::-;11278:6;11271:58;11364:49;11408:3;11397:9;11393:19;11364:49;:::i;:::-;11357:4;11349:6;11345:17;11338:76;11466:3;11455:9;11451:19;11438:33;11480:42;11514:7;11480:42;:::i;:::-;11550:2;11538:15;;11531:32;11598:61;11655:3;11649;11634:19;;11598:61;:::i;:::-;11591:4;11583:6;11579:17;11572:88;11694:61;11751:3;11744:4;11733:9;11729:20;11694:61;:::i;:::-;11688:3;11680:6;11676:16;11669:87;11808:3;11797:9;11793:19;11780:33;11822;11847:7;11822:33;:::i;:::-;11883:3;11871:16;;11864:33;11931:39;11965:3;11950:19;;11931:39;:::i;:::-;11925:3;11917:6;11913:16;11906:65;;10887:1090;;;;:::o;11982:644::-;12134:6;12142;12150;12203:3;12191:9;12182:7;12178:23;12174:33;12171:53;;;12220:1;12217;12210:12;12171:53;12259:9;12246:23;12278:31;12303:5;12278:31;:::i;:::-;12328:5;-1:-1:-1;12352:75:131;12419:7;12414:2;12399:18;;12352:75;:::i;:::-;12342:85;-1:-1:-1;12478:3:131;12463:19;;12450:33;-1:-1:-1;;;;;12495:30:131;;12492:50;;;12538:1;12535;12528:12;12492:50;12561:59;12612:7;12603:6;12592:9;12588:22;12561:59;:::i;:::-;12551:69;;;11982:644;;;;;:::o;12910:183::-;12970:4;-1:-1:-1;;;;;12992:30:131;;12989:56;;;13025:18;;:::i;:::-;-1:-1:-1;13070:1:131;13066:14;13082:4;13062:25;;12910:183::o;13098:737::-;13152:5;13205:3;13198:4;13190:6;13186:17;13182:27;13172:55;;13223:1;13220;13213:12;13172:55;13259:6;13246:20;13285:4;13309:60;13325:43;13365:2;13325:43;:::i;13309:60::-;13403:15;;;13489:1;13485:10;;;;13473:23;;13469:32;;;13434:12;;;;13513:15;;;13510:35;;;13541:1;13538;13531:12;13510:35;13577:2;13569:6;13565:15;13589:217;13605:6;13600:3;13597:15;13589:217;;;13685:3;13672:17;13702:31;13727:5;13702:31;:::i;:::-;13746:18;;13784:12;;;;13622;;13589:217;;;-1:-1:-1;13824:5:131;13098:737;-1:-1:-1;;;;;;13098:737:131:o;13840:974::-;13921:5;13969:6;13957:9;13952:3;13948:19;13944:32;13941:52;;;13989:1;13986;13979:12;13941:52;14011:22;;:::i;:::-;14002:31;;14056:42;14094:3;14083:9;14056:42;:::i;:::-;14049:5;14042:57;14133:49;14177:3;14166:9;14162:19;14133:49;:::i;:::-;14126:4;14119:5;14115:16;14108:75;14217:48;14260:3;14249:9;14245:19;14217:48;:::i;:::-;14210:4;14203:5;14199:16;14192:74;14300:61;14357:3;14351;14340:9;14336:19;14300:61;:::i;:::-;14293:4;14286:5;14282:16;14275:87;14395:60;14451:3;14445;14434:9;14430:19;14395:60;:::i;:::-;14389:3;14382:5;14378:15;14371:85;14489:39;14523:3;14512:9;14508:19;14489:39;:::i;:::-;14483:3;14476:5;14472:15;14465:64;14562:39;14596:3;14585:9;14581:19;14562:39;:::i;:::-;14556:3;14545:15;;14538:64;14653:3;14638:19;;14625:33;-1:-1:-1;;;;;14670:30:131;;14667:50;;;14713:1;14710;14703:12;14667:50;14750:57;14803:3;14794:6;14783:9;14779:22;14750:57;:::i;:::-;14744:3;14737:5;14733:15;14726:82;;13840:974;;;;:::o;14819:777::-;14971:6;14979;14987;15040:2;15028:9;15019:7;15015:23;15011:32;15008:52;;;15056:1;15053;15046:12;15008:52;15095:9;15082:23;15114:31;15139:5;15114:31;:::i;:::-;15164:5;-1:-1:-1;15220:2:131;15205:18;;15192:32;-1:-1:-1;;;;;15273:14:131;;;15270:34;;;15300:1;15297;15290:12;15270:34;15323:85;15400:7;15391:6;15380:9;15376:22;15323:85;:::i;:::-;15313:95;;15461:2;15450:9;15446:18;15433:32;15417:48;;15490:2;15480:8;15477:16;15474:36;;;15506:1;15503;15496:12;15474:36;;15529:61;15582:7;15571:8;15560:9;15556:24;15529:61;:::i;16274:919::-;16435:6;16443;16451;16459;16512:3;16500:9;16491:7;16487:23;16483:33;16480:53;;;16529:1;16526;16519:12;16480:53;16568:9;16555:23;16587:31;16612:5;16587:31;:::i;:::-;16637:5;-1:-1:-1;16694:2:131;16679:18;;16666:32;16707:33;16666:32;16707:33;:::i;:::-;16759:7;-1:-1:-1;16817:2:131;16802:18;;16789:32;-1:-1:-1;;;;;16870:14:131;;;16867:34;;;16897:1;16894;16887:12;16867:34;16920:85;16997:7;16988:6;16977:9;16973:22;16920:85;:::i;:::-;16910:95;;17058:2;17047:9;17043:18;17030:32;17014:48;;17087:2;17077:8;17074:16;17071:36;;;17103:1;17100;17093:12;17071:36;;17126:61;17179:7;17168:8;17157:9;17153:24;17126:61;:::i;:::-;17116:71;;;16274:919;;;;;;;:::o;17558:250::-;17643:1;17653:113;17667:6;17664:1;17661:13;17653:113;;;17743:11;;;17737:18;17724:11;;;17717:39;17689:2;17682:10;17653:113;;;-1:-1:-1;;17800:1:131;17782:16;;17775:27;17558:250::o;17813:271::-;17855:3;17893:5;17887:12;17920:6;17915:3;17908:19;17936:76;18005:6;17998:4;17993:3;17989:14;17982:4;17975:5;17971:16;17936:76;:::i;:::-;18066:2;18045:15;-1:-1:-1;;18041:29:131;18032:39;;;;18073:4;18028:50;;17813:271;-1:-1:-1;;17813:271:131:o;18089:220::-;18238:2;18227:9;18220:21;18201:4;18258:45;18299:2;18288:9;18284:18;18276:6;18258:45;:::i;18761:785::-;18922:6;18930;18938;18946;18999:3;18987:9;18978:7;18974:23;18970:33;18967:53;;;19016:1;19013;19006:12;18967:53;19055:9;19042:23;19074:31;19099:5;19074:31;:::i;:::-;19124:5;-1:-1:-1;19181:2:131;19166:18;;19153:32;19194:33;19153:32;19194:33;:::i;:::-;19246:7;-1:-1:-1;19272:75:131;19339:7;19334:2;19319:18;;19272:75;:::i;:::-;19262:85;-1:-1:-1;19398:3:131;19383:19;;19370:33;-1:-1:-1;;;;;19415:30:131;;19412:50;;;19458:1;19455;19448:12;19412:50;19481:59;19532:7;19523:6;19512:9;19508:22;19481:59;:::i;19551:127::-;19612:10;19607:3;19603:20;19600:1;19593:31;19643:4;19640:1;19633:15;19667:4;19664:1;19657:15;19683:168;19756:9;;;19787;;19804:15;;;19798:22;;19784:37;19774:71;;19825:18;;:::i;19856:127::-;19917:10;19912:3;19908:20;19905:1;19898:31;19948:4;19945:1;19938:15;19972:4;19969:1;19962:15;19988:277;20075:6;20128:2;20116:9;20107:7;20103:23;20099:32;20096:52;;;20144:1;20141;20134:12;20096:52;20176:9;20170:16;20195:40;20229:5;20195:40;:::i;20270:282::-;-1:-1:-1;;;;;20470:32:131;;;;20452:51;;20534:2;20519:18;;20512:34;20440:2;20425:18;;20270:282::o;20557:184::-;20627:6;20680:2;20668:9;20659:7;20655:23;20651:32;20648:52;;;20696:1;20693;20686:12;20648:52;-1:-1:-1;20719:16:131;;20557:184;-1:-1:-1;20557:184:131:o;21025:375::-;-1:-1:-1;;;;;21283:15:131;;;21265:34;;21335:15;;;;21330:2;21315:18;;21308:43;21382:2;21367:18;;21360:34;;;;21215:2;21200:18;;21025:375::o;21405:304::-;-1:-1:-1;;;;;21635:15:131;;;21617:34;;21687:15;;21682:2;21667:18;;21660:43;21567:2;21552:18;;21405:304::o;21714:217::-;21754:1;21780;21770:132;;21824:10;21819:3;21815:20;21812:1;21805:31;21859:4;21856:1;21849:15;21887:4;21884:1;21877:15;21770:132;-1:-1:-1;21916:9:131;;21714:217::o;21936:125::-;22001:9;;;22022:10;;;22019:36;;;22035:18;;:::i;22481:380::-;22560:1;22556:12;;;;22603;;;22624:61;;22678:4;22670:6;22666:17;22656:27;;22624:61;22731:2;22723:6;22720:14;22700:18;22697:38;22694:161;;22777:10;22772:3;22768:20;22765:1;22758:31;22812:4;22809:1;22802:15;22840:4;22837:1;22830:15;22694:161;;22481:380;;;:::o;22992:545::-;23094:2;23089:3;23086:11;23083:448;;;23130:1;23155:5;23151:2;23144:17;23200:4;23196:2;23186:19;23270:2;23258:10;23254:19;23251:1;23247:27;23241:4;23237:38;23306:4;23294:10;23291:20;23288:47;;;-1:-1:-1;23329:4:131;23288:47;23384:2;23379:3;23375:12;23372:1;23368:20;23362:4;23358:31;23348:41;;23439:82;23457:2;23450:5;23447:13;23439:82;;;23502:17;;;23483:1;23472:13;23439:82;;;23443:3;;;22992:545;;;:::o;23713:1352::-;23833:10;;-1:-1:-1;;;;;23855:30:131;;23852:56;;;23888:18;;:::i;:::-;23917:97;24007:6;23967:38;23999:4;23993:11;23967:38;:::i;:::-;23961:4;23917:97;:::i;:::-;24069:4;;24133:2;24122:14;;24150:1;24145:663;;;;24852:1;24869:6;24866:89;;;-1:-1:-1;24921:19:131;;;24915:26;24866:89;-1:-1:-1;;23670:1:131;23666:11;;;23662:24;23658:29;23648:40;23694:1;23690:11;;;23645:57;24968:81;;24115:944;;24145:663;22939:1;22932:14;;;22976:4;22963:18;;-1:-1:-1;;24181:20:131;;;24299:236;24313:7;24310:1;24307:14;24299:236;;;24402:19;;;24396:26;24381:42;;24494:27;;;;24462:1;24450:14;;;;24329:19;;24299:236;;;24303:3;24563:6;24554:7;24551:19;24548:201;;;24624:19;;;24618:26;-1:-1:-1;;24707:1:131;24703:14;;;24719:3;24699:24;24695:37;24691:42;24676:58;24661:74;;24548:201;-1:-1:-1;;;;;24795:1:131;24779:14;;;24775:22;24762:36;;-1:-1:-1;23713:1352:131:o;25070:251::-;25140:6;25193:2;25181:9;25172:7;25168:23;25164:32;25161:52;;;25209:1;25206;25199:12;25161:52;25241:9;25235:16;25260:31;25285:5;25260:31;:::i;25326:127::-;25387:10;25382:3;25378:20;25375:1;25368:31;25418:4;25415:1;25408:15;25442:4;25439:1;25432:15;25458:956;25553:6;25584:2;25627;25615:9;25606:7;25602:23;25598:32;25595:52;;;25643:1;25640;25633:12;25595:52;25670:16;;-1:-1:-1;;;;;25698:30:131;;25695:50;;;25741:1;25738;25731:12;25695:50;25764:22;;25817:4;25809:13;;25805:27;-1:-1:-1;25795:55:131;;25846:1;25843;25836:12;25795:55;25875:2;25869:9;25898:60;25914:43;25954:2;25914:43;:::i;25898:60::-;25992:15;;;26074:1;26070:10;;;;26062:19;;26058:28;;;26023:12;;;;26098:19;;;26095:39;;;26130:1;26127;26120:12;26095:39;26154:11;;;;26174:210;26190:6;26185:3;26182:15;26174:210;;;26263:3;26257:10;26280:31;26305:5;26280:31;:::i;:::-;26324:18;;26207:12;;;;26362;;;;26174:210;;26419:135;26458:3;26479:17;;;26476:43;;26499:18;;:::i;:::-;-1:-1:-1;26546:1:131;26535:13;;26419:135::o;26559:128::-;26626:9;;;26647:11;;;26644:37;;;26661:18;;:::i;26692:772::-;26742:3;26783:5;26777:12;26812:36;26838:9;26812:36;:::i;:::-;26857:19;;;26895:4;26918:1;26935:18;;;26962:146;;;;27122:1;27117:341;;;;26928:530;;26962:146;-1:-1:-1;;27004:24:131;;26990:12;;;26983:46;27076:14;;27069:22;27066:1;27062:30;27053:40;;27049:49;;;-1:-1:-1;26962:146:131;;27117:341;27148:5;27145:1;27138:16;27195:2;27192:1;27182:16;27220:1;27234:174;27248:6;27245:1;27242:13;27234:174;;;27335:14;;27317:11;;;27313:20;;27306:44;27378:16;;;;27263:10;;27234:174;;;27432:11;;27428:20;;;-1:-1:-1;;26928:530:131;;;;;;26692:772;;;;:::o;27469:252::-;27556:5;27550:12;27545:3;27538:25;27520:3;27609:4;27602:5;27598:16;27592:23;27647:4;27640;27635:3;27631:14;27624:28;27668:47;27709:4;27704:3;27700:14;27686:12;27668:47;:::i;27726:461::-;27779:3;27817:5;27811:12;27844:6;27839:3;27832:19;27870:4;27899:2;27894:3;27890:12;27883:19;;27936:2;27929:5;27925:14;27957:1;27967:195;27981:6;27978:1;27975:13;27967:195;;;28046:13;;-1:-1:-1;;;;;28042:39:131;28030:52;;28102:12;;;;28137:15;;;;28078:1;27996:9;27967:195;;;-1:-1:-1;28178:3:131;;27726:461;-1:-1:-1;;;;;27726:461:131:o;28192:804::-;28552:6;28541:9;28534:25;28595:3;28590:2;28579:9;28575:18;28568:31;28515:4;28622:54;28671:3;28660:9;28656:19;28648:6;28622:54;:::i;:::-;28724:9;28716:6;28712:22;28707:2;28696:9;28692:18;28685:50;28758:42;28793:6;28785;28758:42;:::i;:::-;-1:-1:-1;;;;;28836:32:131;;28831:2;28816:18;;28809:60;28906:22;;;28900:3;28885:19;;28878:51;28744:56;-1:-1:-1;28946:44:131;28744:56;28975:6;28946:44;:::i;:::-;28938:52;28192:804;-1:-1:-1;;;;;;;;28192:804:131:o;29190:500::-;29444:6;29433:9;29426:25;29487:2;29482;29471:9;29467:18;29460:30;29407:4;29513:53;29562:2;29551:9;29547:18;29539:6;29513:53;:::i;:::-;29614:9;29606:6;29602:22;29597:2;29586:9;29582:18;29575:50;29642:42;29677:6;29669;29642:42;:::i;30310:408::-;30512:2;30494:21;;;30551:2;30531:18;;;30524:30;-1:-1:-1;;;;;;;;;;;30585:2:131;30570:18;;30563:62;-1:-1:-1;;;30656:2:131;30641:18;;30634:42;30708:3;30693:19;;30310:408::o;30723:::-;30925:2;30907:21;;;30964:2;30944:18;;;30937:30;-1:-1:-1;;;;;;;;;;;30998:2:131;30983:18;;30976:62;-1:-1:-1;;;31069:2:131;31054:18;;31047:42;31121:3;31106:19;;30723:408::o;31453:384::-;-1:-1:-1;;;;;31711:15:131;;;31693:34;;31763:15;;;31758:2;31743:18;;31736:43;31815:15;;;31810:2;31795:18;;31788:43;31643:2;31628:18;;31453:384::o;31842:315::-;-1:-1:-1;;;;;32017:32:131;;31999:51;;32086:2;32081;32066:18;;32059:30;;;-1:-1:-1;;32106:45:131;;32132:18;;32124:6;32106:45;:::i;33003:324::-;-1:-1:-1;;;33233:24:131;;33282:1;33273:11;;33266:27;;;;33318:2;33309:12;;33003:324::o;33332:331::-;-1:-1:-1;;;33562:30:131;;33617:2;33608:12;;33601:28;;;;33654:2;33645:12;;33332:331::o;33921:127::-;33982:10;33977:3;33973:20;33970:1;33963:31;34013:4;34010:1;34003:15;34037:4;34034:1;34027:15;34053:1653;34145:6;34176:2;34219;34207:9;34198:7;34194:23;34190:32;34187:52;;;34235:1;34232;34225:12;34187:52;34262:16;;-1:-1:-1;;;;;34327:14:131;;;34324:34;;;34354:1;34351;34344:12;34324:34;34377:22;;;;34433:4;34415:16;;;34411:27;34408:47;;;34451:1;34448;34441:12;34408:47;34477:22;;:::i;:::-;34528:2;34522:9;34515:5;34508:24;34570:2;34566;34562:11;34556:18;34583:33;34608:7;34583:33;:::i;:::-;34632:14;;;34625:31;34694:2;34686:11;;34680:18;34707:33;34680:18;34707:33;:::i;:::-;34767:2;34756:14;;34749:31;34819:2;34811:11;;34805:18;34835:16;;;34832:36;;;34864:1;34861;34854:12;34832:36;34887:17;;34938:2;34920:16;;;34916:25;34913:45;;;34954:1;34951;34944:12;34913:45;34982:22;;:::i;:::-;35035:2;35029:9;35020:7;35013:26;35078:2;35074;35070:11;35064:18;35107:2;35097:8;35094:16;35091:36;;;35123:1;35120;35113:12;35091:36;35146:17;;;-1:-1:-1;35194:4:131;35186:13;;35182:27;-1:-1:-1;35172:55:131;;35223:1;35220;35213:12;35172:55;35252:2;35246:9;35236:19;;35277:49;35293:32;35322:2;35293:32;:::i;35277:49::-;35349:2;35342:5;35335:17;35389:7;35384:2;35379;35375;35371:11;35367:20;35364:33;35361:53;;;35410:1;35407;35400:12;35361:53;35423:67;35487:2;35482;35475:5;35471:14;35466:2;35462;35458:11;35423:67;:::i;:::-;35506:16;;;35499:31;;;;-1:-1:-1;35557:2:131;35546:14;;35539:31;;;;-1:-1:-1;35617:3:131;35609:12;;;35603:19;35586:15;;;35579:44;35670:3;35662:12;;;35656:19;35639:15;;;35632:44;35550:5;34053:1653;-1:-1:-1;;;34053:1653:131:o;35711:261::-;35791:5;35785:12;35780:3;35773:25;35847:4;35840:5;35836:16;35830:23;35823:4;35818:3;35814:14;35807:47;35903:4;35896:5;35892:16;35886:23;35879:4;35874:3;35870:14;35863:47;35959:4;35952:5;35948:16;35942:23;35935:4;35930:3;35926:14;35919:47;;;35711:261::o;35977:143::-;36061:1;36054:5;36051:12;36041:46;;36067:18;;:::i;:::-;36096;;35977:143::o;36125:142::-;36208:1;36201:5;36198:12;36188:46;;36214:18;;:::i;36272:437::-;36396:12;;-1:-1:-1;;;;;36392:21:131;;;36380:34;;36467:4;36456:16;;;36450:23;36446:32;;;36430:14;;;36423:56;36528:4;36517:16;;;36511:23;36495:14;;;36488:47;36584:4;36573:16;;;36567:23;36551:14;;;36544:47;36640:4;36629:16;;;36623:23;36607:14;;;36600:47;36360:3;36685:16;;;36679:23;36663:14;;36656:47;36272:437::o;36714:1197::-;36941:2;36930:9;36923:21;36953:61;37010:2;36999:9;36995:18;36986:6;36980:13;36953:61;:::i;:::-;36904:4;37061:2;37053:6;37049:15;37043:22;37074:63;37132:3;37121:9;37117:19;37103:12;37074:63;:::i;:::-;;37186:4;37178:6;37174:17;37168:24;37201:64;37260:3;37249:9;37245:19;37229:14;37201:64;:::i;:::-;;37326:4;37318:6;37314:17;37308:24;37302:31;37296:3;37285:9;37281:19;37274:60;37383:4;37375:6;37371:17;37365:24;37398:71;37464:3;37453:9;37449:19;37433:14;37398:71;:::i;:::-;;37518:3;37510:6;37506:16;37500:23;37532:55;37582:3;37571:9;37567:19;37551:14;37532:55;:::i;:::-;;37636:3;37628:6;37624:16;37618:23;37650:55;37700:3;37689:9;37685:19;37669:14;37650:55;:::i;:::-;-1:-1:-1;37754:3:131;37742:16;;37736:23;37778:6;37800:18;;;37793:30;37840:65;37900:3;37885:19;;37736:23;37840:65;:::i;37916:979::-;38341:6;38330:9;38323:25;38304:4;38384:1;38380;38375:3;38371:11;38367:19;38434:2;38426:6;38422:15;38417:2;38406:9;38402:18;38395:43;38474:3;38469:2;38458:9;38454:18;38447:31;38501:46;38542:3;38531:9;38527:19;38519:6;38501:46;:::i;:::-;38595:2;38587:6;38583:15;38578:2;38567:9;38563:18;38556:43;38636:6;38630:3;38619:9;38615:19;38608:35;38692:9;38684:6;38680:22;38674:3;38663:9;38659:19;38652:51;38726:42;38761:6;38753;38726:42;:::i;:::-;38712:56;;;38817:9;38809:6;38805:22;38799:3;38788:9;38784:19;38777:51;38845:44;38882:6;38874;38845:44;:::i;:::-;38837:52;37916:979;-1:-1:-1;;;;;;;;;;37916:979:131:o;38900:613::-;39175:25;;;-1:-1:-1;;;;;39274:15:131;;;39269:2;39254:18;;39247:43;39326:15;;;39321:2;39306:18;;39299:43;39378:15;;39373:2;39358:18;;39351:43;39227:3;39425;39410:19;;39403:32;;;39156:4;;39452:55;;39487:19;;39479:6;39452:55;:::i;39518:407::-;39720:2;39702:21;;;39759:2;39739:18;;;39732:30;39798:34;39793:2;39778:18;;39771:62;-1:-1:-1;;;39864:2:131;39849:18;;39842:41;39915:3;39900:19;;39518:407::o;39930:995::-;40120:4;40162:3;40151:9;40147:19;40139:27;;40175:52;40217:9;40208:6;40202:13;40175:52;:::i;:::-;40274:4;40266:6;40262:17;40256:24;40289:64;40347:4;40336:9;40332:20;40318:12;40289:64;:::i;:::-;;40402:4;40394:6;40390:17;40384:24;40417:65;40476:4;40465:9;40461:20;40445:14;40417:65;:::i;:::-;;40544:4;40536:6;40532:17;40526:24;40520:31;40513:4;40502:9;40498:20;40491:61;40601:4;40593:6;40589:17;40583:24;40616:72;40682:4;40671:9;40667:20;40651:14;40616:72;:::i;:::-;-1:-1:-1;40737:4:131;40725:17;;40719:24;-1:-1:-1;;;;;40821:23:131;;;40812:6;40797:22;;40790:55;40907:4;40895:17;;;40889:24;40885:33;;;40876:6;40861:22;;;40854:65;39930:995;:::o;43099:812::-;-1:-1:-1;;;43505:3:131;43498:38;43480:3;43565:6;43559:13;43581:75;43649:6;43644:2;43639:3;43635:12;43628:4;43620:6;43616:17;43581:75;:::i;:::-;-1:-1:-1;;;43715:2:131;43675:16;;;43707:11;;;43700:40;43765:13;;43787:76;43765:13;43849:2;43841:11;;43834:4;43822:17;;43787:76;:::i;:::-;43883:17;43902:2;43879:26;;43099:812;-1:-1:-1;;;;43099:812:131:o;43916:245::-;43983:6;44036:2;44024:9;44015:7;44011:23;44007:32;44004:52;;;44052:1;44049;44042:12;44004:52;44084:9;44078:16;44103:28;44125:5;44103:28;:::i;45198:136::-;45237:3;45265:5;45255:39;;45274:18;;:::i;:::-;-1:-1:-1;;;45310:18:131;;45198:136::o;46107:287::-;46236:3;46274:6;46268:13;46290:66;46349:6;46344:3;46337:4;46329:6;46325:17;46290:66;:::i;:::-;46372:16;;;;;46107:287;-1:-1:-1;;46107:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7744,"length":32},{"start":7811,"length":32},{"start":8062,"length":32},{"start":8129,"length":32},{"start":8467,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"579eb7e5","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"8659ffdd","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":\"RegistryCommunityV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":"RegistryCommunityV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75245"},{"astId":70502,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)74978"},{"astId":70505,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)74978":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75245":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","id":72404,"exportedSymbols":{"ArbitrableConfig":[65628],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"ERC1967Proxy":[55021],"Metadata":[3098],"PointSystemConfig":[65614],"ProposalType":[65540],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:2528:105","nodes":[{"id":72176,"nodeType":"PragmaDirective","src":"42:24:105","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72181,"nodeType":"ImportDirective","src":"68:147:105","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"./RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72177,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72178,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"108:8:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72179,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"122:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72180,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"140:37:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72187,"nodeType":"ImportDirective","src":"216:153:105","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":72182,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"229:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72183,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"249:17:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72184,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"272:16:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72185,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"294:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72186,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"312:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72190,"nodeType":"ImportDirective","src":"371:98:105","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"@src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":72188,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"379:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72189,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"395:30:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72403,"nodeType":"ContractDefinition","src":"522:2047:105","nodes":[{"id":72330,"nodeType":"FunctionDefinition","src":"584:1317:105","nodes":[],"body":{"id":72329,"nodeType":"Block","src":"780:1121:105","nodes":[],"statements":[{"assignments":[72209],"declarations":[{"constant":false,"id":72209,"mutability":"mutable","name":"strategyProxy","nameLocation":"798:13:105","nodeType":"VariableDeclaration","scope":72329,"src":"790:21:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72208,"name":"address","nodeType":"ElementaryTypeName","src":"790:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72234,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72217,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"877:16:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72216,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"869:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72215,"name":"address","nodeType":"ElementaryTypeName","src":"869:7:105","typeDescriptions":{}}},"id":72218,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"869:25:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72221,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"935:14:105","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":72222,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"950:4:105","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"935:19:105","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":72223,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"955:8:105","memberName":"selector","nodeType":"MemberAccess","src":"935:28:105","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":72226,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"973:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}],"id":72225,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"965:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72224,"name":"address","nodeType":"ElementaryTypeName","src":"965:7:105","typeDescriptions":{}}},"id":72227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"965:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72228,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"980:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72229,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"1005:5:105","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1005:7:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72219,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"912:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72220,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"916:18:105","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"912:22:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"912:101:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"835:16:105","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72213,"nodeType":"UserDefinedTypeName","pathNode":{"id":72212,"name":"ERC1967Proxy","nameLocations":["839:12:105"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"839:12:105"},"referencedDeclaration":55021,"src":"839:12:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"835:192:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72211,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"814:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72210,"name":"address","nodeType":"ElementaryTypeName","src":"814:7:105","typeDescriptions":{}}},"id":72233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"814:223:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"790:247:105"},{"expression":{"id":72244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":72235,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1048:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72236,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72206,"src":"1056:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":72237,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"1047:18:105","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72239,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72209,"src":"1079:13:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72240,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72195,"src":"1094:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72241,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1102:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},{"id":72242,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72201,"src":"1111:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72238,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[72330,72402,71009,71081],"referencedDeclaration":72402,"src":"1068:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_1 memory,struct Metadata memory) returns (uint256,address)"}},"id":72243,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1068:53:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"src":"1047:74:105","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72245,"nodeType":"ExpressionStatement","src":"1047:74:105"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72255,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":72248,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1144:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72249,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1152:11:105","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"1144:19:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72247,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1136:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72246,"name":"address","nodeType":"ElementaryTypeName","src":"1136:7:105","typeDescriptions":{}}},"id":72250,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:28:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72253,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1176:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72252,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1168:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72251,"name":"address","nodeType":"ElementaryTypeName","src":"1168:7:105","typeDescriptions":{}}},"id":72254,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1168:10:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1136:42:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72300,"nodeType":"IfStatement","src":"1132:454:105","trueBody":{"id":72299,"nodeType":"Block","src":"1180:406:105","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":72256,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1198:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72257,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1206:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1198:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72258,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1223:6:105","memberName":"length","nodeType":"MemberAccess","src":"1198:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"31303030","id":72259,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1232:4:105","typeDescriptions":{"typeIdentifier":"t_rational_1000_by_1","typeString":"int_const 1000"},"value":"1000"},"src":"1198:38:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72266,"nodeType":"IfStatement","src":"1194:134:105","trueBody":{"id":72265,"nodeType":"Block","src":"1238:90:105","statements":[{"expression":{"arguments":[{"hexValue":"546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626572732c206d61782069732031303030","id":72262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1263:49:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""},"value":"Too many initial allowlist members, max is 1000"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""}],"id":72261,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"1256:6:105","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":72263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1256:57:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72264,"nodeType":"ExpressionStatement","src":"1256:57:105"}]}},{"assignments":[72268],"declarations":[{"constant":false,"id":72268,"mutability":"mutable","name":"allowlistRole","nameLocation":"1349:13:105","nodeType":"VariableDeclaration","scope":72299,"src":"1341:21:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":72267,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1341:7:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":72276,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72272,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1392:11:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72273,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1405:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72270,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1375:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72271,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1379:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1375:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72274,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1375:37:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72269,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1365:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:48:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1341:72:105"},{"body":{"id":72297,"nodeType":"Block","src":"1489:87:105","statements":[{"expression":{"arguments":[{"id":72290,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72268,"src":"1518:13:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"expression":{"id":72291,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1533:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72292,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1541:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1533:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72294,"indexExpression":{"id":72293,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1558:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1533:27:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72289,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1507:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72295,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1507:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72296,"nodeType":"ExpressionStatement","src":"1507:54:105"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72281,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1447:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"expression":{"id":72282,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1451:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72283,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1459:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1451:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72284,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1476:6:105","memberName":"length","nodeType":"MemberAccess","src":"1451:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1447:35:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72298,"initializationExpression":{"assignments":[72278],"declarations":[{"constant":false,"id":72278,"mutability":"mutable","name":"i","nameLocation":"1440:1:105","nodeType":"VariableDeclaration","scope":72298,"src":"1432:9:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72277,"name":"uint256","nodeType":"ElementaryTypeName","src":"1432:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72280,"initialValue":{"hexValue":"30","id":72279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1444:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"1432:13:105"},"loopExpression":{"expression":{"id":72287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"1484:3:105","subExpression":{"id":72286,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1484:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72288,"nodeType":"ExpressionStatement","src":"1484:3:105"},"nodeType":"ForStatement","src":"1427:149:105"}]}},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72305,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1721:11:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72306,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1734:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72303,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1704:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72304,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1708:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1704:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72307,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1704:37:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72302,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1694:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72308,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1694:48:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72312,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1771:17:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72313,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1790:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72310,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1754:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72311,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1758:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1754:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72314,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1754:43:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72309,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1744:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1744:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":72301,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"1667:13:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":72316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1667:141:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72317,"nodeType":"ExpressionStatement","src":"1667:141:105"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1856:17:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72323,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1875:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72320,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1839:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72321,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1843:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1839:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1839:43:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72319,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1829:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1829:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72326,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72206,"src":"1885:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72318,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1818:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1818:76:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72328,"nodeType":"ExpressionStatement","src":"1818:76:105"}]},"functionSelector":"579eb7e5","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"593:10:105","parameters":{"id":72202,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72195,"mutability":"mutable","name":"_token","nameLocation":"612:6:105","nodeType":"VariableDeclaration","scope":72330,"src":"604:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72194,"name":"address","nodeType":"ElementaryTypeName","src":"604:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72198,"mutability":"mutable","name":"_params","nameLocation":"658:7:105","nodeType":"VariableDeclaration","scope":72330,"src":"620:45:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72197,"nodeType":"UserDefinedTypeName","pathNode":{"id":72196,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["620:30:105"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"620:30:105"},"referencedDeclaration":69242,"src":"620:30:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72201,"mutability":"mutable","name":"_metadata","nameLocation":"683:9:105","nodeType":"VariableDeclaration","scope":72330,"src":"667:25:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72200,"nodeType":"UserDefinedTypeName","pathNode":{"id":72199,"name":"Metadata","nameLocations":["667:8:105"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"667:8:105"},"referencedDeclaration":3098,"src":"667:8:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"603:90:105"},"returnParameters":{"id":72207,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72204,"mutability":"mutable","name":"poolId","nameLocation":"750:6:105","nodeType":"VariableDeclaration","scope":72330,"src":"742:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72203,"name":"uint256","nodeType":"ElementaryTypeName","src":"742:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72206,"mutability":"mutable","name":"strategy","nameLocation":"766:8:105","nodeType":"VariableDeclaration","scope":72330,"src":"758:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72205,"name":"address","nodeType":"ElementaryTypeName","src":"758:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"741:34:105"},"scope":72403,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72402,"nodeType":"FunctionDefinition","src":"1907:660:105","nodes":[],"body":{"id":72401,"nodeType":"Block","src":"2132:435:105","nodes":[],"statements":[{"assignments":[72348],"declarations":[{"constant":false,"id":72348,"mutability":"mutable","name":"token","nameLocation":"2150:5:105","nodeType":"VariableDeclaration","scope":72401,"src":"2142:13:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72347,"name":"address","nodeType":"ElementaryTypeName","src":"2142:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72350,"initialValue":{"id":72349,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70444,"src":"2158:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2142:22:105"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72356,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72351,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2178:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":72354,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2196:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72353,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2188:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72352,"name":"address","nodeType":"ElementaryTypeName","src":"2188:7:105","typeDescriptions":{}}},"id":72355,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2188:10:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2178:20:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72362,"nodeType":"IfStatement","src":"2174:65:105","trueBody":{"id":72361,"nodeType":"Block","src":"2200:39:105","statements":[{"expression":{"id":72359,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72357,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72348,"src":"2214:5:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72358,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2222:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2214:14:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72360,"nodeType":"ExpressionStatement","src":"2214:14:105"}]}},{"expression":{"id":72365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72363,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2248:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72364,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72332,"src":"2259:9:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2248:20:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72366,"nodeType":"ExpressionStatement","src":"2248:20:105"},{"assignments":[72371],"declarations":[{"constant":false,"id":72371,"mutability":"mutable","name":"_pool_managers","nameLocation":"2296:14:105","nodeType":"VariableDeclaration","scope":72401,"src":"2279:31:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72369,"name":"address","nodeType":"ElementaryTypeName","src":"2279:7:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72370,"nodeType":"ArrayTypeName","src":"2279:9:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72373,"initialValue":{"id":72372,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"2313:14:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2279:48:105"},{"expression":{"id":72388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72374,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72343,"src":"2338:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72377,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"2394:9:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72378,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2405:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72381,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72337,"src":"2426:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":72379,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2415:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72380,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2419:6:105","memberName":"encode","nodeType":"MemberAccess","src":"2415:10:105","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72382,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2415:19:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":72383,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72348,"src":"2436:5:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":72384,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2443:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":72385,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72340,"src":"2446:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":72386,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72371,"src":"2457:14:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":72375,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"2347:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":72376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2352:28:105","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":74964,"src":"2347:33:105","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":72387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2347:134:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2338:143:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72389,"nodeType":"ExpressionStatement","src":"2338:143:105"},{"eventCall":{"arguments":[{"id":72391,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72343,"src":"2509:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72392,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2517:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72395,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2535:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72394,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2527:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72393,"name":"address","nodeType":"ElementaryTypeName","src":"2527:7:105","typeDescriptions":{}}},"id":72396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2527:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72397,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2542:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72398,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72340,"src":"2550:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72390,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70380,"src":"2497:11:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":72399,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2497:63:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72400,"nodeType":"EmitStatement","src":"2492:68:105"}]},"functionSelector":"8659ffdd","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"1916:10:105","parameters":{"id":72341,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72332,"mutability":"mutable","name":"_strategy","nameLocation":"1944:9:105","nodeType":"VariableDeclaration","scope":72402,"src":"1936:17:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72331,"name":"address","nodeType":"ElementaryTypeName","src":"1936:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72334,"mutability":"mutable","name":"_token","nameLocation":"1971:6:105","nodeType":"VariableDeclaration","scope":72402,"src":"1963:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72333,"name":"address","nodeType":"ElementaryTypeName","src":"1963:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72337,"mutability":"mutable","name":"_params","nameLocation":"2025:7:105","nodeType":"VariableDeclaration","scope":72402,"src":"1987:45:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72336,"nodeType":"UserDefinedTypeName","pathNode":{"id":72335,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1987:30:105"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1987:30:105"},"referencedDeclaration":69242,"src":"1987:30:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72340,"mutability":"mutable","name":"_metadata","nameLocation":"2058:9:105","nodeType":"VariableDeclaration","scope":72402,"src":"2042:25:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72339,"nodeType":"UserDefinedTypeName","pathNode":{"id":72338,"name":"Metadata","nameLocations":["2042:8:105"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2042:8:105"},"referencedDeclaration":3098,"src":"2042:8:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"1926:147:105"},"returnParameters":{"id":72346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72343,"mutability":"mutable","name":"poolId","nameLocation":"2106:6:105","nodeType":"VariableDeclaration","scope":72402,"src":"2098:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72342,"name":"uint256","nodeType":"ElementaryTypeName","src":"2098:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72345,"mutability":"mutable","name":"strategy","nameLocation":"2122:8:105","nodeType":"VariableDeclaration","scope":72402,"src":"2114:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72344,"name":"address","nodeType":"ElementaryTypeName","src":"2114:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2097:34:105"},"scope":72403,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":72192,"name":"RegistryCommunityV0_0","nameLocations":["556:21:105"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"556:21:105"},"id":72193,"nodeType":"InheritanceSpecifier","src":"556:21:105"}],"canonicalName":"RegistryCommunityV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72191,"nodeType":"StructuredDocumentation","src":"471:51:105","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72403,72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_1","nameLocation":"531:21:105","scope":72404,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":105} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json b/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json index 82e96eb5..35d5d6ed 100644 --- a/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json +++ b/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json @@ -1 +1 @@ -{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"diamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"event","name":"DiamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","indexed":false,"internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","indexed":false,"internalType":"address"},{"name":"_calldata","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotAddSelectorsToZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotRemoveFunctionThatDoesNotExist","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotRemoveImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionThatDoesNotExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotReplaceImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"DiamondAlreadyInitialized","inputs":[]},{"type":"error","name":"FunctionNotFound","inputs":[{"name":"_functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"IncorrectFacetCutAction","inputs":[{"name":"_action","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InitializationFunctionReverted","inputs":[{"name":"_initializationContractAddress","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"NoBytecodeAtAddress","inputs":[{"name":"_contractAddress","type":"address","internalType":"address"},{"name":"_message","type":"string","internalType":"string"}]},{"type":"error","name":"NoSelectorsProvidedForFacetForCut","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]},{"type":"error","name":"NotContractOwner","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_contractOwner","type":"address","internalType":"address"}]},{"type":"error","name":"RemoveFacetAddressMustBeZeroAddress","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b506112b4806100206000396000f3fe6080604052600436106100855760003560e01c806302c1d0b11461011c5780631f931c1c1461015257806352d1902d146101725780635c94e4d2146101af57806377122d56146101cf578063affed0e0146101ef578063b2bdfa7b14610205578063b8bed90114610225578063c4d66de814610245578063ffa1ad74146102655761008c565b3661008c57005b600080356001600160e01b03191681526000805160206111eb833981519152602081905260409091205481906001600160a01b0316806100f6576000356001600160e01b031916604051630a82dd7360e31b81526004016100ed9190610c41565b60405180910390fd5b3660008037600080366000845af43d6000803e808015610115573d6000f35b3d6000fd5b005b34801561012857600080fd5b5060685461013c906001600160a01b031681565b6040516101499190610c56565b60405180910390f35b34801561015e57600080fd5b5061011a61016d366004610cce565b6102a1565b34801561017e57600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b604051908152602001610149565b3480156101bb57600080fd5b5060695461013c906001600160a01b031681565b3480156101db57600080fd5b50606a5461013c906001600160a01b031681565b3480156101fb57600080fd5b506101a160655481565b34801561021157600080fd5b5060335461013c906001600160a01b031681565b34801561023157600080fd5b5060675461013c906001600160a01b031681565b34801561025157600080fd5b5061011a610260366004610d7f565b6102fa565b34801561027157600080fd5b50610294604051806040016040528060038152602001620302e360ec1b81525081565b6040516101499190610df1565b6102a9610334565b6102f36102b68587610e95565b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061038d92505050565b5050505050565b610302610534565b1561032057604051639289b96160e01b815260040160405180910390fd5b61032981610551565b6103316105b1565b50565b61033c6105da565b600301546001600160a01b0316331461038b57336103586105da565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100ed565b565b60005b83518110156104e95760008482815181106103ad576103ad610fd8565b602002602001015160400151905060008583815181106103cf576103cf610fd8565b60200260200101516000015190508151600003610401578060405163e767f91f60e01b81526004016100ed9190610c56565b600086848151811061041557610415610fd8565b60200260200101516020015190506000600281111561043657610436610fee565b81600281111561044857610448610fee565b0361045c5761045782846105ec565b6104d3565b600181600281111561047057610470610fee565b0361047f576104578284610783565b600281600281111561049357610493610fee565b036104a25761045782846108f5565b8060028111156104b4576104b4610fee565b604051633ff4d20f60e11b815260ff90911660048201526024016100ed565b50505080806104e19061101a565b915050610390565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb67383838360405161051d93929190611078565b60405180910390a161052f8282610b53565b505050565b600061053e6105da565b60030154600160a01b900460ff16919050565b600061055b6105da565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60016105bb6105da565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b6000805160206111eb83398151915290565b6001600160a01b03821661061557806040516302b8da0760e21b81526004016100ed9190611141565b600061061f6105da565b905060008160010180549050905061064f8460405180606001604052806024815260200161120b60249139610c19565b60005b83518110156102f357600084828151811061066f5761066f610fd8565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b031680156106c2578160405163ebbf5d0760e01b81526004016100ed9190610c41565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff90930219169190911790558361076b81611154565b9450505050808061077b9061101a565b915050610652565b600061078d6105da565b90506001600160a01b0383166107b8578160405163cd98a96f60e01b81526004016100ed9190611141565b6107da8360405180606001604052806028815260200161125760289139610c19565b60005b82518110156108ef5760008382815181106107fa576107fa610fd8565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b031630810361084e5781604051632901806d60e11b81526004016100ed9190610c41565b856001600160a01b0316816001600160a01b0316036108825781604051631ac6ce8d60e11b81526004016100ed9190610c41565b6001600160a01b0381166108ab5781604051637479f93960e01b81526004016100ed9190610c41565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108e78161101a565b9150506107dd565b50505050565b60006108ff6105da565b60018101549091506001600160a01b03841615610931578360405163d091bc8160e01b81526004016100ed9190610c56565b60005b83518110156102f357600084828151811061095157610951610fd8565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff1693820193909352909250906109c25781604051637a08a22d60e01b81526004016100ed9190610c41565b8051306001600160a01b03909116036109f05781604051630df5fd6160e31b81526004016100ed9190610c41565b836109fa81611175565b94505083816020015161ffff1614610ad8576000856001018581548110610a2357610a23610fd8565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a6657610a66610fd8565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aeb57610aeb61118c565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b4b8161101a565b915050610934565b6001600160a01b038216610b65575050565b610b878260405180606001604052806028815260200161122f60289139610c19565b600080836001600160a01b031683604051610ba291906111a2565b600060405180830381855af49150503d8060008114610bdd576040519150601f19603f3d011682016040523d82523d6000602084013e610be2565b606091505b5091509150816108ef57805115610bfc5780518082602001fd5b838360405163192105d760e01b81526004016100ed9291906111be565b813b600081900361052f57828260405163919834b960e01b81526004016100ed9291906111be565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610c8157600080fd5b919050565b60008083601f840112610c9857600080fd5b5081356001600160401b03811115610caf57600080fd5b602083019150836020828501011115610cc757600080fd5b9250929050565b600080600080600060608688031215610ce657600080fd5b85356001600160401b0380821115610cfd57600080fd5b818801915088601f830112610d1157600080fd5b813581811115610d2057600080fd5b8960208260051b8501011115610d3557600080fd5b60208301975080965050610d4b60208901610c6a565b94506040880135915080821115610d6157600080fd5b50610d6e88828901610c86565b969995985093965092949392505050565b600060208284031215610d9157600080fd5b610d9a82610c6a565b9392505050565b60005b83811015610dbc578181015183820152602001610da4565b50506000910152565b60008151808452610ddd816020860160208601610da1565b601f01601f19169290920160200192915050565b602081526000610d9a6020830184610dc5565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610e3c57610e3c610e04565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610e6a57610e6a610e04565b604052919050565b60006001600160401b03821115610e8b57610e8b610e04565b5060051b60200190565b6000610ea8610ea384610e72565b610e42565b83815260208082019190600586811b860136811115610ec657600080fd5b865b81811015610fcb5780356001600160401b0380821115610ee85760008081fd5b818a01915060608236031215610efe5760008081fd5b610f06610e1a565b610f0f83610c6a565b81528683013560038110610f235760008081fd5b8188015260408381013583811115610f3b5760008081fd5b939093019236601f850112610f5257600092508283fd5b83359250610f62610ea384610e72565b83815292871b84018801928881019036851115610f7f5760008081fd5b948901945b84861015610fb45785356001600160e01b031981168114610fa55760008081fd5b82529489019490890190610f84565b918301919091525088525050948301948301610ec8565b5092979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161102c5761102c611004565b5060010190565b600081518084526020808501945080840160005b8381101561106d5781516001600160e01b03191687529582019590820190600101611047565b509495945050505050565b6000606080830181845280875180835260808601915060808160051b87010192506020808a016000805b8481101561111157898703607f19018652825180516001600160a01b0316885284810151600381106110e257634e487b7160e01b84526021600452602484fd5b888601526040908101519088018990526110fe89890182611033565b97505094830194918301916001016110a2565b5050506001600160a01b03891690870152505083810360408501526111368186610dc5565b979650505050505050565b602081526000610d9a6020830184611033565b600061ffff80831681810361116b5761116b611004565b6001019392505050565b60008161118457611184611004565b506000190190565b634e487b7160e01b600052603160045260246000fd5b600082516111b4818460208701610da1565b9190910192915050565b6001600160a01b03831681526040602082018190526000906111e290830184610dc5565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a2646970667358221220cf52795712f96c49a9a63277b7f05ae61c38f95bb8673addc85585dfb9a456c964736f6c63430008130033","sourceMap":"589:1024:113:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106100855760003560e01c806302c1d0b11461011c5780631f931c1c1461015257806352d1902d146101725780635c94e4d2146101af57806377122d56146101cf578063affed0e0146101ef578063b2bdfa7b14610205578063b8bed90114610225578063c4d66de814610245578063ffa1ad74146102655761008c565b3661008c57005b600080356001600160e01b03191681526000805160206111eb833981519152602081905260409091205481906001600160a01b0316806100f6576000356001600160e01b031916604051630a82dd7360e31b81526004016100ed9190610c41565b60405180910390fd5b3660008037600080366000845af43d6000803e808015610115573d6000f35b3d6000fd5b005b34801561012857600080fd5b5060685461013c906001600160a01b031681565b6040516101499190610c56565b60405180910390f35b34801561015e57600080fd5b5061011a61016d366004610cce565b6102a1565b34801561017e57600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b604051908152602001610149565b3480156101bb57600080fd5b5060695461013c906001600160a01b031681565b3480156101db57600080fd5b50606a5461013c906001600160a01b031681565b3480156101fb57600080fd5b506101a160655481565b34801561021157600080fd5b5060335461013c906001600160a01b031681565b34801561023157600080fd5b5060675461013c906001600160a01b031681565b34801561025157600080fd5b5061011a610260366004610d7f565b6102fa565b34801561027157600080fd5b50610294604051806040016040528060038152602001620302e360ec1b81525081565b6040516101499190610df1565b6102a9610334565b6102f36102b68587610e95565b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061038d92505050565b5050505050565b610302610534565b1561032057604051639289b96160e01b815260040160405180910390fd5b61032981610551565b6103316105b1565b50565b61033c6105da565b600301546001600160a01b0316331461038b57336103586105da565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100ed565b565b60005b83518110156104e95760008482815181106103ad576103ad610fd8565b602002602001015160400151905060008583815181106103cf576103cf610fd8565b60200260200101516000015190508151600003610401578060405163e767f91f60e01b81526004016100ed9190610c56565b600086848151811061041557610415610fd8565b60200260200101516020015190506000600281111561043657610436610fee565b81600281111561044857610448610fee565b0361045c5761045782846105ec565b6104d3565b600181600281111561047057610470610fee565b0361047f576104578284610783565b600281600281111561049357610493610fee565b036104a25761045782846108f5565b8060028111156104b4576104b4610fee565b604051633ff4d20f60e11b815260ff90911660048201526024016100ed565b50505080806104e19061101a565b915050610390565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb67383838360405161051d93929190611078565b60405180910390a161052f8282610b53565b505050565b600061053e6105da565b60030154600160a01b900460ff16919050565b600061055b6105da565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60016105bb6105da565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b6000805160206111eb83398151915290565b6001600160a01b03821661061557806040516302b8da0760e21b81526004016100ed9190611141565b600061061f6105da565b905060008160010180549050905061064f8460405180606001604052806024815260200161120b60249139610c19565b60005b83518110156102f357600084828151811061066f5761066f610fd8565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b031680156106c2578160405163ebbf5d0760e01b81526004016100ed9190610c41565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff90930219169190911790558361076b81611154565b9450505050808061077b9061101a565b915050610652565b600061078d6105da565b90506001600160a01b0383166107b8578160405163cd98a96f60e01b81526004016100ed9190611141565b6107da8360405180606001604052806028815260200161125760289139610c19565b60005b82518110156108ef5760008382815181106107fa576107fa610fd8565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b031630810361084e5781604051632901806d60e11b81526004016100ed9190610c41565b856001600160a01b0316816001600160a01b0316036108825781604051631ac6ce8d60e11b81526004016100ed9190610c41565b6001600160a01b0381166108ab5781604051637479f93960e01b81526004016100ed9190610c41565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108e78161101a565b9150506107dd565b50505050565b60006108ff6105da565b60018101549091506001600160a01b03841615610931578360405163d091bc8160e01b81526004016100ed9190610c56565b60005b83518110156102f357600084828151811061095157610951610fd8565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff1693820193909352909250906109c25781604051637a08a22d60e01b81526004016100ed9190610c41565b8051306001600160a01b03909116036109f05781604051630df5fd6160e31b81526004016100ed9190610c41565b836109fa81611175565b94505083816020015161ffff1614610ad8576000856001018581548110610a2357610a23610fd8565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a6657610a66610fd8565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aeb57610aeb61118c565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b4b8161101a565b915050610934565b6001600160a01b038216610b65575050565b610b878260405180606001604052806028815260200161122f60289139610c19565b600080836001600160a01b031683604051610ba291906111a2565b600060405180830381855af49150503d8060008114610bdd576040519150601f19603f3d011682016040523d82523d6000602084013e610be2565b606091505b5091509150816108ef57805115610bfc5780518082602001fd5b838360405163192105d760e01b81526004016100ed9291906111be565b813b600081900361052f57828260405163919834b960e01b81526004016100ed9291906111be565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610c8157600080fd5b919050565b60008083601f840112610c9857600080fd5b5081356001600160401b03811115610caf57600080fd5b602083019150836020828501011115610cc757600080fd5b9250929050565b600080600080600060608688031215610ce657600080fd5b85356001600160401b0380821115610cfd57600080fd5b818801915088601f830112610d1157600080fd5b813581811115610d2057600080fd5b8960208260051b8501011115610d3557600080fd5b60208301975080965050610d4b60208901610c6a565b94506040880135915080821115610d6157600080fd5b50610d6e88828901610c86565b969995985093965092949392505050565b600060208284031215610d9157600080fd5b610d9a82610c6a565b9392505050565b60005b83811015610dbc578181015183820152602001610da4565b50506000910152565b60008151808452610ddd816020860160208601610da1565b601f01601f19169290920160200192915050565b602081526000610d9a6020830184610dc5565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610e3c57610e3c610e04565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610e6a57610e6a610e04565b604052919050565b60006001600160401b03821115610e8b57610e8b610e04565b5060051b60200190565b6000610ea8610ea384610e72565b610e42565b83815260208082019190600586811b860136811115610ec657600080fd5b865b81811015610fcb5780356001600160401b0380821115610ee85760008081fd5b818a01915060608236031215610efe5760008081fd5b610f06610e1a565b610f0f83610c6a565b81528683013560038110610f235760008081fd5b8188015260408381013583811115610f3b5760008081fd5b939093019236601f850112610f5257600092508283fd5b83359250610f62610ea384610e72565b83815292871b84018801928881019036851115610f7f5760008081fd5b948901945b84861015610fb45785356001600160e01b031981168114610fa55760008081fd5b82529489019490890190610f84565b918301919091525088525050948301948301610ec8565b5092979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161102c5761102c611004565b5060010190565b600081518084526020808501945080840160005b8381101561106d5781516001600160e01b03191687529582019590820190600101611047565b509495945050505050565b6000606080830181845280875180835260808601915060808160051b87010192506020808a016000805b8481101561111157898703607f19018652825180516001600160a01b0316885284810151600381106110e257634e487b7160e01b84526021600452602484fd5b888601526040908101519088018990526110fe89890182611033565b97505094830194918301916001016110a2565b5050506001600160a01b03891690870152505083810360408501526111368186610dc5565b979650505050505050565b602081526000610d9a6020830184611033565b600061ffff80831681810361116b5761116b611004565b6001019392505050565b60008161118457611184611004565b506000190190565b634e487b7160e01b600052603160045260246000fd5b600082516111b4818460208701610da1565b9190910192915050565b6001600160a01b03831681526040602082018190526000906111e290830184610dc5565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a2646970667358221220cf52795712f96c49a9a63277b7f05ae61c38f95bb8673addc85585dfb9a456c964736f6c63430008130033","sourceMap":"589:1024:113:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1396:36:112;1693:7;;-1:-1:-1;;;;;;1693:7:112;1658:43;;-1:-1:-1;;;;;;;;;;;1658:43:112;;;;;;;;:56;1585:45:125;;-1:-1:-1;;;;;1658:56:112;;1724:82;;1787:7;;-1:-1:-1;;;;;;1787:7:112;1770:25;;-1:-1:-1;;;1770:25:112;;;;;;;;:::i;:::-;;;;;;;;1724:82;2002:14;1999:1;1996;1983:34;2146:1;2143;2127:14;2124:1;2117:5;2110;2097:51;2218:16;2215:1;2212;2197:38;2322:6;2341:38;;;;2412:16;2409:1;2402:27;2341:38;2360:16;2357:1;2350:27;2315:116;;1292:40:113;;;;;;;;;;-1:-1:-1;1292:40:113;;;;-1:-1:-1;;;;;1292:40:113;;;;;;;;;;:::i;:::-;;;;;;;;3059:234:112;;;;;;;;;;-1:-1:-1;3059:234:112;;;;;:::i;:::-;;:::i;2488:118::-;;;;;;;;;;-1:-1:-1;885:66:112;2488:118;;;2230:25:142;;;2218:2;2203:18;2488:118:112;2084:177:142;1338:31:113;;;;;;;;;;-1:-1:-1;1338:31:113;;;;-1:-1:-1;;;;;1338:31:113;;;1375:38;;;;;;;;;;-1:-1:-1;1375:38:113;;;;-1:-1:-1;;;;;1375:38:113;;;1171:20;;;;;;;;;;;;;;;;1112:21;;;;;;;;;;-1:-1:-1;1112:21:113;;;;-1:-1:-1;;;;;1112:21:113;;;1253:33;;;;;;;;;;-1:-1:-1;1253:33:113;;;;-1:-1:-1;;;;;1253:33:113;;;993:234:112;;;;;;;;;;-1:-1:-1;993:234:112;;;;;:::i;:::-;;:::i;807:38:113:-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;807:38:113;;;;;;;;;;;;:::i;3059:234:112:-;3189:35;:33;:35::i;:::-;3234:52;;3256:11;;3234:52;:::i;:::-;3269:5;3276:9;;3234:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3234:21:112;;-1:-1:-1;;;3234:52:112:i;:::-;3059:234;;;;;:::o;993:::-;1052:26;:24;:26::i;:::-;1048:91;;;1101:27;;-1:-1:-1;;;1101:27:112;;;;;;;;;;;1048:91;1148:35;1176:6;1148:27;:35::i;:::-;1193:27;:25;:27::i;:::-;993:234;:::o;3144:206:125:-;3220:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;;;3220:30:125;3206:10;:44;3202:142;;3290:10;3302:16;:14;:16::i;:::-;:30;;;3273:60;;-1:-1:-1;;;;;;3273:60:125;;-1:-1:-1;;;;;7223:15:142;;;3273:60:125;;;7205:34:142;3302:30:125;;7255:18:142;;;7248:43;7140:18;;3273:60:125;6993:304:142;3202:142:125;3144:206::o;3494:1179::-;3620:18;3615:948;3653:11;:18;3640:10;:31;3615:948;;;3701:33;3737:11;3749:10;3737:23;;;;;;;;:::i;:::-;;;;;;;:41;;;3701:77;;3792:20;3815:11;3827:10;3815:23;;;;;;;;:::i;:::-;;;;;;;:36;;;3792:59;;3869:17;:24;3897:1;3869:29;3865:122;;3959:12;3925:47;;-1:-1:-1;;;3925:47:125;;;;;;;;:::i;3865:122::-;4000:33;4036:11;4048:10;4036:23;;;;;;;;:::i;:::-;;;;;;;:30;;;4000:66;;4094:27;4084:37;;;;;;;;:::i;:::-;:6;:37;;;;;;;;:::i;:::-;;4080:473;;4141:45;4154:12;4168:17;4141:12;:45::i;:::-;4080:473;;;4221:31;4211:6;:41;;;;;;;;:::i;:::-;;4207:346;;4272:49;4289:12;4303:17;4272:16;:49::i;4207:346::-;4356:30;4346:6;:40;;;;;;;;:::i;:::-;;4342:211;;4406:48;4422:12;4436:17;4406:15;:48::i;4342:211::-;4530:6;4524:13;;;;;;;;:::i;:::-;4500:38;;-1:-1:-1;;;4500:38:125;;7738:4:142;7726:17;;;4500:38:125;;;7708:36:142;7681:18;;4500:38:125;7566:184:142;4342:211:125;3687:876;;;3673:12;;;;;:::i;:::-;;;;3615:948;;;;4577:41;4588:11;4601:5;4608:9;4577:41;;;;;;;;:::i;:::-;;;;;;;;4628:38;4649:5;4656:9;4628:20;:38::i;:::-;3494:1179;;;:::o;2435:107::-;2483:4;2505:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;2505:30:125;;;;;;-1:-1:-1;2435:107:125:o;2732:264::-;2796:25;2824:16;:14;:16::i;:::-;2874;;;;;-1:-1:-1;;;;;2900:28:125;;;-1:-1:-1;;;;;;2900:28:125;;;;;;;2943:46;;2796:44;;-1:-1:-1;2874:16:125;;;;2943:46;;2850:21;;2943:46;2786:210;;2732:264;:::o;2547:89::-;2625:4;2592:16;:14;:16::i;:::-;:30;;:37;;;;;-1:-1:-1;;;2592:37:125;-1:-1:-1;;;;2592:37:125;;;;;;;;;2547:89::o;2232:197::-;-1:-1:-1;;;;;;;;;;;1585:45:125;2232:197::o;4679:1026::-;-1:-1:-1;;;;;4783:27:125;;4779:116;;4865:18;4833:51;;-1:-1:-1;;;4833:51:125;;;;;;;;:::i;4779:116::-;4904:25;4932:16;:14;:16::i;:::-;4904:44;;4958:20;4988:2;:12;;:19;;;;4958:50;;5018:77;5041:13;5018:77;;;;;;;;;;;;;;;;;:22;:77::i;:::-;5110:21;5105:594;5149:18;:25;5133:13;:41;5105:594;;;5207:15;5225:18;5244:13;5225:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;5298:44:125;;5272:23;5298:44;;;;;;;;;;;:57;5225:33;;-1:-1:-1;;;;;;5298:57:125;5373:29;;5369:128;;5473:8;5429:53;;-1:-1:-1;;;5429:53:125;;;;;;;;:::i;5369:128::-;5557:61;;;;;;;;-1:-1:-1;;;;;5557:61:125;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;5510:44:125;;-1:-1:-1;5510:44:125;;;;;;;;;:108;;;;;;;;;-1:-1:-1;;;5510:108:125;-1:-1:-1;;;;;;5510:108:125;;;;;;;;;;;;;;;;5632:12;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5510:108;5632:27;;;;;;;;;;;;;;;;5604:13;5673:15;5604:13;5673:15;:::i;:::-;;;;5193:506;;5176:15;;;;;:::i;:::-;;;;5105:594;;5711:1315;5815:25;5843:16;:14;:16::i;:::-;5815:44;-1:-1:-1;;;;;;5873:27:125;;5869:131;;5970:18;5923:66;;-1:-1:-1;;;5923:66:125;;;;;;;;:::i;5869:131::-;6009:81;6032:13;6009:81;;;;;;;;;;;;;;;;;:22;:81::i;:::-;6105:21;6100:920;6144:18;:25;6128:13;:41;6100:920;;;6202:15;6220:18;6239:13;6220:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;6293:44:125;;6267:23;6293:44;;;;;;;;;;;:57;6220:33;;-1:-1:-1;;;;;;6293:57:125;6502:4;6475:32;;6471:118;;6565:8;6534:40;;-1:-1:-1;;;6534:40:125;;;;;;;;:::i;6471:118::-;6625:13;-1:-1:-1;;;;;6606:32:125;:15;-1:-1:-1;;;;;6606:32:125;;6602:144;;6722:8;6665:66;;-1:-1:-1;;;6665:66:125;;;;;;;;:::i;6602:144::-;-1:-1:-1;;;;;6763:29:125;;6759:123;;6858:8;6819:48;;-1:-1:-1;;;6819:48:125;;;;;;;;:::i;6759:123::-;-1:-1:-1;;;;;;;6936:44:125;:34;:44;;;;;;;;;;:73;;-1:-1:-1;;;;;;6936:73:125;-1:-1:-1;;;;;6936:73:125;;;;;6171:15;;;;:::i;:::-;;;;6100:920;;;;5805:1221;5711:1315;;:::o;7032:1713::-;7135:25;7163:16;:14;:16::i;:::-;7213:12;;;:19;7135:44;;-1:-1:-1;;;;;;7246:27:125;;;7242:115;;7332:13;7296:50;;-1:-1:-1;;;7296:50:125;;;;;;;;:::i;7242:115::-;7371:21;7366:1373;7410:18;:25;7394:13;:41;7366:1373;;;7468:15;7486:18;7505:13;7486:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;7625:44:125;;7533:73;7625:44;;;;;;;;;;;7533:136;;;;;;;;;-1:-1:-1;;;;;7533:136:125;;;;;-1:-1:-1;;;7533:136:125;;;;;;;;;;;;7486:33;;-1:-1:-1;7533:136:125;7683:153;;7812:8;7775:46;;-1:-1:-1;;;7775:46:125;;;;;;;;:::i;7683:153::-;7947:47;;8006:4;-1:-1:-1;;;;;7947:64:125;;;;7943:149;;8068:8;8038:39;;-1:-1:-1;;;8038:39:125;;;;;;;;:::i;7943:149::-;8156:15;;;;:::i;:::-;;;;8244:13;8189:34;:51;;;:68;;;8185:411;;8277:19;8299:2;:12;;8312:13;8299:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;8277:49;;8412:12;8344:2;:12;;8357:34;:51;;;8344:65;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:80;;;:65;;;;;;:80;;;;;;;;;;;;;;;;;;;;;;8530:51;;;;-1:-1:-1;;;;;;8442:48:125;;;;;;;;;;;;;:139;;-1:-1:-1;;;;8442:139:125;-1:-1:-1;;;8442:139:125;;;;;;;;;;;;;;8185:411;8645:2;:12;;:18;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;8645:18:125;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8684:44:125;;;;;;;;;-1:-1:-1;8684:44:125;;;8677:51;;-1:-1:-1;;;;;;8677:51:125;;;7437:15;;;;:::i;:::-;;;;7366:1373;;8751:734;-1:-1:-1;;;;;8843:19:125;;8839:56;;8751:734;;:::o;8839:56::-;8904:73;8927:5;8904:73;;;;;;;;;;;;;;;;;:22;:73::i;:::-;8988:12;9002:18;9024:5;-1:-1:-1;;;;;9024:18:125;9043:9;9024:29;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8987:66;;;;9068:7;9063:416;;9095:12;;:16;9091:378;;9277:5;9271:12;9327:15;9319:5;9315:2;9311:14;9304:39;9091:378;9437:5;9444:9;9406:48;;-1:-1:-1;;;9406:48:125;;;;;;;;;:::i;9491:320::-;9664:22;;9595:20;9709:17;;;9705:100;;9769:9;9780:13;9749:45;;-1:-1:-1;;;9749:45:125;;;;;;;;;:::i;14:202:142:-;-1:-1:-1;;;;;;176:33:142;;;;158:52;;146:2;131:18;;14:202::o;330:203::-;-1:-1:-1;;;;;494:32:142;;;;476:51;;464:2;449:18;;330:203::o;538:173::-;606:20;;-1:-1:-1;;;;;655:31:142;;645:42;;635:70;;701:1;698;691:12;635:70;538:173;;;:::o;716:347::-;767:8;777:6;831:3;824:4;816:6;812:17;808:27;798:55;;849:1;846;839:12;798:55;-1:-1:-1;872:20:142;;-1:-1:-1;;;;;904:30:142;;901:50;;;947:1;944;937:12;901:50;984:4;976:6;972:17;960:29;;1036:3;1029:4;1020:6;1012;1008:19;1004:30;1001:39;998:59;;;1053:1;1050;1043:12;998:59;716:347;;;;;:::o;1068:1011::-;1212:6;1220;1228;1236;1244;1297:2;1285:9;1276:7;1272:23;1268:32;1265:52;;;1313:1;1310;1303:12;1265:52;1340:23;;-1:-1:-1;;;;;1412:14:142;;;1409:34;;;1439:1;1436;1429:12;1409:34;1477:6;1466:9;1462:22;1452:32;;1522:7;1515:4;1511:2;1507:13;1503:27;1493:55;;1544:1;1541;1534:12;1493:55;1584:2;1571:16;1610:2;1602:6;1599:14;1596:34;;;1626:1;1623;1616:12;1596:34;1681:7;1674:4;1664:6;1661:1;1657:14;1653:2;1649:23;1645:34;1642:47;1639:67;;;1702:1;1699;1692:12;1639:67;1733:4;1729:2;1725:13;1715:23;;1757:6;1747:16;;;1782:40;1816:4;1805:9;1801:20;1782:40;:::i;:::-;1772:50;;1875:2;1864:9;1860:18;1847:32;1831:48;;1904:2;1894:8;1891:16;1888:36;;;1920:1;1917;1910:12;1888:36;;1959:60;2011:7;2000:8;1989:9;1985:24;1959:60;:::i;:::-;1068:1011;;;;-1:-1:-1;1068:1011:142;;-1:-1:-1;2038:8:142;;1933:86;1068:1011;-1:-1:-1;;;1068:1011:142:o;2448:186::-;2507:6;2560:2;2548:9;2539:7;2535:23;2531:32;2528:52;;;2576:1;2573;2566:12;2528:52;2599:29;2618:9;2599:29;:::i;:::-;2589:39;2448:186;-1:-1:-1;;;2448:186:142:o;2639:250::-;2724:1;2734:113;2748:6;2745:1;2742:13;2734:113;;;2824:11;;;2818:18;2805:11;;;2798:39;2770:2;2763:10;2734:113;;;-1:-1:-1;;2881:1:142;2863:16;;2856:27;2639:250::o;2894:271::-;2936:3;2974:5;2968:12;3001:6;2996:3;2989:19;3017:76;3086:6;3079:4;3074:3;3070:14;3063:4;3056:5;3052:16;3017:76;:::i;:::-;3147:2;3126:15;-1:-1:-1;;3122:29:142;3113:39;;;;3154:4;3109:50;;2894:271;-1:-1:-1;;2894:271:142:o;3170:220::-;3319:2;3308:9;3301:21;3282:4;3339:45;3380:2;3369:9;3365:18;3357:6;3339:45;:::i;3395:127::-;3456:10;3451:3;3447:20;3444:1;3437:31;3487:4;3484:1;3477:15;3511:4;3508:1;3501:15;3527:253;3599:2;3593:9;3641:4;3629:17;;-1:-1:-1;;;;;3661:34:142;;3697:22;;;3658:62;3655:88;;;3723:18;;:::i;:::-;3759:2;3752:22;3527:253;:::o;3785:275::-;3856:2;3850:9;3921:2;3902:13;;-1:-1:-1;;3898:27:142;3886:40;;-1:-1:-1;;;;;3941:34:142;;3977:22;;;3938:62;3935:88;;;4003:18;;:::i;:::-;4039:2;4032:22;3785:275;;-1:-1:-1;3785:275:142:o;4065:191::-;4133:4;-1:-1:-1;;;;;4155:30:142;;4152:56;;;4188:18;;:::i;:::-;-1:-1:-1;4233:1:142;4229:14;4245:4;4225:25;;4065:191::o;4261:2727::-;4433:9;4468:72;4484:55;4532:6;4484:55;:::i;:::-;4468:72;:::i;:::-;4574:19;;;4612:4;4632:12;;;;4562:3;4663:1;4698:15;;;4687:27;;4737:14;4726:26;;4723:46;;;4765:1;4762;4755:12;4723:46;4789:5;4803:2152;4819:6;4814:3;4811:15;4803:2152;;;4892:17;;-1:-1:-1;;;;;4966:19:142;;;4963:109;;;5026:1;5055:2;5051;5044:14;4963:109;5106:11;5099:5;5095:23;5085:33;;5163:4;5158:2;5142:14;5138:23;5134:34;5131:124;;;5209:1;5238:2;5234;5227:14;5131:124;5283:22;;:::i;:::-;5334;5353:2;5334:22;:::i;:::-;5325:7;5318:39;5406:2;5402;5398:11;5385:25;5445:1;5436:7;5433:14;5423:112;;5489:1;5518:2;5514;5507:14;5423:112;5555:16;;;5548:33;5604:2;5646:11;;;5633:25;5674:14;;;5671:104;;;5729:1;5758:2;5754;5747:14;5671:104;5799:15;;;;;5857:14;5850:4;5841:14;;5837:35;5827:136;;5915:1;5904:12;;5945:3;5940;5933:16;5827:136;6000:3;5987:17;5976:28;;6030:69;6046:52;6094:3;6046:52;:::i;6030:69::-;6143:18;;;6239:12;;;6230:22;;6226:31;;;6183:14;;;;6286;6273:28;;6270:121;;;6343:1;6373:3;6368;6361:16;6270:121;6417:12;;;;6442:394;6460:8;6453:5;6450:19;6442:394;;;6543:19;;-1:-1:-1;;;;;;6601:34:142;;6589:47;;6579:164;;6687:1;6721:3;6716;6709:16;6579:164;6760:22;;6481:14;;;;6808;;;;6442:394;;;6856:16;;;6849:31;;;;-1:-1:-1;6893:20:142;;-1:-1:-1;;6933:12:142;;;;4836;;4803:2152;;;-1:-1:-1;6977:5:142;;4261:2727;-1:-1:-1;;;;;;;4261:2727:142:o;7302:127::-;7363:10;7358:3;7354:20;7351:1;7344:31;7394:4;7391:1;7384:15;7418:4;7415:1;7408:15;7434:127;7495:10;7490:3;7486:20;7483:1;7476:31;7526:4;7523:1;7516:15;7550:4;7547:1;7540:15;7755:127;7816:10;7811:3;7807:20;7804:1;7797:31;7847:4;7844:1;7837:15;7871:4;7868:1;7861:15;7887:135;7926:3;7947:17;;;7944:43;;7967:18;;:::i;:::-;-1:-1:-1;8014:1:142;8003:13;;7887:135::o;8027:461::-;8079:3;8117:5;8111:12;8144:6;8139:3;8132:19;8170:4;8199:2;8194:3;8190:12;8183:19;;8236:2;8229:5;8225:14;8257:1;8267:196;8281:6;8278:1;8275:13;8267:196;;;8346:13;;-1:-1:-1;;;;;;8342:40:142;8330:53;;8403:12;;;;8438:15;;;;8303:1;8296:9;8267:196;;;-1:-1:-1;8479:3:142;;8027:461;-1:-1:-1;;;;;8027:461:142:o;8493:1631::-;8763:4;8792:2;8832;8821:9;8817:18;8862:2;8851:9;8844:21;8885:6;8920;8914:13;8951:6;8943;8936:22;8989:3;8978:9;8974:19;8967:26;;9052:3;9042:6;9039:1;9035:14;9024:9;9020:30;9016:40;9002:54;;9075:4;9114:2;9106:6;9102:15;9135:1;9156;9166:786;9182:6;9177:3;9174:15;9166:786;;;9251:22;;;-1:-1:-1;;9247:37:142;9235:50;;9308:13;;9353:9;;-1:-1:-1;;;;;9349:35:142;9334:51;;9424:11;;;9418:18;9476:1;9459:19;;9449:170;;-1:-1:-1;;;9510:31:142;;9568:4;9565:1;9558:15;9600:4;9517:1;9590:15;9449:170;9639:15;;;9632:37;9692:4;9737:11;;;9731:18;9769:15;;;9762:27;;;9812:60;9856:15;;;9731:18;9812:60;:::i;:::-;9802:70;-1:-1:-1;;9930:12:142;;;;9895:15;;;;9208:1;9199:11;9166:786;;;-1:-1:-1;;;;;;;;287:31:142;;9988:18;;;275:44;-1:-1:-1;;10045:22:142;;;10038:4;10023:20;;10016:52;10085:33;10049:6;10103;10085:33;:::i;:::-;10077:41;8493:1631;-1:-1:-1;;;;;;;8493:1631:142:o;10129:258::-;10306:2;10295:9;10288:21;10269:4;10326:55;10377:2;10366:9;10362:18;10354:6;10326:55;:::i;10392:197::-;10430:3;10458:6;10499:2;10492:5;10488:14;10526:2;10517:7;10514:15;10511:41;;10532:18;;:::i;:::-;10581:1;10568:15;;10392:197;-1:-1:-1;;;10392:197:142:o;10594:136::-;10633:3;10661:5;10651:39;;10670:18;;:::i;:::-;-1:-1:-1;;;10706:18:142;;10594:136::o;10735:127::-;10796:10;10791:3;10787:20;10784:1;10777:31;10827:4;10824:1;10817:15;10851:4;10848:1;10841:15;10867:287;10996:3;11034:6;11028:13;11050:66;11109:6;11104:3;11097:4;11089:6;11085:17;11050:66;:::i;:::-;11132:16;;;;;10867:287;-1:-1:-1;;10867:287:142:o;11159:315::-;-1:-1:-1;;;;;11334:32:142;;11316:51;;11403:2;11398;11383:18;;11376:30;;;-1:-1:-1;;11423:45:142;;11449:18;;11441:6;11423:45;:::i;:::-;11415:53;11159:315;-1:-1:-1;;;;11159:315:142:o","linkReferences":{}},"methodIdentifiers":{"VERSION()":"ffa1ad74","_owner()":"b2bdfa7b","collateralVaultTemplate()":"77122d56","diamondCut((address,uint8,bytes4[])[],address,bytes)":"1f931c1c","gardensFeeReceiver()":"b8bed901","initialize(address)":"c4d66de8","nonce()":"affed0e0","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","strategyTemplate()":"5c94e4d2"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotAddFunctionToDiamondThatAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotAddSelectorsToZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveFunctionThatDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveImmutableFunction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionThatDoesNotExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotReplaceFunctionsFromFacetWithZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceImmutableFunction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DiamondAlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_functionSelector\",\"type\":\"bytes4\"}],\"name\":\"FunctionNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_action\",\"type\":\"uint8\"}],\"name\":\"IncorrectFacetCutAction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_initializationContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"InitializationFunctionReverted\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contractAddress\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_message\",\"type\":\"string\"}],\"name\":\"NoBytecodeAtAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"NoSelectorsProvidedForFacetForCut\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_contractOwner\",\"type\":\"address\"}],\"name\":\"NotContractOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"RemoveFacetAddressMustBeZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"indexed\":false,\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"DiamondCut\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"diamondCut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"params\":{\"_calldata\":\"A function call, including function selector and arguments _calldata is executed with delegatecall on _init\",\"_diamondCut\":\"Contains the facet addresses and function selectors\",\"_init\":\"The address of the contract or facet to execute _calldata\"}},\"proxiableUUID()\":{\"details\":\"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"notice\":\"Add/replace/remove any number of functions and optionally execute a function with delegatecall\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":\"RegistryFactoryDiamond\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"pkg/contracts/src/diamonds/BaseDiamond.sol\":{\"keccak256\":\"0xb91168bd5fc40b3b17e901917166fa56ec3f78d1dde4f4e21e855536db03c3f3\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://861adb0182acd9ec0f89cb496595adbcdd852ece0795550d4d4f11cba5e696da\",\"dweb:/ipfs/QmSHur1g5c57PJeoWkzPTHkYfi9SkGk3xXYy8E2ckd1A4w\"]},\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":{\"keccak256\":\"0x52572da9c33aa2702887775c01f0af708dc0b844778a581d6efb88d025d735d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2e46a430c134c307f39a2fb6e1982642d79a350a83db4a116b5f46fc0636a832\",\"dweb:/ipfs/QmcrD3dbGxt6ChgFphpnyMQojdVP4G9ktGaBGxPr1jKy62\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol\":{\"keccak256\":\"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb\",\"dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty\"]},\"pkg/contracts/src/diamonds/interfaces/IERC173.sol\":{\"keccak256\":\"0x001e07b0fbc894300b939d496ffb005abe398b5bc609802d319b8cdeafe5d36b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8e59f66879ef993892410cbe834b1d2dd34891f47066b7be601ff825b0748361\",\"dweb:/ipfs/QmZedQ668we8ohPPZF5tPP5gKpJ5n22h3FDFkoFT5VXpEu\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99\",\"dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotAddSelectorsToZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveFunctionThatDoesNotExist"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveImmutableFunction"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionThatDoesNotExists"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceImmutableFunction"},{"inputs":[],"type":"error","name":"DiamondAlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"_functionSelector","type":"bytes4"}],"type":"error","name":"FunctionNotFound"},{"inputs":[{"internalType":"uint8","name":"_action","type":"uint8"}],"type":"error","name":"IncorrectFacetCutAction"},{"inputs":[{"internalType":"address","name":"_initializationContractAddress","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"type":"error","name":"InitializationFunctionReverted"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"string","name":"_message","type":"string"}],"type":"error","name":"NoBytecodeAtAddress"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"NoSelectorsProvidedForFacetForCut"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_contractOwner","type":"address"}],"type":"error","name":"NotContractOwner"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"RemoveFacetAddressMustBeZeroAddress"},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}],"indexed":false},{"internalType":"address","name":"_init","type":"address","indexed":false},{"internalType":"bytes","name":"_calldata","type":"bytes","indexed":false}],"type":"event","name":"DiamondCut","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_init","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"diamondCut"},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"params":{"_calldata":"A function call, including function selector and arguments _calldata is executed with delegatecall on _init","_diamondCut":"Contains the facet addresses and function selectors","_init":"The address of the contract or facet to execute _calldata"}},"proxiableUUID()":{"details":"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy."}},"version":1},"userdoc":{"kind":"user","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"notice":"Add/replace/remove any number of functions and optionally execute a function with delegatecall"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":"RegistryFactoryDiamond"},"evmVersion":"paris","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"pkg/contracts/src/diamonds/BaseDiamond.sol":{"keccak256":"0xb91168bd5fc40b3b17e901917166fa56ec3f78d1dde4f4e21e855536db03c3f3","urls":["bzz-raw://861adb0182acd9ec0f89cb496595adbcdd852ece0795550d4d4f11cba5e696da","dweb:/ipfs/QmSHur1g5c57PJeoWkzPTHkYfi9SkGk3xXYy8E2ckd1A4w"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":{"keccak256":"0x52572da9c33aa2702887775c01f0af708dc0b844778a581d6efb88d025d735d5","urls":["bzz-raw://2e46a430c134c307f39a2fb6e1982642d79a350a83db4a116b5f46fc0636a832","dweb:/ipfs/QmcrD3dbGxt6ChgFphpnyMQojdVP4G9ktGaBGxPr1jKy62"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol":{"keccak256":"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972","urls":["bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb","dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IERC173.sol":{"keccak256":"0x001e07b0fbc894300b939d496ffb005abe398b5bc609802d319b8cdeafe5d36b","urls":["bzz-raw://8e59f66879ef993892410cbe834b1d2dd34891f47066b7be601ff825b0748361","dweb:/ipfs/QmZedQ668we8ohPPZF5tPP5gKpJ5n22h3FDFkoFT5VXpEu"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af","urls":["bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99","dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":73968,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":73970,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":73974,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap1","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":73976,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":73980,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap2","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73982,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73987,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73961_storage)"},{"astId":73989,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73991,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73993,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73995,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73999,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap3","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)73961_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73961_storage"},"t_struct(CommunityInfo)73961_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73958,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73960,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol","id":74001,"exportedSymbols":{"BaseDiamond":[73942],"CommunityInfo":[73961],"IDiamondCut":[75207],"IDiamondLoupe":[75248],"IERC173":[75282],"IERC1822Proxiable":[54984],"LibDiamond":[76015],"RegistryFactoryDiamond":[74000]},"nodeType":"SourceUnit","src":"42:1572:113","nodes":[{"id":73944,"nodeType":"PragmaDirective","src":"42:24:113","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73946,"nodeType":"ImportDirective","src":"68:46:113","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"./BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":74001,"sourceUnit":73943,"symbolAliases":[{"foreign":{"id":73945,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73942,"src":"76:11:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73948,"nodeType":"ImportDirective","src":"115:54:113","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"./libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":74001,"sourceUnit":76016,"symbolAliases":[{"foreign":{"id":73947,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76015,"src":"123:10:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73950,"nodeType":"ImportDirective","src":"170:57:113","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol","file":"./interfaces/IDiamondCut.sol","nameLocation":"-1:-1:-1","scope":74001,"sourceUnit":75208,"symbolAliases":[{"foreign":{"id":73949,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75207,"src":"178:11:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73952,"nodeType":"ImportDirective","src":"228:61:113","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol","file":"./interfaces/IDiamondLoupe.sol","nameLocation":"-1:-1:-1","scope":74001,"sourceUnit":75249,"symbolAliases":[{"foreign":{"id":73951,"name":"IDiamondLoupe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75248,"src":"236:13:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73954,"nodeType":"ImportDirective","src":"290:49:113","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IERC173.sol","file":"./interfaces/IERC173.sol","nameLocation":"-1:-1:-1","scope":74001,"sourceUnit":75283,"symbolAliases":[{"foreign":{"id":73953,"name":"IERC173","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75282,"src":"298:7:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73956,"nodeType":"ImportDirective","src":"394:88:113","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","file":"@openzeppelin/contracts/interfaces/draft-IERC1822.sol","nameLocation":"-1:-1:-1","scope":74001,"sourceUnit":54985,"symbolAliases":[{"foreign":{"id":73955,"name":"IERC1822Proxiable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54984,"src":"402:17:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73961,"nodeType":"StructDefinition","src":"531:57:113","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":73958,"mutability":"mutable","name":"fee","nameLocation":"566:3:113","nodeType":"VariableDeclaration","scope":73961,"src":"558:11:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73957,"name":"uint256","nodeType":"ElementaryTypeName","src":"558:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":73960,"mutability":"mutable","name":"valid","nameLocation":"580:5:113","nodeType":"VariableDeclaration","scope":73961,"src":"575:10:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73959,"name":"bool","nodeType":"ElementaryTypeName","src":"575:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"538:13:113","scope":74001,"visibility":"public"},{"id":74000,"nodeType":"ContractDefinition","src":"589:1024:113","nodes":[{"id":73966,"nodeType":"VariableDeclaration","src":"807:38:113","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"830:7:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":73964,"name":"string","nodeType":"ElementaryTypeName","src":"807:6:113","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":73965,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"840:5:113","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":73968,"nodeType":"VariableDeclaration","src":"1016:26:113","nodes":[],"constant":false,"mutability":"mutable","name":"_initialized","nameLocation":"1030:12:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":73967,"name":"uint8","nodeType":"ElementaryTypeName","src":"1016:5:113","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"private"},{"id":73970,"nodeType":"VariableDeclaration","src":"1048:26:113","nodes":[],"constant":false,"mutability":"mutable","name":"_initializing","nameLocation":"1061:13:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73969,"name":"bool","nodeType":"ElementaryTypeName","src":"1048:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"id":73974,"nodeType":"VariableDeclaration","src":"1080:26:113","nodes":[],"constant":false,"mutability":"mutable","name":"__gap1","nameLocation":"1100:6:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73971,"name":"uint256","nodeType":"ElementaryTypeName","src":"1080:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73973,"length":{"hexValue":"3530","id":73972,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1088:2:113","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1080:11:113","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"},{"id":73976,"nodeType":"VariableDeclaration","src":"1112:21:113","nodes":[],"constant":false,"functionSelector":"b2bdfa7b","mutability":"mutable","name":"_owner","nameLocation":"1127:6:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73975,"name":"address","nodeType":"ElementaryTypeName","src":"1112:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73980,"nodeType":"VariableDeclaration","src":"1139:26:113","nodes":[],"constant":false,"mutability":"mutable","name":"__gap2","nameLocation":"1159:6:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":73977,"name":"uint256","nodeType":"ElementaryTypeName","src":"1139:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73979,"length":{"hexValue":"3439","id":73978,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1147:2:113","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"1139:11:113","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"},{"id":73982,"nodeType":"VariableDeclaration","src":"1171:20:113","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"1186:5:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73981,"name":"uint256","nodeType":"ElementaryTypeName","src":"1171:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":73987,"nodeType":"VariableDeclaration","src":"1198:49:113","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"1232:15:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73961_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":73986,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":73983,"name":"address","nodeType":"ElementaryTypeName","src":"1206:7:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1198:33:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73961_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":73985,"nodeType":"UserDefinedTypeName","pathNode":{"id":73984,"name":"CommunityInfo","nameLocations":["1217:13:113"],"nodeType":"IdentifierPath","referencedDeclaration":73961,"src":"1217:13:113"},"referencedDeclaration":73961,"src":"1217:13:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73961_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":73989,"nodeType":"VariableDeclaration","src":"1253:33:113","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"1268:18:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73988,"name":"address","nodeType":"ElementaryTypeName","src":"1253:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73991,"nodeType":"VariableDeclaration","src":"1292:40:113","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"1307:25:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73990,"name":"address","nodeType":"ElementaryTypeName","src":"1292:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73993,"nodeType":"VariableDeclaration","src":"1338:31:113","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"1353:16:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73992,"name":"address","nodeType":"ElementaryTypeName","src":"1338:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73995,"nodeType":"VariableDeclaration","src":"1375:38:113","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"1390:23:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73994,"name":"address","nodeType":"ElementaryTypeName","src":"1375:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73999,"nodeType":"VariableDeclaration","src":"1419:26:113","nodes":[],"constant":false,"mutability":"mutable","name":"__gap3","nameLocation":"1439:6:113","scope":74000,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73996,"name":"uint256","nodeType":"ElementaryTypeName","src":"1419:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73998,"length":{"hexValue":"3530","id":73997,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1427:2:113","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1419:11:113","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73962,"name":"BaseDiamond","nameLocations":["624:11:113"],"nodeType":"IdentifierPath","referencedDeclaration":73942,"src":"624:11:113"},"id":73963,"nodeType":"InheritanceSpecifier","src":"624:11:113"}],"canonicalName":"RegistryFactoryDiamond","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74000,73942,75207,75188,54984],"name":"RegistryFactoryDiamond","nameLocation":"598:22:113","scope":74001,"usedErrors":[73817,73819,75296,75300,75305,75311,75315,75319,75324,75328,75332,75336,75340,75344,75348,75354]}],"license":"AGPL-3.0-only"},"id":113} \ No newline at end of file +{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"diamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"initializeOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"event","name":"DiamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","indexed":false,"internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","indexed":false,"internalType":"address"},{"name":"_calldata","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotAddSelectorsToZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotRemoveFunctionThatDoesNotExist","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotRemoveImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionThatDoesNotExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotReplaceImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"DiamondAlreadyInitialized","inputs":[]},{"type":"error","name":"FunctionNotFound","inputs":[{"name":"_functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"IncorrectFacetCutAction","inputs":[{"name":"_action","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InitializationFunctionReverted","inputs":[{"name":"_initializationContractAddress","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"NoBytecodeAtAddress","inputs":[{"name":"_contractAddress","type":"address","internalType":"address"},{"name":"_message","type":"string","internalType":"string"}]},{"type":"error","name":"NoSelectorsProvidedForFacetForCut","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]},{"type":"error","name":"NotContractOwner","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_contractOwner","type":"address","internalType":"address"}]},{"type":"error","name":"RemoveFacetAddressMustBeZeroAddress","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50611287806100206000396000f3fe60806040526004361061007a5760003560e01c806302c1d0b1146101115780631f931c1c1461014757806352d1902d146101675780635c94e4d2146101a457806377122d56146101c45780638c5f36bb146101e4578063affed0e014610204578063b2bdfa7b1461021a578063b8bed9011461023a57610081565b3661008157005b600080356001600160e01b03191681526000805160206111be833981519152602081905260409091205481906001600160a01b0316806100eb576000356001600160e01b031916604051630a82dd7360e31b81526004016100e29190610bfa565b60405180910390fd5b3660008037600080366000845af43d6000803e80801561010a573d6000f35b3d6000fd5b005b34801561011d57600080fd5b50606854610131906001600160a01b031681565b60405161013e9190610c0f565b60405180910390f35b34801561015357600080fd5b5061010f610162366004610c87565b61025a565b34801561017357600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b60405190815260200161013e565b3480156101b057600080fd5b50606954610131906001600160a01b031681565b3480156101d057600080fd5b50606a54610131906001600160a01b031681565b3480156101f057600080fd5b5061010f6101ff366004610d38565b6102b3565b34801561021057600080fd5b5061019660655481565b34801561022657600080fd5b50603354610131906001600160a01b031681565b34801561024657600080fd5b50606754610131906001600160a01b031681565b6102626102ed565b6102ac61026f8587610deb565b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061034692505050565b5050505050565b6102bb6104ed565b156102d957604051639289b96160e01b815260040160405180910390fd5b6102e28161050a565b6102ea61056a565b50565b6102f5610593565b600301546001600160a01b031633146103445733610311610593565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100e2565b565b60005b83518110156104a257600084828151811061036657610366610f2e565b6020026020010151604001519050600085838151811061038857610388610f2e565b602002602001015160000151905081516000036103ba578060405163e767f91f60e01b81526004016100e29190610c0f565b60008684815181106103ce576103ce610f2e565b6020026020010151602001519050600060028111156103ef576103ef610f44565b81600281111561040157610401610f44565b036104155761041082846105a5565b61048c565b600181600281111561042957610429610f44565b0361043857610410828461073c565b600281600281111561044c5761044c610f44565b0361045b5761041082846108ae565b80600281111561046d5761046d610f44565b604051633ff4d20f60e11b815260ff90911660048201526024016100e2565b505050808061049a90610f70565b915050610349565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb6738383836040516104d693929190610fd9565b60405180910390a16104e88282610b0c565b505050565b60006104f7610593565b60030154600160a01b900460ff16919050565b6000610514610593565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b6001610574610593565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b6000805160206111be83398151915290565b6001600160a01b0382166105ce57806040516302b8da0760e21b81526004016100e291906110d9565b60006105d8610593565b9050600081600101805490509050610608846040518060600160405280602481526020016111de60249139610bd2565b60005b83518110156102ac57600084828151811061062857610628610f2e565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b0316801561067b578160405163ebbf5d0760e01b81526004016100e29190610bfa565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff90930219169190911790558361072481611127565b9450505050808061073490610f70565b91505061060b565b6000610746610593565b90506001600160a01b038316610771578160405163cd98a96f60e01b81526004016100e291906110d9565b6107938360405180606001604052806028815260200161122a60289139610bd2565b60005b82518110156108a85760008382815181106107b3576107b3610f2e565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b03163081036108075781604051632901806d60e11b81526004016100e29190610bfa565b856001600160a01b0316816001600160a01b03160361083b5781604051631ac6ce8d60e11b81526004016100e29190610bfa565b6001600160a01b0381166108645781604051637479f93960e01b81526004016100e29190610bfa565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108a081610f70565b915050610796565b50505050565b60006108b8610593565b60018101549091506001600160a01b038416156108ea578360405163d091bc8160e01b81526004016100e29190610c0f565b60005b83518110156102ac57600084828151811061090a5761090a610f2e565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff16938201939093529092509061097b5781604051637a08a22d60e01b81526004016100e29190610bfa565b8051306001600160a01b03909116036109a95781604051630df5fd6160e31b81526004016100e29190610bfa565b836109b381611148565b94505083816020015161ffff1614610a915760008560010185815481106109dc576109dc610f2e565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a1f57610a1f610f2e565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aa457610aa461115f565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b0481610f70565b9150506108ed565b6001600160a01b038216610b1e575050565b610b408260405180606001604052806028815260200161120260289139610bd2565b600080836001600160a01b031683604051610b5b9190611175565b600060405180830381855af49150503d8060008114610b96576040519150601f19603f3d011682016040523d82523d6000602084013e610b9b565b606091505b5091509150816108a857805115610bb55780518082602001fd5b838360405163192105d760e01b81526004016100e2929190611191565b813b60008190036104e857828260405163919834b960e01b81526004016100e2929190611191565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610c3a57600080fd5b919050565b60008083601f840112610c5157600080fd5b5081356001600160401b03811115610c6857600080fd5b602083019150836020828501011115610c8057600080fd5b9250929050565b600080600080600060608688031215610c9f57600080fd5b85356001600160401b0380821115610cb657600080fd5b818801915088601f830112610cca57600080fd5b813581811115610cd957600080fd5b8960208260051b8501011115610cee57600080fd5b60208301975080965050610d0460208901610c23565b94506040880135915080821115610d1a57600080fd5b50610d2788828901610c3f565b969995985093965092949392505050565b600060208284031215610d4a57600080fd5b610d5382610c23565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610d9257610d92610d5a565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610dc057610dc0610d5a565b604052919050565b60006001600160401b03821115610de157610de1610d5a565b5060051b60200190565b6000610dfe610df984610dc8565b610d98565b83815260208082019190600586811b860136811115610e1c57600080fd5b865b81811015610f215780356001600160401b0380821115610e3e5760008081fd5b818a01915060608236031215610e545760008081fd5b610e5c610d70565b610e6583610c23565b81528683013560038110610e795760008081fd5b8188015260408381013583811115610e915760008081fd5b939093019236601f850112610ea857600092508283fd5b83359250610eb8610df984610dc8565b83815292871b84018801928881019036851115610ed55760008081fd5b948901945b84861015610f0a5785356001600160e01b031981168114610efb5760008081fd5b82529489019490890190610eda565b918301919091525088525050948301948301610e1e565b5092979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f8257610f82610f5a565b5060010190565b60005b83811015610fa4578181015183820152602001610f8c565b50506000910152565b60008151808452610fc5816020860160208601610f89565b601f01601f19169290920160200192915050565b60006060808301818452808751808352608092508286019150828160051b8701016020808b0160005b848110156110a957898403607f19018652815180516001600160a01b0316855283810151898601906003811061104857634e487b7160e01b600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b808310156110945783516001600160e01b031916825292860192600192909201919086019061106a565b50978501979550505090820190600101611002565b50506001600160a01b038a169088015286810360408801526110cb8189610fad565b9a9950505050505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561111b5783516001600160e01b031916835292840192918401916001016110f5565b50909695505050505050565b600061ffff80831681810361113e5761113e610f5a565b6001019392505050565b60008161115757611157610f5a565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251611187818460208701610f89565b9190910192915050565b6001600160a01b03831681526040602082018190526000906111b590830184610fad565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a264697066735822122023f46e62afc083e2ffdbc5542bf4d97526429215811a8140a833931931c907be64736f6c63430008130033","sourceMap":"255:1029:110:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361061007a5760003560e01c806302c1d0b1146101115780631f931c1c1461014757806352d1902d146101675780635c94e4d2146101a457806377122d56146101c45780638c5f36bb146101e4578063affed0e014610204578063b2bdfa7b1461021a578063b8bed9011461023a57610081565b3661008157005b600080356001600160e01b03191681526000805160206111be833981519152602081905260409091205481906001600160a01b0316806100eb576000356001600160e01b031916604051630a82dd7360e31b81526004016100e29190610bfa565b60405180910390fd5b3660008037600080366000845af43d6000803e80801561010a573d6000f35b3d6000fd5b005b34801561011d57600080fd5b50606854610131906001600160a01b031681565b60405161013e9190610c0f565b60405180910390f35b34801561015357600080fd5b5061010f610162366004610c87565b61025a565b34801561017357600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b60405190815260200161013e565b3480156101b057600080fd5b50606954610131906001600160a01b031681565b3480156101d057600080fd5b50606a54610131906001600160a01b031681565b3480156101f057600080fd5b5061010f6101ff366004610d38565b6102b3565b34801561021057600080fd5b5061019660655481565b34801561022657600080fd5b50603354610131906001600160a01b031681565b34801561024657600080fd5b50606754610131906001600160a01b031681565b6102626102ed565b6102ac61026f8587610deb565b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061034692505050565b5050505050565b6102bb6104ed565b156102d957604051639289b96160e01b815260040160405180910390fd5b6102e28161050a565b6102ea61056a565b50565b6102f5610593565b600301546001600160a01b031633146103445733610311610593565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100e2565b565b60005b83518110156104a257600084828151811061036657610366610f2e565b6020026020010151604001519050600085838151811061038857610388610f2e565b602002602001015160000151905081516000036103ba578060405163e767f91f60e01b81526004016100e29190610c0f565b60008684815181106103ce576103ce610f2e565b6020026020010151602001519050600060028111156103ef576103ef610f44565b81600281111561040157610401610f44565b036104155761041082846105a5565b61048c565b600181600281111561042957610429610f44565b0361043857610410828461073c565b600281600281111561044c5761044c610f44565b0361045b5761041082846108ae565b80600281111561046d5761046d610f44565b604051633ff4d20f60e11b815260ff90911660048201526024016100e2565b505050808061049a90610f70565b915050610349565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb6738383836040516104d693929190610fd9565b60405180910390a16104e88282610b0c565b505050565b60006104f7610593565b60030154600160a01b900460ff16919050565b6000610514610593565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b6001610574610593565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b6000805160206111be83398151915290565b6001600160a01b0382166105ce57806040516302b8da0760e21b81526004016100e291906110d9565b60006105d8610593565b9050600081600101805490509050610608846040518060600160405280602481526020016111de60249139610bd2565b60005b83518110156102ac57600084828151811061062857610628610f2e565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b0316801561067b578160405163ebbf5d0760e01b81526004016100e29190610bfa565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff90930219169190911790558361072481611127565b9450505050808061073490610f70565b91505061060b565b6000610746610593565b90506001600160a01b038316610771578160405163cd98a96f60e01b81526004016100e291906110d9565b6107938360405180606001604052806028815260200161122a60289139610bd2565b60005b82518110156108a85760008382815181106107b3576107b3610f2e565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b03163081036108075781604051632901806d60e11b81526004016100e29190610bfa565b856001600160a01b0316816001600160a01b03160361083b5781604051631ac6ce8d60e11b81526004016100e29190610bfa565b6001600160a01b0381166108645781604051637479f93960e01b81526004016100e29190610bfa565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108a081610f70565b915050610796565b50505050565b60006108b8610593565b60018101549091506001600160a01b038416156108ea578360405163d091bc8160e01b81526004016100e29190610c0f565b60005b83518110156102ac57600084828151811061090a5761090a610f2e565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff16938201939093529092509061097b5781604051637a08a22d60e01b81526004016100e29190610bfa565b8051306001600160a01b03909116036109a95781604051630df5fd6160e31b81526004016100e29190610bfa565b836109b381611148565b94505083816020015161ffff1614610a915760008560010185815481106109dc576109dc610f2e565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a1f57610a1f610f2e565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aa457610aa461115f565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b0481610f70565b9150506108ed565b6001600160a01b038216610b1e575050565b610b408260405180606001604052806028815260200161120260289139610bd2565b600080836001600160a01b031683604051610b5b9190611175565b600060405180830381855af49150503d8060008114610b96576040519150601f19603f3d011682016040523d82523d6000602084013e610b9b565b606091505b5091509150816108a857805115610bb55780518082602001fd5b838360405163192105d760e01b81526004016100e2929190611191565b813b60008190036104e857828260405163919834b960e01b81526004016100e2929190611191565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610c3a57600080fd5b919050565b60008083601f840112610c5157600080fd5b5081356001600160401b03811115610c6857600080fd5b602083019150836020828501011115610c8057600080fd5b9250929050565b600080600080600060608688031215610c9f57600080fd5b85356001600160401b0380821115610cb657600080fd5b818801915088601f830112610cca57600080fd5b813581811115610cd957600080fd5b8960208260051b8501011115610cee57600080fd5b60208301975080965050610d0460208901610c23565b94506040880135915080821115610d1a57600080fd5b50610d2788828901610c3f565b969995985093965092949392505050565b600060208284031215610d4a57600080fd5b610d5382610c23565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610d9257610d92610d5a565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610dc057610dc0610d5a565b604052919050565b60006001600160401b03821115610de157610de1610d5a565b5060051b60200190565b6000610dfe610df984610dc8565b610d98565b83815260208082019190600586811b860136811115610e1c57600080fd5b865b81811015610f215780356001600160401b0380821115610e3e5760008081fd5b818a01915060608236031215610e545760008081fd5b610e5c610d70565b610e6583610c23565b81528683013560038110610e795760008081fd5b8188015260408381013583811115610e915760008081fd5b939093019236601f850112610ea857600092508283fd5b83359250610eb8610df984610dc8565b83815292871b84018801928881019036851115610ed55760008081fd5b948901945b84861015610f0a5785356001600160e01b031981168114610efb5760008081fd5b82529489019490890190610eda565b918301919091525088525050948301948301610e1e565b5092979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f8257610f82610f5a565b5060010190565b60005b83811015610fa4578181015183820152602001610f8c565b50506000910152565b60008151808452610fc5816020860160208601610f89565b601f01601f19169290920160200192915050565b60006060808301818452808751808352608092508286019150828160051b8701016020808b0160005b848110156110a957898403607f19018652815180516001600160a01b0316855283810151898601906003811061104857634e487b7160e01b600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b808310156110945783516001600160e01b031916825292860192600192909201919086019061106a565b50978501979550505090820190600101611002565b50506001600160a01b038a169088015286810360408801526110cb8189610fad565b9a9950505050505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561111b5783516001600160e01b031916835292840192918401916001016110f5565b50909695505050505050565b600061ffff80831681810361113e5761113e610f5a565b6001019392505050565b60008161115757611157610f5a565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251611187818460208701610f89565b9190910192915050565b6001600160a01b03831681526040602082018190526000906111b590830184610fad565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a264697066735822122023f46e62afc083e2ffdbc5542bf4d97526429215811a8140a833931931c907be64736f6c63430008130033","sourceMap":"255:1029:110:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1319:36:109;1616:7;;-1:-1:-1;;;;;;1616:7:109;1581:43;;-1:-1:-1;;;;;;;;;;;1581:43:109;;;;;;;;:56;1585:45:119;;-1:-1:-1;;;;;1581:56:109;;1647:82;;1710:7;;-1:-1:-1;;;;;;1710:7:109;1693:25;;-1:-1:-1;;;1693:25:109;;;;;;;;:::i;:::-;;;;;;;;1647:82;1925:14;1922:1;1919;1906:34;2069:1;2066;2050:14;2047:1;2040:5;2033;2020:51;2141:16;2138:1;2135;2120:38;2245:6;2264:38;;;;2335:16;2332:1;2325:27;2264:38;2283:16;2280:1;2273:27;2238:116;;963:40:110;;;;;;;;;;-1:-1:-1;963:40:110;;;;-1:-1:-1;;;;;963:40:110;;;;;;;;;;:::i;:::-;;;;;;;;2982:234:109;;;;;;;;;;-1:-1:-1;2982:234:109;;;;;:::i;:::-;;:::i;2411:118::-;;;;;;;;;;-1:-1:-1;803:66:109;2411:118;;;2230:25:129;;;2218:2;2203:18;2411:118:109;2084:177:129;1009:31:110;;;;;;;;;;-1:-1:-1;1009:31:110;;;;-1:-1:-1;;;;;1009:31:110;;;1046:38;;;;;;;;;;-1:-1:-1;1046:38:110;;;;-1:-1:-1;;;;;1046:38:110;;;911:239:109;;;;;;;;;;-1:-1:-1;911:239:109;;;;;:::i;:::-;;:::i;842:20:110:-;;;;;;;;;;;;;;;;782:22;;;;;;;;;;-1:-1:-1;782:22:110;;;;-1:-1:-1;;;;;782:22:110;;;924:33;;;;;;;;;;-1:-1:-1;924:33:110;;;;-1:-1:-1;;;;;924:33:110;;;2982:234:109;3112:35;:33;:35::i;:::-;3157:52;;3179:11;;3157:52;:::i;:::-;3192:5;3199:9;;3157:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3157:21:109;;-1:-1:-1;;;3157:52:109:i;:::-;2982:234;;;;;:::o;911:239::-;975:26;:24;:26::i;:::-;971:91;;;1024:27;;-1:-1:-1;;;1024:27:109;;;;;;;;;;;971:91;1071:35;1099:6;1071:27;:35::i;:::-;1116:27;:25;:27::i;:::-;911:239;:::o;3144:206:119:-;3220:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;;;3220:30:119;3206:10;:44;3202:142;;3290:10;3302:16;:14;:16::i;:::-;:30;;;3273:60;;-1:-1:-1;;;;;;3273:60:119;;-1:-1:-1;;;;;6467:15:129;;;3273:60:119;;;6449:34:129;3302:30:119;;6499:18:129;;;6492:43;6384:18;;3273:60:119;6237:304:129;3202:142:119;3144:206::o;3494:1179::-;3620:18;3615:948;3653:11;:18;3640:10;:31;3615:948;;;3701:33;3737:11;3749:10;3737:23;;;;;;;;:::i;:::-;;;;;;;:41;;;3701:77;;3792:20;3815:11;3827:10;3815:23;;;;;;;;:::i;:::-;;;;;;;:36;;;3792:59;;3869:17;:24;3897:1;3869:29;3865:122;;3959:12;3925:47;;-1:-1:-1;;;3925:47:119;;;;;;;;:::i;3865:122::-;4000:33;4036:11;4048:10;4036:23;;;;;;;;:::i;:::-;;;;;;;:30;;;4000:66;;4094:27;4084:37;;;;;;;;:::i;:::-;:6;:37;;;;;;;;:::i;:::-;;4080:473;;4141:45;4154:12;4168:17;4141:12;:45::i;:::-;4080:473;;;4221:31;4211:6;:41;;;;;;;;:::i;:::-;;4207:346;;4272:49;4289:12;4303:17;4272:16;:49::i;4207:346::-;4356:30;4346:6;:40;;;;;;;;:::i;:::-;;4342:211;;4406:48;4422:12;4436:17;4406:15;:48::i;4342:211::-;4530:6;4524:13;;;;;;;;:::i;:::-;4500:38;;-1:-1:-1;;;4500:38:119;;6982:4:129;6970:17;;;4500:38:119;;;6952:36:129;6925:18;;4500:38:119;6810:184:129;4342:211:119;3687:876;;;3673:12;;;;;:::i;:::-;;;;3615:948;;;;4577:41;4588:11;4601:5;4608:9;4577:41;;;;;;;;:::i;:::-;;;;;;;;4628:38;4649:5;4656:9;4628:20;:38::i;:::-;3494:1179;;;:::o;2435:107::-;2483:4;2505:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;2505:30:119;;;;;;-1:-1:-1;2435:107:119:o;2732:264::-;2796:25;2824:16;:14;:16::i;:::-;2874;;;;;-1:-1:-1;;;;;2900:28:119;;;-1:-1:-1;;;;;;2900:28:119;;;;;;;2943:46;;2796:44;;-1:-1:-1;2874:16:119;;;;2943:46;;2850:21;;2943:46;2786:210;;2732:264;:::o;2547:89::-;2625:4;2592:16;:14;:16::i;:::-;:30;;:37;;;;;-1:-1:-1;;;2592:37:119;-1:-1:-1;;;;2592:37:119;;;;;;;;;2547:89::o;2232:197::-;-1:-1:-1;;;;;;;;;;;1585:45:119;2232:197::o;4679:1026::-;-1:-1:-1;;;;;4783:27:119;;4779:116;;4865:18;4833:51;;-1:-1:-1;;;4833:51:119;;;;;;;;:::i;4779:116::-;4904:25;4932:16;:14;:16::i;:::-;4904:44;;4958:20;4988:2;:12;;:19;;;;4958:50;;5018:77;5041:13;5018:77;;;;;;;;;;;;;;;;;:22;:77::i;:::-;5110:21;5105:594;5149:18;:25;5133:13;:41;5105:594;;;5207:15;5225:18;5244:13;5225:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;5298:44:119;;5272:23;5298:44;;;;;;;;;;;:57;5225:33;;-1:-1:-1;;;;;;5298:57:119;5373:29;;5369:128;;5473:8;5429:53;;-1:-1:-1;;;5429:53:119;;;;;;;;:::i;5369:128::-;5557:61;;;;;;;;-1:-1:-1;;;;;5557:61:119;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;5510:44:119;;-1:-1:-1;5510:44:119;;;;;;;;;:108;;;;;;;;;-1:-1:-1;;;5510:108:119;-1:-1:-1;;;;;;5510:108:119;;;;;;;;;;;;;;;;5632:12;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5510:108;5632:27;;;;;;;;;;;;;;;;5604:13;5673:15;5604:13;5673:15;:::i;:::-;;;;5193:506;;5176:15;;;;;:::i;:::-;;;;5105:594;;5711:1315;5815:25;5843:16;:14;:16::i;:::-;5815:44;-1:-1:-1;;;;;;5873:27:119;;5869:131;;5970:18;5923:66;;-1:-1:-1;;;5923:66:119;;;;;;;;:::i;5869:131::-;6009:81;6032:13;6009:81;;;;;;;;;;;;;;;;;:22;:81::i;:::-;6105:21;6100:920;6144:18;:25;6128:13;:41;6100:920;;;6202:15;6220:18;6239:13;6220:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;6293:44:119;;6267:23;6293:44;;;;;;;;;;;:57;6220:33;;-1:-1:-1;;;;;;6293:57:119;6502:4;6475:32;;6471:118;;6565:8;6534:40;;-1:-1:-1;;;6534:40:119;;;;;;;;:::i;6471:118::-;6625:13;-1:-1:-1;;;;;6606:32:119;:15;-1:-1:-1;;;;;6606:32:119;;6602:144;;6722:8;6665:66;;-1:-1:-1;;;6665:66:119;;;;;;;;:::i;6602:144::-;-1:-1:-1;;;;;6763:29:119;;6759:123;;6858:8;6819:48;;-1:-1:-1;;;6819:48:119;;;;;;;;:::i;6759:123::-;-1:-1:-1;;;;;;;6936:44:119;:34;:44;;;;;;;;;;:73;;-1:-1:-1;;;;;;6936:73:119;-1:-1:-1;;;;;6936:73:119;;;;;6171:15;;;;:::i;:::-;;;;6100:920;;;;5805:1221;5711:1315;;:::o;7032:1713::-;7135:25;7163:16;:14;:16::i;:::-;7213:12;;;:19;7135:44;;-1:-1:-1;;;;;;7246:27:119;;;7242:115;;7332:13;7296:50;;-1:-1:-1;;;7296:50:119;;;;;;;;:::i;7242:115::-;7371:21;7366:1373;7410:18;:25;7394:13;:41;7366:1373;;;7468:15;7486:18;7505:13;7486:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;7625:44:119;;7533:73;7625:44;;;;;;;;;;;7533:136;;;;;;;;;-1:-1:-1;;;;;7533:136:119;;;;;-1:-1:-1;;;7533:136:119;;;;;;;;;;;;7486:33;;-1:-1:-1;7533:136:119;7683:153;;7812:8;7775:46;;-1:-1:-1;;;7775:46:119;;;;;;;;:::i;7683:153::-;7947:47;;8006:4;-1:-1:-1;;;;;7947:64:119;;;;7943:149;;8068:8;8038:39;;-1:-1:-1;;;8038:39:119;;;;;;;;:::i;7943:149::-;8156:15;;;;:::i;:::-;;;;8244:13;8189:34;:51;;;:68;;;8185:411;;8277:19;8299:2;:12;;8312:13;8299:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;8277:49;;8412:12;8344:2;:12;;8357:34;:51;;;8344:65;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:80;;;:65;;;;;;:80;;;;;;;;;;;;;;;;;;;;;;8530:51;;;;-1:-1:-1;;;;;;8442:48:119;;;;;;;;;;;;;:139;;-1:-1:-1;;;;8442:139:119;-1:-1:-1;;;8442:139:119;;;;;;;;;;;;;;8185:411;8645:2;:12;;:18;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;8645:18:119;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8684:44:119;;;;;;;;;-1:-1:-1;8684:44:119;;;8677:51;;-1:-1:-1;;;;;;8677:51:119;;;7437:15;;;;:::i;:::-;;;;7366:1373;;8751:734;-1:-1:-1;;;;;8843:19:119;;8839:56;;8751:734;;:::o;8839:56::-;8904:73;8927:5;8904:73;;;;;;;;;;;;;;;;;:22;:73::i;:::-;8988:12;9002:18;9024:5;-1:-1:-1;;;;;9024:18:119;9043:9;9024:29;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8987:66;;;;9068:7;9063:416;;9095:12;;:16;9091:378;;9277:5;9271:12;9327:15;9319:5;9315:2;9311:14;9304:39;9091:378;9437:5;9444:9;9406:48;;-1:-1:-1;;;9406:48:119;;;;;;;;;:::i;9491:320::-;9664:22;;9595:20;9709:17;;;9705:100;;9769:9;9780:13;9749:45;;-1:-1:-1;;;9749:45:119;;;;;;;;;:::i;14:202:129:-;-1:-1:-1;;;;;;176:33:129;;;;158:52;;146:2;131:18;;14:202::o;330:203::-;-1:-1:-1;;;;;494:32:129;;;;476:51;;464:2;449:18;;330:203::o;538:173::-;606:20;;-1:-1:-1;;;;;655:31:129;;645:42;;635:70;;701:1;698;691:12;635:70;538:173;;;:::o;716:347::-;767:8;777:6;831:3;824:4;816:6;812:17;808:27;798:55;;849:1;846;839:12;798:55;-1:-1:-1;872:20:129;;-1:-1:-1;;;;;904:30:129;;901:50;;;947:1;944;937:12;901:50;984:4;976:6;972:17;960:29;;1036:3;1029:4;1020:6;1012;1008:19;1004:30;1001:39;998:59;;;1053:1;1050;1043:12;998:59;716:347;;;;;:::o;1068:1011::-;1212:6;1220;1228;1236;1244;1297:2;1285:9;1276:7;1272:23;1268:32;1265:52;;;1313:1;1310;1303:12;1265:52;1340:23;;-1:-1:-1;;;;;1412:14:129;;;1409:34;;;1439:1;1436;1429:12;1409:34;1477:6;1466:9;1462:22;1452:32;;1522:7;1515:4;1511:2;1507:13;1503:27;1493:55;;1544:1;1541;1534:12;1493:55;1584:2;1571:16;1610:2;1602:6;1599:14;1596:34;;;1626:1;1623;1616:12;1596:34;1681:7;1674:4;1664:6;1661:1;1657:14;1653:2;1649:23;1645:34;1642:47;1639:67;;;1702:1;1699;1692:12;1639:67;1733:4;1729:2;1725:13;1715:23;;1757:6;1747:16;;;1782:40;1816:4;1805:9;1801:20;1782:40;:::i;:::-;1772:50;;1875:2;1864:9;1860:18;1847:32;1831:48;;1904:2;1894:8;1891:16;1888:36;;;1920:1;1917;1910:12;1888:36;;1959:60;2011:7;2000:8;1989:9;1985:24;1959:60;:::i;:::-;1068:1011;;;;-1:-1:-1;1068:1011:129;;-1:-1:-1;2038:8:129;;1933:86;1068:1011;-1:-1:-1;;;1068:1011:129:o;2266:186::-;2325:6;2378:2;2366:9;2357:7;2353:23;2349:32;2346:52;;;2394:1;2391;2384:12;2346:52;2417:29;2436:9;2417:29;:::i;:::-;2407:39;2266:186;-1:-1:-1;;;2266:186:129:o;2639:127::-;2700:10;2695:3;2691:20;2688:1;2681:31;2731:4;2728:1;2721:15;2755:4;2752:1;2745:15;2771:253;2843:2;2837:9;2885:4;2873:17;;-1:-1:-1;;;;;2905:34:129;;2941:22;;;2902:62;2899:88;;;2967:18;;:::i;:::-;3003:2;2996:22;2771:253;:::o;3029:275::-;3100:2;3094:9;3165:2;3146:13;;-1:-1:-1;;3142:27:129;3130:40;;-1:-1:-1;;;;;3185:34:129;;3221:22;;;3182:62;3179:88;;;3247:18;;:::i;:::-;3283:2;3276:22;3029:275;;-1:-1:-1;3029:275:129:o;3309:191::-;3377:4;-1:-1:-1;;;;;3399:30:129;;3396:56;;;3432:18;;:::i;:::-;-1:-1:-1;3477:1:129;3473:14;3489:4;3469:25;;3309:191::o;3505:2727::-;3677:9;3712:72;3728:55;3776:6;3728:55;:::i;:::-;3712:72;:::i;:::-;3818:19;;;3856:4;3876:12;;;;3806:3;3907:1;3942:15;;;3931:27;;3981:14;3970:26;;3967:46;;;4009:1;4006;3999:12;3967:46;4033:5;4047:2152;4063:6;4058:3;4055:15;4047:2152;;;4136:17;;-1:-1:-1;;;;;4210:19:129;;;4207:109;;;4270:1;4299:2;4295;4288:14;4207:109;4350:11;4343:5;4339:23;4329:33;;4407:4;4402:2;4386:14;4382:23;4378:34;4375:124;;;4453:1;4482:2;4478;4471:14;4375:124;4527:22;;:::i;:::-;4578;4597:2;4578:22;:::i;:::-;4569:7;4562:39;4650:2;4646;4642:11;4629:25;4689:1;4680:7;4677:14;4667:112;;4733:1;4762:2;4758;4751:14;4667:112;4799:16;;;4792:33;4848:2;4890:11;;;4877:25;4918:14;;;4915:104;;;4973:1;5002:2;4998;4991:14;4915:104;5043:15;;;;;5101:14;5094:4;5085:14;;5081:35;5071:136;;5159:1;5148:12;;5189:3;5184;5177:16;5071:136;5244:3;5231:17;5220:28;;5274:69;5290:52;5338:3;5290:52;:::i;5274:69::-;5387:18;;;5483:12;;;5474:22;;5470:31;;;5427:14;;;;5530;5517:28;;5514:121;;;5587:1;5617:3;5612;5605:16;5514:121;5661:12;;;;5686:394;5704:8;5697:5;5694:19;5686:394;;;5787:19;;-1:-1:-1;;;;;;5845:34:129;;5833:47;;5823:164;;5931:1;5965:3;5960;5953:16;5823:164;6004:22;;5725:14;;;;6052;;;;5686:394;;;6100:16;;;6093:31;;;;-1:-1:-1;6137:20:129;;-1:-1:-1;;6177:12:129;;;;4080;;4047:2152;;;-1:-1:-1;6221:5:129;;3505:2727;-1:-1:-1;;;;;;;3505:2727:129:o;6546:127::-;6607:10;6602:3;6598:20;6595:1;6588:31;6638:4;6635:1;6628:15;6662:4;6659:1;6652:15;6678:127;6739:10;6734:3;6730:20;6727:1;6720:31;6770:4;6767:1;6760:15;6794:4;6791:1;6784:15;6999:127;7060:10;7055:3;7051:20;7048:1;7041:31;7091:4;7088:1;7081:15;7115:4;7112:1;7105:15;7131:135;7170:3;7191:17;;;7188:43;;7211:18;;:::i;:::-;-1:-1:-1;7258:1:129;7247:13;;7131:135::o;7271:250::-;7356:1;7366:113;7380:6;7377:1;7374:13;7366:113;;;7456:11;;;7450:18;7437:11;;;7430:39;7402:2;7395:10;7366:113;;;-1:-1:-1;;7513:1:129;7495:16;;7488:27;7271:250::o;7526:270::-;7567:3;7605:5;7599:12;7632:6;7627:3;7620:19;7648:76;7717:6;7710:4;7705:3;7701:14;7694:4;7687:5;7683:16;7648:76;:::i;:::-;7778:2;7757:15;-1:-1:-1;;7753:29:129;7744:39;;;;7785:4;7740:50;;7526:270;-1:-1:-1;;7526:270:129:o;7801:2092::-;8071:4;8100:2;8140;8129:9;8125:18;8170:2;8159:9;8152:21;8193:6;8228;8222:13;8259:6;8251;8244:22;8285:3;8275:13;;8319:2;8308:9;8304:18;8297:25;;8381:2;8371:6;8368:1;8364:14;8353:9;8349:30;8345:39;8403:4;8442:2;8434:6;8430:15;8463:1;8473:1249;8487:6;8484:1;8481:13;8473:1249;;;8552:22;;;-1:-1:-1;;8548:37:129;8536:50;;8609:13;;8696:9;;-1:-1:-1;;;;;8692:35:129;8677:51;;8767:11;;;8761:18;8649:15;;;;8819:1;8802:19;;8792:170;;8872:10;8867:3;8863:20;8860:1;8853:31;8911:4;8908:1;8901:15;8943:4;8940:1;8933:15;8792:170;8982:15;;;8975:37;9035:4;9080:11;;;9074:18;9112:15;;;9105:27;;;9193:21;;9227:24;;;;9317:23;;;;-1:-1:-1;;9273:15:129;;;;9378:236;9394:8;9389:3;9386:17;9378:236;;;9475:15;;-1:-1:-1;;;;;;9471:42:129;9457:57;;9583:17;;;;9422:1;9413:11;;;;;9540:14;;;;9378:236;;;-1:-1:-1;9700:12:129;;;;9637:5;-1:-1:-1;;;9665:15:129;;;;8509:1;8502:9;8473:1249;;;-1:-1:-1;;;;;;;287:31:129;;9758:18;;;275:44;9815:22;;;9808:4;9793:20;;9786:52;9855:32;9819:6;9872;9855:32;:::i;:::-;9847:40;7801:2092;-1:-1:-1;;;;;;;;;;7801:2092:129:o;9898:657::-;10067:2;10119:21;;;10189:13;;10092:18;;;10211:22;;;10038:4;;10067:2;10290:15;;;;10264:2;10249:18;;;10038:4;10333:196;10347:6;10344:1;10341:13;10333:196;;;10412:13;;-1:-1:-1;;;;;;10408:40:129;10396:53;;10504:15;;;;10469:12;;;;10369:1;10362:9;10333:196;;;-1:-1:-1;10546:3:129;;9898:657;-1:-1:-1;;;;;;9898:657:129:o;10560:197::-;10598:3;10626:6;10667:2;10660:5;10656:14;10694:2;10685:7;10682:15;10679:41;;10700:18;;:::i;:::-;10749:1;10736:15;;10560:197;-1:-1:-1;;;10560:197:129:o;10762:136::-;10801:3;10829:5;10819:39;;10838:18;;:::i;:::-;-1:-1:-1;;;10874:18:129;;10762:136::o;10903:127::-;10964:10;10959:3;10955:20;10952:1;10945:31;10995:4;10992:1;10985:15;11019:4;11016:1;11009:15;11035:287;11164:3;11202:6;11196:13;11218:66;11277:6;11272:3;11265:4;11257:6;11253:17;11218:66;:::i;:::-;11300:16;;;;;11035:287;-1:-1:-1;;11035:287:129:o;11327:314::-;-1:-1:-1;;;;;11502:32:129;;11484:51;;11571:2;11566;11551:18;;11544:30;;;-1:-1:-1;;11591:44:129;;11616:18;;11608:6;11591:44;:::i;:::-;11583:52;11327:314;-1:-1:-1;;;;11327:314:129:o","linkReferences":{}},"methodIdentifiers":{"_owner()":"b2bdfa7b","collateralVaultTemplate()":"77122d56","diamondCut((address,uint8,bytes4[])[],address,bytes)":"1f931c1c","gardensFeeReceiver()":"b8bed901","initializeOwner(address)":"8c5f36bb","nonce()":"affed0e0","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","strategyTemplate()":"5c94e4d2"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotAddFunctionToDiamondThatAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotAddSelectorsToZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveFunctionThatDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveImmutableFunction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionThatDoesNotExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotReplaceFunctionsFromFacetWithZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceImmutableFunction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DiamondAlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_functionSelector\",\"type\":\"bytes4\"}],\"name\":\"FunctionNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_action\",\"type\":\"uint8\"}],\"name\":\"IncorrectFacetCutAction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_initializationContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"InitializationFunctionReverted\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contractAddress\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_message\",\"type\":\"string\"}],\"name\":\"NoBytecodeAtAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"NoSelectorsProvidedForFacetForCut\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_contractOwner\",\"type\":\"address\"}],\"name\":\"NotContractOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"RemoveFacetAddressMustBeZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"indexed\":false,\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"DiamondCut\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"diamondCut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initializeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"params\":{\"_calldata\":\"A function call, including function selector and arguments _calldata is executed with delegatecall on _init\",\"_diamondCut\":\"Contains the facet addresses and function selectors\",\"_init\":\"The address of the contract or facet to execute _calldata\"}},\"proxiableUUID()\":{\"details\":\"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"notice\":\"Add/replace/remove any number of functions and optionally execute a function with delegatecall\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":\"RegistryFactoryDiamond\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"pkg/contracts/src/diamonds/BaseDiamond.sol\":{\"keccak256\":\"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303\",\"dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU\"]},\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":{\"keccak256\":\"0xc1ec04abe147dffbc963a2529f7ccc0d25c0ce1e9abf4f09b13f3a2101da5b38\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ce4b0a7eb89fc40611f04d2db03e741b5aaee36002c6237da9a36e4e7fffedd9\",\"dweb:/ipfs/QmS4iFdTqPrMJpNWrohcYnM6F8PiLiAtfCtcLEahxtwdNQ\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99\",\"dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotAddSelectorsToZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveFunctionThatDoesNotExist"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveImmutableFunction"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionThatDoesNotExists"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceImmutableFunction"},{"inputs":[],"type":"error","name":"DiamondAlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"_functionSelector","type":"bytes4"}],"type":"error","name":"FunctionNotFound"},{"inputs":[{"internalType":"uint8","name":"_action","type":"uint8"}],"type":"error","name":"IncorrectFacetCutAction"},{"inputs":[{"internalType":"address","name":"_initializationContractAddress","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"type":"error","name":"InitializationFunctionReverted"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"string","name":"_message","type":"string"}],"type":"error","name":"NoBytecodeAtAddress"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"NoSelectorsProvidedForFacetForCut"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_contractOwner","type":"address"}],"type":"error","name":"NotContractOwner"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"RemoveFacetAddressMustBeZeroAddress"},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}],"indexed":false},{"internalType":"address","name":"_init","type":"address","indexed":false},{"internalType":"bytes","name":"_calldata","type":"bytes","indexed":false}],"type":"event","name":"DiamondCut","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_init","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"diamondCut"},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeOwner"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"params":{"_calldata":"A function call, including function selector and arguments _calldata is executed with delegatecall on _init","_diamondCut":"Contains the facet addresses and function selectors","_init":"The address of the contract or facet to execute _calldata"}},"proxiableUUID()":{"details":"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy."}},"version":1},"userdoc":{"kind":"user","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"notice":"Add/replace/remove any number of functions and optionally execute a function with delegatecall"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":"RegistryFactoryDiamond"},"evmVersion":"paris","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"pkg/contracts/src/diamonds/BaseDiamond.sol":{"keccak256":"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8","urls":["bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303","dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":{"keccak256":"0xc1ec04abe147dffbc963a2529f7ccc0d25c0ce1e9abf4f09b13f3a2101da5b38","urls":["bzz-raw://ce4b0a7eb89fc40611f04d2db03e741b5aaee36002c6237da9a36e4e7fffedd9","dweb:/ipfs/QmS4iFdTqPrMJpNWrohcYnM6F8PiLiAtfCtcLEahxtwdNQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af","urls":["bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99","dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":73429,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":73431,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":73435,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap1","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":73437,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":73441,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap2","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73443,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73448,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73425_storage)"},{"astId":73450,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73452,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73454,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73456,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73460,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap3","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)73425_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73425_storage"},"t_struct(CommunityInfo)73425_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73422,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73424,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol","id":73462,"exportedSymbols":{"BaseDiamond":[73414],"CommunityInfo":[73425],"LibDiamond":[75008],"RegistryFactoryDiamond":[73461]},"nodeType":"SourceUnit","src":"42:1243:110","nodes":[{"id":73416,"nodeType":"PragmaDirective","src":"42:24:110","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73418,"nodeType":"ImportDirective","src":"68:58:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"@src/diamonds/BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":73462,"sourceUnit":73415,"symbolAliases":[{"foreign":{"id":73417,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73414,"src":"76:11:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73420,"nodeType":"ImportDirective","src":"127:66:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"@src/diamonds/libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":73462,"sourceUnit":75009,"symbolAliases":[{"foreign":{"id":73419,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75008,"src":"135:10:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73425,"nodeType":"StructDefinition","src":"196:57:110","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":73422,"mutability":"mutable","name":"fee","nameLocation":"231:3:110","nodeType":"VariableDeclaration","scope":73425,"src":"223:11:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73421,"name":"uint256","nodeType":"ElementaryTypeName","src":"223:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":73424,"mutability":"mutable","name":"valid","nameLocation":"245:5:110","nodeType":"VariableDeclaration","scope":73425,"src":"240:10:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73423,"name":"bool","nodeType":"ElementaryTypeName","src":"240:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"203:13:110","scope":73462,"visibility":"public"},{"id":73461,"nodeType":"ContractDefinition","src":"255:1029:110","nodes":[{"id":73429,"nodeType":"VariableDeclaration","src":"685:27:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initialized","nameLocation":"700:12:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":73428,"name":"uint8","nodeType":"ElementaryTypeName","src":"685:5:110","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"private"},{"id":73431,"nodeType":"VariableDeclaration","src":"718:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initializing","nameLocation":"731:13:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73430,"name":"bool","nodeType":"ElementaryTypeName","src":"718:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"id":73435,"nodeType":"VariableDeclaration","src":"750:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap1","nameLocation":"770:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73432,"name":"uint256","nodeType":"ElementaryTypeName","src":"750:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73434,"length":{"hexValue":"3530","id":73433,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"758:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"750:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"},{"id":73437,"nodeType":"VariableDeclaration","src":"782:22:110","nodes":[],"constant":false,"functionSelector":"b2bdfa7b","mutability":"mutable","name":"_owner","nameLocation":"798:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73436,"name":"address","nodeType":"ElementaryTypeName","src":"782:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73441,"nodeType":"VariableDeclaration","src":"810:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap2","nameLocation":"830:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":73438,"name":"uint256","nodeType":"ElementaryTypeName","src":"810:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73440,"length":{"hexValue":"3439","id":73439,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"818:2:110","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"810:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"},{"id":73443,"nodeType":"VariableDeclaration","src":"842:20:110","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"857:5:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73442,"name":"uint256","nodeType":"ElementaryTypeName","src":"842:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":73448,"nodeType":"VariableDeclaration","src":"869:49:110","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"903:15:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73425_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":73447,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":73444,"name":"address","nodeType":"ElementaryTypeName","src":"877:7:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"869:33:110","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73425_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":73446,"nodeType":"UserDefinedTypeName","pathNode":{"id":73445,"name":"CommunityInfo","nameLocations":["888:13:110"],"nodeType":"IdentifierPath","referencedDeclaration":73425,"src":"888:13:110"},"referencedDeclaration":73425,"src":"888:13:110","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73425_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":73450,"nodeType":"VariableDeclaration","src":"924:33:110","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"939:18:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73449,"name":"address","nodeType":"ElementaryTypeName","src":"924:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73452,"nodeType":"VariableDeclaration","src":"963:40:110","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"978:25:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73451,"name":"address","nodeType":"ElementaryTypeName","src":"963:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73454,"nodeType":"VariableDeclaration","src":"1009:31:110","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"1024:16:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73453,"name":"address","nodeType":"ElementaryTypeName","src":"1009:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73456,"nodeType":"VariableDeclaration","src":"1046:38:110","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"1061:23:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73455,"name":"address","nodeType":"ElementaryTypeName","src":"1046:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73460,"nodeType":"VariableDeclaration","src":"1090:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap3","nameLocation":"1110:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73457,"name":"uint256","nodeType":"ElementaryTypeName","src":"1090:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73459,"length":{"hexValue":"3530","id":73458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1098:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1090:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73426,"name":"BaseDiamond","nameLocations":["290:11:110"],"nodeType":"IdentifierPath","referencedDeclaration":73414,"src":"290:11:110"},"id":73427,"nodeType":"InheritanceSpecifier","src":"290:11:110"}],"canonicalName":"RegistryFactoryDiamond","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[73461,73414,74223,74204,54984],"name":"RegistryFactoryDiamond","nameLocation":"264:22:110","scope":73462,"usedErrors":[73289,73291,74289,74293,74298,74304,74308,74312,74317,74321,74325,74329,74333,74337,74341,74347]}],"license":"AGPL-3.0-only"},"id":110} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json b/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json index da3e364d..c0a8d751 100644 --- a/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json +++ b/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV3","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161213461004c600039600081816107c20152818161080501528181610896015281816108d9015261095e01526121346000f3fe608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da57806329b6eca914620001ff5780633101cfcb14620002245780633659cfe614620002495780634f1ef286146200026e57806352d1902d14620002855780635a2c8ace146200029d5780635c94e4d214620002c25780635decae0214620002e4578063715018a6146200030957806377122d5614620003215780638279c7db14620003435780638da5cb5b1462000368578063987435be1462000380578063affed0e014620003a0578063b0d3713a14620003b8578063b5b3ca2c14620003dd578063b8bed9011462000402578063beb331a31462000424578063c4d66de81462000449578063f2fde38b146200046e578063f5016b5e1462000493575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b604051620001769190620013c2565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013fe565b620004e4565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d23660046200141e565b6200054a565b005b348015620001e757600080fd5b50620001d8620001f9366004620013fe565b620006b5565b3480156200020c57600080fd5b50620001d86200021e366004620013fe565b620006e1565b3480156200023157600080fd5b50620001d862000243366004620013fe565b62000777565b3480156200025657600080fd5b50620001d862000268366004620013fe565b620007b8565b620001d86200027f36600462001558565b6200088c565b3480156200029257600080fd5b50620001a462000951565b348015620002aa57600080fd5b50620001d8620002bc366004620015d3565b62000a02565b348015620002cf57600080fd5b5060695462000167906001600160a01b031681565b348015620002f157600080fd5b50620001d862000303366004620013fe565b62000a6c565b3480156200031657600080fd5b50620001d862000a98565b3480156200032e57600080fd5b50606a5462000167906001600160a01b031681565b3480156200035057600080fd5b50620001d862000362366004620013fe565b62000ab0565b3480156200037557600080fd5b506200016762000b0c565b3480156200038d57600080fd5b506067546001600160a01b031662000167565b348015620003ad57600080fd5b50620001a460655481565b348015620003c557600080fd5b50620001d8620003d7366004620013fe565b62000ba9565b348015620003ea57600080fd5b50620001d8620003fc3660046200160d565b62000bd5565b3480156200040f57600080fd5b5060675462000167906001600160a01b031681565b3480156200043157600080fd5b506200016762000443366004620016d4565b62000c31565b3480156200045657600080fd5b50620001d862000468366004620013fe565b62000d72565b3480156200047b57600080fd5b50620001d86200048d366004620013fe565b62000dea565b348015620004a057600080fd5b50620004d3620004b2366004620013fe565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b6001600160a01b03811660009081526066602052604081206001015460ff166200052e578160405163f5a6943d60e01b8152600401620005259190620013c2565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056b5750600054600160ff909116105b806200059057506200057d3062000e5b565b15801562000590575060005460ff166001145b620005af5760405162461bcd60e51b815260040162000525906200182f565b6000805460ff191660011790558015620005d3576000805461ff0019166101001790555b620005de8662000d72565b6000606555620005ee8562000e6a565b620005f98462000e6a565b620006048262000e6a565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a805492851692909116919091179055604051600080516020620020df833981519152906200066f908790620013c2565b60405180910390a18015620006ad576000805461ff001916905560405160018152600080516020620020988339815191529060200160405180910390a15b505050505050565b620006bf62000e92565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b600054600290610100900460ff1615801562000704575060005460ff8083169116105b620007235760405162461bcd60e51b815260040162000525906200182f565b6000805461ffff191660ff831617610100179055620007428262000dea565b6000805461ff001916905560405160ff8216815260008051602062002098833981519152906020015b60405180910390a15050565b600054600390610100900460ff1615801562000704575060005460ff808316911610620007235760405162461bcd60e51b815260040162000525906200182f565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b815260040162000525906200187d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ef5565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052590620018b8565b6200086b8162000f12565b60408051600080825260208201909252620008899183919062000f64565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008d75760405162461bcd60e51b815260040162000525906200187d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200090b62000ef5565b6001600160a01b031614620009345760405162461bcd60e51b81526004016200052590620018b8565b6200093f8262000f12565b6200094d8282600162000f64565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620009ee5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000525565b506000805160206200207883398151915290565b62000a0c62000e92565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291016200076b565b62000a7662000e92565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000aa262000e92565b62000aae6000620010e1565b565b62000aba62000e92565b62000ac58162000e6a565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620020df8339815191529062000b01908390620013c2565b60405180910390a150565b60008062000b226033546001600160a01b031690565b9050806001600160a01b03163b60000362000b3c57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b99575060408051601f3d908101601f1916820190925262000b9691810190620018f3565b60015b62000ba357919050565b92915050565b62000bb362000e92565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000bdf62000e92565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c91016200076b565b606580546000918262000c448362001913565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c8562000b0c565b60405160240162000c9a9493929190620019b0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000cd990620013a7565b62000ce692919062001af8565b604051809103906000f08015801562000d03573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d63908390620013c2565b60405180910390a19392505050565b600054610100900460ff1662000ddf5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000525565b6200088981620010e1565b62000df462000e92565b6001600160a01b03811662000ddf5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000525565b6001600160a01b03163b151590565b6001600160a01b03811662000889576040516303988b8160e61b815260040160405180910390fd5b3362000e9d62000b0c565b6001600160a01b03161462000aae5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000525565b60008051602062002078833981519152546001600160a01b031690565b3362000f1d62000b0c565b6001600160a01b03161462000889573362000f3762000b0c565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000525565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f9f5762000f9a8362001133565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000ffc575060408051601f3d908101601f1916820190925262000ff99181019062001b1e565b60015b620010615760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000525565b600080516020620020788339815191528114620010d35760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000525565b5062000f9a838383620011d2565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6200113e8162000e5b565b620011a25760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000525565b6000805160206200207883398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011dd8362001203565b600082511180620011eb5750805b1562000f9a57620011fd838362001245565b50505050565b6200120e8162001133565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200126d8383604051806060016040528060278152602001620020b86027913962001274565b9392505050565b6060600080856001600160a01b03168560405162001293919062001b38565b600060405180830381855af49150503d8060008114620012d0576040519150601f19603f3d011682016040523d82523d6000602084013e620012d5565b606091505b5091509150620012e886838387620012f2565b9695505050505050565b60608315620013665782516000036200135e57620013108562000e5b565b6200135e5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000525565b508162001372565b6200137283836200137a565b949350505050565b8151156200138b5781518083602001fd5b8060405162461bcd60e51b815260040162000525919062001b56565b6104ec8062001b6c83390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200088957600080fd5b8035620013f981620013d6565b919050565b6000602082840312156200141157600080fd5b81356200126d81620013d6565b600080600080600060a086880312156200143757600080fd5b85356200144481620013d6565b945060208601356200145681620013d6565b935060408601356200146881620013d6565b925060608601356200147a81620013d6565b915060808601356200148c81620013d6565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b0381118282101715620014d657620014d66200149a565b60405290565b60006001600160401b0380841115620014f957620014f96200149a565b604051601f8501601f19908116603f011681019082821181831017156200152457620015246200149a565b816040528093508581528686860111156200153e57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200156c57600080fd5b82356200157981620013d6565b915060208301356001600160401b038111156200159557600080fd5b8301601f81018513620015a757600080fd5b620015b885823560208401620014dc565b9150509250929050565b80358015158114620013f957600080fd5b60008060408385031215620015e757600080fd5b8235620015f481620013d6565b91506200160460208401620015c2565b90509250929050565b600080604083850312156200162157600080fd5b82356200162e81620013d6565b946020939093013593505050565b600082601f8301126200164e57600080fd5b6200126d83833560208501620014dc565b6000604082840312156200167257600080fd5b604080519081016001600160401b0380821183831017156200169857620016986200149a565b81604052829350843583526020850135915080821115620016b857600080fd5b50620016c7858286016200163c565b6020830152505092915050565b600060208284031215620016e757600080fd5b81356001600160401b0380821115620016ff57600080fd5b9083019061018082860312156200171557600080fd5b6200171f620014b0565b6200172a83620013ec565b81526200173a60208401620013ec565b60208201526040830135604082015260608301356060820152608083013560808201526200176b60a08401620013ec565b60a08201526200177e60c08401620013ec565b60c082015260e0830135828111156200179657600080fd5b620017a4878286016200165f565b60e083015250610100620017ba818501620013ec565b908201526101208381013583811115620017d357600080fd5b620017e1888287016200163c565b828401525050610140620017f7818501620015c2565b9082015261016083810135838111156200181057600080fd5b6200181e888287016200163c565b918301919091525095945050505050565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200205883398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200205883398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200190657600080fd5b81516200126d81620013d6565b6000600182016200193457634e487b7160e01b600052601160045260246000fd5b5060010190565b60005b83811015620019585781810151838201526020016200193e565b50506000910152565b600081518084526200197b8160208601602086016200193b565b601f01601f19169290920160200192915050565b80518252600060208201516040602085015262001372604085018262001961565b60808152620019c4608082018651620013b5565b60006020860151620019da60a0840182620013b5565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001a1481860184620013b5565b60c0890151925061014062001a2c81870185620013b5565b60e08a01519350610180610160818189015262001a4e6102008901876200198f565b948c015194955062001a6388830186620013b5565b838c01519450607f19935083888703016101a089015262001a85868662001961565b9550828c0151945062001a9d6101c089018615159052565b808c0151945050505080858403016101e08601525062001abe828262001961565b9250505062001ad16020830186620013b5565b62001ae06040830185620013b5565b62001aef6060830184620013b5565b95945050505050565b6001600160a01b0383168152604060208201819052600090620013729083018462001961565b60006020828403121562001b3157600080fd5b5051919050565b6000825162001b4c8184602087016200193b565b9190910192915050565b6020815260006200126d60208301846200196156fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da264697066735822122085f69e1f9dc9e3070a8ed9af6745037b7872115a48f8402495a3c0731ebd6d0964736f6c63430008130033","sourceMap":"618:5756:117:-:0;;;1088:4:64;1045:48;;618:5756:117;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da57806329b6eca914620001ff5780633101cfcb14620002245780633659cfe614620002495780634f1ef286146200026e57806352d1902d14620002855780635a2c8ace146200029d5780635c94e4d214620002c25780635decae0214620002e4578063715018a6146200030957806377122d5614620003215780638279c7db14620003435780638da5cb5b1462000368578063987435be1462000380578063affed0e014620003a0578063b0d3713a14620003b8578063b5b3ca2c14620003dd578063b8bed9011462000402578063beb331a31462000424578063c4d66de81462000449578063f2fde38b146200046e578063f5016b5e1462000493575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b604051620001769190620013c2565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013fe565b620004e4565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d23660046200141e565b6200054a565b005b348015620001e757600080fd5b50620001d8620001f9366004620013fe565b620006b5565b3480156200020c57600080fd5b50620001d86200021e366004620013fe565b620006e1565b3480156200023157600080fd5b50620001d862000243366004620013fe565b62000777565b3480156200025657600080fd5b50620001d862000268366004620013fe565b620007b8565b620001d86200027f36600462001558565b6200088c565b3480156200029257600080fd5b50620001a462000951565b348015620002aa57600080fd5b50620001d8620002bc366004620015d3565b62000a02565b348015620002cf57600080fd5b5060695462000167906001600160a01b031681565b348015620002f157600080fd5b50620001d862000303366004620013fe565b62000a6c565b3480156200031657600080fd5b50620001d862000a98565b3480156200032e57600080fd5b50606a5462000167906001600160a01b031681565b3480156200035057600080fd5b50620001d862000362366004620013fe565b62000ab0565b3480156200037557600080fd5b506200016762000b0c565b3480156200038d57600080fd5b506067546001600160a01b031662000167565b348015620003ad57600080fd5b50620001a460655481565b348015620003c557600080fd5b50620001d8620003d7366004620013fe565b62000ba9565b348015620003ea57600080fd5b50620001d8620003fc3660046200160d565b62000bd5565b3480156200040f57600080fd5b5060675462000167906001600160a01b031681565b3480156200043157600080fd5b506200016762000443366004620016d4565b62000c31565b3480156200045657600080fd5b50620001d862000468366004620013fe565b62000d72565b3480156200047b57600080fd5b50620001d86200048d366004620013fe565b62000dea565b348015620004a057600080fd5b50620004d3620004b2366004620013fe565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b6001600160a01b03811660009081526066602052604081206001015460ff166200052e578160405163f5a6943d60e01b8152600401620005259190620013c2565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056b5750600054600160ff909116105b806200059057506200057d3062000e5b565b15801562000590575060005460ff166001145b620005af5760405162461bcd60e51b815260040162000525906200182f565b6000805460ff191660011790558015620005d3576000805461ff0019166101001790555b620005de8662000d72565b6000606555620005ee8562000e6a565b620005f98462000e6a565b620006048262000e6a565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a805492851692909116919091179055604051600080516020620020df833981519152906200066f908790620013c2565b60405180910390a18015620006ad576000805461ff001916905560405160018152600080516020620020988339815191529060200160405180910390a15b505050505050565b620006bf62000e92565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b600054600290610100900460ff1615801562000704575060005460ff8083169116105b620007235760405162461bcd60e51b815260040162000525906200182f565b6000805461ffff191660ff831617610100179055620007428262000dea565b6000805461ff001916905560405160ff8216815260008051602062002098833981519152906020015b60405180910390a15050565b600054600390610100900460ff1615801562000704575060005460ff808316911610620007235760405162461bcd60e51b815260040162000525906200182f565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b815260040162000525906200187d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ef5565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052590620018b8565b6200086b8162000f12565b60408051600080825260208201909252620008899183919062000f64565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008d75760405162461bcd60e51b815260040162000525906200187d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200090b62000ef5565b6001600160a01b031614620009345760405162461bcd60e51b81526004016200052590620018b8565b6200093f8262000f12565b6200094d8282600162000f64565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620009ee5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000525565b506000805160206200207883398151915290565b62000a0c62000e92565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291016200076b565b62000a7662000e92565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000aa262000e92565b62000aae6000620010e1565b565b62000aba62000e92565b62000ac58162000e6a565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620020df8339815191529062000b01908390620013c2565b60405180910390a150565b60008062000b226033546001600160a01b031690565b9050806001600160a01b03163b60000362000b3c57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b99575060408051601f3d908101601f1916820190925262000b9691810190620018f3565b60015b62000ba357919050565b92915050565b62000bb362000e92565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000bdf62000e92565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c91016200076b565b606580546000918262000c448362001913565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c8562000b0c565b60405160240162000c9a9493929190620019b0565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000cd990620013a7565b62000ce692919062001af8565b604051809103906000f08015801562000d03573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d63908390620013c2565b60405180910390a19392505050565b600054610100900460ff1662000ddf5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000525565b6200088981620010e1565b62000df462000e92565b6001600160a01b03811662000ddf5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000525565b6001600160a01b03163b151590565b6001600160a01b03811662000889576040516303988b8160e61b815260040160405180910390fd5b3362000e9d62000b0c565b6001600160a01b03161462000aae5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000525565b60008051602062002078833981519152546001600160a01b031690565b3362000f1d62000b0c565b6001600160a01b03161462000889573362000f3762000b0c565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000525565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f9f5762000f9a8362001133565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000ffc575060408051601f3d908101601f1916820190925262000ff99181019062001b1e565b60015b620010615760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000525565b600080516020620020788339815191528114620010d35760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000525565b5062000f9a838383620011d2565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6200113e8162000e5b565b620011a25760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000525565b6000805160206200207883398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011dd8362001203565b600082511180620011eb5750805b1562000f9a57620011fd838362001245565b50505050565b6200120e8162001133565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200126d8383604051806060016040528060278152602001620020b86027913962001274565b9392505050565b6060600080856001600160a01b03168560405162001293919062001b38565b600060405180830381855af49150503d8060008114620012d0576040519150601f19603f3d011682016040523d82523d6000602084013e620012d5565b606091505b5091509150620012e886838387620012f2565b9695505050505050565b60608315620013665782516000036200135e57620013108562000e5b565b6200135e5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000525565b508162001372565b6200137283836200137a565b949350505050565b8151156200138b5781518083602001fd5b8060405162461bcd60e51b815260040162000525919062001b56565b6104ec8062001b6c83390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200088957600080fd5b8035620013f981620013d6565b919050565b6000602082840312156200141157600080fd5b81356200126d81620013d6565b600080600080600060a086880312156200143757600080fd5b85356200144481620013d6565b945060208601356200145681620013d6565b935060408601356200146881620013d6565b925060608601356200147a81620013d6565b915060808601356200148c81620013d6565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b0381118282101715620014d657620014d66200149a565b60405290565b60006001600160401b0380841115620014f957620014f96200149a565b604051601f8501601f19908116603f011681019082821181831017156200152457620015246200149a565b816040528093508581528686860111156200153e57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200156c57600080fd5b82356200157981620013d6565b915060208301356001600160401b038111156200159557600080fd5b8301601f81018513620015a757600080fd5b620015b885823560208401620014dc565b9150509250929050565b80358015158114620013f957600080fd5b60008060408385031215620015e757600080fd5b8235620015f481620013d6565b91506200160460208401620015c2565b90509250929050565b600080604083850312156200162157600080fd5b82356200162e81620013d6565b946020939093013593505050565b600082601f8301126200164e57600080fd5b6200126d83833560208501620014dc565b6000604082840312156200167257600080fd5b604080519081016001600160401b0380821183831017156200169857620016986200149a565b81604052829350843583526020850135915080821115620016b857600080fd5b50620016c7858286016200163c565b6020830152505092915050565b600060208284031215620016e757600080fd5b81356001600160401b0380821115620016ff57600080fd5b9083019061018082860312156200171557600080fd5b6200171f620014b0565b6200172a83620013ec565b81526200173a60208401620013ec565b60208201526040830135604082015260608301356060820152608083013560808201526200176b60a08401620013ec565b60a08201526200177e60c08401620013ec565b60c082015260e0830135828111156200179657600080fd5b620017a4878286016200165f565b60e083015250610100620017ba818501620013ec565b908201526101208381013583811115620017d357600080fd5b620017e1888287016200163c565b828401525050610140620017f7818501620015c2565b9082015261016083810135838111156200181057600080fd5b6200181e888287016200163c565b918301919091525095945050505050565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200205883398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200205883398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200190657600080fd5b81516200126d81620013d6565b6000600182016200193457634e487b7160e01b600052601160045260246000fd5b5060010190565b60005b83811015620019585781810151838201526020016200193e565b50506000910152565b600081518084526200197b8160208601602086016200193b565b601f01601f19169290920160200192915050565b80518252600060208201516040602085015262001372604085018262001961565b60808152620019c4608082018651620013b5565b60006020860151620019da60a0840182620013b5565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001a1481860184620013b5565b60c0890151925061014062001a2c81870185620013b5565b60e08a01519350610180610160818189015262001a4e6102008901876200198f565b948c015194955062001a6388830186620013b5565b838c01519450607f19935083888703016101a089015262001a85868662001961565b9550828c0151945062001a9d6101c089018615159052565b808c0151945050505080858403016101e08601525062001abe828262001961565b9250505062001ad16020830186620013b5565b62001ae06040830185620013b5565b62001aef6060830184620013b5565b95945050505050565b6001600160a01b0383168152604060208201819052600090620013729083018462001961565b60006020828403121562001b3157600080fd5b5051919050565b6000825162001b4c8184602087016200193b565b9190910192915050565b6020815260006200126d60208301846200196156fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da264697066735822122085f69e1f9dc9e3070a8ed9af6745037b7872115a48f8402495a3c0731ebd6d0964736f6c63430008130033","sourceMap":"618:5756:117:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;799:40;;;;;;;;;;-1:-1:-1;799:40:117;;;;-1:-1:-1;;;;;799:40:117;;;;;;;;;;:::i;:::-;;;;;;;;6091:249;;;;;;;;;;-1:-1:-1;6091:249:117;;;;;:::i;:::-;;:::i;:::-;;;1004:25:142;;;992:2;977:18;6091:249:117;858:177:142;3291:788:117;;;;;;;;;;-1:-1:-1;3291:788:117;;;;;:::i;:::-;;:::i;:::-;;2370:110;;;;;;;;;;-1:-1:-1;2370:110:117;;;;;:::i;:::-;;:::i;4085:104::-;;;;;;;;;;-1:-1:-1;4085:104:117;;;;;:::i;:::-;;:::i;4195:::-;;;;;;;;;;-1:-1:-1;4195:104:117;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;5727:208:117:-;;;;;;;;;;-1:-1:-1;5727:208:117;;;;;:::i;:::-;;:::i;845:31::-;;;;;;;;;;-1:-1:-1;845:31:117;;;;-1:-1:-1;;;;;845:31:117;;;2068:128;;;;;;;;;;-1:-1:-1;2068:128:117;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;882:38:117:-;;;;;;;;;;-1:-1:-1;882:38:117;;;;-1:-1:-1;;;;;882:38:117;;;5154:222;;;;;;;;;;-1:-1:-1;5154:222:117;;;;;:::i;:::-;;:::i;525:604:105:-;;;;;;;;;;;;;:::i;5382:115:117:-;;;;;;;;;;-1:-1:-1;5472:18:117;;-1:-1:-1;;;;;5472:18:117;5382:115;;678:20;;;;;;;;;;;;;;;;2668:124;;;;;;;;;;-1:-1:-1;2668:124:117;;;;;:::i;:::-;;:::i;5503:218::-;;;;;;;;;;-1:-1:-1;5503:218:117;;;;;:::i;:::-;;:::i;760:33::-;;;;;;;;;;-1:-1:-1;760:33:117;;;;-1:-1:-1;;;;;760:33:117;;;4305:843;;;;;;;;;;-1:-1:-1;4305:843:117;;;;;:::i;:::-;;:::i;404:115:105:-;;;;;;;;;;-1:-1:-1;404:115:105;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5941:144:117:-;;;;;;;;;;-1:-1:-1;5941:144:117;;;;;:::i;:::-;-1:-1:-1;;;;;6045:27:117;6022:4;6045:27;;;:15;:27;;;;;:33;;;;;;5941:144;;;;7207:14:142;;7200:22;7182:41;;7170:2;7155:18;5941:144:117;7042:187:142;6091:249:117;-1:-1:-1;;;;;6190:27:117;;6166:7;6190:27;;;:15;:27;;;;;:33;;;;;6185:100;;6263:10;6246:28;;-1:-1:-1;;;6246:28:117;;;;;;;;:::i;:::-;;;;;;;;6185:100;-1:-1:-1;;;;;;6302:27:117;;;;;:15;:27;;;;;:31;;6091:249::o;3291:788::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;3536:24:117::1;3553:6;3536:16;:24::i;:::-;3578:1;3570:5;:9:::0;3589:39:::1;3608:19:::0;3589:18:::1;:39::i;:::-;3638:46;3657:26;3638:18;:46::i;:::-;3694:44;3713:24;3694:18;:44::i;:::-;3748:18;:40:::0;;-1:-1:-1;;;;;3748:40:117;;::::1;-1:-1:-1::0;;;;;;3748:40:117;;::::1;;::::0;;;3798:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;3862:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;3908:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;3973:35:::1;::::0;-1:-1:-1;;;;;;;;;;;3973:35:117;::::1;::::0;3769:19;;3973:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;7801:36:142;;-1:-1:-1;;;;;;;;;;;3721:14:47;7789:2:142;7774:18;3721:14:47;;;;;;;3647:99;3269:483;3291:788:117;;;;;:::o;2370:110::-;1355:13:45;:11;:13::i;:::-;2446:16:117::1;:27:::0;;-1:-1:-1;;;;;;2446:27:117::1;-1:-1:-1::0;;;;;2446:27:117;;;::::1;::::0;;;::::1;::::0;;2370:110::o;4085:104::-;4882:13:47;;4144:1:117;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;4157:25:117::1;4175:6:::0;4157:17:::1;:25::i;:::-;5071:5:47::0;5055:21;;-1:-1:-1;;5055:21:47;;;5091:20;;7831:4:142;7819:17;;7801:36;;-1:-1:-1;;;;;;;;;;;5091:20:47;7789:2:142;7774:18;5091:20:47;;;;;;;;4085:104:117;;:::o;4195:::-;4882:13:47;;4254:1:117;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9065:2:142;2064:92:64;;;9047:21:142;9104:2;9084:18;;;9077:30;9143:34;9123:18;;;9116:62;-1:-1:-1;;;9194:18:142;;;9187:54;9258:19;;2064:92:64;8863:420:142;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;5727:208:117:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;5827:27:117;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;5827:44:117::1;::::0;::::1;;::::0;;::::1;::::0;;;5886:42;;9456:51:142;;;9523:18;;;9516:50;5886:42:117::1;::::0;9429:18:142;5886:42:117::1;9288:284:142::0;2068:128:117;1355:13:45;:11;:13::i;:::-;2153:25:117::1;:36:::0;;-1:-1:-1;;;;;;2153:36:117::1;-1:-1:-1::0;;;;;2153:36:117;;;::::1;::::0;;;::::1;::::0;;2068:128::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;5154:222:117:-;1355:13:45;:11;:13::i;:::-;5242:35:117::1;5261:15;5242:18;:35::i;:::-;5287:18;:36:::0;;-1:-1:-1;;;;;;5287:36:117::1;-1:-1:-1::0;;;;;5287:36:117;::::1;;::::0;;5338:31:::1;::::0;-1:-1:-1;;;;;;;;;;;5338:31:117;::::1;::::0;5287:36;;5338:31:::1;:::i;:::-;;;;;;;;5154:222:::0;:::o;525:604:105:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:105;591:49;;715:12;-1:-1:-1;;;;;707:33:105;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:105:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:105;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:105;;;;;;;;-1:-1:-1;;876:40:105;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:105:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:105:o;2668:124:117:-;1355:13:45;:11;:13::i;:::-;2751:23:117::1;:34:::0;;-1:-1:-1;;;;;;2751:34:117::1;-1:-1:-1::0;;;;;2751:34:117;;;::::1;::::0;;;::::1;::::0;;2668:124::o;5503:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;5607:27:117;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;5671:43;;10007:51:142;;;10074:18;;10067:34;;;5671:43:117::1;::::0;9980:18:142;5671:43:117::1;9833:274:142::0;4305:843:117;4493:5;:7;;4430:31;;;4493:7;;;:::i;:::-;;;;-1:-1:-1;4477:13:117;;;:23;4544:4;4510:23;;;:39;4619:25;;4750:16;;4768:23;;-1:-1:-1;;;;;;;4619:25:117;;;;-1:-1:-1;;;4699:41:117;4477:6;;4750:16;;;;4768:23;4793:7;:5;:7::i;:::-;4659:155;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4659:155:117;;;;;;;;;;;;;;-1:-1:-1;;;;;4659:155:117;-1:-1:-1;;;;;;4659:155:117;;;;;;;;;;4581:243;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;4983:43:117;;4835:39;4983:43;;;:15;:43;;;;;;;5035:4;4983:49;;;:56;;-1:-1:-1;;4983:56:117;;;;;;5054:44;4560:264;;-1:-1:-1;4560:264:117;;5054:44;;;;4560:264;;5054:44;:::i;:::-;;;;;;;;5123:17;4305:843;-1:-1:-1;;;4305:843:117:o;404:115:105:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13702:2:142;5366:69:47;;;13684:21:142;13741:2;13721:18;;;13714:30;13780:34;13760:18;;;13753:62;-1:-1:-1;;;13831:18:142;;;13824:41;13882:19;;5366:69:47;13500:407:142;5366:69:47;480:32:105::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14114:2:142;2415:73:45::1;::::0;::::1;14096:21:142::0;14153:2;14133:18;;;14126:30;14192:34;14172:18;;;14165:62;-1:-1:-1;;;14243:18:142;;;14236:36;14289:19;;2415:73:45::1;13912:402:142::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1753:141:117:-;-1:-1:-1;;;;;1835:22:117;;1831:56;;1866:21;;-1:-1:-1;;;1866:21:117;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14521:2:142;1675:68:45;;;14503:21:142;;;14540:18;;;14533:30;14599:34;14579:18;;;14572:62;14651:18;;1675:68:45;14319:356:142;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:105:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:105;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:105;;-1:-1:-1;;;;;14910:15:142;;;1252:35:105;;;14892:34:142;14962:15;;14942:18;;;14935:43;14827:18;;1252:35:105;14680:304:142;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15380:2:142;3262:56:60;;;15362:21:142;15419:2;15399:18;;;15392:30;15458:34;15438:18;;;15431:62;-1:-1:-1;;;15509:18:142;;;15502:44;15563:19;;3262:56:60;15178:410:142;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;15795:2:142;3140:82:60;;;15777:21:142;15834:2;15814:18;;;15807:30;15873:34;15853:18;;;15846:62;-1:-1:-1;;;15924:18:142;;;15917:39;15973:19;;3140:82:60;15593:405:142;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16205:2:142;1479:95:60;;;16187:21:142;16244:2;16224:18;;;16217:30;16283:34;16263:18;;;16256:62;-1:-1:-1;;;16334:18:142;;;16327:43;16387:19;;1479:95:60;16003:409:142;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;16911:2:142;8113:60:76;;;16893:21:142;16950:2;16930:18;;;16923:30;16989:31;16969:18;;;16962:59;17038:18;;8113:60:76;16709:353:142;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:142:-;-1:-1:-1;;;;;80:31:142;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:142;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:142;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:142;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:142;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:142;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:142;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:142;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:142;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:142;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:142;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:142;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:142;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:142;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:142:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:142;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:142;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:142;5298:1643;-1:-1:-1;;;;;5298:1643:142:o;7234:410::-;7436:2;7418:21;;;7475:2;7455:18;;;7448:30;7514:34;7509:2;7494:18;;7487:62;-1:-1:-1;;;7580:2:142;7565:18;;7558:44;7634:3;7619:19;;7234:410::o;8037:408::-;8239:2;8221:21;;;8278:2;8258:18;;;8251:30;-1:-1:-1;;;;;;;;;;;8312:2:142;8297:18;;8290:62;-1:-1:-1;;;8383:2:142;8368:18;;8361:42;8435:3;8420:19;;8037:408::o;8450:::-;8652:2;8634:21;;;8691:2;8671:18;;;8664:30;-1:-1:-1;;;;;;;;;;;8725:2:142;8710:18;;8703:62;-1:-1:-1;;;8796:2:142;8781:18;;8774:42;8848:3;8833:19;;8450:408::o;9577:251::-;9647:6;9700:2;9688:9;9679:7;9675:23;9671:32;9668:52;;;9716:1;9713;9706:12;9668:52;9748:9;9742:16;9767:31;9792:5;9767:31;:::i;10112:232::-;10151:3;10172:17;;;10169:140;;10231:10;10226:3;10222:20;10219:1;10212:31;10266:4;10263:1;10256:15;10294:4;10291:1;10284:15;10169:140;-1:-1:-1;10336:1:142;10325:13;;10112:232::o;10349:250::-;10434:1;10444:113;10458:6;10455:1;10452:13;10444:113;;;10534:11;;;10528:18;10515:11;;;10508:39;10480:2;10473:10;10444:113;;;-1:-1:-1;;10591:1:142;10573:16;;10566:27;10349:250::o;10604:271::-;10646:3;10684:5;10678:12;10711:6;10706:3;10699:19;10727:76;10796:6;10789:4;10784:3;10780:14;10773:4;10766:5;10762:16;10727:76;:::i;:::-;10857:2;10836:15;-1:-1:-1;;10832:29:142;10823:39;;;;10864:4;10819:50;;10604:271;-1:-1:-1;;10604:271:142:o;10880:252::-;10967:5;10961:12;10956:3;10949:25;10931:3;11020:4;11013:5;11009:16;11003:23;11058:4;11051;11046:3;11042:14;11035:28;11079:47;11120:4;11115:3;11111:14;11097:12;11079:47;:::i;11137:2038::-;11462:3;11451:9;11444:22;11475:54;11524:3;11513:9;11509:19;11500:6;11494:13;11475:54;:::i;:::-;11425:4;11576;11568:6;11564:17;11558:24;11591:53;11639:3;11628:9;11624:19;11610:12;11591:53;:::i;:::-;;11699:4;11691:6;11687:17;11681:24;11675:3;11664:9;11660:19;11653:53;11761:4;11753:6;11749:17;11743:24;11737:3;11726:9;11722:19;11715:53;11805:3;11797:6;11793:16;11787:23;11829:3;11868:2;11863;11852:9;11848:18;11841:30;11920:3;11912:6;11908:16;11902:23;11880:45;;11944:3;11956:54;12006:2;11995:9;11991:18;11975:14;11956:54;:::i;:::-;12059:3;12051:6;12047:16;12041:23;12019:45;;12083:3;12095:54;12145:2;12134:9;12130:18;12114:14;12095:54;:::i;:::-;12198:3;12190:6;12186:16;12180:23;12158:45;;12222:6;12247:3;12286:2;12281;12270:9;12266:18;12259:30;12312:63;12370:3;12359:9;12355:19;12339:14;12312:63;:::i;:::-;12412:15;;;12406:22;12298:77;;-1:-1:-1;12437:54:142;12472:18;;;12406:22;12437:54;:::i;:::-;12540:2;12532:6;12528:15;12522:22;12500:44;;12567:3;12563:8;12553:18;;12636:2;12624:9;12616:6;12612:22;12608:31;12602:3;12591:9;12587:19;12580:60;12663:41;12697:6;12681:14;12663:41;:::i;:::-;12649:55;;12753:2;12745:6;12741:15;12735:22;12713:44;;12766:52;12813:3;12802:9;12798:19;12782:14;7016:13;7009:21;6997:34;;6946:91;12766:52;12867:2;12859:6;12855:15;12849:22;12827:44;;;;;12936:2;12924:9;12916:6;12912:22;12908:31;12902:3;12891:9;12887:19;12880:60;;12957:41;12991:6;12975:14;12957:41;:::i;:::-;12949:49;;;;13007:48;13049:4;13038:9;13034:20;13026:6;13007:48;:::i;:::-;13064;13106:4;13095:9;13091:20;13083:6;13064:48;:::i;:::-;13121;13163:4;13152:9;13148:20;13140:6;13121:48;:::i;:::-;11137:2038;;;;;;;:::o;13180:315::-;-1:-1:-1;;;;;13355:32:142;;13337:51;;13424:2;13419;13404:18;;13397:30;;;-1:-1:-1;;13444:45:142;;13470:18;;13462:6;13444:45;:::i;14989:184::-;15059:6;15112:2;15100:9;15091:7;15087:23;15083:32;15080:52;;;15128:1;15125;15118:12;15080:52;-1:-1:-1;15151:16:142;;14989:184;-1:-1:-1;14989:184:142:o;16417:287::-;16546:3;16584:6;16578:13;16600:66;16659:6;16654:3;16647:4;16639:6;16635:17;16600:66;:::i;:::-;16682:16;;;;;16417:287;-1:-1:-1;;16417:287:142:o;17067:220::-;17216:2;17205:9;17198:21;17179:4;17236:45;17277:2;17266:9;17262:18;17254:6;17236:45;:::i","linkReferences":{},"immutableReferences":{"55572":[{"start":1986,"length":32},{"start":2053,"length":32},{"start":2198,"length":32},{"start":2265,"length":32},{"start":2398,"length":32}]}},"methodIdentifiers":{"collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2(address)":"29b6eca9","initializeV3(address)":"3101cfcb","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initializeV3\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactory\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"initialize(address,address,address,address,address)\":{\"params\":{\"_collateralVaultTemplate\":\": address of the template contract for creating new collateral vaults\",\"_gardensFeeReceiver\":\": address of the receiver of the fees\",\"_owner\":\": address of the owner of the registry\",\"_registryCommunityTemplate\":\": address of the template contract for creating new registries\",\"_strategyTemplate\":\": address of the template contract for creating new strategies\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"setCollateralVaultTemplate(address)\":{\"details\":\"Set the address of the template contract for creating new collateral vaults\",\"params\":{\"template\":\": address of the template contract for creating new collateral vaults\"}},\"setRegistryCommunityTemplate(address)\":{\"details\":\"Set the address of the template contract for creating new registries\",\"params\":{\"template\":\": address of the template contract for creating new registries\"}},\"setStrategyTemplate(address)\":{\"details\":\"Set the address of the template contract for creating new strategies\",\"params\":{\"template\":\": address of the template contract for creating new strategies\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":\"RegistryFactoryFacet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":{\"keccak256\":\"0xc968bc0e640a9e5697b306c0c6b3086fed1fcf95c518b40f403b394c0a768ec5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c6537a9df83d18a66a36f4fbec8f92a28ea531a470b87e768c56912ca1f18b8c\",\"dweb:/ipfs/QmQpLNVkqkbtczd6H9mvvuRMDE8vv8MqHUnfmMM5GqFD3g\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV3"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"initialize(address,address,address,address,address)":{"params":{"_collateralVaultTemplate":": address of the template contract for creating new collateral vaults","_gardensFeeReceiver":": address of the receiver of the fees","_owner":": address of the owner of the registry","_registryCommunityTemplate":": address of the template contract for creating new registries","_strategyTemplate":": address of the template contract for creating new strategies"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"setCollateralVaultTemplate(address)":{"details":"Set the address of the template contract for creating new collateral vaults","params":{"template":": address of the template contract for creating new collateral vaults"}},"setRegistryCommunityTemplate(address)":{"details":"Set the address of the template contract for creating new registries","params":{"template":": address of the template contract for creating new registries"}},"setStrategyTemplate(address)":{"details":"Set the address of the template contract for creating new strategies","params":{"template":": address of the template contract for creating new strategies"}},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":"RegistryFactoryFacet"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":{"keccak256":"0xc968bc0e640a9e5697b306c0c6b3086fed1fcf95c518b40f403b394c0a768ec5","urls":["bzz-raw://c6537a9df83d18a66a36f4fbec8f92a28ea531a470b87e768c56912ca1f18b8c","dweb:/ipfs/QmQpLNVkqkbtczd6H9mvvuRMDE8vv8MqHUnfmMM5GqFD3g"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":74537,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":74542,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)74532_storage)"},{"astId":74544,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":74546,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":74548,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":74550,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":74912,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)74532_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)74532_storage"},"t_struct(CommunityInfo)74532_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":74529,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":74531,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol","id":74914,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[74532],"ERC1967Proxy":[55021],"ProxyOwnableUpgrader":[70711],"RegistryCommunityInitializeParamsV0_0":[70795],"RegistryCommunityV0_0":[72700],"RegistryCommunityV0_1":[72929],"RegistryFactoryFacet":[74913]},"nodeType":"SourceUnit","src":"42:6333:117","nodes":[{"id":74516,"nodeType":"PragmaDirective","src":"42:24:117","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74519,"nodeType":"ImportDirective","src":"68:136:117","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":74914,"sourceUnit":72701,"symbolAliases":[{"foreign":{"id":74517,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"81:21:117","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74518,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70795,"src":"108:37:117","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74521,"nodeType":"ImportDirective","src":"205:88:117","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":74914,"sourceUnit":72930,"symbolAliases":[{"foreign":{"id":74520,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72929,"src":"213:21:117","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74523,"nodeType":"ImportDirective","src":"294:67:117","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74914,"sourceUnit":70712,"symbolAliases":[{"foreign":{"id":74522,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70711,"src":"302:20:117","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74525,"nodeType":"ImportDirective","src":"362:84:117","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74914,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":74524,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"370:12:117","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74527,"nodeType":"ImportDirective","src":"447:65:117","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":74914,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":74526,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"455:5:117","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74532,"nodeType":"StructDefinition","src":"514:57:117","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":74529,"mutability":"mutable","name":"fee","nameLocation":"549:3:117","nodeType":"VariableDeclaration","scope":74532,"src":"541:11:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74528,"name":"uint256","nodeType":"ElementaryTypeName","src":"541:7:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74531,"mutability":"mutable","name":"valid","nameLocation":"563:5:117","nodeType":"VariableDeclaration","scope":74532,"src":"558:10:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74530,"name":"bool","nodeType":"ElementaryTypeName","src":"558:4:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"521:13:117","scope":74914,"visibility":"public"},{"id":74913,"nodeType":"ContractDefinition","src":"618:5756:117","nodes":[{"id":74537,"nodeType":"VariableDeclaration","src":"678:20:117","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"693:5:117","scope":74913,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74536,"name":"uint256","nodeType":"ElementaryTypeName","src":"678:7:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":74542,"nodeType":"VariableDeclaration","src":"705:49:117","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"739:15:117","scope":74913,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":74541,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":74538,"name":"address","nodeType":"ElementaryTypeName","src":"713:7:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"705:33:117","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":74540,"nodeType":"UserDefinedTypeName","pathNode":{"id":74539,"name":"CommunityInfo","nameLocations":["724:13:117"],"nodeType":"IdentifierPath","referencedDeclaration":74532,"src":"724:13:117"},"referencedDeclaration":74532,"src":"724:13:117","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74532_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":74544,"nodeType":"VariableDeclaration","src":"760:33:117","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"775:18:117","scope":74913,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74543,"name":"address","nodeType":"ElementaryTypeName","src":"760:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74546,"nodeType":"VariableDeclaration","src":"799:40:117","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"814:25:117","scope":74913,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74545,"name":"address","nodeType":"ElementaryTypeName","src":"799:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74548,"nodeType":"VariableDeclaration","src":"845:31:117","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"860:16:117","scope":74913,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74547,"name":"address","nodeType":"ElementaryTypeName","src":"845:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74550,"nodeType":"VariableDeclaration","src":"882:38:117","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"897:23:117","scope":74913,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74549,"name":"address","nodeType":"ElementaryTypeName","src":"882:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74554,"nodeType":"EventDefinition","src":"1093:46:117","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1099:14:117","parameters":{"id":74553,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74552,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1122:15:117","nodeType":"VariableDeclaration","scope":74554,"src":"1114:23:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74551,"name":"address","nodeType":"ElementaryTypeName","src":"1114:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1113:25:117"}},{"id":74560,"nodeType":"EventDefinition","src":"1144:66:117","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1150:14:117","parameters":{"id":74559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74556,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1173:10:117","nodeType":"VariableDeclaration","scope":74560,"src":"1165:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74555,"name":"address","nodeType":"ElementaryTypeName","src":"1165:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74558,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1193:15:117","nodeType":"VariableDeclaration","scope":74560,"src":"1185:23:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74557,"name":"uint256","nodeType":"ElementaryTypeName","src":"1185:7:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1164:45:117"}},{"id":74564,"nodeType":"EventDefinition","src":"1215:51:117","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1221:16:117","parameters":{"id":74563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74562,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1246:18:117","nodeType":"VariableDeclaration","scope":74564,"src":"1238:26:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74561,"name":"address","nodeType":"ElementaryTypeName","src":"1238:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1237:28:117"}},{"id":74570,"nodeType":"EventDefinition","src":"1271:62:117","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1277:20:117","parameters":{"id":74569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74566,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1306:10:117","nodeType":"VariableDeclaration","scope":74570,"src":"1298:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74565,"name":"address","nodeType":"ElementaryTypeName","src":"1298:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74568,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1323:8:117","nodeType":"VariableDeclaration","scope":74570,"src":"1318:13:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74567,"name":"bool","nodeType":"ElementaryTypeName","src":"1318:4:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1297:35:117"}},{"id":74574,"nodeType":"ErrorDefinition","src":"1505:43:117","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1511:16:117","parameters":{"id":74573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74572,"mutability":"mutable","name":"_community","nameLocation":"1536:10:117","nodeType":"VariableDeclaration","scope":74574,"src":"1528:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74571,"name":"address","nodeType":"ElementaryTypeName","src":"1528:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1527:20:117"}},{"id":74576,"nodeType":"ErrorDefinition","src":"1553:28:117","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1559:19:117","parameters":{"id":74575,"nodeType":"ParameterList","parameters":[],"src":"1578:2:117"}},{"id":74592,"nodeType":"FunctionDefinition","src":"1753:141:117","nodes":[],"body":{"id":74591,"nodeType":"Block","src":"1821:73:117","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":74586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":74581,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74578,"src":"1835:8:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":74584,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1855:1:117","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":74583,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1847:7:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74582,"name":"address","nodeType":"ElementaryTypeName","src":"1847:7:117","typeDescriptions":{}}},"id":74585,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1847:10:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1835:22:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74590,"nodeType":"IfStatement","src":"1831:56:117","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":74587,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74576,"src":"1866:19:117","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":74588,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1866:21:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74589,"nodeType":"RevertStatement","src":"1859:28:117"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1762:18:117","parameters":{"id":74579,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74578,"mutability":"mutable","name":"_address","nameLocation":"1789:8:117","nodeType":"VariableDeclaration","scope":74592,"src":"1781:16:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74577,"name":"address","nodeType":"ElementaryTypeName","src":"1781:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1780:18:117"},"returnParameters":{"id":74580,"nodeType":"ParameterList","parameters":[],"src":"1821:0:117"},"scope":74913,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":74605,"nodeType":"FunctionDefinition","src":"2068:128:117","nodes":[],"body":{"id":74604,"nodeType":"Block","src":"2143:53:117","nodes":[],"statements":[{"expression":{"id":74602,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74600,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74546,"src":"2153:25:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74601,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74595,"src":"2181:8:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2153:36:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74603,"nodeType":"ExpressionStatement","src":"2153:36:117"}]},"documentation":{"id":74593,"nodeType":"StructuredDocumentation","src":"1899:164:117","text":"@param template: address of the template contract for creating new registries\n @dev Set the address of the template contract for creating new registries"},"functionSelector":"5decae02","implemented":true,"kind":"function","modifiers":[{"id":74598,"kind":"modifierInvocation","modifierName":{"id":74597,"name":"onlyOwner","nameLocations":["2133:9:117"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2133:9:117"},"nodeType":"ModifierInvocation","src":"2133:9:117"}],"name":"setRegistryCommunityTemplate","nameLocation":"2077:28:117","parameters":{"id":74596,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74595,"mutability":"mutable","name":"template","nameLocation":"2114:8:117","nodeType":"VariableDeclaration","scope":74605,"src":"2106:16:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74594,"name":"address","nodeType":"ElementaryTypeName","src":"2106:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2105:18:117"},"returnParameters":{"id":74599,"nodeType":"ParameterList","parameters":[],"src":"2143:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74618,"nodeType":"FunctionDefinition","src":"2370:110:117","nodes":[],"body":{"id":74617,"nodeType":"Block","src":"2436:44:117","nodes":[],"statements":[{"expression":{"id":74615,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74613,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74548,"src":"2446:16:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74614,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74608,"src":"2465:8:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2446:27:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74616,"nodeType":"ExpressionStatement","src":"2446:27:117"}]},"documentation":{"id":74606,"nodeType":"StructuredDocumentation","src":"2202:163:117","text":"@param template: address of the template contract for creating new strategies\n @dev Set the address of the template contract for creating new strategies"},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":74611,"kind":"modifierInvocation","modifierName":{"id":74610,"name":"onlyOwner","nameLocations":["2426:9:117"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2426:9:117"},"nodeType":"ModifierInvocation","src":"2426:9:117"}],"name":"setStrategyTemplate","nameLocation":"2379:19:117","parameters":{"id":74609,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74608,"mutability":"mutable","name":"template","nameLocation":"2407:8:117","nodeType":"VariableDeclaration","scope":74618,"src":"2399:16:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74607,"name":"address","nodeType":"ElementaryTypeName","src":"2399:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2398:18:117"},"returnParameters":{"id":74612,"nodeType":"ParameterList","parameters":[],"src":"2436:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74631,"nodeType":"FunctionDefinition","src":"2668:124:117","nodes":[],"body":{"id":74630,"nodeType":"Block","src":"2741:51:117","nodes":[],"statements":[{"expression":{"id":74628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74626,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74550,"src":"2751:23:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74627,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74621,"src":"2777:8:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2751:34:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74629,"nodeType":"ExpressionStatement","src":"2751:34:117"}]},"documentation":{"id":74619,"nodeType":"StructuredDocumentation","src":"2486:177:117","text":"@param template: address of the template contract for creating new collateral vaults\n @dev Set the address of the template contract for creating new collateral vaults"},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":74624,"kind":"modifierInvocation","modifierName":{"id":74623,"name":"onlyOwner","nameLocations":["2731:9:117"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2731:9:117"},"nodeType":"ModifierInvocation","src":"2731:9:117"}],"name":"setCollateralVaultTemplate","nameLocation":"2677:26:117","parameters":{"id":74622,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74621,"mutability":"mutable","name":"template","nameLocation":"2712:8:117","nodeType":"VariableDeclaration","scope":74631,"src":"2704:16:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74620,"name":"address","nodeType":"ElementaryTypeName","src":"2704:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2703:18:117"},"returnParameters":{"id":74625,"nodeType":"ParameterList","parameters":[],"src":"2741:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74690,"nodeType":"FunctionDefinition","src":"3291:788:117","nodes":[],"body":{"id":74689,"nodeType":"Block","src":"3526:553:117","nodes":[],"statements":[{"expression":{"arguments":[{"id":74650,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74634,"src":"3553:6:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74647,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"3536:5:117","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryFacet_$74913_$","typeString":"type(contract super RegistryFactoryFacet)"}},"id":74649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3542:10:117","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70646,"src":"3536:16:117","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74651,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3536:24:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74652,"nodeType":"ExpressionStatement","src":"3536:24:117"},{"expression":{"id":74655,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74653,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74537,"src":"3570:5:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":74654,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3578:1:117","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"3570:9:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74656,"nodeType":"ExpressionStatement","src":"3570:9:117"},{"expression":{"arguments":[{"id":74658,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74636,"src":"3608:19:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74657,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74592,"src":"3589:18:117","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3589:39:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74660,"nodeType":"ExpressionStatement","src":"3589:39:117"},{"expression":{"arguments":[{"id":74662,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74638,"src":"3657:26:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74661,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74592,"src":"3638:18:117","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74663,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3638:46:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74664,"nodeType":"ExpressionStatement","src":"3638:46:117"},{"expression":{"arguments":[{"id":74666,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74642,"src":"3713:24:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74665,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74592,"src":"3694:18:117","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74667,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3694:44:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74668,"nodeType":"ExpressionStatement","src":"3694:44:117"},{"expression":{"id":74671,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74669,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74544,"src":"3748:18:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74670,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74636,"src":"3769:19:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3748:40:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74672,"nodeType":"ExpressionStatement","src":"3748:40:117"},{"expression":{"id":74675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74673,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74546,"src":"3798:25:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74674,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74638,"src":"3826:26:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3798:54:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74676,"nodeType":"ExpressionStatement","src":"3798:54:117"},{"expression":{"id":74679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74677,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74548,"src":"3862:16:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74678,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74640,"src":"3881:17:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3862:36:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74680,"nodeType":"ExpressionStatement","src":"3862:36:117"},{"expression":{"id":74683,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74681,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74550,"src":"3908:23:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74682,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74642,"src":"3934:24:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3908:50:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74684,"nodeType":"ExpressionStatement","src":"3908:50:117"},{"eventCall":{"arguments":[{"id":74686,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74636,"src":"3988:19:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74685,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74554,"src":"3973:14:117","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74687,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3973:35:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74688,"nodeType":"EmitStatement","src":"3968:40:117"}]},"documentation":{"id":74632,"nodeType":"StructuredDocumentation","src":"2798:435:117","text":"@param _owner: address of the owner of the registry\n @param _gardensFeeReceiver: address of the receiver of the fees\n @param _registryCommunityTemplate: address of the template contract for creating new registries\n @param _strategyTemplate: address of the template contract for creating new strategies\n @param _collateralVaultTemplate: address of the template contract for creating new collateral vaults"},"functionSelector":"1459457a","implemented":true,"kind":"function","modifiers":[{"id":74645,"kind":"modifierInvocation","modifierName":{"id":74644,"name":"initializer","nameLocations":["3514:11:117"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"3514:11:117"},"nodeType":"ModifierInvocation","src":"3514:11:117"}],"name":"initialize","nameLocation":"3300:10:117","parameters":{"id":74643,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74634,"mutability":"mutable","name":"_owner","nameLocation":"3328:6:117","nodeType":"VariableDeclaration","scope":74690,"src":"3320:14:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74633,"name":"address","nodeType":"ElementaryTypeName","src":"3320:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74636,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"3352:19:117","nodeType":"VariableDeclaration","scope":74690,"src":"3344:27:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74635,"name":"address","nodeType":"ElementaryTypeName","src":"3344:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74638,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"3389:26:117","nodeType":"VariableDeclaration","scope":74690,"src":"3381:34:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74637,"name":"address","nodeType":"ElementaryTypeName","src":"3381:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74640,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"3433:17:117","nodeType":"VariableDeclaration","scope":74690,"src":"3425:25:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74639,"name":"address","nodeType":"ElementaryTypeName","src":"3425:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74642,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"3468:24:117","nodeType":"VariableDeclaration","scope":74690,"src":"3460:32:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74641,"name":"address","nodeType":"ElementaryTypeName","src":"3460:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3310:188:117"},"returnParameters":{"id":74646,"nodeType":"ParameterList","parameters":[],"src":"3526:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74703,"nodeType":"FunctionDefinition","src":"4085:104:117","nodes":[],"body":{"id":74702,"nodeType":"Block","src":"4147:42:117","nodes":[],"statements":[{"expression":{"arguments":[{"id":74699,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74692,"src":"4175:6:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74698,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"4157:17:117","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74700,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4157:25:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74701,"nodeType":"ExpressionStatement","src":"4157:25:117"}]},"functionSelector":"29b6eca9","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":74695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4144:1:117","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":74696,"kind":"modifierInvocation","modifierName":{"id":74694,"name":"reinitializer","nameLocations":["4130:13:117"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"4130:13:117"},"nodeType":"ModifierInvocation","src":"4130:16:117"}],"name":"initializeV2","nameLocation":"4094:12:117","parameters":{"id":74693,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74692,"mutability":"mutable","name":"_owner","nameLocation":"4115:6:117","nodeType":"VariableDeclaration","scope":74703,"src":"4107:14:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74691,"name":"address","nodeType":"ElementaryTypeName","src":"4107:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4106:16:117"},"returnParameters":{"id":74697,"nodeType":"ParameterList","parameters":[],"src":"4147:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74716,"nodeType":"FunctionDefinition","src":"4195:104:117","nodes":[],"body":{"id":74715,"nodeType":"Block","src":"4257:42:117","nodes":[],"statements":[{"expression":{"arguments":[{"id":74712,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74705,"src":"4285:6:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74711,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"4267:17:117","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74713,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4267:25:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74714,"nodeType":"ExpressionStatement","src":"4267:25:117"}]},"functionSelector":"3101cfcb","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"33","id":74708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4254:1:117","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"id":74709,"kind":"modifierInvocation","modifierName":{"id":74707,"name":"reinitializer","nameLocations":["4240:13:117"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"4240:13:117"},"nodeType":"ModifierInvocation","src":"4240:16:117"}],"name":"initializeV3","nameLocation":"4204:12:117","parameters":{"id":74706,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74705,"mutability":"mutable","name":"_owner","nameLocation":"4225:6:117","nodeType":"VariableDeclaration","scope":74716,"src":"4217:14:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74704,"name":"address","nodeType":"ElementaryTypeName","src":"4217:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4216:16:117"},"returnParameters":{"id":74710,"nodeType":"ParameterList","parameters":[],"src":"4257:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74799,"nodeType":"FunctionDefinition","src":"4305:843:117","nodes":[],"body":{"id":74798,"nodeType":"Block","src":"4467:681:117","nodes":[],"statements":[{"expression":{"id":74729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74724,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74719,"src":"4477:6:117","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74726,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4484:6:117","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70779,"src":"4477:13:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74728,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4493:7:117","subExpression":{"id":74727,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74537,"src":"4493:5:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4477:23:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74730,"nodeType":"ExpressionStatement","src":"4477:23:117"},{"expression":{"id":74738,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74731,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74719,"src":"4510:6:117","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74733,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4517:16:117","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70781,"src":"4510:23:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":74736,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"4544:4:117","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74913","typeString":"contract RegistryFactoryFacet"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74913","typeString":"contract RegistryFactoryFacet"}],"id":74735,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4536:7:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74734,"name":"address","nodeType":"ElementaryTypeName","src":"4536:7:117","typeDescriptions":{}}},"id":74737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4536:13:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4510:39:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74739,"nodeType":"ExpressionStatement","src":"4510:39:117"},{"assignments":[74742],"declarations":[{"constant":false,"id":74742,"mutability":"mutable","name":"proxy","nameLocation":"4573:5:117","nodeType":"VariableDeclaration","scope":74798,"src":"4560:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":74741,"nodeType":"UserDefinedTypeName","pathNode":{"id":74740,"name":"ERC1967Proxy","nameLocations":["4560:12:117"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"4560:12:117"},"referencedDeclaration":55021,"src":"4560:12:117","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":74762,"initialValue":{"arguments":[{"arguments":[{"id":74748,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74546,"src":"4619:25:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74747,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4611:7:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74746,"name":"address","nodeType":"ElementaryTypeName","src":"4611:7:117","typeDescriptions":{}}},"id":74749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4611:34:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":74752,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"4699:21:117","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74753,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4721:10:117","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71485,"src":"4699:32:117","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":74754,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4732:8:117","memberName":"selector","nodeType":"MemberAccess","src":"4699:41:117","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":74755,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74719,"src":"4742:6:117","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":74756,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74548,"src":"4750:16:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74757,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74550,"src":"4768:23:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74758,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70689],"referencedDeclaration":70689,"src":"4793:5:117","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4793:7:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74750,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4659:3:117","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":74751,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4663:18:117","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"4659:22:117","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":74760,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4659:155:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":74745,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"4581:16:117","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":74744,"nodeType":"UserDefinedTypeName","pathNode":{"id":74743,"name":"ERC1967Proxy","nameLocations":["4585:12:117"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"4585:12:117"},"referencedDeclaration":55021,"src":"4585:12:117","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":74761,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4581:243:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"4560:264:117"},{"assignments":[74765],"declarations":[{"constant":false,"id":74765,"mutability":"mutable","name":"registryCommunity","nameLocation":"4857:17:117","nodeType":"VariableDeclaration","scope":74798,"src":"4835:39:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":74764,"nodeType":"UserDefinedTypeName","pathNode":{"id":74763,"name":"RegistryCommunityV0_0","nameLocations":["4835:21:117"],"nodeType":"IdentifierPath","referencedDeclaration":72700,"src":"4835:21:117"},"referencedDeclaration":72700,"src":"4835:21:117","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":74775,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":74771,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74742,"src":"4915:5:117","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":74770,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4907:7:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74769,"name":"address","nodeType":"ElementaryTypeName","src":"4907:7:117","typeDescriptions":{}}},"id":74772,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4907:14:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74768,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4899:8:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":74767,"name":"address","nodeType":"ElementaryTypeName","src":"4899:8:117","stateMutability":"payable","typeDescriptions":{}}},"id":74773,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4899:23:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":74766,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"4877:21:117","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74774,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4877:46:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"4835:88:117"},{"expression":{"id":74784,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74776,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74542,"src":"4983:15:117","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74781,"indexExpression":{"arguments":[{"id":74779,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74765,"src":"5007:17:117","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":74778,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4999:7:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74777,"name":"address","nodeType":"ElementaryTypeName","src":"4999:7:117","typeDescriptions":{}}},"id":74780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4999:26:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4983:43:117","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74532_storage","typeString":"struct CommunityInfo storage ref"}},"id":74782,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5027:5:117","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74531,"src":"4983:49:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":74783,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5035:4:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"4983:56:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74785,"nodeType":"ExpressionStatement","src":"4983:56:117"},{"eventCall":{"arguments":[{"arguments":[{"id":74789,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74765,"src":"5079:17:117","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":74788,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5071:7:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74787,"name":"address","nodeType":"ElementaryTypeName","src":"5071:7:117","typeDescriptions":{}}},"id":74790,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5071:26:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74786,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74564,"src":"5054:16:117","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74791,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5054:44:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74792,"nodeType":"EmitStatement","src":"5049:49:117"},{"expression":{"arguments":[{"id":74795,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74765,"src":"5123:17:117","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":74794,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5115:7:117","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74793,"name":"address","nodeType":"ElementaryTypeName","src":"5115:7:117","typeDescriptions":{}}},"id":74796,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5115:26:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":74723,"id":74797,"nodeType":"Return","src":"5108:33:117"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"4314:14:117","parameters":{"id":74720,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74719,"mutability":"mutable","name":"params","nameLocation":"4374:6:117","nodeType":"VariableDeclaration","scope":74799,"src":"4329:51:117","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":74718,"nodeType":"UserDefinedTypeName","pathNode":{"id":74717,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["4329:37:117"],"nodeType":"IdentifierPath","referencedDeclaration":70795,"src":"4329:37:117"},"referencedDeclaration":70795,"src":"4329:37:117","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"4328:53:117"},"returnParameters":{"id":74723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74722,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"4438:23:117","nodeType":"VariableDeclaration","scope":74799,"src":"4430:31:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74721,"name":"address","nodeType":"ElementaryTypeName","src":"4430:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4429:33:117"},"scope":74913,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74819,"nodeType":"FunctionDefinition","src":"5154:222:117","nodes":[],"body":{"id":74818,"nodeType":"Block","src":"5232:144:117","nodes":[],"statements":[{"expression":{"arguments":[{"id":74807,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74801,"src":"5261:15:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74806,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74592,"src":"5242:18:117","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74808,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5242:35:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74809,"nodeType":"ExpressionStatement","src":"5242:35:117"},{"expression":{"id":74812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74810,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74544,"src":"5287:18:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74811,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74801,"src":"5308:15:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"5287:36:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74813,"nodeType":"ExpressionStatement","src":"5287:36:117"},{"eventCall":{"arguments":[{"id":74815,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74801,"src":"5353:15:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74814,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74554,"src":"5338:14:117","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5338:31:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74817,"nodeType":"EmitStatement","src":"5333:36:117"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":74804,"kind":"modifierInvocation","modifierName":{"id":74803,"name":"onlyOwner","nameLocations":["5222:9:117"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"5222:9:117"},"nodeType":"ModifierInvocation","src":"5222:9:117"}],"name":"setReceiverAddress","nameLocation":"5163:18:117","parameters":{"id":74802,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74801,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"5190:15:117","nodeType":"VariableDeclaration","scope":74819,"src":"5182:23:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74800,"name":"address","nodeType":"ElementaryTypeName","src":"5182:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5181:25:117"},"returnParameters":{"id":74805,"nodeType":"ParameterList","parameters":[],"src":"5232:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74827,"nodeType":"FunctionDefinition","src":"5382:115:117","nodes":[],"body":{"id":74826,"nodeType":"Block","src":"5455:42:117","nodes":[],"statements":[{"expression":{"id":74824,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74544,"src":"5472:18:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":74823,"id":74825,"nodeType":"Return","src":"5465:25:117"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"5391:21:117","parameters":{"id":74820,"nodeType":"ParameterList","parameters":[],"src":"5412:2:117"},"returnParameters":{"id":74823,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74822,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74827,"src":"5446:7:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74821,"name":"address","nodeType":"ElementaryTypeName","src":"5446:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5445:9:117"},"scope":74913,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":74849,"nodeType":"FunctionDefinition","src":"5503:218:117","nodes":[],"body":{"id":74848,"nodeType":"Block","src":"5597:124:117","nodes":[],"statements":[{"expression":{"id":74841,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74836,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74542,"src":"5607:15:117","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74838,"indexExpression":{"id":74837,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74829,"src":"5623:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5607:27:117","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74532_storage","typeString":"struct CommunityInfo storage ref"}},"id":74839,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5635:3:117","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":74529,"src":"5607:31:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74840,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74831,"src":"5641:15:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5607:49:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74842,"nodeType":"ExpressionStatement","src":"5607:49:117"},{"eventCall":{"arguments":[{"id":74844,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74829,"src":"5686:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74845,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74831,"src":"5698:15:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":74843,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74560,"src":"5671:14:117","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":74846,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5671:43:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74847,"nodeType":"EmitStatement","src":"5666:48:117"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":74834,"kind":"modifierInvocation","modifierName":{"id":74833,"name":"onlyOwner","nameLocations":["5587:9:117"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"5587:9:117"},"nodeType":"ModifierInvocation","src":"5587:9:117"}],"name":"setProtocolFee","nameLocation":"5512:14:117","parameters":{"id":74832,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74829,"mutability":"mutable","name":"_community","nameLocation":"5535:10:117","nodeType":"VariableDeclaration","scope":74849,"src":"5527:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74828,"name":"address","nodeType":"ElementaryTypeName","src":"5527:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74831,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"5555:15:117","nodeType":"VariableDeclaration","scope":74849,"src":"5547:23:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74830,"name":"uint256","nodeType":"ElementaryTypeName","src":"5547:7:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5526:45:117"},"returnParameters":{"id":74835,"nodeType":"ParameterList","parameters":[],"src":"5597:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74871,"nodeType":"FunctionDefinition","src":"5727:208:117","nodes":[],"body":{"id":74870,"nodeType":"Block","src":"5817:118:117","nodes":[],"statements":[{"expression":{"id":74863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74858,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74542,"src":"5827:15:117","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74860,"indexExpression":{"id":74859,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74851,"src":"5843:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5827:27:117","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74532_storage","typeString":"struct CommunityInfo storage ref"}},"id":74861,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5855:5:117","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74531,"src":"5827:33:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74862,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74853,"src":"5863:8:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5827:44:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74864,"nodeType":"ExpressionStatement","src":"5827:44:117"},{"eventCall":{"arguments":[{"id":74866,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74851,"src":"5907:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74867,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74853,"src":"5919:8:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":74865,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74570,"src":"5886:20:117","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":74868,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5886:42:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74869,"nodeType":"EmitStatement","src":"5881:47:117"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":74856,"kind":"modifierInvocation","modifierName":{"id":74855,"name":"onlyOwner","nameLocations":["5807:9:117"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"5807:9:117"},"nodeType":"ModifierInvocation","src":"5807:9:117"}],"name":"setCommunityValidity","nameLocation":"5736:20:117","parameters":{"id":74854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74851,"mutability":"mutable","name":"_community","nameLocation":"5765:10:117","nodeType":"VariableDeclaration","scope":74871,"src":"5757:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74850,"name":"address","nodeType":"ElementaryTypeName","src":"5757:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74853,"mutability":"mutable","name":"_isValid","nameLocation":"5782:8:117","nodeType":"VariableDeclaration","scope":74871,"src":"5777:13:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74852,"name":"bool","nodeType":"ElementaryTypeName","src":"5777:4:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5756:35:117"},"returnParameters":{"id":74857,"nodeType":"ParameterList","parameters":[],"src":"5817:0:117"},"scope":74913,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74884,"nodeType":"FunctionDefinition","src":"5941:144:117","nodes":[],"body":{"id":74883,"nodeType":"Block","src":"6028:57:117","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":74878,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74542,"src":"6045:15:117","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74880,"indexExpression":{"id":74879,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74873,"src":"6061:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6045:27:117","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74532_storage","typeString":"struct CommunityInfo storage ref"}},"id":74881,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6073:5:117","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74531,"src":"6045:33:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":74877,"id":74882,"nodeType":"Return","src":"6038:40:117"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"5950:20:117","parameters":{"id":74874,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74873,"mutability":"mutable","name":"_community","nameLocation":"5979:10:117","nodeType":"VariableDeclaration","scope":74884,"src":"5971:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74872,"name":"address","nodeType":"ElementaryTypeName","src":"5971:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5970:20:117"},"returnParameters":{"id":74877,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74876,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74884,"src":"6022:4:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74875,"name":"bool","nodeType":"ElementaryTypeName","src":"6022:4:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"6021:6:117"},"scope":74913,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":74908,"nodeType":"FunctionDefinition","src":"6091:249:117","nodes":[],"body":{"id":74907,"nodeType":"Block","src":"6175:165:117","nodes":[],"statements":[{"condition":{"id":74895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"6189:34:117","subExpression":{"expression":{"baseExpression":{"id":74891,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74542,"src":"6190:15:117","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74893,"indexExpression":{"id":74892,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74886,"src":"6206:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6190:27:117","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74532_storage","typeString":"struct CommunityInfo storage ref"}},"id":74894,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6218:5:117","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74531,"src":"6190:33:117","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74901,"nodeType":"IfStatement","src":"6185:100:117","trueBody":{"id":74900,"nodeType":"Block","src":"6225:60:117","statements":[{"errorCall":{"arguments":[{"id":74897,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74886,"src":"6263:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74896,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74574,"src":"6246:16:117","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74898,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6246:28:117","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74899,"nodeType":"RevertStatement","src":"6239:35:117"}]}},{"expression":{"expression":{"baseExpression":{"id":74902,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74542,"src":"6302:15:117","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74532_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74904,"indexExpression":{"id":74903,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74886,"src":"6318:10:117","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6302:27:117","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74532_storage","typeString":"struct CommunityInfo storage ref"}},"id":74905,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6330:3:117","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":74529,"src":"6302:31:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":74890,"id":74906,"nodeType":"Return","src":"6295:38:117"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"6100:14:117","parameters":{"id":74887,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74886,"mutability":"mutable","name":"_community","nameLocation":"6123:10:117","nodeType":"VariableDeclaration","scope":74908,"src":"6115:18:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74885,"name":"address","nodeType":"ElementaryTypeName","src":"6115:7:117","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6114:20:117"},"returnParameters":{"id":74890,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74889,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74908,"src":"6166:7:117","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74888,"name":"uint256","nodeType":"ElementaryTypeName","src":"6166:7:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6165:9:117"},"scope":74913,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":74912,"nodeType":"VariableDeclaration","src":"6346:25:117","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"6366:5:117","scope":74913,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74909,"name":"uint256","nodeType":"ElementaryTypeName","src":"6346:7:117","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74911,"length":{"hexValue":"3530","id":74910,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6354:2:117","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"6346:11:117","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74534,"name":"ProxyOwnableUpgrader","nameLocations":["651:20:117"],"nodeType":"IdentifierPath","referencedDeclaration":70711,"src":"651:20:117"},"id":74535,"nodeType":"InheritanceSpecifier","src":"651:20:117"}],"canonicalName":"RegistryFactoryFacet","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":74533,"nodeType":"StructuredDocumentation","src":"572:45:117","text":"@custom:oz-upgrades-from RegistryFactory"},"fullyImplemented":true,"linearizedBaseContracts":[74913,70711,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryFacet","nameLocation":"627:20:117","scope":74914,"usedErrors":[70634,74574,74576]}],"license":"AGPL-3.0-only"},"id":117} \ No newline at end of file +{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"cutsCommunity","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"}],"stateMutability":"view"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_cuts","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b50608051612a1561004c6000396000818161073c0152818161077f01528181610810015281816108530152610b980152612a156000f3fe6080604052600436106200014c5760003560e01c806302c1d0b114620001515780630a992e0c146200018b5780631459457a14620001bf5780631b71f0e414620001e65780633659cfe6146200020b5780634f1ef28614620002305780634f1f4c0c146200024757806352d1902d146200026c5780635a2c8ace14620002845780635c94e4d214620002a95780635decae0214620002cb578063715018a614620002f057806377122d5614620003085780638279c7db146200032a5780638da5cb5b146200034f57806390a74e2e1462000367578063987435be146200039c578063affed0e014620003bc578063b0d3713a14620003d4578063b5b3ca2c14620003f9578063b8bed901146200041e578063beb331a31462000440578063c4d66de81462000465578063f2fde38b146200048a578063f5016b5e14620004af578063ffa1ad741462000500575b600080fd5b3480156200015e57600080fd5b5060685462000173906001600160a01b031681565b604051620001829190620017d8565b60405180910390f35b3480156200019857600080fd5b50620001b0620001aa36600462001814565b62000535565b60405190815260200162000182565b348015620001cc57600080fd5b50620001e4620001de36600462001834565b6200059b565b005b348015620001f357600080fd5b50620001e46200020536600462001814565b62000706565b3480156200021857600080fd5b50620001e46200022a36600462001814565b62000732565b620001e4620002413660046200196e565b62000806565b3480156200025457600080fd5b50620001e462000266366004620019d8565b620008cb565b3480156200027957600080fd5b50620001b062000b8b565b3480156200029157600080fd5b50620001e4620002a336600462001ab0565b62000c3c565b348015620002b657600080fd5b5060695462000173906001600160a01b031681565b348015620002d857600080fd5b50620001e4620002ea36600462001814565b62000cad565b348015620002fd57600080fd5b50620001e462000cd9565b3480156200031557600080fd5b50606a5462000173906001600160a01b031681565b3480156200033757600080fd5b50620001e46200034936600462001814565b62000cf1565b3480156200035c57600080fd5b506200017362000d4d565b3480156200037457600080fd5b506200038c6200038636600462001aea565b62000dee565b6040516200018292919062001b3d565b348015620003a957600080fd5b506067546001600160a01b031662000173565b348015620003c957600080fd5b50620001b060655481565b348015620003e157600080fd5b50620001e4620003f336600462001814565b62000e29565b3480156200040657600080fd5b50620001e46200041836600462001b5c565b62000e55565b3480156200042b57600080fd5b5060675462000173906001600160a01b031681565b3480156200044d57600080fd5b50620001736200045f36600462001c23565b62000eb1565b3480156200047257600080fd5b50620001e46200048436600462001814565b620010c2565b3480156200049757600080fd5b50620001e4620004a936600462001814565b6200113a565b348015620004bc57600080fd5b50620004ef620004ce36600462001814565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000182565b3480156200050d57600080fd5b506040805180820182526003815262302e3160e81b6020820152905162000182919062001dd2565b6001600160a01b03811660009081526066602052604081206001015460ff166200057f578160405163f5a6943d60e01b8152600401620005769190620017d8565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005bc5750600054600160ff909116105b80620005e15750620005ce30620011ab565b158015620005e1575060005460ff166001145b620006005760405162461bcd60e51b8152600401620005769062001de7565b6000805460ff19166001179055801562000624576000805461ff0019166101001790555b6200062f86620010c2565b60006065556200063f85620011ba565b6200064a84620011ba565b6200065582620011ba565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a805492851692909116919091179055604051600080516020620029c083398151915290620006c0908790620017d8565b60405180910390a18015620006fe576000805461ff001916905560405160018152600080516020620029798339815191529060200160405180910390a15b505050505050565b62000710620011e2565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200077d5760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007b162001245565b6001600160a01b031614620007da5760405162461bcd60e51b8152600401620005769062001e70565b620007e58162001262565b604080516000808252602082019092526200080391839190620012b4565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008515760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200088562001245565b6001600160a01b031614620008ae5760405162461bcd60e51b8152600401620005769062001e70565b620008b98262001262565b620008c782826001620012b4565b5050565b620008d5620011e2565b600054600290610100900460ff16158015620008f8575060005460ff8083169116105b620009175760405162461bcd60e51b8152600401620005769062001de7565b6000805461ffff191660ff83161761010017905562000936876200113a565b6200094186620011ba565b6200094c82620011ba565b606880546001600160a01b038089166001600160a01b03199283161790925560698054868416908316179055606a80549285169290911691909117905560005b8481101562000b5157609d6040518060600160405280888885818110620009b757620009b762001eab565b9050602002810190620009cb919062001ec1565b620009db90602081019062001814565b6001600160a01b03168152602001888885818110620009fe57620009fe62001eab565b905060200281019062000a12919062001ec1565b62000a2590604081019060200162001ee2565b600281111562000a395762000a3962001b04565b815260200188888581811062000a535762000a5362001eab565b905060200281019062000a67919062001ec1565b62000a7790604081019062001f05565b80806020026020016040519081016040528093929190818152602001838360200280828437600092018290525093909452505083546001810185559381526020908190208351600295860290910180546001600160a01b031981166001600160a01b0390931692831782559285015194959094935084926001600160a81b03191690911790600160a01b90849081111562000b165762000b1662001b04565b02179055506040820151805162000b38916001840191602090910190620016f7565b505050808062000b489062001f58565b9150506200098c565b506000805461ff001916905560405160ff82168152600080516020620029798339815191529060200160405180910390a150505050505050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462000c285760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000576565b506000805160206200295983398151915290565b62000c46620011e2565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b62000cb7620011e2565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000ce3620011e2565b62000cef600062001431565b565b62000cfb620011e2565b62000d0681620011ba565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620029c08339815191529062000d42908390620017d8565b60405180910390a150565b60008062000d636033546001600160a01b031690565b9050806001600160a01b03163b60000362000d7d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000dda575060408051601f3d908101601f1916820190925262000dd79181019062001f80565b60015b62000de457919050565b92915050565b5090565b609d818154811062000dff57600080fd5b60009182526020909120600290910201546001600160a01b0381169150600160a01b900460ff1682565b62000e33620011e2565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000e5f620011e2565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000ca1565b606580546000918262000ec48362001f58565b9091555060808301523060a08301526068546000906001600160a01b0316638c5f36bb60e01b62000ef462000d4d565b60405160240162000f069190620017d8565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000f4590620017a6565b62000f5292919062001fa0565b604051809103906000f08015801562000f6f573d6000803e3d6000fd5b506040516307e4c70760e21b81529091506001600160a01b03821690631f931c1c9062000fa590609d9060009060040162001fd4565b600060405180830381600087803b15801562000fc057600080fd5b505af115801562000fd5573d6000803e3d6000fd5b5050606954606a548493506001600160a01b038085169350633419635592889290821691166200100462000d4d565b6040518563ffffffff1660e01b8152600401620010259493929190620022d6565b600060405180830381600087803b1580156200104057600080fd5b505af115801562001055573d6000803e3d6000fd5b5050506001600160a01b038216600090815260666020526040908190206001908101805460ff19169091179055517fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299150620010b3908390620017d8565b60405180910390a19392505050565b600054610100900460ff166200112f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000576565b620008038162001431565b62001144620011e2565b6001600160a01b0381166200112f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000576565b6001600160a01b03163b151590565b6001600160a01b03811662000803576040516303988b8160e61b815260040160405180910390fd5b33620011ed62000d4d565b6001600160a01b03161462000cef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000576565b60008051602062002959833981519152546001600160a01b031690565b336200126d62000d4d565b6001600160a01b0316146200080357336200128762000d4d565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000576565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620012ef57620012ea8362001483565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156200134c575060408051601f3d908101601f1916820190925262001349918101906200241e565b60015b620013b15760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000576565b600080516020620029598339815191528114620014235760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000576565b50620012ea83838362001522565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6200148e81620011ab565b620014f25760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000576565b6000805160206200295983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200152d8362001553565b6000825111806200153b5750805b15620012ea576200154d838362001595565b50505050565b6200155e8162001483565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620015bd83836040518060600160405280602781526020016200299960279139620015c4565b9392505050565b6060600080856001600160a01b031685604051620015e3919062002438565b600060405180830381855af49150503d806000811462001620576040519150601f19603f3d011682016040523d82523d6000602084013e62001625565b606091505b5091509150620016388683838762001642565b9695505050505050565b60608315620016b6578251600003620016ae576200166085620011ab565b620016ae5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000576565b5081620016c2565b620016c28383620016ca565b949350505050565b815115620016db5781518083602001fd5b8060405162461bcd60e51b815260040162000576919062001dd2565b82805482825590600052602060002090600701600890048101928215620017985791602002820160005b838211156200176457835183826101000a81548163ffffffff021916908360e01c0217905550926020019260040160208160030104928301926001030262001721565b8015620017965782816101000a81549063ffffffff021916905560040160208160030104928301926001030262001764565b505b5062000dea929150620017b4565b6104ec806200244d83390190565b5b8082111562000dea5760008155600101620017b5565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200080357600080fd5b80356200180f81620017ec565b919050565b6000602082840312156200182757600080fd5b8135620015bd81620017ec565b600080600080600060a086880312156200184d57600080fd5b85356200185a81620017ec565b945060208601356200186c81620017ec565b935060408601356200187e81620017ec565b925060608601356200189081620017ec565b91506080860135620018a281620017ec565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b0381118282101715620018ec57620018ec620018b0565b60405290565b60006001600160401b03808411156200190f576200190f620018b0565b604051601f8501601f19908116603f011681019082821181831017156200193a576200193a620018b0565b816040528093508581528686860111156200195457600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200198257600080fd5b82356200198f81620017ec565b915060208301356001600160401b03811115620019ab57600080fd5b8301601f81018513620019bd57600080fd5b620019ce85823560208401620018f2565b9150509250929050565b60008060008060008060a08789031215620019f257600080fd5b8635620019ff81620017ec565b9550602087013562001a1181620017ec565b945060408701356001600160401b038082111562001a2e57600080fd5b818901915089601f83011262001a4357600080fd5b81358181111562001a5357600080fd5b8a60208260051b850101111562001a6957600080fd5b60208301965080955050505062001a836060880162001802565b915062001a936080880162001802565b90509295509295509295565b803580151581146200180f57600080fd5b6000806040838503121562001ac457600080fd5b823562001ad181620017ec565b915062001ae16020840162001a9f565b90509250929050565b60006020828403121562001afd57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6003811062001b3957634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038316815260408101620015bd602083018462001b1a565b6000806040838503121562001b7057600080fd5b823562001b7d81620017ec565b946020939093013593505050565b600082601f83011262001b9d57600080fd5b620015bd83833560208501620018f2565b60006040828403121562001bc157600080fd5b604080519081016001600160401b03808211838310171562001be75762001be7620018b0565b8160405282935084358352602085013591508082111562001c0757600080fd5b5062001c168582860162001b8b565b6020830152505092915050565b60006020828403121562001c3657600080fd5b81356001600160401b038082111562001c4e57600080fd5b90830190610180828603121562001c6457600080fd5b62001c6e620018c6565b62001c798362001802565b815262001c896020840162001802565b602082015260408301356040820152606083013560608201526080830135608082015262001cba60a0840162001802565b60a082015262001ccd60c0840162001802565b60c082015260e08301358281111562001ce557600080fd5b62001cf38782860162001bae565b60e08301525061010062001d0981850162001802565b90820152610120838101358381111562001d2257600080fd5b62001d308882870162001b8b565b82840152505061014062001d4681850162001a9f565b90820152610160838101358381111562001d5f57600080fd5b62001d6d8882870162001b8b565b918301919091525095945050505050565b60005b8381101562001d9b57818101518382015260200162001d81565b50506000910152565b6000815180845262001dbe81602086016020860162001d7e565b601f01601f19169290920160200192915050565b602081526000620015bd602083018462001da4565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60008235605e1983360301811262001ed857600080fd5b9190910192915050565b60006020828403121562001ef557600080fd5b813560038110620015bd57600080fd5b6000808335601e1984360301811262001f1d57600080fd5b8301803591506001600160401b0382111562001f3857600080fd5b6020019150600581901b360382131562001f5157600080fd5b9250929050565b60006001820162001f7957634e487b7160e01b600052601160045260246000fd5b5060010190565b60006020828403121562001f9357600080fd5b8151620015bd81620017ec565b6001600160a01b0383168152604060208201819052600090620016c29083018462001da4565b6001600160e01b0319169052565b60608152600060608201845480825260808401915060808160051b8501018660005260208060002060005b848110156200228957878403607f1901865281546001600160a01b038116855260608501906200203985870160a083901c60ff1662001b1a565b506060604086015260018381018054808452600091825260208083209401905b806007840110156200212157845462002076838260e01b62001fc6565b6001600160e01b031962002093848b0160c084901b831662001fc6565b620020a760408501828460a01b1662001fc6565b620020bb60608501828460801b1662001fc6565b620020cf60808501828460601b1662001fc6565b620020e360a08501828460401b1662001fc6565b620020f660c0850182848d1b1662001fc6565b6200210760e0850182841662001fc6565b505061010082019150838501945060088301925062002059565b9354938083101562002145576200213c828660e01b62001fc6565b91830191908701905b808310156200217157620021688260c087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200219d57620021948260a087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021c957620021c082608087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021f557620021ec82606087901b6001600160e01b03191662001fc6565b91830191908701905b8083101562002221576200221882604087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200224b576200224282868a1b6001600160e01b03191662001fc6565b91830191908701905b808310156200226f576200226a826001600160e01b0319871662001fc6565b908701905b509886019896505050600292909201915060010162001fff565b50506200229981870188620017cb565b5084810360408601526000815260208101979650505050505050565b805182526000602082015160406020850152620016c2604085018262001da4565b60808152620022ea608082018651620017cb565b600060208601516200230060a0840182620017cb565b50604086015160c0830152606086015160e08301526080860151610100818185015260a088015191506101206200233a81860184620017cb565b60c089015192506101406200235281870185620017cb565b60e08a01519350610180610160818189015262002374610200890187620022b5565b948c01519495506200238988830186620017cb565b838c01519450607f19935083888703016101a0890152620023ab868662001da4565b9550828c01519450620023c36101c089018615159052565b808c0151945050505080858403016101e086015250620023e4828262001da4565b92505050620023f76020830186620017cb565b620024066040830185620017cb565b620024156060830184620017cb565b95945050505050565b6000602082840312156200243157600080fd5b5051919050565b6000825162001ed881846020870162001d7e56fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220dafeddf6f9a5a991f315268eeaa99492bbcf382c81b1b686bf227b30551269cc64736f6c63430008130033","sourceMap":"1002:2516:114:-:0;;;1088:4:64;1045:48;;1002:2516:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106200014c5760003560e01c806302c1d0b114620001515780630a992e0c146200018b5780631459457a14620001bf5780631b71f0e414620001e65780633659cfe6146200020b5780634f1ef28614620002305780634f1f4c0c146200024757806352d1902d146200026c5780635a2c8ace14620002845780635c94e4d214620002a95780635decae0214620002cb578063715018a614620002f057806377122d5614620003085780638279c7db146200032a5780638da5cb5b146200034f57806390a74e2e1462000367578063987435be146200039c578063affed0e014620003bc578063b0d3713a14620003d4578063b5b3ca2c14620003f9578063b8bed901146200041e578063beb331a31462000440578063c4d66de81462000465578063f2fde38b146200048a578063f5016b5e14620004af578063ffa1ad741462000500575b600080fd5b3480156200015e57600080fd5b5060685462000173906001600160a01b031681565b604051620001829190620017d8565b60405180910390f35b3480156200019857600080fd5b50620001b0620001aa36600462001814565b62000535565b60405190815260200162000182565b348015620001cc57600080fd5b50620001e4620001de36600462001834565b6200059b565b005b348015620001f357600080fd5b50620001e46200020536600462001814565b62000706565b3480156200021857600080fd5b50620001e46200022a36600462001814565b62000732565b620001e4620002413660046200196e565b62000806565b3480156200025457600080fd5b50620001e462000266366004620019d8565b620008cb565b3480156200027957600080fd5b50620001b062000b8b565b3480156200029157600080fd5b50620001e4620002a336600462001ab0565b62000c3c565b348015620002b657600080fd5b5060695462000173906001600160a01b031681565b348015620002d857600080fd5b50620001e4620002ea36600462001814565b62000cad565b348015620002fd57600080fd5b50620001e462000cd9565b3480156200031557600080fd5b50606a5462000173906001600160a01b031681565b3480156200033757600080fd5b50620001e46200034936600462001814565b62000cf1565b3480156200035c57600080fd5b506200017362000d4d565b3480156200037457600080fd5b506200038c6200038636600462001aea565b62000dee565b6040516200018292919062001b3d565b348015620003a957600080fd5b506067546001600160a01b031662000173565b348015620003c957600080fd5b50620001b060655481565b348015620003e157600080fd5b50620001e4620003f336600462001814565b62000e29565b3480156200040657600080fd5b50620001e46200041836600462001b5c565b62000e55565b3480156200042b57600080fd5b5060675462000173906001600160a01b031681565b3480156200044d57600080fd5b50620001736200045f36600462001c23565b62000eb1565b3480156200047257600080fd5b50620001e46200048436600462001814565b620010c2565b3480156200049757600080fd5b50620001e4620004a936600462001814565b6200113a565b348015620004bc57600080fd5b50620004ef620004ce36600462001814565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000182565b3480156200050d57600080fd5b506040805180820182526003815262302e3160e81b6020820152905162000182919062001dd2565b6001600160a01b03811660009081526066602052604081206001015460ff166200057f578160405163f5a6943d60e01b8152600401620005769190620017d8565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005bc5750600054600160ff909116105b80620005e15750620005ce30620011ab565b158015620005e1575060005460ff166001145b620006005760405162461bcd60e51b8152600401620005769062001de7565b6000805460ff19166001179055801562000624576000805461ff0019166101001790555b6200062f86620010c2565b60006065556200063f85620011ba565b6200064a84620011ba565b6200065582620011ba565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a805492851692909116919091179055604051600080516020620029c083398151915290620006c0908790620017d8565b60405180910390a18015620006fe576000805461ff001916905560405160018152600080516020620029798339815191529060200160405180910390a15b505050505050565b62000710620011e2565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200077d5760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007b162001245565b6001600160a01b031614620007da5760405162461bcd60e51b8152600401620005769062001e70565b620007e58162001262565b604080516000808252602082019092526200080391839190620012b4565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008515760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200088562001245565b6001600160a01b031614620008ae5760405162461bcd60e51b8152600401620005769062001e70565b620008b98262001262565b620008c782826001620012b4565b5050565b620008d5620011e2565b600054600290610100900460ff16158015620008f8575060005460ff8083169116105b620009175760405162461bcd60e51b8152600401620005769062001de7565b6000805461ffff191660ff83161761010017905562000936876200113a565b6200094186620011ba565b6200094c82620011ba565b606880546001600160a01b038089166001600160a01b03199283161790925560698054868416908316179055606a80549285169290911691909117905560005b8481101562000b5157609d6040518060600160405280888885818110620009b757620009b762001eab565b9050602002810190620009cb919062001ec1565b620009db90602081019062001814565b6001600160a01b03168152602001888885818110620009fe57620009fe62001eab565b905060200281019062000a12919062001ec1565b62000a2590604081019060200162001ee2565b600281111562000a395762000a3962001b04565b815260200188888581811062000a535762000a5362001eab565b905060200281019062000a67919062001ec1565b62000a7790604081019062001f05565b80806020026020016040519081016040528093929190818152602001838360200280828437600092018290525093909452505083546001810185559381526020908190208351600295860290910180546001600160a01b031981166001600160a01b0390931692831782559285015194959094935084926001600160a81b03191690911790600160a01b90849081111562000b165762000b1662001b04565b02179055506040820151805162000b38916001840191602090910190620016f7565b505050808062000b489062001f58565b9150506200098c565b506000805461ff001916905560405160ff82168152600080516020620029798339815191529060200160405180910390a150505050505050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462000c285760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000576565b506000805160206200295983398151915290565b62000c46620011e2565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b62000cb7620011e2565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000ce3620011e2565b62000cef600062001431565b565b62000cfb620011e2565b62000d0681620011ba565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620029c08339815191529062000d42908390620017d8565b60405180910390a150565b60008062000d636033546001600160a01b031690565b9050806001600160a01b03163b60000362000d7d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000dda575060408051601f3d908101601f1916820190925262000dd79181019062001f80565b60015b62000de457919050565b92915050565b5090565b609d818154811062000dff57600080fd5b60009182526020909120600290910201546001600160a01b0381169150600160a01b900460ff1682565b62000e33620011e2565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000e5f620011e2565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000ca1565b606580546000918262000ec48362001f58565b9091555060808301523060a08301526068546000906001600160a01b0316638c5f36bb60e01b62000ef462000d4d565b60405160240162000f069190620017d8565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000f4590620017a6565b62000f5292919062001fa0565b604051809103906000f08015801562000f6f573d6000803e3d6000fd5b506040516307e4c70760e21b81529091506001600160a01b03821690631f931c1c9062000fa590609d9060009060040162001fd4565b600060405180830381600087803b15801562000fc057600080fd5b505af115801562000fd5573d6000803e3d6000fd5b5050606954606a548493506001600160a01b038085169350633419635592889290821691166200100462000d4d565b6040518563ffffffff1660e01b8152600401620010259493929190620022d6565b600060405180830381600087803b1580156200104057600080fd5b505af115801562001055573d6000803e3d6000fd5b5050506001600160a01b038216600090815260666020526040908190206001908101805460ff19169091179055517fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299150620010b3908390620017d8565b60405180910390a19392505050565b600054610100900460ff166200112f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000576565b620008038162001431565b62001144620011e2565b6001600160a01b0381166200112f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000576565b6001600160a01b03163b151590565b6001600160a01b03811662000803576040516303988b8160e61b815260040160405180910390fd5b33620011ed62000d4d565b6001600160a01b03161462000cef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000576565b60008051602062002959833981519152546001600160a01b031690565b336200126d62000d4d565b6001600160a01b0316146200080357336200128762000d4d565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000576565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620012ef57620012ea8362001483565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156200134c575060408051601f3d908101601f1916820190925262001349918101906200241e565b60015b620013b15760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000576565b600080516020620029598339815191528114620014235760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000576565b50620012ea83838362001522565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6200148e81620011ab565b620014f25760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000576565b6000805160206200295983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200152d8362001553565b6000825111806200153b5750805b15620012ea576200154d838362001595565b50505050565b6200155e8162001483565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620015bd83836040518060600160405280602781526020016200299960279139620015c4565b9392505050565b6060600080856001600160a01b031685604051620015e3919062002438565b600060405180830381855af49150503d806000811462001620576040519150601f19603f3d011682016040523d82523d6000602084013e62001625565b606091505b5091509150620016388683838762001642565b9695505050505050565b60608315620016b6578251600003620016ae576200166085620011ab565b620016ae5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000576565b5081620016c2565b620016c28383620016ca565b949350505050565b815115620016db5781518083602001fd5b8060405162461bcd60e51b815260040162000576919062001dd2565b82805482825590600052602060002090600701600890048101928215620017985791602002820160005b838211156200176457835183826101000a81548163ffffffff021916908360e01c0217905550926020019260040160208160030104928301926001030262001721565b8015620017965782816101000a81549063ffffffff021916905560040160208160030104928301926001030262001764565b505b5062000dea929150620017b4565b6104ec806200244d83390190565b5b8082111562000dea5760008155600101620017b5565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200080357600080fd5b80356200180f81620017ec565b919050565b6000602082840312156200182757600080fd5b8135620015bd81620017ec565b600080600080600060a086880312156200184d57600080fd5b85356200185a81620017ec565b945060208601356200186c81620017ec565b935060408601356200187e81620017ec565b925060608601356200189081620017ec565b91506080860135620018a281620017ec565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b0381118282101715620018ec57620018ec620018b0565b60405290565b60006001600160401b03808411156200190f576200190f620018b0565b604051601f8501601f19908116603f011681019082821181831017156200193a576200193a620018b0565b816040528093508581528686860111156200195457600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200198257600080fd5b82356200198f81620017ec565b915060208301356001600160401b03811115620019ab57600080fd5b8301601f81018513620019bd57600080fd5b620019ce85823560208401620018f2565b9150509250929050565b60008060008060008060a08789031215620019f257600080fd5b8635620019ff81620017ec565b9550602087013562001a1181620017ec565b945060408701356001600160401b038082111562001a2e57600080fd5b818901915089601f83011262001a4357600080fd5b81358181111562001a5357600080fd5b8a60208260051b850101111562001a6957600080fd5b60208301965080955050505062001a836060880162001802565b915062001a936080880162001802565b90509295509295509295565b803580151581146200180f57600080fd5b6000806040838503121562001ac457600080fd5b823562001ad181620017ec565b915062001ae16020840162001a9f565b90509250929050565b60006020828403121562001afd57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6003811062001b3957634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038316815260408101620015bd602083018462001b1a565b6000806040838503121562001b7057600080fd5b823562001b7d81620017ec565b946020939093013593505050565b600082601f83011262001b9d57600080fd5b620015bd83833560208501620018f2565b60006040828403121562001bc157600080fd5b604080519081016001600160401b03808211838310171562001be75762001be7620018b0565b8160405282935084358352602085013591508082111562001c0757600080fd5b5062001c168582860162001b8b565b6020830152505092915050565b60006020828403121562001c3657600080fd5b81356001600160401b038082111562001c4e57600080fd5b90830190610180828603121562001c6457600080fd5b62001c6e620018c6565b62001c798362001802565b815262001c896020840162001802565b602082015260408301356040820152606083013560608201526080830135608082015262001cba60a0840162001802565b60a082015262001ccd60c0840162001802565b60c082015260e08301358281111562001ce557600080fd5b62001cf38782860162001bae565b60e08301525061010062001d0981850162001802565b90820152610120838101358381111562001d2257600080fd5b62001d308882870162001b8b565b82840152505061014062001d4681850162001a9f565b90820152610160838101358381111562001d5f57600080fd5b62001d6d8882870162001b8b565b918301919091525095945050505050565b60005b8381101562001d9b57818101518382015260200162001d81565b50506000910152565b6000815180845262001dbe81602086016020860162001d7e565b601f01601f19169290920160200192915050565b602081526000620015bd602083018462001da4565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60008235605e1983360301811262001ed857600080fd5b9190910192915050565b60006020828403121562001ef557600080fd5b813560038110620015bd57600080fd5b6000808335601e1984360301811262001f1d57600080fd5b8301803591506001600160401b0382111562001f3857600080fd5b6020019150600581901b360382131562001f5157600080fd5b9250929050565b60006001820162001f7957634e487b7160e01b600052601160045260246000fd5b5060010190565b60006020828403121562001f9357600080fd5b8151620015bd81620017ec565b6001600160a01b0383168152604060208201819052600090620016c29083018462001da4565b6001600160e01b0319169052565b60608152600060608201845480825260808401915060808160051b8501018660005260208060002060005b848110156200228957878403607f1901865281546001600160a01b038116855260608501906200203985870160a083901c60ff1662001b1a565b506060604086015260018381018054808452600091825260208083209401905b806007840110156200212157845462002076838260e01b62001fc6565b6001600160e01b031962002093848b0160c084901b831662001fc6565b620020a760408501828460a01b1662001fc6565b620020bb60608501828460801b1662001fc6565b620020cf60808501828460601b1662001fc6565b620020e360a08501828460401b1662001fc6565b620020f660c0850182848d1b1662001fc6565b6200210760e0850182841662001fc6565b505061010082019150838501945060088301925062002059565b9354938083101562002145576200213c828660e01b62001fc6565b91830191908701905b808310156200217157620021688260c087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200219d57620021948260a087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021c957620021c082608087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021f557620021ec82606087901b6001600160e01b03191662001fc6565b91830191908701905b8083101562002221576200221882604087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200224b576200224282868a1b6001600160e01b03191662001fc6565b91830191908701905b808310156200226f576200226a826001600160e01b0319871662001fc6565b908701905b509886019896505050600292909201915060010162001fff565b50506200229981870188620017cb565b5084810360408601526000815260208101979650505050505050565b805182526000602082015160406020850152620016c2604085018262001da4565b60808152620022ea608082018651620017cb565b600060208601516200230060a0840182620017cb565b50604086015160c0830152606086015160e08301526080860151610100818185015260a088015191506101206200233a81860184620017cb565b60c089015192506101406200235281870185620017cb565b60e08a01519350610180610160818189015262002374610200890187620022b5565b948c01519495506200238988830186620017cb565b838c01519450607f19935083888703016101a0890152620023ab868662001da4565b9550828c01519450620023c36101c089018615159052565b808c0151945050505080858403016101e086015250620023e4828262001da4565b92505050620023f76020830186620017cb565b620024066040830185620017cb565b620024156060830184620017cb565b95945050505050565b6000602082840312156200243157600080fd5b5051919050565b6000825162001ed881846020870162001d7e56fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220dafeddf6f9a5a991f315268eeaa99492bbcf382c81b1b686bf227b30551269cc64736f6c63430008130033","sourceMap":"1002:2516:114:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40:106;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:131;;;992:2;977:18;4804:249:106;858:177:131;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;1114:866:114:-;;;;;;;;;;-1:-1:-1;1114:866:114;;;;;:::i;:::-;;:::i;2762:131:64:-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;1858:136;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;1064:43:114:-;;;;;;;;;;-1:-1:-1;1064:43:114;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;1986:1394:114;;;;;;;;;;-1:-1:-1;1986:1394:114;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;9167:14:131;;9160:22;9142:41;;9130:2;9115:18;4654:144:106;9002:187:131;3390:93:114;;;;;;;;;;-1:-1:-1;3464:12:114;;;;;;;;;;;-1:-1:-1;;;3464:12:114;;;;3390:93;;;;3464:12;3390:93;:::i;4804:249:106:-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;10819:36:131;;-1:-1:-1;;;;;;;;;;;3721:14:47;10807:2:131;10792:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;1114:866:114:-;1355:13:45;:11;:13::i;:::-;4882::47::1;::::0;1370:1:114::1;::::0;4882:13:47::1;::::0;::::1;;;4881:14;:40:::0;::::1;;;-1:-1:-1::0;4899:12:47::1;::::0;:22:::1;::::0;;::::1;:12:::0;::::1;:22;4881:40;4873:99;;;;-1:-1:-1::0;;;4873:99:47::1;;;;;;;:::i;:::-;4982:12;:22:::0;;-1:-1:-1;;5014:20:47;4982:22:::1;::::0;::::1;5014:20:::0;4982:22:::1;5014:20;::::0;;1383:25:114::2;1401:6:::0;1383:17:::2;:25::i;:::-;1418:46;1437:26;1418:18;:46::i;:::-;1474:44;1493:24;1474:18;:44::i;:::-;1528:25;:54:::0;;-1:-1:-1;;;;;1528:54:114;;::::2;-1:-1:-1::0;;;;;;1528:54:114;;::::2;;::::0;;;1592:16:::2;:36:::0;;;;::::2;::::0;;::::2;;::::0;;1638:23:::2;:50:::0;;;;::::2;::::0;;;::::2;::::0;;;::::2;::::0;;1528:25:::2;1698:275;1715:16:::0;;::::2;1698:275;;;1752:13;1771:190;;;;;;;;1821:5;;1827:1;1821:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:21;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;;;;;1771:190:114::2;;;;;1868:5;;1874:1;1868:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:15;::::0;;;;;::::2;;;:::i;:::-;1771:190;;;;;;;;:::i;:::-;;;;;1920:5;;1926:1;1920:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:26;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;1771:190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;::::0;;;-1:-1:-1;1771:190:114;;;;-1:-1:-1;;1752:210:114;;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;-1:-1:-1;;;;;;1752:210:114;::::2;-1:-1:-1::0;;;;;1752:210:114;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;;;;;;-1:-1:-1;1752:210:114;;-1:-1:-1;;;;;;1752:210:114;;;;;-1:-1:-1;;;1752:210:114;;;;::::2;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;1752:210:114::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;::::2;:::i;:::-;;;;1733:3;;;;;:::i;:::-;;;;1698:275;;;-1:-1:-1::0;5071:5:47::1;5055:21:::0;;-1:-1:-1;;5055:21:47::1;::::0;;5091:20:::1;::::0;10849:4:131;10837:17;;10819:36;;-1:-1:-1;;;;;;;;;;;5091:20:47;10807:2:131;10792:18;5091:20:47::1;;;;;;;1378:1:45;1114:866:114::0;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;13613:2:131;2064:92:64;;;13595:21:131;13652:2;13632:18;;;13625:30;13691:34;13671:18;;;13664:62;-1:-1:-1;;;13742:18:131;;;13735:54;13806:19;;2064:92:64;13411:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;14004:51:131;;;14071:18;;;14064:50;4599:42:106::1;::::0;13977:18:131;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;1858:136::-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;:::-;;;;;;;;3867:222:::0;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;872:241::-;581:548;525:604;:::o;1064:43:114:-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1064:43:114;;;-1:-1:-1;;;;1064:43:114;;;;;:::o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;14555:51:131;;;14622:18;;14615:34;;;4384:43:106::1;::::0;14528:18:131;4384:43:106::1;14381:274:131::0;1986:1394:114;2191:5;:7;;2128:31;;;2191:7;;;:::i;:::-;;;;-1:-1:-1;2175:13:114;;;:23;2242:4;2208:23;;;:39;2318:25;;-1:-1:-1;;;;;;;2318:25:114;-1:-1:-1;;;2419:7:114;:5;:7::i;:::-;2358:69;;;;;;;;:::i;:::-;;;;-1:-1:-1;;2358:69:114;;;;;;;;;;;;;;-1:-1:-1;;;;;2358:69:114;-1:-1:-1;;;;;;2358:69:114;;;;;;;;;;2280:157;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2448:69:114;;-1:-1:-1;;;2448:69:114;;2259:178;;-1:-1:-1;;;;;;2448:38:114;;;;;:69;;2487:13;;2510:1;;2448:69;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3093:16:114;;3111:23;;3037:5;;-1:-1:-1;;;;;;3056:28:114;;;;-1:-1:-1;3056:28:114;;3085:6;;3093:16;;;;3111:23;3136:7;:5;:7::i;:::-;3056:88;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;3215:43:114;;;;;;:15;:43;;;;;;;3267:4;3215:49;;;:56;;-1:-1:-1;;3215:56:114;;;;;;3286:44;;;-1:-1:-1;3286:44:114;;3239:17;;3286:44;:::i;:::-;;;;;;;;3355:17;1986:1394;-1:-1:-1;;;1986:1394:114:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;22315:2:131;5366:69:47;;;22297:21:131;22354:2;22334:18;;;22327:30;22393:34;22373:18;;;22366:62;-1:-1:-1;;;22444:18:131;;;22437:41;22495:19;;5366:69:47;22113:407:131;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;22727:2:131;2415:73:45::1;::::0;::::1;22709:21:131::0;22766:2;22746:18;;;22739:30;22805:34;22785:18;;;22778:62;-1:-1:-1;;;22856:18:131;;;22849:36;22902:19;;2415:73:45::1;22525:402:131::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;23134:2:131;1675:68:45;;;23116:21:131;;;23153:18;;;23146:30;23212:34;23192:18;;;23185:62;23264:18;;1675:68:45;22932:356:131;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;23523:15:131;;;1252:35:103;;;23505:34:131;23575:15;;23555:18;;;23548:43;23440:18;;1252:35:103;23293:304:131;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;23993:2:131;3262:56:60;;;23975:21:131;24032:2;24012:18;;;24005:30;24071:34;24051:18;;;24044:62;-1:-1:-1;;;24122:18:131;;;24115:44;24176:19;;3262:56:60;23791:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;24408:2:131;3140:82:60;;;24390:21:131;24447:2;24427:18;;;24420:30;24486:34;24466:18;;;24459:62;-1:-1:-1;;;24537:18:131;;;24530:39;24586:19;;3140:82:60;24206:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;24818:2:131;1479:95:60;;;24800:21:131;24857:2;24837:18;;;24830:30;24896:34;24876:18;;;24869:62;-1:-1:-1;;;24947:18:131;;;24940:43;25000:19;;1479:95:60;24616:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;25524:2:131;8113:60:76;;;25506:21:131;25563:2;25543:18;;;25536:30;25602:31;25582:18;;;25575:59;25651:18;;8113:60:76;25322:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;14:104:131;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:131;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:131;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:131;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:131;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:131;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:131;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:131;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:131;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:131;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:131;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:131;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:131;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3470:1070::-;3621:6;3629;3637;3645;3653;3661;3714:3;3702:9;3693:7;3689:23;3685:33;3682:53;;;3731:1;3728;3721:12;3682:53;3770:9;3757:23;3789:31;3814:5;3789:31;:::i;:::-;3839:5;-1:-1:-1;3896:2:131;3881:18;;3868:32;3909:33;3868:32;3909:33;:::i;:::-;3961:7;-1:-1:-1;4019:2:131;4004:18;;3991:32;-1:-1:-1;;;;;4072:14:131;;;4069:34;;;4099:1;4096;4089:12;4069:34;4137:6;4126:9;4122:22;4112:32;;4182:7;4175:4;4171:2;4167:13;4163:27;4153:55;;4204:1;4201;4194:12;4153:55;4244:2;4231:16;4270:2;4262:6;4259:14;4256:34;;;4286:1;4283;4276:12;4256:34;4339:7;4334:2;4324:6;4321:1;4317:14;4313:2;4309:23;4305:32;4302:45;4299:65;;;4360:1;4357;4350:12;4299:65;4391:2;4387;4383:11;4373:21;;4413:6;4403:16;;;;;4438:38;4472:2;4461:9;4457:18;4438:38;:::i;:::-;4428:48;;4495:39;4529:3;4518:9;4514:19;4495:39;:::i;:::-;4485:49;;3470:1070;;;;;;;;:::o;4727:160::-;4792:20;;4848:13;;4841:21;4831:32;;4821:60;;4877:1;4874;4867:12;4892:315;4957:6;4965;5018:2;5006:9;4997:7;4993:23;4989:32;4986:52;;;5034:1;5031;5024:12;4986:52;5073:9;5060:23;5092:31;5117:5;5092:31;:::i;:::-;5142:5;-1:-1:-1;5166:35:131;5197:2;5182:18;;5166:35;:::i;:::-;5156:45;;4892:315;;;;;:::o;5212:180::-;5271:6;5324:2;5312:9;5303:7;5299:23;5295:32;5292:52;;;5340:1;5337;5330:12;5292:52;-1:-1:-1;5363:23:131;;5212:180;-1:-1:-1;5212:180:131:o;5397:127::-;5458:10;5453:3;5449:20;5446:1;5439:31;5489:4;5486:1;5479:15;5513:4;5510:1;5503:15;5529:242;5615:1;5608:5;5605:12;5595:143;;5660:10;5655:3;5651:20;5648:1;5641:31;5695:4;5692:1;5685:15;5723:4;5720:1;5713:15;5595:143;5747:18;;5529:242::o;5776:316::-;-1:-1:-1;;;;;5986:32:131;;5968:51;;5956:2;5941:18;;6028:58;6082:2;6067:18;;6059:6;6028:58;:::i;6097:315::-;6165:6;6173;6226:2;6214:9;6205:7;6201:23;6197:32;6194:52;;;6242:1;6239;6232:12;6194:52;6281:9;6268:23;6300:31;6325:5;6300:31;:::i;:::-;6350:5;6402:2;6387:18;;;;6374:32;;-1:-1:-1;;;6097:315:131:o;6417:221::-;6460:5;6513:3;6506:4;6498:6;6494:17;6490:27;6480:55;;6531:1;6528;6521:12;6480:55;6553:79;6628:3;6619:6;6606:20;6599:4;6591:6;6587:17;6553:79;:::i;6643:610::-;6698:5;6746:4;6734:9;6729:3;6725:19;6721:30;6718:50;;;6764:1;6761;6754:12;6718:50;6797:4;6791:11;;;6829:17;;-1:-1:-1;;;;;6898:18:131;;;6918:22;;;6895:46;6892:72;;;6944:18;;:::i;:::-;6986:10;6980:4;6973:24;7015:6;7006:15;;7058:9;7045:23;7037:6;7030:39;7120:2;7109:9;7105:18;7092:32;7078:46;;7147:2;7139:6;7136:14;7133:34;;;7163:1;7160;7153:12;7133:34;;7200:46;7242:3;7233:6;7222:9;7218:22;7200:46;:::i;:::-;7195:2;7187:6;7183:15;7176:71;;;6643:610;;;;:::o;7258:1643::-;7373:6;7426:2;7414:9;7405:7;7401:23;7397:32;7394:52;;;7442:1;7439;7432:12;7394:52;7469:23;;-1:-1:-1;;;;;7541:14:131;;;7538:34;;;7568:1;7565;7558:12;7538:34;7591:22;;;;7647:6;7629:16;;;7625:29;7622:49;;;7667:1;7664;7657:12;7622:49;7693:17;;:::i;:::-;7733:22;7752:2;7733:22;:::i;:::-;7726:5;7719:37;7788:31;7815:2;7811;7807:11;7788:31;:::i;:::-;7783:2;7776:5;7772:14;7765:55;7873:2;7869;7865:11;7852:25;7847:2;7840:5;7836:14;7829:49;7931:2;7927;7923:11;7910:25;7905:2;7898:5;7894:14;7887:49;7990:3;7986:2;7982:12;7969:26;7963:3;7956:5;7952:15;7945:51;8029:32;8056:3;8052:2;8048:12;8029:32;:::i;:::-;8023:3;8016:5;8012:15;8005:57;8095:32;8122:3;8118:2;8114:12;8095:32;:::i;:::-;8089:3;8082:5;8078:15;8071:57;8174:3;8170:2;8166:12;8153:26;8204:2;8194:8;8191:16;8188:36;;;8220:1;8217;8210:12;8188:36;8257:54;8303:7;8292:8;8288:2;8284:17;8257:54;:::i;:::-;8251:3;8244:5;8240:15;8233:79;;8331:3;8366:31;8393:2;8389;8385:11;8366:31;:::i;:::-;8350:14;;;8343:55;8417:3;8458:11;;;8445:25;8482:16;;;8479:36;;;8511:1;8508;8501:12;8479:36;8547:45;8584:7;8573:8;8569:2;8565:17;8547:45;:::i;:::-;8542:2;8535:5;8531:14;8524:69;;;8612:3;8647:28;8671:2;8667;8663:11;8647:28;:::i;:::-;8631:14;;;8624:52;8695:3;8736:11;;;8723:25;8760:16;;;8757:36;;;8789:1;8786;8779:12;8757:36;8825:45;8862:7;8851:8;8847:2;8843:17;8825:45;:::i;:::-;8809:14;;;8802:69;;;;-1:-1:-1;8813:5:131;7258:1643;-1:-1:-1;;;;;7258:1643:131:o;9496:250::-;9581:1;9591:113;9605:6;9602:1;9599:13;9591:113;;;9681:11;;;9675:18;9662:11;;;9655:39;9627:2;9620:10;9591:113;;;-1:-1:-1;;9738:1:131;9720:16;;9713:27;9496:250::o;9751:271::-;9793:3;9831:5;9825:12;9858:6;9853:3;9846:19;9874:76;9943:6;9936:4;9931:3;9927:14;9920:4;9913:5;9909:16;9874:76;:::i;:::-;10004:2;9983:15;-1:-1:-1;;9979:29:131;9970:39;;;;10011:4;9966:50;;9751:271;-1:-1:-1;;9751:271:131:o;10027:220::-;10176:2;10165:9;10158:21;10139:4;10196:45;10237:2;10226:9;10222:18;10214:6;10196:45;:::i;10252:410::-;10454:2;10436:21;;;10493:2;10473:18;;;10466:30;10532:34;10527:2;10512:18;;10505:62;-1:-1:-1;;;10598:2:131;10583:18;;10576:44;10652:3;10637:19;;10252:410::o;10866:408::-;11068:2;11050:21;;;11107:2;11087:18;;;11080:30;-1:-1:-1;;;;;;;;;;;11141:2:131;11126:18;;11119:62;-1:-1:-1;;;11212:2:131;11197:18;;11190:42;11264:3;11249:19;;10866:408::o;11279:::-;11481:2;11463:21;;;11520:2;11500:18;;;11493:30;-1:-1:-1;;;;;;;;;;;11554:2:131;11539:18;;11532:62;-1:-1:-1;;;11625:2:131;11610:18;;11603:42;11677:3;11662:19;;11279:408::o;11692:127::-;11753:10;11748:3;11744:20;11741:1;11734:31;11784:4;11781:1;11774:15;11808:4;11805:1;11798:15;11824:326;11919:4;11977:11;11964:25;12071:2;12067:7;12056:8;12040:14;12036:29;12032:43;12012:18;12008:68;11998:96;;12090:1;12087;12080:12;11998:96;12111:33;;;;;11824:326;-1:-1:-1;;11824:326:131:o;12155:276::-;12234:6;12287:2;12275:9;12266:7;12262:23;12258:32;12255:52;;;12303:1;12300;12293:12;12255:52;12342:9;12329:23;12381:1;12374:5;12371:12;12361:40;;12397:1;12394;12387:12;12436:544;12528:4;12534:6;12594:11;12581:25;12688:2;12684:7;12673:8;12657:14;12653:29;12649:43;12629:18;12625:68;12615:96;;12707:1;12704;12697:12;12615:96;12734:33;;12786:20;;;-1:-1:-1;;;;;;12818:30:131;;12815:50;;;12861:1;12858;12851:12;12815:50;12894:4;12882:17;;-1:-1:-1;12945:1:131;12941:14;;;12925;12921:35;12911:46;;12908:66;;;12970:1;12967;12960:12;12908:66;12436:544;;;;;:::o;12985:232::-;13024:3;13045:17;;;13042:140;;13104:10;13099:3;13095:20;13092:1;13085:31;13139:4;13136:1;13129:15;13167:4;13164:1;13157:15;13042:140;-1:-1:-1;13209:1:131;13198:13;;12985:232::o;14125:251::-;14195:6;14248:2;14236:9;14227:7;14223:23;14219:32;14216:52;;;14264:1;14261;14254:12;14216:52;14296:9;14290:16;14315:31;14340:5;14315:31;:::i;14660:315::-;-1:-1:-1;;;;;14835:32:131;;14817:51;;14904:2;14899;14884:18;;14877:30;;;-1:-1:-1;;14924:45:131;;14950:18;;14942:6;14924:45;:::i;15125:104::-;-1:-1:-1;;;;;;15190:32:131;15178:45;;15125:104::o;15234:4574::-;15589:2;15578:9;15571:21;15552:4;15627:2;15616:9;15612:18;15659:6;15653:13;15687:6;15682:3;15675:19;15725:3;15714:9;15710:19;15703:26;;15788:3;15778:6;15775:1;15771:14;15760:9;15756:30;15752:40;15811:6;15808:1;15801:17;15837:4;15877:2;15874:1;15864:16;15898:1;15908:3713;15922:6;15919:1;15916:13;15908:3713;;;15987:22;;;-1:-1:-1;;15983:37:131;15971:50;;16093:13;;-1:-1:-1;;;;;16134:35:131;;16119:51;;16060:2;16048:15;;;16183:79;16246:15;;;16157:3;16218:19;;;16239:4;16214:30;16183:79;:::i;:::-;-1:-1:-1;16373:2:131;16366:4;16354:17;;16347:29;16285:1;16319:15;;;16437:19;;9428;;;15072:1;15065:14;;;9480:4;15096:18;;;;9471:14;;16668:915;16712:8;16708:1;16695:11;16691:19;16688:33;16668:915;;;16849:8;16843:15;16875:40;16909:5;16902:4;16897:3;16893:14;16875:40;:::i;:::-;-1:-1:-1;;;;;;16979:58:131;17022:14;;;17005:3;17001:14;;;16997:23;;16979:58;:::i;:::-;17054:60;17108:4;17101:5;17097:16;17092:2;17085:4;17080:3;17076:14;17072:23;17054:60;:::i;:::-;17131:58;17185:2;17178:5;17174:14;17169:2;17162:4;17157:3;17153:14;17149:23;17131:58;:::i;:::-;17206;17259:3;17252:5;17248:15;17243:2;17236:4;17232:2;17228:13;17224:22;17206:58;:::i;:::-;17281:60;17336:3;17329:5;17325:15;17320:2;17313:4;17307;17303:15;17299:24;17281:60;:::i;:::-;17358:58;17411:3;17404:5;17400:15;17395:2;17388:4;17384:2;17380:13;17376:22;17358:58;:::i;:::-;17433:49;17477:3;17470:5;17466:15;17461:2;17455:4;17451:13;17433:49;:::i;:::-;;;17519:3;17512:5;17508:15;17499:24;;17566:2;17556:8;17552:17;17540:29;;16784:1;16771:11;16767:19;16752:34;;16668:915;;;17610:15;;;17641:25;;;17638:207;;;17697:42;17733:5;17724:6;17719:3;17715:16;17697:42;:::i;:::-;17811:20;;;;17765:14;;;;17638:207;17877:8;17864:11;17861:25;17858:234;;;17917:69;17980:5;17943:3;17939:16;;;-1:-1:-1;;;;;;17935:43:131;17917:69;:::i;:::-;18058:20;;;;18012:14;;;;17858:234;18124:8;18111:11;18108:25;18105:234;;;18164:69;18227:5;18190:3;18186:16;;;-1:-1:-1;;;;;;18182:43:131;18164:69;:::i;:::-;18305:20;;;;18259:14;;;;18105:234;18371:8;18358:11;18355:25;18352:234;;;18411:69;18474:5;18437:3;18433:16;;;-1:-1:-1;;;;;;18429:43:131;18411:69;:::i;:::-;18552:20;;;;18506:14;;;;18352:234;18618:8;18605:11;18602:25;18599:233;;;18658:68;18720:5;18684:2;18680:15;;;-1:-1:-1;;;;;;18676:42:131;18658:68;:::i;:::-;18798:20;;;;18752:14;;;;18599:233;18864:8;18851:11;18848:25;18845:235;;;18904:70;18968:5;18930:4;18926:17;;;-1:-1:-1;;;;;;18922:44:131;18904:70;:::i;:::-;19046:20;;;;19000:14;;;;18845:235;19112:8;19099:11;19096:25;19093:233;;;19152:68;19214:5;19174:15;;;-1:-1:-1;;;;;;19170:42:131;19152:68;:::i;:::-;19292:20;;;;19246:14;;;;19093:233;19358:8;19345:11;19342:25;19339:172;;;19398:59;19451:5;-1:-1:-1;;;;;;19416:33:131;;19398:59;:::i;:::-;19483:14;;;;19339:172;-1:-1:-1;19599:12:131;;;;19534:5;-1:-1:-1;;;19574:4:131;19562:17;;;;;-1:-1:-1;15944:1:131;15937:9;15908:3713;;;15912:3;;19630:46;19672:2;19661:9;19657:18;19649:6;19630:46;:::i;:::-;-1:-1:-1;19714:22:131;;;19707:4;19692:20;;19685:52;9290:1;9278:14;;9325:4;9316:14;;19746:56;15234:4574;-1:-1:-1;;;;;;;15234:4574:131:o;19813:252::-;19900:5;19894:12;19889:3;19882:25;19864:3;19953:4;19946:5;19942:16;19936:23;19991:4;19984;19979:3;19975:14;19968:28;20012:47;20053:4;20048:3;20044:14;20030:12;20012:47;:::i;20070:2038::-;20395:3;20384:9;20377:22;20408:54;20457:3;20446:9;20442:19;20433:6;20427:13;20408:54;:::i;:::-;20358:4;20509;20501:6;20497:17;20491:24;20524:53;20572:3;20561:9;20557:19;20543:12;20524:53;:::i;:::-;;20632:4;20624:6;20620:17;20614:24;20608:3;20597:9;20593:19;20586:53;20694:4;20686:6;20682:17;20676:24;20670:3;20659:9;20655:19;20648:53;20738:3;20730:6;20726:16;20720:23;20762:3;20801:2;20796;20785:9;20781:18;20774:30;20853:3;20845:6;20841:16;20835:23;20813:45;;20877:3;20889:54;20939:2;20928:9;20924:18;20908:14;20889:54;:::i;:::-;20992:3;20984:6;20980:16;20974:23;20952:45;;21016:3;21028:54;21078:2;21067:9;21063:18;21047:14;21028:54;:::i;:::-;21131:3;21123:6;21119:16;21113:23;21091:45;;21155:6;21180:3;21219:2;21214;21203:9;21199:18;21192:30;21245:63;21303:3;21292:9;21288:19;21272:14;21245:63;:::i;:::-;21345:15;;;21339:22;21231:77;;-1:-1:-1;21370:54:131;21405:18;;;21339:22;21370:54;:::i;:::-;21473:2;21465:6;21461:15;21455:22;21433:44;;21500:3;21496:8;21486:18;;21569:2;21557:9;21549:6;21545:22;21541:31;21535:3;21524:9;21520:19;21513:60;21596:41;21630:6;21614:14;21596:41;:::i;:::-;21582:55;;21686:2;21678:6;21674:15;21668:22;21646:44;;21699:52;21746:3;21735:9;21731:19;21715:14;8976:13;8969:21;8957:34;;8906:91;21699:52;21800:2;21792:6;21788:15;21782:22;21760:44;;;;;21869:2;21857:9;21849:6;21845:22;21841:31;21835:3;21824:9;21820:19;21813:60;;21890:41;21924:6;21908:14;21890:41;:::i;:::-;21882:49;;;;21940:48;21982:4;21971:9;21967:20;21959:6;21940:48;:::i;:::-;21997;22039:4;22028:9;22024:20;22016:6;21997:48;:::i;:::-;22054;22096:4;22085:9;22081:20;22073:6;22054:48;:::i;:::-;20070:2038;;;;;;;:::o;23602:184::-;23672:6;23725:2;23713:9;23704:7;23700:23;23696:32;23693:52;;;23741:1;23738;23731:12;23693:52;-1:-1:-1;23764:16:131;;23602:184;-1:-1:-1;23602:184:131:o;25030:287::-;25159:3;25197:6;25191:13;25213:66;25272:6;25267:3;25260:4;25252:6;25248:17;25213:66;:::i","linkReferences":{},"immutableReferences":{"55572":[{"start":1852,"length":32},{"start":1919,"length":32},{"start":2064,"length":32},{"start":2131,"length":32},{"start":2968,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","cutsCommunity(uint256)":"90a74e2e","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2(address,address,(address,uint8,bytes4[])[],address,address)":"4f1f4c0c","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"cutsCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_cuts\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":\"RegistryFactoryFacet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/diamonds/BaseDiamond.sol\":{\"keccak256\":\"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303\",\"dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU\"]},\"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol\":{\"keccak256\":\"0x3f5ced030e374705f9b421ad075197772a79f468841510f876e1ddf2d281b1da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d524eb2ccd9668b98af426fc0b716e8f1b2622018c1b850d2d141b4ff1473943\",\"dweb:/ipfs/Qmb8Q5azfj413XGjRpChY8zwyTJR4mLrZY5siUrDC1ytxX\"]},\"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol\":{\"keccak256\":\"0xf407d8d13beeae0f71270673636aab6f7366188c227e148063219eb871aaba4f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://74176d7d9836bb724611d4b1574ad683874a5e08615f2e00b7ad345d2104eab3\",\"dweb:/ipfs/QmUdg53mFzjJPcw5yFGYdXvC1BLTXFfiiFrqqdAwrNYzcp\"]},\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":{\"keccak256\":\"0x6267e4e853f227a7d9a130edbb11344f5b4691910a9370777804ad033b6bd0b6\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ebc4c0531d476cc07d10a9e047a8bc14ae3c27810e7748b1ef392b12c35693b0\",\"dweb:/ipfs/QmWYNEq3DFXoyaDYKZ5Wqpnoo87czRAGNJLVb7fNXnrFtw\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol\":{\"keccak256\":\"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb\",\"dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty\"]},\"pkg/contracts/src/diamonds/interfaces/IERC165.sol\":{\"keccak256\":\"0x7541f7408d0f74162bc4664d5e012427f2ceaab2abadca0353269ef15ee03d8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8e7a34b3ea39f4c0dfa6f5ace5d9415e4d0c90cb3f4264e6946b808f2d4011c\",\"dweb:/ipfs/QmWdcRF4krMMb1ua3hmV8avdHKYa4XXt1iw7sxx1ntsEJa\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99\",\"dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"cutsCommunity","outputs":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"struct IDiamond.FacetCut[]","name":"_cuts","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":"RegistryFactoryFacet"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/BaseDiamond.sol":{"keccak256":"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8","urls":["bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303","dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol":{"keccak256":"0x3f5ced030e374705f9b421ad075197772a79f468841510f876e1ddf2d281b1da","urls":["bzz-raw://d524eb2ccd9668b98af426fc0b716e8f1b2622018c1b850d2d141b4ff1473943","dweb:/ipfs/Qmb8Q5azfj413XGjRpChY8zwyTJR4mLrZY5siUrDC1ytxX"],"license":"MIT"},"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol":{"keccak256":"0xf407d8d13beeae0f71270673636aab6f7366188c227e148063219eb871aaba4f","urls":["bzz-raw://74176d7d9836bb724611d4b1574ad683874a5e08615f2e00b7ad345d2104eab3","dweb:/ipfs/QmUdg53mFzjJPcw5yFGYdXvC1BLTXFfiiFrqqdAwrNYzcp"],"license":"MIT"},"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":{"keccak256":"0x6267e4e853f227a7d9a130edbb11344f5b4691910a9370777804ad033b6bd0b6","urls":["bzz-raw://ebc4c0531d476cc07d10a9e047a8bc14ae3c27810e7748b1ef392b12c35693b0","dweb:/ipfs/QmWYNEq3DFXoyaDYKZ5Wqpnoo87czRAGNJLVb7fNXnrFtw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol":{"keccak256":"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972","urls":["bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb","dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IERC165.sol":{"keccak256":"0x7541f7408d0f74162bc4664d5e012427f2ceaab2abadca0353269ef15ee03d8b","urls":["bzz-raw://a8e7a34b3ea39f4c0dfa6f5ace5d9415e4d0c90cb3f4264e6946b808f2d4011c","dweb:/ipfs/QmWdcRF4krMMb1ua3hmV8avdHKYa4XXt1iw7sxx1ntsEJa"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af","urls":["bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99","dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE"],"license":"MIT"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"},{"astId":74066,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"cutsCommunity","offset":0,"slot":"157","type":"t_array(t_struct(FacetCut)74279_storage)dyn_storage"},{"astId":74263,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"158","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes4)dyn_storage":{"encoding":"dynamic_array","label":"bytes4[]","numberOfBytes":"32","base":"t_bytes4"},"t_array(t_struct(FacetCut)74279_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct IDiamond.FacetCut[]","numberOfBytes":"32","base":"t_struct(FacetCut)74279_storage"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_enum(FacetCutAction)74270":{"encoding":"inplace","label":"enum IDiamond.FacetCutAction","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_struct(FacetCut)74279_storage":{"encoding":"inplace","label":"struct IDiamond.FacetCut","numberOfBytes":"64","members":[{"astId":74272,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"facetAddress","offset":0,"slot":"0","type":"t_address"},{"astId":74275,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"action","offset":20,"slot":"0","type":"t_enum(FacetCutAction)74270"},{"astId":74278,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"functionSelectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol","id":74265,"exportedSymbols":{"BaseDiamond":[73419],"Clone":[3002],"CommunityInfo":[74060],"DiamondCutFacet":[73502],"DiamondLoupeFacet":[73940],"ERC1967Proxy":[55021],"IDiamond":[74290],"IDiamondCut":[74309],"ProxyOwnableUpgrader":[70199],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403],"RegistryFactoryFacet":[74264],"RegistryFactoryV0_0":[72778]},"nodeType":"SourceUnit","src":"42:3477:114","nodes":[{"id":74032,"nodeType":"PragmaDirective","src":"42:24:114","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74035,"nodeType":"ImportDirective","src":"68:136:114","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":74033,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74034,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"108:37:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74037,"nodeType":"ImportDirective","src":"205:88:114","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":74036,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"213:21:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74039,"nodeType":"ImportDirective","src":"294:67:114","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":74038,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"302:20:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74041,"nodeType":"ImportDirective","src":"362:84:114","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":74040,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"370:12:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74043,"nodeType":"ImportDirective","src":"447:65:114","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":74042,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"455:5:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74045,"nodeType":"ImportDirective","src":"513:81:114","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"@src/RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":72779,"symbolAliases":[{"foreign":{"id":74044,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72778,"src":"521:19:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74047,"nodeType":"ImportDirective","src":"595:63:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamond.sol","file":"@src/diamonds/interfaces/IDiamond.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":74291,"symbolAliases":[{"foreign":{"id":74046,"name":"IDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74290,"src":"603:8:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74049,"nodeType":"ImportDirective","src":"659:69:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol","file":"@src/diamonds/interfaces/IDiamondCut.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":74310,"symbolAliases":[{"foreign":{"id":74048,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74309,"src":"667:11:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74051,"nodeType":"ImportDirective","src":"729:73:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol","file":"@src/diamonds/facets/DiamondCutFacet.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":73503,"symbolAliases":[{"foreign":{"id":74050,"name":"DiamondCutFacet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73502,"src":"737:15:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74053,"nodeType":"ImportDirective","src":"803:77:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol","file":"@src/diamonds/facets/DiamondLoupeFacet.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":73941,"symbolAliases":[{"foreign":{"id":74052,"name":"DiamondLoupeFacet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73940,"src":"811:17:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74055,"nodeType":"ImportDirective","src":"882:58:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"@src/diamonds/BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":73420,"symbolAliases":[{"foreign":{"id":74054,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73419,"src":"890:11:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74060,"nodeType":"StructDefinition","src":"943:57:114","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":74057,"mutability":"mutable","name":"fee","nameLocation":"978:3:114","nodeType":"VariableDeclaration","scope":74060,"src":"970:11:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74056,"name":"uint256","nodeType":"ElementaryTypeName","src":"970:7:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74059,"mutability":"mutable","name":"valid","nameLocation":"992:5:114","nodeType":"VariableDeclaration","scope":74060,"src":"987:10:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74058,"name":"bool","nodeType":"ElementaryTypeName","src":"987:4:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"950:13:114","scope":74265,"visibility":"public"},{"id":74264,"nodeType":"ContractDefinition","src":"1002:2516:114","nodes":[{"id":74066,"nodeType":"VariableDeclaration","src":"1064:43:114","nodes":[],"constant":false,"functionSelector":"90a74e2e","mutability":"mutable","name":"cutsCommunity","nameLocation":"1094:13:114","scope":74264,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut[]"},"typeName":{"baseType":{"id":74064,"nodeType":"UserDefinedTypeName","pathNode":{"id":74063,"name":"IDiamondCut.FacetCut","nameLocations":["1064:11:114","1076:8:114"],"nodeType":"IdentifierPath","referencedDeclaration":74279,"src":"1064:20:114"},"referencedDeclaration":74279,"src":"1064:20:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_storage_ptr","typeString":"struct IDiamond.FacetCut"}},"id":74065,"nodeType":"ArrayTypeName","src":"1064:22:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr","typeString":"struct IDiamond.FacetCut[]"}},"visibility":"public"},{"id":74144,"nodeType":"FunctionDefinition","src":"1114:866:114","nodes":[],"body":{"id":74143,"nodeType":"Block","src":"1373:607:114","nodes":[],"statements":[{"expression":{"arguments":[{"id":74087,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74068,"src":"1401:6:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74086,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"1383:17:114","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74088,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1383:25:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74089,"nodeType":"ExpressionStatement","src":"1383:25:114"},{"expression":{"arguments":[{"id":74091,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74070,"src":"1437:26:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74090,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"1418:18:114","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74092,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1418:46:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74093,"nodeType":"ExpressionStatement","src":"1418:46:114"},{"expression":{"arguments":[{"id":74095,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74078,"src":"1493:24:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74094,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"1474:18:114","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1474:44:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74097,"nodeType":"ExpressionStatement","src":"1474:44:114"},{"expression":{"id":74100,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74098,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"1528:25:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74099,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74070,"src":"1556:26:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1528:54:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74101,"nodeType":"ExpressionStatement","src":"1528:54:114"},{"expression":{"id":74104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74102,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"1592:16:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74103,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74076,"src":"1611:17:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1592:36:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74105,"nodeType":"ExpressionStatement","src":"1592:36:114"},{"expression":{"id":74108,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74106,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"1638:23:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74107,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74078,"src":"1664:24:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1638:50:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74109,"nodeType":"ExpressionStatement","src":"1638:50:114"},{"body":{"id":74141,"nodeType":"Block","src":"1738:235:114","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"baseExpression":{"id":74126,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1821:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74128,"indexExpression":{"id":74127,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1827:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1821:8:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74129,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1830:12:114","memberName":"facetAddress","nodeType":"MemberAccess","referencedDeclaration":74272,"src":"1821:21:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":74130,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1868:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74132,"indexExpression":{"id":74131,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1874:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1868:8:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1877:6:114","memberName":"action","nodeType":"MemberAccess","referencedDeclaration":74275,"src":"1868:15:114","typeDescriptions":{"typeIdentifier":"t_enum$_FacetCutAction_$74270","typeString":"enum IDiamond.FacetCutAction"}},{"expression":{"baseExpression":{"id":74134,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1920:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74136,"indexExpression":{"id":74135,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1926:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1920:8:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1929:17:114","memberName":"functionSelectors","nodeType":"MemberAccess","referencedDeclaration":74278,"src":"1920:26:114","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes4_$dyn_calldata_ptr","typeString":"bytes4[] calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_FacetCutAction_$74270","typeString":"enum IDiamond.FacetCutAction"},{"typeIdentifier":"t_array$_t_bytes4_$dyn_calldata_ptr","typeString":"bytes4[] calldata"}],"expression":{"id":74124,"name":"IDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74290,"src":"1771:8:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IDiamond_$74290_$","typeString":"type(contract IDiamond)"}},"id":74125,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1780:8:114","memberName":"FacetCut","nodeType":"MemberAccess","referencedDeclaration":74279,"src":"1771:17:114","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_FacetCut_$74279_storage_ptr_$","typeString":"type(struct IDiamond.FacetCut storage pointer)"}},"id":74138,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1807:12:114","1860:6:114","1901:17:114"],"names":["facetAddress","action","functionSelectors"],"nodeType":"FunctionCall","src":"1771:190:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_memory_ptr","typeString":"struct IDiamond.FacetCut memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_FacetCut_$74279_memory_ptr","typeString":"struct IDiamond.FacetCut memory"}],"expression":{"id":74121,"name":"cutsCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74066,"src":"1752:13:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"}},"id":74123,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1766:4:114","memberName":"push","nodeType":"MemberAccess","src":"1752:18:114","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr_$_t_struct$_FacetCut_$74279_storage_$returns$__$attached_to$_t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr_$","typeString":"function (struct IDiamond.FacetCut storage ref[] storage pointer,struct IDiamond.FacetCut storage ref)"}},"id":74139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1752:210:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74140,"nodeType":"ExpressionStatement","src":"1752:210:114"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":74117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":74114,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1715:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":74115,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1719:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1725:6:114","memberName":"length","nodeType":"MemberAccess","src":"1719:12:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1715:16:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74142,"initializationExpression":{"assignments":[74111],"declarations":[{"constant":false,"id":74111,"mutability":"mutable","name":"i","nameLocation":"1708:1:114","nodeType":"VariableDeclaration","scope":74142,"src":"1703:6:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74110,"name":"uint","nodeType":"ElementaryTypeName","src":"1703:4:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":74113,"initialValue":{"hexValue":"30","id":74112,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1712:1:114","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"1703:10:114"},"loopExpression":{"expression":{"id":74119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"1733:3:114","subExpression":{"id":74118,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1733:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74120,"nodeType":"ExpressionStatement","src":"1733:3:114"},"nodeType":"ForStatement","src":"1698:275:114"}]},"functionSelector":"4f1f4c0c","implemented":true,"kind":"function","modifiers":[{"id":74081,"kind":"modifierInvocation","modifierName":{"id":74080,"name":"onlyOwner","nameLocations":["1346:9:114"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"1346:9:114"},"nodeType":"ModifierInvocation","src":"1346:9:114"},{"arguments":[{"hexValue":"32","id":74083,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1370:1:114","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":74084,"kind":"modifierInvocation","modifierName":{"id":74082,"name":"reinitializer","nameLocations":["1356:13:114"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"1356:13:114"},"nodeType":"ModifierInvocation","src":"1356:16:114"}],"name":"initializeV2","nameLocation":"1123:12:114","parameters":{"id":74079,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74068,"mutability":"mutable","name":"_owner","nameLocation":"1161:6:114","nodeType":"VariableDeclaration","scope":74144,"src":"1153:14:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74067,"name":"address","nodeType":"ElementaryTypeName","src":"1153:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74070,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"1185:26:114","nodeType":"VariableDeclaration","scope":74144,"src":"1177:34:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74069,"name":"address","nodeType":"ElementaryTypeName","src":"1177:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74074,"mutability":"mutable","name":"_cuts","nameLocation":"1250:5:114","nodeType":"VariableDeclaration","scope":74144,"src":"1221:34:114","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut[]"},"typeName":{"baseType":{"id":74072,"nodeType":"UserDefinedTypeName","pathNode":{"id":74071,"name":"IDiamond.FacetCut","nameLocations":["1221:8:114","1230:8:114"],"nodeType":"IdentifierPath","referencedDeclaration":74279,"src":"1221:17:114"},"referencedDeclaration":74279,"src":"1221:17:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_storage_ptr","typeString":"struct IDiamond.FacetCut"}},"id":74073,"nodeType":"ArrayTypeName","src":"1221:19:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr","typeString":"struct IDiamond.FacetCut[]"}},"visibility":"internal"},{"constant":false,"id":74076,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"1273:17:114","nodeType":"VariableDeclaration","scope":74144,"src":"1265:25:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74075,"name":"address","nodeType":"ElementaryTypeName","src":"1265:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74078,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"1308:24:114","nodeType":"VariableDeclaration","scope":74144,"src":"1300:32:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74077,"name":"address","nodeType":"ElementaryTypeName","src":"1300:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1135:203:114"},"returnParameters":{"id":74085,"nodeType":"ParameterList","parameters":[],"src":"1373:0:114"},"scope":74264,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74250,"nodeType":"FunctionDefinition","src":"1986:1394:114","nodes":[],"body":{"id":74249,"nodeType":"Block","src":"2165:1215:114","nodes":[],"statements":[{"expression":{"id":74158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74153,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74147,"src":"2175:6:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74155,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2182:6:114","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"2175:13:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74157,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2191:7:114","subExpression":{"id":74156,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"2191:5:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2175:23:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74159,"nodeType":"ExpressionStatement","src":"2175:23:114"},{"expression":{"id":74167,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74160,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74147,"src":"2208:6:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74162,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2215:16:114","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"2208:23:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":74165,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2242:4:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74264","typeString":"contract RegistryFactoryFacet"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74264","typeString":"contract RegistryFactoryFacet"}],"id":74164,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2234:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74163,"name":"address","nodeType":"ElementaryTypeName","src":"2234:7:114","typeDescriptions":{}}},"id":74166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2234:13:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2208:39:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74168,"nodeType":"ExpressionStatement","src":"2208:39:114"},{"assignments":[74171],"declarations":[{"constant":false,"id":74171,"mutability":"mutable","name":"proxy","nameLocation":"2272:5:114","nodeType":"VariableDeclaration","scope":74249,"src":"2259:18:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":74170,"nodeType":"UserDefinedTypeName","pathNode":{"id":74169,"name":"ERC1967Proxy","nameLocations":["2259:12:114"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"2259:12:114"},"referencedDeclaration":55021,"src":"2259:12:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":74188,"initialValue":{"arguments":[{"arguments":[{"id":74177,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"2318:25:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74176,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2310:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74175,"name":"address","nodeType":"ElementaryTypeName","src":"2310:7:114","typeDescriptions":{}}},"id":74178,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2310:34:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":74181,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73419,"src":"2381:11:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_BaseDiamond_$73419_$","typeString":"type(contract BaseDiamond)"}},"id":74182,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2393:15:114","memberName":"initializeOwner","nodeType":"MemberAccess","referencedDeclaration":73339,"src":"2381:27:114","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$returns$__$","typeString":"function BaseDiamond.initializeOwner(address)"}},"id":74183,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2409:8:114","memberName":"selector","nodeType":"MemberAccess","src":"2381:36:114","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74184,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"2419:5:114","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74185,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2419:7:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74179,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2358:3:114","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":74180,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2362:18:114","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"2358:22:114","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":74186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2358:69:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":74174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"2280:16:114","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":74173,"nodeType":"UserDefinedTypeName","pathNode":{"id":74172,"name":"ERC1967Proxy","nameLocations":["2284:12:114"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"2284:12:114"},"referencedDeclaration":55021,"src":"2284:12:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":74187,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2280:157:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"2259:178:114"},{"expression":{"arguments":[{"id":74196,"name":"cutsCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74066,"src":"2487:13:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"}},{"arguments":[{"hexValue":"30","id":74199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2510:1:114","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":74198,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2502:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74197,"name":"address","nodeType":"ElementaryTypeName","src":"2502:7:114","typeDescriptions":{}}},"id":74200,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2502:10:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"","id":74201,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2514:2:114","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"arguments":[{"arguments":[{"id":74192,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74171,"src":"2468:5:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":74191,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2460:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74190,"name":"address","nodeType":"ElementaryTypeName","src":"2460:7:114","typeDescriptions":{}}},"id":74193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2460:14:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74189,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74309,"src":"2448:11:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IDiamondCut_$74309_$","typeString":"type(contract IDiamondCut)"}},"id":74194,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2448:27:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IDiamondCut_$74309","typeString":"contract IDiamondCut"}},"id":74195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2476:10:114","memberName":"diamondCut","nodeType":"MemberAccess","referencedDeclaration":74308,"src":"2448:38:114","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_array$_t_struct$_FacetCut_$74279_memory_ptr_$dyn_memory_ptr_$_t_address_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (struct IDiamond.FacetCut memory[] memory,address,bytes memory) external"}},"id":74202,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2448:69:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74203,"nodeType":"ExpressionStatement","src":"2448:69:114"},{"assignments":[74206],"declarations":[{"constant":false,"id":74206,"mutability":"mutable","name":"registryCommunity","nameLocation":"2979:17:114","nodeType":"VariableDeclaration","scope":74249,"src":"2957:39:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":74205,"nodeType":"UserDefinedTypeName","pathNode":{"id":74204,"name":"RegistryCommunityV0_0","nameLocations":["2957:21:114"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"2957:21:114"},"referencedDeclaration":72174,"src":"2957:21:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":74216,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":74212,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74171,"src":"3037:5:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":74211,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3029:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74210,"name":"address","nodeType":"ElementaryTypeName","src":"3029:7:114","typeDescriptions":{}}},"id":74213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3029:14:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74209,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3021:8:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":74208,"name":"address","nodeType":"ElementaryTypeName","src":"3021:8:114","stateMutability":"payable","typeDescriptions":{}}},"id":74214,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3021:23:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":74207,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"2999:21:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2999:46:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"2957:88:114"},{"expression":{"arguments":[{"id":74220,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74147,"src":"3085:6:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":74221,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"3093:16:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74222,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"3111:23:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74223,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"3136:5:114","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74224,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3136:7:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74217,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3056:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":74219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3074:10:114","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"3056:28:114","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address) external"}},"id":74225,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3056:88:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74226,"nodeType":"ExpressionStatement","src":"3056:88:114"},{"expression":{"id":74235,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74227,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"3215:15:114","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74232,"indexExpression":{"arguments":[{"id":74230,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3239:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74229,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3231:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74228,"name":"address","nodeType":"ElementaryTypeName","src":"3231:7:114","typeDescriptions":{}}},"id":74231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3231:26:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3215:43:114","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":74233,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3259:5:114","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"3215:49:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":74234,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3267:4:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3215:56:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74236,"nodeType":"ExpressionStatement","src":"3215:56:114"},{"eventCall":{"arguments":[{"arguments":[{"id":74240,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3311:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74239,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3303:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74238,"name":"address","nodeType":"ElementaryTypeName","src":"3303:7:114","typeDescriptions":{}}},"id":74241,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3303:26:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74237,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"3286:16:114","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3286:44:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74243,"nodeType":"EmitStatement","src":"3281:49:114"},{"expression":{"arguments":[{"id":74246,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3355:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74245,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3347:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74244,"name":"address","nodeType":"ElementaryTypeName","src":"3347:7:114","typeDescriptions":{}}},"id":74247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3347:26:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":74152,"id":74248,"nodeType":"Return","src":"3340:33:114"}]},"baseFunctions":[72656],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"1995:14:114","overrides":{"id":74149,"nodeType":"OverrideSpecifier","overrides":[],"src":"2086:8:114"},"parameters":{"id":74148,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74147,"mutability":"mutable","name":"params","nameLocation":"2055:6:114","nodeType":"VariableDeclaration","scope":74250,"src":"2010:51:114","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":74146,"nodeType":"UserDefinedTypeName","pathNode":{"id":74145,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["2010:37:114"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"2010:37:114"},"referencedDeclaration":70264,"src":"2010:37:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"2009:53:114"},"returnParameters":{"id":74152,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74151,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"2136:23:114","nodeType":"VariableDeclaration","scope":74250,"src":"2128:31:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74150,"name":"address","nodeType":"ElementaryTypeName","src":"2128:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2127:33:114"},"scope":74264,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74259,"nodeType":"FunctionDefinition","src":"3390:93:114","nodes":[],"body":{"id":74258,"nodeType":"Block","src":"3454:29:114","nodes":[],"statements":[{"expression":{"hexValue":"302e31","id":74256,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3471:5:114","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cd160c72d102a6747abd189ac21d4a1f802e3fcc1bb8fc78cc4d558df0c7c21","typeString":"literal_string \"0.1\""},"value":"0.1"},"functionReturnParameters":74255,"id":74257,"nodeType":"Return","src":"3464:12:114"}]},"baseFunctions":[72773],"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"3399:7:114","overrides":{"id":74252,"nodeType":"OverrideSpecifier","overrides":[],"src":"3421:8:114"},"parameters":{"id":74251,"nodeType":"ParameterList","parameters":[],"src":"3406:2:114"},"returnParameters":{"id":74255,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74254,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74259,"src":"3439:13:114","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":74253,"name":"string","nodeType":"ElementaryTypeName","src":"3439:6:114","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3438:15:114"},"scope":74264,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":74263,"nodeType":"VariableDeclaration","src":"3490:25:114","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"3510:5:114","scope":74264,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74260,"name":"uint256","nodeType":"ElementaryTypeName","src":"3490:7:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74262,"length":{"hexValue":"3530","id":74261,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3498:2:114","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"3490:11:114","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74061,"name":"RegistryFactoryV0_0","nameLocations":["1035:19:114"],"nodeType":"IdentifierPath","referencedDeclaration":72778,"src":"1035:19:114"},"id":74062,"nodeType":"InheritanceSpecifier","src":"1035:19:114"}],"canonicalName":"RegistryFactoryFacet","contractDependencies":[55021],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74264,72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryFacet","nameLocation":"1011:20:114","scope":74265,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":114} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json b/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json index 4d5aa66a..7fe1388e 100644 --- a/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json +++ b/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161203761004c6000396000818161072c0152818161076f015281816108000152818161084301526108c801526120376000f3fe608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001333565b60405180910390f35b3480156200018057600080fd5b5062000198620001923660046200136f565b620004ce565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c63660046200138f565b62000534565b005b348015620001db57600080fd5b50620001cc620001ed3660046200136f565b620006f6565b3480156200020057600080fd5b50620001cc620002123660046200136f565b62000722565b620001cc62000229366004620014c9565b620007f6565b3480156200023c57600080fd5b5062000198620008bb565b3480156200025457600080fd5b50620001cc6200026636600462001544565b6200096c565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad3660046200136f565b620009dd565b348015620002c057600080fd5b50620001cc62000a09565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c3660046200136f565b62000a21565b3480156200031f57600080fd5b506200015b62000a7d565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc620003813660046200136f565b62000b1a565b3480156200039457600080fd5b50620001cc620003a63660046200157e565b62000b46565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed36600462001645565b62000ba2565b3480156200040057600080fd5b50620001cc620004123660046200136f565b62000ce3565b3480156200042557600080fd5b50620001cc620004373660046200136f565b62000d5b565b3480156200044a57600080fd5b506200047d6200045c3660046200136f565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b50620004bf604051806040016040528060038152602001620302e360ec1b81525081565b6040516200016a9190620017f4565b6001600160a01b03811660009081526066602052604081206001015460ff1662000518578160405163f5a6943d60e01b81526004016200050f919062001333565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005555750600054600160ff909116105b806200057a5750620005673062000dcc565b1580156200057a575060005460ff166001145b620005df5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016200050f565b6000805460ff19166001179055801562000603576000805461ff0019166101001790555b6200060e8662000ce3565b60006065556200061e8562000ddb565b620006298462000ddb565b620006348262000ddb565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fe2833981519152906200069f90879062001333565b60405180910390a18015620006ee576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6200070062000e03565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200076d5760405162461bcd60e51b81526004016200050f9062001809565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007a162000e66565b6001600160a01b031614620007ca5760405162461bcd60e51b81526004016200050f9062001844565b620007d58162000e83565b60408051600080825260208201909252620007f39183919062000ed5565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008415760405162461bcd60e51b81526004016200050f9062001809565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200087562000e66565b6001600160a01b0316146200089e5760405162461bcd60e51b81526004016200050f9062001844565b620008a98262000e83565b620008b78282600162000ed5565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620009585760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200050f565b5060008051602062001f9b83398151915290565b6200097662000e03565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009e762000e03565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a1362000e03565b62000a1f600062001052565b565b62000a2b62000e03565b62000a368162000ddb565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fe28339815191529062000a7290839062001333565b60405180910390a150565b60008062000a936033546001600160a01b031690565b9050806001600160a01b03163b60000362000aad57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b0a575060408051601f3d908101601f1916820190925262000b07918101906200187f565b60015b62000b1457919050565b92915050565b62000b2462000e03565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b5062000e03565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009d1565b606580546000918262000bb5836200189f565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000bf662000a7d565b60405160240162000c0b9493929190620018e8565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c4a9062001318565b62000c5792919062001a30565b604051809103906000f08015801562000c74573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cd490839062001333565b60405180910390a19392505050565b600054610100900460ff1662000d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016200050f565b620007f38162001052565b62000d6562000e03565b6001600160a01b03811662000d505760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200050f565b6001600160a01b03163b151590565b6001600160a01b038116620007f3576040516303988b8160e61b815260040160405180910390fd5b3362000e0e62000a7d565b6001600160a01b03161462000a1f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200050f565b60008051602062001f9b833981519152546001600160a01b031690565b3362000e8e62000a7d565b6001600160a01b031614620007f3573362000ea862000a7d565b60405163163678e960e01b81526001600160a01b039283166004820152911660248201526044016200050f565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f105762000f0b83620010a4565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f6d575060408051601f3d908101601f1916820190925262000f6a9181019062001a56565b60015b62000fd25760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200050f565b60008051602062001f9b8339815191528114620010445760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200050f565b5062000f0b83838362001143565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010af8162000dcc565b620011135760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200050f565b60008051602062001f9b83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200114e8362001174565b6000825111806200115c5750805b1562000f0b576200116e8383620011b6565b50505050565b6200117f81620010a4565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011de838360405180606001604052806027815260200162001fbb60279139620011e5565b9392505050565b6060600080856001600160a01b03168560405162001204919062001a70565b600060405180830381855af49150503d806000811462001241576040519150601f19603f3d011682016040523d82523d6000602084013e62001246565b606091505b5091509150620012598683838762001263565b9695505050505050565b60608315620012d7578251600003620012cf57620012818562000dcc565b620012cf5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200050f565b5081620012e3565b620012e38383620012eb565b949350505050565b815115620012fc5781518083602001fd5b8060405162461bcd60e51b81526004016200050f9190620017f4565b6104ec8062001a8f83390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007f357600080fd5b80356200136a8162001347565b919050565b6000602082840312156200138257600080fd5b8135620011de8162001347565b600080600080600060a08688031215620013a857600080fd5b8535620013b58162001347565b94506020860135620013c78162001347565b93506040860135620013d98162001347565b92506060860135620013eb8162001347565b91506080860135620013fd8162001347565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200144757620014476200140b565b60405290565b60006001600160401b03808411156200146a576200146a6200140b565b604051601f8501601f19908116603f011681019082821181831017156200149557620014956200140b565b81604052809350858152868686011115620014af57600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014dd57600080fd5b8235620014ea8162001347565b915060208301356001600160401b038111156200150657600080fd5b8301601f810185136200151857600080fd5b62001529858235602084016200144d565b9150509250929050565b803580151581146200136a57600080fd5b600080604083850312156200155857600080fd5b8235620015658162001347565b9150620015756020840162001533565b90509250929050565b600080604083850312156200159257600080fd5b82356200159f8162001347565b946020939093013593505050565b600082601f830112620015bf57600080fd5b620011de838335602085016200144d565b600060408284031215620015e357600080fd5b604080519081016001600160401b0380821183831017156200160957620016096200140b565b816040528293508435835260208501359150808211156200162957600080fd5b506200163885828601620015ad565b6020830152505092915050565b6000602082840312156200165857600080fd5b81356001600160401b03808211156200167057600080fd5b9083019061018082860312156200168657600080fd5b6200169062001421565b6200169b836200135d565b8152620016ab602084016200135d565b6020820152604083013560408201526060830135606082015260808301356080820152620016dc60a084016200135d565b60a0820152620016ef60c084016200135d565b60c082015260e0830135828111156200170757600080fd5b6200171587828601620015d0565b60e0830152506101006200172b8185016200135d565b9082015261012083810135838111156200174457600080fd5b6200175288828701620015ad565b8284015250506101406200176881850162001533565b9082015261016083810135838111156200178157600080fd5b6200178f88828701620015ad565b918301919091525095945050505050565b60005b83811015620017bd578181015183820152602001620017a3565b50506000910152565b60008151808452620017e0816020860160208601620017a0565b601f01601f19169290920160200192915050565b602081526000620011de6020830184620017c6565b6020808252602c9082015260008051602062001f7b83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7b83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200189257600080fd5b8151620011de8162001347565b600060018201620018c057634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012e36040850182620017c6565b60808152620018fc60808201865162001326565b600060208601516200191260a084018262001326565b50604086015160c0830152606086015160e08301526080860151610100818185015260a088015191506101206200194c8186018462001326565b60c08901519250610140620019648187018562001326565b60e08a01519350610180610160818189015262001986610200890187620018c7565b948c01519495506200199b8883018662001326565b838c01519450607f19935083888703016101a0890152620019bd8686620017c6565b9550828c01519450620019d56101c089018615159052565b808c0151945050505080858403016101e086015250620019f68282620017c6565b9250505062001a09602083018662001326565b62001a18604083018562001326565b62001a27606083018462001326565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012e390830184620017c6565b60006020828403121562001a6957600080fd5b5051919050565b6000825162001a84818460208701620017a0565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da264697066735822122089d3dae0234b2496de7a09d7fb68a80f20abfdea75ba20a288c0b016cea6a24264736f6c63430008130033","sourceMap":"529:4554:109:-:0;;;1088:4:64;1045:48;;529:4554:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001333565b60405180910390f35b3480156200018057600080fd5b5062000198620001923660046200136f565b620004ce565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c63660046200138f565b62000534565b005b348015620001db57600080fd5b50620001cc620001ed3660046200136f565b620006f6565b3480156200020057600080fd5b50620001cc620002123660046200136f565b62000722565b620001cc62000229366004620014c9565b620007f6565b3480156200023c57600080fd5b5062000198620008bb565b3480156200025457600080fd5b50620001cc6200026636600462001544565b6200096c565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad3660046200136f565b620009dd565b348015620002c057600080fd5b50620001cc62000a09565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c3660046200136f565b62000a21565b3480156200031f57600080fd5b506200015b62000a7d565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc620003813660046200136f565b62000b1a565b3480156200039457600080fd5b50620001cc620003a63660046200157e565b62000b46565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed36600462001645565b62000ba2565b3480156200040057600080fd5b50620001cc620004123660046200136f565b62000ce3565b3480156200042557600080fd5b50620001cc620004373660046200136f565b62000d5b565b3480156200044a57600080fd5b506200047d6200045c3660046200136f565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b50620004bf604051806040016040528060038152602001620302e360ec1b81525081565b6040516200016a9190620017f4565b6001600160a01b03811660009081526066602052604081206001015460ff1662000518578160405163f5a6943d60e01b81526004016200050f919062001333565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005555750600054600160ff909116105b806200057a5750620005673062000dcc565b1580156200057a575060005460ff166001145b620005df5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016200050f565b6000805460ff19166001179055801562000603576000805461ff0019166101001790555b6200060e8662000ce3565b60006065556200061e8562000ddb565b620006298462000ddb565b620006348262000ddb565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fe2833981519152906200069f90879062001333565b60405180910390a18015620006ee576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b6200070062000e03565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200076d5760405162461bcd60e51b81526004016200050f9062001809565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007a162000e66565b6001600160a01b031614620007ca5760405162461bcd60e51b81526004016200050f9062001844565b620007d58162000e83565b60408051600080825260208201909252620007f39183919062000ed5565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008415760405162461bcd60e51b81526004016200050f9062001809565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200087562000e66565b6001600160a01b0316146200089e5760405162461bcd60e51b81526004016200050f9062001844565b620008a98262000e83565b620008b78282600162000ed5565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620009585760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200050f565b5060008051602062001f9b83398151915290565b6200097662000e03565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009e762000e03565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a1362000e03565b62000a1f600062001052565b565b62000a2b62000e03565b62000a368162000ddb565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fe28339815191529062000a7290839062001333565b60405180910390a150565b60008062000a936033546001600160a01b031690565b9050806001600160a01b03163b60000362000aad57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b0a575060408051601f3d908101601f1916820190925262000b07918101906200187f565b60015b62000b1457919050565b92915050565b62000b2462000e03565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b5062000e03565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009d1565b606580546000918262000bb5836200189f565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000bf662000a7d565b60405160240162000c0b9493929190620018e8565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c4a9062001318565b62000c5792919062001a30565b604051809103906000f08015801562000c74573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cd490839062001333565b60405180910390a19392505050565b600054610100900460ff1662000d505760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b60648201526084016200050f565b620007f38162001052565b62000d6562000e03565b6001600160a01b03811662000d505760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200050f565b6001600160a01b03163b151590565b6001600160a01b038116620007f3576040516303988b8160e61b815260040160405180910390fd5b3362000e0e62000a7d565b6001600160a01b03161462000a1f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200050f565b60008051602062001f9b833981519152546001600160a01b031690565b3362000e8e62000a7d565b6001600160a01b031614620007f3573362000ea862000a7d565b60405163163678e960e01b81526001600160a01b039283166004820152911660248201526044016200050f565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f105762000f0b83620010a4565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f6d575060408051601f3d908101601f1916820190925262000f6a9181019062001a56565b60015b62000fd25760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200050f565b60008051602062001f9b8339815191528114620010445760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200050f565b5062000f0b83838362001143565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010af8162000dcc565b620011135760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200050f565b60008051602062001f9b83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200114e8362001174565b6000825111806200115c5750805b1562000f0b576200116e8383620011b6565b50505050565b6200117f81620010a4565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011de838360405180606001604052806027815260200162001fbb60279139620011e5565b9392505050565b6060600080856001600160a01b03168560405162001204919062001a70565b600060405180830381855af49150503d806000811462001241576040519150601f19603f3d011682016040523d82523d6000602084013e62001246565b606091505b5091509150620012598683838762001263565b9695505050505050565b60608315620012d7578251600003620012cf57620012818562000dcc565b620012cf5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200050f565b5081620012e3565b620012e38383620012eb565b949350505050565b815115620012fc5781518083602001fd5b8060405162461bcd60e51b81526004016200050f9190620017f4565b6104ec8062001a8f83390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007f357600080fd5b80356200136a8162001347565b919050565b6000602082840312156200138257600080fd5b8135620011de8162001347565b600080600080600060a08688031215620013a857600080fd5b8535620013b58162001347565b94506020860135620013c78162001347565b93506040860135620013d98162001347565b92506060860135620013eb8162001347565b91506080860135620013fd8162001347565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200144757620014476200140b565b60405290565b60006001600160401b03808411156200146a576200146a6200140b565b604051601f8501601f19908116603f011681019082821181831017156200149557620014956200140b565b81604052809350858152868686011115620014af57600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014dd57600080fd5b8235620014ea8162001347565b915060208301356001600160401b038111156200150657600080fd5b8301601f810185136200151857600080fd5b62001529858235602084016200144d565b9150509250929050565b803580151581146200136a57600080fd5b600080604083850312156200155857600080fd5b8235620015658162001347565b9150620015756020840162001533565b90509250929050565b600080604083850312156200159257600080fd5b82356200159f8162001347565b946020939093013593505050565b600082601f830112620015bf57600080fd5b620011de838335602085016200144d565b600060408284031215620015e357600080fd5b604080519081016001600160401b0380821183831017156200160957620016096200140b565b816040528293508435835260208501359150808211156200162957600080fd5b506200163885828601620015ad565b6020830152505092915050565b6000602082840312156200165857600080fd5b81356001600160401b03808211156200167057600080fd5b9083019061018082860312156200168657600080fd5b6200169062001421565b6200169b836200135d565b8152620016ab602084016200135d565b6020820152604083013560408201526060830135606082015260808301356080820152620016dc60a084016200135d565b60a0820152620016ef60c084016200135d565b60c082015260e0830135828111156200170757600080fd5b6200171587828601620015d0565b60e0830152506101006200172b8185016200135d565b9082015261012083810135838111156200174457600080fd5b6200175288828701620015ad565b8284015250506101406200176881850162001533565b9082015261016083810135838111156200178157600080fd5b6200178f88828701620015ad565b918301919091525095945050505050565b60005b83811015620017bd578181015183820152602001620017a3565b50506000910152565b60008151808452620017e0816020860160208601620017a0565b601f01601f19169290920160200192915050565b602081526000620011de6020830184620017c6565b6020808252602c9082015260008051602062001f7b83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7b83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200189257600080fd5b8151620011de8162001347565b600060018201620018c057634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012e36040850182620017c6565b60808152620018fc60808201865162001326565b600060208601516200191260a084018262001326565b50604086015160c0830152606086015160e08301526080860151610100818185015260a088015191506101206200194c8186018462001326565b60c08901519250610140620019648187018562001326565b60e08a01519350610180610160818189015262001986610200890187620018c7565b948c01519495506200199b8883018662001326565b838c01519450607f19935083888703016101a0890152620019bd8686620017c6565b9550828c01519450620019d56101c089018615159052565b808c0151945050505080858403016101e086015250620019f68282620017c6565b9250505062001a09602083018662001326565b62001a18604083018562001326565b62001a27606083018462001326565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012e390830184620017c6565b60006020828403121562001a6957600080fd5b5051919050565b6000825162001a84818460208701620017a0565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da264697066735822122089d3dae0234b2496de7a09d7fb68a80f20abfdea75ba20a288c0b016cea6a24264736f6c63430008130033","sourceMap":"529:4554:109:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;753:40;;;;;;;;;;-1:-1:-1;753:40:109;;;;-1:-1:-1;;;;;753:40:109;;;;;;;;;;:::i;:::-;;;;;;;;4800:249;;;;;;;;;;-1:-1:-1;4800:249:109;;;;;:::i;:::-;;:::i;:::-;;;1004:25:142;;;992:2;977:18;4800:249:109;858:177:142;2258:780:109;;;;;;;;;;-1:-1:-1;2258:780:109;;;;;:::i;:::-;;:::i;:::-;;1996:118;;;;;;;;;;-1:-1:-1;1996:118:109;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4436:208:109:-;;;;;;;;;;-1:-1:-1;4436:208:109;;;;;:::i;:::-;;:::i;799:31::-;;;;;;;;;;-1:-1:-1;799:31:109;;;;-1:-1:-1;;;;;799:31:109;;;1854:136;;;;;;;;;;-1:-1:-1;1854:136:109;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;836:38:109:-;;;;;;;;;;-1:-1:-1;836:38:109;;;;-1:-1:-1;;;;;836:38:109;;;3863:222;;;;;;;;;;-1:-1:-1;3863:222:109;;;;;:::i;:::-;;:::i;525:604:105:-;;;;;;;;;;;;;:::i;4091:115:109:-;;;;;;;;;;-1:-1:-1;4181:18:109;;-1:-1:-1;;;;;4181:18:109;4091:115;;632:20;;;;;;;;;;;;;;;;2120:132;;;;;;;;;;-1:-1:-1;2120:132:109;;;;;:::i;:::-;;:::i;4212:218::-;;;;;;;;;;-1:-1:-1;4212:218:109;;;;;:::i;:::-;;:::i;714:33::-;;;;;;;;;;-1:-1:-1;714:33:109;;;;-1:-1:-1;;;;;714:33:109;;;3044:813;;;;;;;;;;-1:-1:-1;3044:813:109;;;;;:::i;:::-;;:::i;404:115:105:-;;;;;;;;;;-1:-1:-1;404:115:105;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4650:144:109:-;;;;;;;;;;-1:-1:-1;4650:144:109;;;;;:::i;:::-;-1:-1:-1;;;;;4754:27:109;4731:4;4754:27;;;:15;:27;;;;;:33;;;;;;4650:144;;;;7207:14:142;;7200:22;7182:41;;7170:2;7155:18;4650:144:109;7042:187:142;588:38:109;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;588:38:109;;;;;;;;;;;;:::i;4800:249::-;-1:-1:-1;;;;;4899:27:109;;4875:7;4899:27;;;:15;:27;;;;;:33;;;;;4894:100;;4972:10;4955:28;;-1:-1:-1;;;4955:28:109;;;;;;;;:::i;:::-;;;;;;;;4894:100;-1:-1:-1;;;;;;5011:27:109;;;;;:15;:27;;;;;:31;;4800:249::o;2258:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;8192:2:142;3325:201:47;;;8174:21:142;8231:2;8211:18;;;8204:30;8270:34;8250:18;;;8243:62;-1:-1:-1;;;8321:18:142;;;8314:44;8375:19;;3325:201:47;7990:410:142;3325:201:47;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2495:24:109::1;2512:6;2495:16;:24::i;:::-;2537:1;2529:5;:9:::0;2548:39:::1;2567:19:::0;2548:18:::1;:39::i;:::-;2597:46;2616:26;2597:18;:46::i;:::-;2653:44;2672:24;2653:18;:44::i;:::-;2707:18;:40:::0;;-1:-1:-1;;;;;2707:40:109;;::::1;-1:-1:-1::0;;;;;;2707:40:109;;::::1;;::::0;;;2757:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2821:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2867:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2932:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2932:35:109;::::1;::::0;2728:19;;2932:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:142;;3721:14:47;;8545:2:142;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2258:780:109;;;;;:::o;1996:118::-;1355:13:45;:11;:13::i;:::-;2080:16:109::1;:27:::0;;-1:-1:-1;;;;;;2080:27:109::1;-1:-1:-1::0;;;;;2080:27:109;;;::::1;::::0;;;::::1;::::0;;1996:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:142;2064:92:64;;;9614:21:142;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:142;;;9754:54;9825:19;;2064:92:64;9430:420:142;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4436:208:109:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4536:27:109;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4536:44:109::1;::::0;::::1;;::::0;;::::1;::::0;;;4595:42;;10023:51:142;;;10090:18;;;10083:50;4595:42:109::1;::::0;9996:18:142;4595:42:109::1;;;;;;;;4436:208:::0;;:::o;1854:136::-;1355:13:45;:11;:13::i;:::-;1947:25:109::1;:36:::0;;-1:-1:-1;;;;;;1947:36:109::1;-1:-1:-1::0;;;;;1947:36:109;;;::::1;::::0;;;::::1;::::0;;1854:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3863:222:109:-;1355:13:45;:11;:13::i;:::-;3951:35:109::1;3970:15;3951:18;:35::i;:::-;3996:18;:36:::0;;-1:-1:-1;;;;;;3996:36:109::1;-1:-1:-1::0;;;;;3996:36:109;::::1;;::::0;;4047:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4047:31:109;::::1;::::0;3996:36;;4047:31:::1;:::i;:::-;;;;;;;;3863:222:::0;:::o;525:604:105:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:105;591:49;;715:12;-1:-1:-1;;;;;707:33:105;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:105:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:105;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:105;;;;;;;;-1:-1:-1;;876:40:105;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:105:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:105:o;2120:132:109:-;1355:13:45;:11;:13::i;:::-;2211:23:109::1;:34:::0;;-1:-1:-1;;;;;;2211:34:109::1;-1:-1:-1::0;;;;;2211:34:109;;;::::1;::::0;;;::::1;::::0;;2120:132::o;4212:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4316:27:109;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4380:43;;10574:51:142;;;10641:18;;10634:34;;;4380:43:109::1;::::0;10547:18:142;4380:43:109::1;10400:274:142::0;3044:813:109;3232:5;:7;;3169:31;;;3232:7;;;:::i;:::-;;;;-1:-1:-1;3216:13:109;;;:23;3283:4;3249:23;;;:39;3358:25;;3472:16;;3490:23;;-1:-1:-1;;;;;;;3358:25:109;;;;-1:-1:-1;;;3421:41:109;3216:6;;3472:16;;;;3490:23;3515:7;:5;:7::i;:::-;3398:125;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3398:125:109;;;;;;;;;;;;;;-1:-1:-1;;;;;3398:125:109;-1:-1:-1;;;;;;3398:125:109;;;;;;;;;;3320:213;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3692:43:109;;3544:39;3692:43;;;:15;:43;;;;;;;3744:4;3692:49;;;:56;;-1:-1:-1;;3692:56:109;;;;;;3763:44;3299:234;;-1:-1:-1;3299:234:109;;3763:44;;;;3299:234;;3763:44;:::i;:::-;;;;;;;;3832:17;3044:813;-1:-1:-1;;;3044:813:109:o;404:115:105:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13738:2:142;5366:69:47;;;13720:21:142;13777:2;13757:18;;;13750:30;13816:34;13796:18;;;13789:62;-1:-1:-1;;;13867:18:142;;;13860:41;13918:19;;5366:69:47;13536:407:142;5366:69:47;480:32:105::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14150:2:142;2415:73:45::1;::::0;::::1;14132:21:142::0;14189:2;14169:18;;;14162:30;14228:34;14208:18;;;14201:62;-1:-1:-1;;;14279:18:142;;;14272:36;14325:19;;2415:73:45::1;13948:402:142::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1707:141:109:-;-1:-1:-1;;;;;1789:22:109;;1785:56;;1820:21;;-1:-1:-1;;;1820:21:109;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14557:2:142;1675:68:45;;;14539:21:142;;;14576:18;;;14569:30;14635:34;14615:18;;;14608:62;14687:18;;1675:68:45;14355:356:142;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:105:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:105;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:105;;-1:-1:-1;;;;;14946:15:142;;;1252:35:105;;;14928:34:142;14998:15;;14978:18;;;14971:43;14863:18;;1252:35:105;14716:304:142;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15416:2:142;3262:56:60;;;15398:21:142;15455:2;15435:18;;;15428:30;15494:34;15474:18;;;15467:62;-1:-1:-1;;;15545:18:142;;;15538:44;15599:19;;3262:56:60;15214:410:142;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;15831:2:142;3140:82:60;;;15813:21:142;15870:2;15850:18;;;15843:30;15909:34;15889:18;;;15882:62;-1:-1:-1;;;15960:18:142;;;15953:39;16009:19;;3140:82:60;15629:405:142;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16241:2:142;1479:95:60;;;16223:21:142;16280:2;16260:18;;;16253:30;16319:34;16299:18;;;16292:62;-1:-1:-1;;;16370:18:142;;;16363:43;16423:19;;1479:95:60;16039:409:142;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;16947:2:142;8113:60:76;;;16929:21:142;16986:2;16966:18;;;16959:30;17025:31;17005:18;;;16998:59;17074:18;;8113:60:76;16745:353:142;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:142:-;-1:-1:-1;;;;;80:31:142;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:142;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:142;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:142;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:142;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:142;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:142;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:142;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:142;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:142;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:142;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:142;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:142;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:142;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:142:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:142;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:142;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:142;5298:1643;-1:-1:-1;;;;;5298:1643:142:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:142;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:142;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:142:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:142;8864:18;;8857:62;-1:-1:-1;;;8950:2:142;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:142;9277:18;;9270:62;-1:-1:-1;;;9363:2:142;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10144:251::-;10214:6;10267:2;10255:9;10246:7;10242:23;10238:32;10235:52;;;10283:1;10280;10273:12;10235:52;10315:9;10309:16;10334:31;10359:5;10334:31;:::i;10679:232::-;10718:3;10739:17;;;10736:140;;10798:10;10793:3;10789:20;10786:1;10779:31;10833:4;10830:1;10823:15;10861:4;10858:1;10851:15;10736:140;-1:-1:-1;10903:1:142;10892:13;;10679:232::o;10916:252::-;11003:5;10997:12;10992:3;10985:25;10967:3;11056:4;11049:5;11045:16;11039:23;11094:4;11087;11082:3;11078:14;11071:28;11115:47;11156:4;11151:3;11147:14;11133:12;11115:47;:::i;11173:2038::-;11498:3;11487:9;11480:22;11511:54;11560:3;11549:9;11545:19;11536:6;11530:13;11511:54;:::i;:::-;11461:4;11612;11604:6;11600:17;11594:24;11627:53;11675:3;11664:9;11660:19;11646:12;11627:53;:::i;:::-;;11735:4;11727:6;11723:17;11717:24;11711:3;11700:9;11696:19;11689:53;11797:4;11789:6;11785:17;11779:24;11773:3;11762:9;11758:19;11751:53;11841:3;11833:6;11829:16;11823:23;11865:3;11904:2;11899;11888:9;11884:18;11877:30;11956:3;11948:6;11944:16;11938:23;11916:45;;11980:3;11992:54;12042:2;12031:9;12027:18;12011:14;11992:54;:::i;:::-;12095:3;12087:6;12083:16;12077:23;12055:45;;12119:3;12131:54;12181:2;12170:9;12166:18;12150:14;12131:54;:::i;:::-;12234:3;12226:6;12222:16;12216:23;12194:45;;12258:6;12283:3;12322:2;12317;12306:9;12302:18;12295:30;12348:63;12406:3;12395:9;12391:19;12375:14;12348:63;:::i;:::-;12448:15;;;12442:22;12334:77;;-1:-1:-1;12473:54:142;12508:18;;;12442:22;12473:54;:::i;:::-;12576:2;12568:6;12564:15;12558:22;12536:44;;12603:3;12599:8;12589:18;;12672:2;12660:9;12652:6;12648:22;12644:31;12638:3;12627:9;12623:19;12616:60;12699:41;12733:6;12717:14;12699:41;:::i;:::-;12685:55;;12789:2;12781:6;12777:15;12771:22;12749:44;;12802:52;12849:3;12838:9;12834:19;12818:14;7016:13;7009:21;6997:34;;6946:91;12802:52;12903:2;12895:6;12891:15;12885:22;12863:44;;;;;12972:2;12960:9;12952:6;12948:22;12944:31;12938:3;12927:9;12923:19;12916:60;;12993:41;13027:6;13011:14;12993:41;:::i;:::-;12985:49;;;;13043:48;13085:4;13074:9;13070:20;13062:6;13043:48;:::i;:::-;13100;13142:4;13131:9;13127:20;13119:6;13100:48;:::i;:::-;13157;13199:4;13188:9;13184:20;13176:6;13157:48;:::i;:::-;11173:2038;;;;;;;:::o;13216:315::-;-1:-1:-1;;;;;13391:32:142;;13373:51;;13460:2;13455;13440:18;;13433:30;;;-1:-1:-1;;13480:45:142;;13506:18;;13498:6;13480:45;:::i;15025:184::-;15095:6;15148:2;15136:9;15127:7;15123:23;15119:32;15116:52;;;15164:1;15161;15154:12;15116:52;-1:-1:-1;15187:16:142;;15025:184;-1:-1:-1;15025:184:142:o;16453:287::-;16582:3;16620:6;16614:13;16636:66;16695:6;16690:3;16683:4;16675:6;16671:17;16636:66;:::i;:::-;16718:16;;;;;16453:287;-1:-1:-1;;16453:287:142:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1836,"length":32},{"start":1903,"length":32},{"start":2048,"length":32},{"start":2115,"length":32},{"start":2248,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":\"RegistryFactoryV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0xe130342ecd3a0023a97611845108dd8f7411a4b18dfe8bccc7d880b716e94932\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://be21850b019ca2fd1a2da4474822621b3471d1def2f78599ffac20d94c8782ff\",\"dweb:/ipfs/QmPA536ZAYTcqBdyh3AxafpKM5Rx5C97uNP7n5dXKZqNvM\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":"RegistryFactoryV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0xe130342ecd3a0023a97611845108dd8f7411a4b18dfe8bccc7d880b716e94932","urls":["bzz-raw://be21850b019ca2fd1a2da4474822621b3471d1def2f78599ffac20d94c8782ff","dweb:/ipfs/QmPA536ZAYTcqBdyh3AxafpKM5Rx5C97uNP7n5dXKZqNvM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72953,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72958,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72945_storage)"},{"astId":72960,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72962,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72964,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72966,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73298,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72945_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72945_storage"},"t_struct(CommunityInfo)72945_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72942,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72944,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","id":73300,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[72945],"ERC1967Proxy":[55021],"ProxyOwnableUpgrader":[70711],"RegistryCommunityInitializeParamsV0_0":[70795],"RegistryCommunityV0_0":[72700],"RegistryFactoryV0_0":[73299]},"nodeType":"SourceUnit","src":"42:5042:109","nodes":[{"id":72931,"nodeType":"PragmaDirective","src":"42:24:109","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72934,"nodeType":"ImportDirective","src":"68:134:109","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":73300,"sourceUnit":72701,"symbolAliases":[{"foreign":{"id":72932,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"81:21:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72933,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70795,"src":"108:37:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72936,"nodeType":"ImportDirective","src":"203:65:109","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":73300,"sourceUnit":70712,"symbolAliases":[{"foreign":{"id":72935,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70711,"src":"211:20:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72938,"nodeType":"ImportDirective","src":"269:84:109","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":73300,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":72937,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"277:12:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72940,"nodeType":"ImportDirective","src":"354:65:109","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":73300,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":72939,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"362:5:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72945,"nodeType":"StructDefinition","src":"421:57:109","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":72942,"mutability":"mutable","name":"fee","nameLocation":"456:3:109","nodeType":"VariableDeclaration","scope":72945,"src":"448:11:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72941,"name":"uint256","nodeType":"ElementaryTypeName","src":"448:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72944,"mutability":"mutable","name":"valid","nameLocation":"470:5:109","nodeType":"VariableDeclaration","scope":72945,"src":"465:10:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72943,"name":"bool","nodeType":"ElementaryTypeName","src":"465:4:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"428:13:109","scope":73300,"visibility":"public"},{"id":73299,"nodeType":"ContractDefinition","src":"529:4554:109","nodes":[{"id":72951,"nodeType":"VariableDeclaration","src":"588:38:109","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"611:7:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":72949,"name":"string","nodeType":"ElementaryTypeName","src":"588:6:109","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":72950,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"621:5:109","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":72953,"nodeType":"VariableDeclaration","src":"632:20:109","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"647:5:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72952,"name":"uint256","nodeType":"ElementaryTypeName","src":"632:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":72958,"nodeType":"VariableDeclaration","src":"659:49:109","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"693:15:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":72957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":72954,"name":"address","nodeType":"ElementaryTypeName","src":"667:7:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"659:33:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":72956,"nodeType":"UserDefinedTypeName","pathNode":{"id":72955,"name":"CommunityInfo","nameLocations":["678:13:109"],"nodeType":"IdentifierPath","referencedDeclaration":72945,"src":"678:13:109"},"referencedDeclaration":72945,"src":"678:13:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":72960,"nodeType":"VariableDeclaration","src":"714:33:109","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"729:18:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72959,"name":"address","nodeType":"ElementaryTypeName","src":"714:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72962,"nodeType":"VariableDeclaration","src":"753:40:109","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"768:25:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72961,"name":"address","nodeType":"ElementaryTypeName","src":"753:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72964,"nodeType":"VariableDeclaration","src":"799:31:109","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"814:16:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72963,"name":"address","nodeType":"ElementaryTypeName","src":"799:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72966,"nodeType":"VariableDeclaration","src":"836:38:109","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"851:23:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72965,"name":"address","nodeType":"ElementaryTypeName","src":"836:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72970,"nodeType":"EventDefinition","src":"1047:46:109","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1053:14:109","parameters":{"id":72969,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72968,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1076:15:109","nodeType":"VariableDeclaration","scope":72970,"src":"1068:23:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72967,"name":"address","nodeType":"ElementaryTypeName","src":"1068:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1067:25:109"}},{"id":72976,"nodeType":"EventDefinition","src":"1098:66:109","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1104:14:109","parameters":{"id":72975,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72972,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1127:10:109","nodeType":"VariableDeclaration","scope":72976,"src":"1119:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72971,"name":"address","nodeType":"ElementaryTypeName","src":"1119:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72974,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1147:15:109","nodeType":"VariableDeclaration","scope":72976,"src":"1139:23:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72973,"name":"uint256","nodeType":"ElementaryTypeName","src":"1139:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1118:45:109"}},{"id":72980,"nodeType":"EventDefinition","src":"1169:51:109","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1175:16:109","parameters":{"id":72979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72978,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1200:18:109","nodeType":"VariableDeclaration","scope":72980,"src":"1192:26:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72977,"name":"address","nodeType":"ElementaryTypeName","src":"1192:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1191:28:109"}},{"id":72986,"nodeType":"EventDefinition","src":"1225:62:109","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1231:20:109","parameters":{"id":72985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72982,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1260:10:109","nodeType":"VariableDeclaration","scope":72986,"src":"1252:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72981,"name":"address","nodeType":"ElementaryTypeName","src":"1252:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72984,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1277:8:109","nodeType":"VariableDeclaration","scope":72986,"src":"1272:13:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72983,"name":"bool","nodeType":"ElementaryTypeName","src":"1272:4:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1251:35:109"}},{"id":72990,"nodeType":"ErrorDefinition","src":"1459:43:109","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1465:16:109","parameters":{"id":72989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72988,"mutability":"mutable","name":"_community","nameLocation":"1490:10:109","nodeType":"VariableDeclaration","scope":72990,"src":"1482:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72987,"name":"address","nodeType":"ElementaryTypeName","src":"1482:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1481:20:109"}},{"id":72992,"nodeType":"ErrorDefinition","src":"1507:28:109","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1513:19:109","parameters":{"id":72991,"nodeType":"ParameterList","parameters":[],"src":"1532:2:109"}},{"id":73008,"nodeType":"FunctionDefinition","src":"1707:141:109","nodes":[],"body":{"id":73007,"nodeType":"Block","src":"1775:73:109","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":73002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72997,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72994,"src":"1789:8:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":73000,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1809:1:109","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72999,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1801:7:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72998,"name":"address","nodeType":"ElementaryTypeName","src":"1801:7:109","typeDescriptions":{}}},"id":73001,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1801:10:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1789:22:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73006,"nodeType":"IfStatement","src":"1785:56:109","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":73003,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72992,"src":"1820:19:109","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":73004,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1820:21:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73005,"nodeType":"RevertStatement","src":"1813:28:109"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1716:18:109","parameters":{"id":72995,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72994,"mutability":"mutable","name":"_address","nameLocation":"1743:8:109","nodeType":"VariableDeclaration","scope":73008,"src":"1735:16:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72993,"name":"address","nodeType":"ElementaryTypeName","src":"1735:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1734:18:109"},"returnParameters":{"id":72996,"nodeType":"ParameterList","parameters":[],"src":"1775:0:109"},"scope":73299,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":73020,"nodeType":"FunctionDefinition","src":"1854:136:109","nodes":[],"body":{"id":73019,"nodeType":"Block","src":"1937:53:109","nodes":[],"statements":[{"expression":{"id":73017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73015,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72962,"src":"1947:25:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73016,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73010,"src":"1975:8:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1947:36:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73018,"nodeType":"ExpressionStatement","src":"1947:36:109"}]},"functionSelector":"5decae02","implemented":true,"kind":"function","modifiers":[{"id":73013,"kind":"modifierInvocation","modifierName":{"id":73012,"name":"onlyOwner","nameLocations":["1927:9:109"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"1927:9:109"},"nodeType":"ModifierInvocation","src":"1927:9:109"}],"name":"setRegistryCommunityTemplate","nameLocation":"1863:28:109","parameters":{"id":73011,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73010,"mutability":"mutable","name":"template","nameLocation":"1900:8:109","nodeType":"VariableDeclaration","scope":73020,"src":"1892:16:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73009,"name":"address","nodeType":"ElementaryTypeName","src":"1892:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1891:18:109"},"returnParameters":{"id":73014,"nodeType":"ParameterList","parameters":[],"src":"1937:0:109"},"scope":73299,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73032,"nodeType":"FunctionDefinition","src":"1996:118:109","nodes":[],"body":{"id":73031,"nodeType":"Block","src":"2070:44:109","nodes":[],"statements":[{"expression":{"id":73029,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73027,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72964,"src":"2080:16:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73028,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73022,"src":"2099:8:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2080:27:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73030,"nodeType":"ExpressionStatement","src":"2080:27:109"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":73025,"kind":"modifierInvocation","modifierName":{"id":73024,"name":"onlyOwner","nameLocations":["2060:9:109"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2060:9:109"},"nodeType":"ModifierInvocation","src":"2060:9:109"}],"name":"setStrategyTemplate","nameLocation":"2005:19:109","parameters":{"id":73023,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73022,"mutability":"mutable","name":"template","nameLocation":"2033:8:109","nodeType":"VariableDeclaration","scope":73032,"src":"2025:16:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73021,"name":"address","nodeType":"ElementaryTypeName","src":"2025:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2024:18:109"},"returnParameters":{"id":73026,"nodeType":"ParameterList","parameters":[],"src":"2070:0:109"},"scope":73299,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73044,"nodeType":"FunctionDefinition","src":"2120:132:109","nodes":[],"body":{"id":73043,"nodeType":"Block","src":"2201:51:109","nodes":[],"statements":[{"expression":{"id":73041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73039,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72966,"src":"2211:23:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73040,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73034,"src":"2237:8:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2211:34:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73042,"nodeType":"ExpressionStatement","src":"2211:34:109"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":73037,"kind":"modifierInvocation","modifierName":{"id":73036,"name":"onlyOwner","nameLocations":["2191:9:109"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2191:9:109"},"nodeType":"ModifierInvocation","src":"2191:9:109"}],"name":"setCollateralVaultTemplate","nameLocation":"2129:26:109","parameters":{"id":73035,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73034,"mutability":"mutable","name":"template","nameLocation":"2164:8:109","nodeType":"VariableDeclaration","scope":73044,"src":"2156:16:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73033,"name":"address","nodeType":"ElementaryTypeName","src":"2156:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2155:18:109"},"returnParameters":{"id":73038,"nodeType":"ParameterList","parameters":[],"src":"2201:0:109"},"scope":73299,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73102,"nodeType":"FunctionDefinition","src":"2258:780:109","nodes":[],"body":{"id":73101,"nodeType":"Block","src":"2485:553:109","nodes":[],"statements":[{"expression":{"arguments":[{"id":73062,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73046,"src":"2512:6:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73059,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2495:5:109","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryV0_0_$73299_$","typeString":"type(contract super RegistryFactoryV0_0)"}},"id":73061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2501:10:109","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70646,"src":"2495:16:109","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73063,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2495:24:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73064,"nodeType":"ExpressionStatement","src":"2495:24:109"},{"expression":{"id":73067,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73065,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72953,"src":"2529:5:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":73066,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2537:1:109","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2529:9:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73068,"nodeType":"ExpressionStatement","src":"2529:9:109"},{"expression":{"arguments":[{"id":73070,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73048,"src":"2567:19:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73069,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73008,"src":"2548:18:109","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73071,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2548:39:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73072,"nodeType":"ExpressionStatement","src":"2548:39:109"},{"expression":{"arguments":[{"id":73074,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73050,"src":"2616:26:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73073,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73008,"src":"2597:18:109","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2597:46:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73076,"nodeType":"ExpressionStatement","src":"2597:46:109"},{"expression":{"arguments":[{"id":73078,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73054,"src":"2672:24:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73077,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73008,"src":"2653:18:109","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73079,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2653:44:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73080,"nodeType":"ExpressionStatement","src":"2653:44:109"},{"expression":{"id":73083,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73081,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72960,"src":"2707:18:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73082,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73048,"src":"2728:19:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2707:40:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73084,"nodeType":"ExpressionStatement","src":"2707:40:109"},{"expression":{"id":73087,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73085,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72962,"src":"2757:25:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73086,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73050,"src":"2785:26:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2757:54:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73088,"nodeType":"ExpressionStatement","src":"2757:54:109"},{"expression":{"id":73091,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73089,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72964,"src":"2821:16:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73090,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73052,"src":"2840:17:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2821:36:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73092,"nodeType":"ExpressionStatement","src":"2821:36:109"},{"expression":{"id":73095,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73093,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72966,"src":"2867:23:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73094,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73054,"src":"2893:24:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2867:50:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73096,"nodeType":"ExpressionStatement","src":"2867:50:109"},{"eventCall":{"arguments":[{"id":73098,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73048,"src":"2947:19:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73097,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72970,"src":"2932:14:109","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2932:35:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73100,"nodeType":"EmitStatement","src":"2927:40:109"}]},"functionSelector":"1459457a","implemented":true,"kind":"function","modifiers":[{"id":73057,"kind":"modifierInvocation","modifierName":{"id":73056,"name":"initializer","nameLocations":["2473:11:109"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"2473:11:109"},"nodeType":"ModifierInvocation","src":"2473:11:109"}],"name":"initialize","nameLocation":"2267:10:109","parameters":{"id":73055,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73046,"mutability":"mutable","name":"_owner","nameLocation":"2295:6:109","nodeType":"VariableDeclaration","scope":73102,"src":"2287:14:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73045,"name":"address","nodeType":"ElementaryTypeName","src":"2287:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73048,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"2319:19:109","nodeType":"VariableDeclaration","scope":73102,"src":"2311:27:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73047,"name":"address","nodeType":"ElementaryTypeName","src":"2311:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73050,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"2356:26:109","nodeType":"VariableDeclaration","scope":73102,"src":"2348:34:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73049,"name":"address","nodeType":"ElementaryTypeName","src":"2348:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73052,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"2400:17:109","nodeType":"VariableDeclaration","scope":73102,"src":"2392:25:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73051,"name":"address","nodeType":"ElementaryTypeName","src":"2392:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73054,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"2435:24:109","nodeType":"VariableDeclaration","scope":73102,"src":"2427:32:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73053,"name":"address","nodeType":"ElementaryTypeName","src":"2427:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2277:188:109"},"returnParameters":{"id":73058,"nodeType":"ParameterList","parameters":[],"src":"2485:0:109"},"scope":73299,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":73185,"nodeType":"FunctionDefinition","src":"3044:813:109","nodes":[],"body":{"id":73184,"nodeType":"Block","src":"3206:651:109","nodes":[],"statements":[{"expression":{"id":73115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73110,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73105,"src":"3216:6:109","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73112,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3223:6:109","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70779,"src":"3216:13:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73114,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3232:7:109","subExpression":{"id":73113,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72953,"src":"3232:5:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3216:23:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73116,"nodeType":"ExpressionStatement","src":"3216:23:109"},{"expression":{"id":73124,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73117,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73105,"src":"3249:6:109","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73119,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3256:16:109","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70781,"src":"3249:23:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":73122,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3283:4:109","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73299","typeString":"contract RegistryFactoryV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73299","typeString":"contract RegistryFactoryV0_0"}],"id":73121,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3275:7:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73120,"name":"address","nodeType":"ElementaryTypeName","src":"3275:7:109","typeDescriptions":{}}},"id":73123,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3275:13:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3249:39:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73125,"nodeType":"ExpressionStatement","src":"3249:39:109"},{"assignments":[73128],"declarations":[{"constant":false,"id":73128,"mutability":"mutable","name":"proxy","nameLocation":"3312:5:109","nodeType":"VariableDeclaration","scope":73184,"src":"3299:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":73127,"nodeType":"UserDefinedTypeName","pathNode":{"id":73126,"name":"ERC1967Proxy","nameLocations":["3299:12:109"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3299:12:109"},"referencedDeclaration":55021,"src":"3299:12:109","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":73148,"initialValue":{"arguments":[{"arguments":[{"id":73134,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72962,"src":"3358:25:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3350:7:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73132,"name":"address","nodeType":"ElementaryTypeName","src":"3350:7:109","typeDescriptions":{}}},"id":73135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3350:34:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":73138,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"3421:21:109","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73139,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3443:10:109","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71485,"src":"3421:32:109","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":73140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3454:8:109","memberName":"selector","nodeType":"MemberAccess","src":"3421:41:109","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":73141,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73105,"src":"3464:6:109","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":73142,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72964,"src":"3472:16:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73143,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72966,"src":"3490:23:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":73144,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70689],"referencedDeclaration":70689,"src":"3515:5:109","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":73145,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3515:7:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73136,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3398:3:109","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":73137,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3402:18:109","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3398:22:109","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":73146,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3398:125:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":73131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"3320:16:109","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":73130,"nodeType":"UserDefinedTypeName","pathNode":{"id":73129,"name":"ERC1967Proxy","nameLocations":["3324:12:109"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3324:12:109"},"referencedDeclaration":55021,"src":"3324:12:109","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":73147,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3320:213:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"3299:234:109"},{"assignments":[73151],"declarations":[{"constant":false,"id":73151,"mutability":"mutable","name":"registryCommunity","nameLocation":"3566:17:109","nodeType":"VariableDeclaration","scope":73184,"src":"3544:39:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":73150,"nodeType":"UserDefinedTypeName","pathNode":{"id":73149,"name":"RegistryCommunityV0_0","nameLocations":["3544:21:109"],"nodeType":"IdentifierPath","referencedDeclaration":72700,"src":"3544:21:109"},"referencedDeclaration":72700,"src":"3544:21:109","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":73161,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":73157,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73128,"src":"3624:5:109","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":73156,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3616:7:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73155,"name":"address","nodeType":"ElementaryTypeName","src":"3616:7:109","typeDescriptions":{}}},"id":73158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3616:14:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73154,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3608:8:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":73153,"name":"address","nodeType":"ElementaryTypeName","src":"3608:8:109","stateMutability":"payable","typeDescriptions":{}}},"id":73159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3608:23:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":73152,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"3586:21:109","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3586:46:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"3544:88:109"},{"expression":{"id":73170,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73162,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72958,"src":"3692:15:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73167,"indexExpression":{"arguments":[{"id":73165,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73151,"src":"3716:17:109","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":73164,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3708:7:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73163,"name":"address","nodeType":"ElementaryTypeName","src":"3708:7:109","typeDescriptions":{}}},"id":73166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3708:26:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3692:43:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage","typeString":"struct CommunityInfo storage ref"}},"id":73168,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3736:5:109","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72944,"src":"3692:49:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":73169,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3744:4:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3692:56:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73171,"nodeType":"ExpressionStatement","src":"3692:56:109"},{"eventCall":{"arguments":[{"arguments":[{"id":73175,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73151,"src":"3788:17:109","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":73174,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3780:7:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73173,"name":"address","nodeType":"ElementaryTypeName","src":"3780:7:109","typeDescriptions":{}}},"id":73176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3780:26:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73172,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72980,"src":"3763:16:109","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73177,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3763:44:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73178,"nodeType":"EmitStatement","src":"3758:49:109"},{"expression":{"arguments":[{"id":73181,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73151,"src":"3832:17:109","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72700","typeString":"contract RegistryCommunityV0_0"}],"id":73180,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3824:7:109","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73179,"name":"address","nodeType":"ElementaryTypeName","src":"3824:7:109","typeDescriptions":{}}},"id":73182,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3824:26:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73109,"id":73183,"nodeType":"Return","src":"3817:33:109"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"3053:14:109","parameters":{"id":73106,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73105,"mutability":"mutable","name":"params","nameLocation":"3113:6:109","nodeType":"VariableDeclaration","scope":73185,"src":"3068:51:109","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":73104,"nodeType":"UserDefinedTypeName","pathNode":{"id":73103,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["3068:37:109"],"nodeType":"IdentifierPath","referencedDeclaration":70795,"src":"3068:37:109"},"referencedDeclaration":70795,"src":"3068:37:109","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"3067:53:109"},"returnParameters":{"id":73109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73108,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"3177:23:109","nodeType":"VariableDeclaration","scope":73185,"src":"3169:31:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73107,"name":"address","nodeType":"ElementaryTypeName","src":"3169:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3168:33:109"},"scope":73299,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73205,"nodeType":"FunctionDefinition","src":"3863:222:109","nodes":[],"body":{"id":73204,"nodeType":"Block","src":"3941:144:109","nodes":[],"statements":[{"expression":{"arguments":[{"id":73193,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73187,"src":"3970:15:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73192,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73008,"src":"3951:18:109","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73194,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3951:35:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73195,"nodeType":"ExpressionStatement","src":"3951:35:109"},{"expression":{"id":73198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73196,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72960,"src":"3996:18:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73197,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73187,"src":"4017:15:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3996:36:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73199,"nodeType":"ExpressionStatement","src":"3996:36:109"},{"eventCall":{"arguments":[{"id":73201,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73187,"src":"4062:15:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73200,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72970,"src":"4047:14:109","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73202,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4047:31:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73203,"nodeType":"EmitStatement","src":"4042:36:109"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":73190,"kind":"modifierInvocation","modifierName":{"id":73189,"name":"onlyOwner","nameLocations":["3931:9:109"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"3931:9:109"},"nodeType":"ModifierInvocation","src":"3931:9:109"}],"name":"setReceiverAddress","nameLocation":"3872:18:109","parameters":{"id":73188,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73187,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"3899:15:109","nodeType":"VariableDeclaration","scope":73205,"src":"3891:23:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73186,"name":"address","nodeType":"ElementaryTypeName","src":"3891:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3890:25:109"},"returnParameters":{"id":73191,"nodeType":"ParameterList","parameters":[],"src":"3941:0:109"},"scope":73299,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73213,"nodeType":"FunctionDefinition","src":"4091:115:109","nodes":[],"body":{"id":73212,"nodeType":"Block","src":"4164:42:109","nodes":[],"statements":[{"expression":{"id":73210,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72960,"src":"4181:18:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73209,"id":73211,"nodeType":"Return","src":"4174:25:109"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"4100:21:109","parameters":{"id":73206,"nodeType":"ParameterList","parameters":[],"src":"4121:2:109"},"returnParameters":{"id":73209,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73208,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73213,"src":"4155:7:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73207,"name":"address","nodeType":"ElementaryTypeName","src":"4155:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4154:9:109"},"scope":73299,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73235,"nodeType":"FunctionDefinition","src":"4212:218:109","nodes":[],"body":{"id":73234,"nodeType":"Block","src":"4306:124:109","nodes":[],"statements":[{"expression":{"id":73227,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73222,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72958,"src":"4316:15:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73224,"indexExpression":{"id":73223,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73215,"src":"4332:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4316:27:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage","typeString":"struct CommunityInfo storage ref"}},"id":73225,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4344:3:109","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72942,"src":"4316:31:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73226,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73217,"src":"4350:15:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4316:49:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73228,"nodeType":"ExpressionStatement","src":"4316:49:109"},{"eventCall":{"arguments":[{"id":73230,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73215,"src":"4395:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73231,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73217,"src":"4407:15:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73229,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72976,"src":"4380:14:109","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":73232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4380:43:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73233,"nodeType":"EmitStatement","src":"4375:48:109"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":73220,"kind":"modifierInvocation","modifierName":{"id":73219,"name":"onlyOwner","nameLocations":["4296:9:109"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4296:9:109"},"nodeType":"ModifierInvocation","src":"4296:9:109"}],"name":"setProtocolFee","nameLocation":"4221:14:109","parameters":{"id":73218,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73215,"mutability":"mutable","name":"_community","nameLocation":"4244:10:109","nodeType":"VariableDeclaration","scope":73235,"src":"4236:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73214,"name":"address","nodeType":"ElementaryTypeName","src":"4236:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73217,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"4264:15:109","nodeType":"VariableDeclaration","scope":73235,"src":"4256:23:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73216,"name":"uint256","nodeType":"ElementaryTypeName","src":"4256:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4235:45:109"},"returnParameters":{"id":73221,"nodeType":"ParameterList","parameters":[],"src":"4306:0:109"},"scope":73299,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73257,"nodeType":"FunctionDefinition","src":"4436:208:109","nodes":[],"body":{"id":73256,"nodeType":"Block","src":"4526:118:109","nodes":[],"statements":[{"expression":{"id":73249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73244,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72958,"src":"4536:15:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73246,"indexExpression":{"id":73245,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73237,"src":"4552:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4536:27:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage","typeString":"struct CommunityInfo storage ref"}},"id":73247,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4564:5:109","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72944,"src":"4536:33:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73248,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73239,"src":"4572:8:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4536:44:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73250,"nodeType":"ExpressionStatement","src":"4536:44:109"},{"eventCall":{"arguments":[{"id":73252,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73237,"src":"4616:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73253,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73239,"src":"4628:8:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":73251,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72986,"src":"4595:20:109","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":73254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4595:42:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73255,"nodeType":"EmitStatement","src":"4590:47:109"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":73242,"kind":"modifierInvocation","modifierName":{"id":73241,"name":"onlyOwner","nameLocations":["4516:9:109"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4516:9:109"},"nodeType":"ModifierInvocation","src":"4516:9:109"}],"name":"setCommunityValidity","nameLocation":"4445:20:109","parameters":{"id":73240,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73237,"mutability":"mutable","name":"_community","nameLocation":"4474:10:109","nodeType":"VariableDeclaration","scope":73257,"src":"4466:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73236,"name":"address","nodeType":"ElementaryTypeName","src":"4466:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73239,"mutability":"mutable","name":"_isValid","nameLocation":"4491:8:109","nodeType":"VariableDeclaration","scope":73257,"src":"4486:13:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73238,"name":"bool","nodeType":"ElementaryTypeName","src":"4486:4:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4465:35:109"},"returnParameters":{"id":73243,"nodeType":"ParameterList","parameters":[],"src":"4526:0:109"},"scope":73299,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73270,"nodeType":"FunctionDefinition","src":"4650:144:109","nodes":[],"body":{"id":73269,"nodeType":"Block","src":"4737:57:109","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":73264,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72958,"src":"4754:15:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73266,"indexExpression":{"id":73265,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73259,"src":"4770:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4754:27:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage","typeString":"struct CommunityInfo storage ref"}},"id":73267,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4782:5:109","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72944,"src":"4754:33:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":73263,"id":73268,"nodeType":"Return","src":"4747:40:109"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"4659:20:109","parameters":{"id":73260,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73259,"mutability":"mutable","name":"_community","nameLocation":"4688:10:109","nodeType":"VariableDeclaration","scope":73270,"src":"4680:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73258,"name":"address","nodeType":"ElementaryTypeName","src":"4680:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4679:20:109"},"returnParameters":{"id":73263,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73262,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73270,"src":"4731:4:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73261,"name":"bool","nodeType":"ElementaryTypeName","src":"4731:4:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4730:6:109"},"scope":73299,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73294,"nodeType":"FunctionDefinition","src":"4800:249:109","nodes":[],"body":{"id":73293,"nodeType":"Block","src":"4884:165:109","nodes":[],"statements":[{"condition":{"id":73281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"4898:34:109","subExpression":{"expression":{"baseExpression":{"id":73277,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72958,"src":"4899:15:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73279,"indexExpression":{"id":73278,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73272,"src":"4915:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4899:27:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage","typeString":"struct CommunityInfo storage ref"}},"id":73280,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4927:5:109","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72944,"src":"4899:33:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73287,"nodeType":"IfStatement","src":"4894:100:109","trueBody":{"id":73286,"nodeType":"Block","src":"4934:60:109","statements":[{"errorCall":{"arguments":[{"id":73283,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73272,"src":"4972:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73282,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72990,"src":"4955:16:109","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73284,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4955:28:109","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73285,"nodeType":"RevertStatement","src":"4948:35:109"}]}},{"expression":{"expression":{"baseExpression":{"id":73288,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72958,"src":"5011:15:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73290,"indexExpression":{"id":73289,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73272,"src":"5027:10:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5011:27:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage","typeString":"struct CommunityInfo storage ref"}},"id":73291,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5039:3:109","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72942,"src":"5011:31:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":73276,"id":73292,"nodeType":"Return","src":"5004:38:109"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"4809:14:109","parameters":{"id":73273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73272,"mutability":"mutable","name":"_community","nameLocation":"4832:10:109","nodeType":"VariableDeclaration","scope":73294,"src":"4824:18:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73271,"name":"address","nodeType":"ElementaryTypeName","src":"4824:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4823:20:109"},"returnParameters":{"id":73276,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73275,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73294,"src":"4875:7:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73274,"name":"uint256","nodeType":"ElementaryTypeName","src":"4875:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4874:9:109"},"scope":73299,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73298,"nodeType":"VariableDeclaration","src":"5055:25:109","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5075:5:109","scope":73299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73295,"name":"uint256","nodeType":"ElementaryTypeName","src":"5055:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73297,"length":{"hexValue":"3530","id":73296,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5063:2:109","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5055:11:109","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":72947,"name":"ProxyOwnableUpgrader","nameLocations":["561:20:109"],"nodeType":"IdentifierPath","referencedDeclaration":70711,"src":"561:20:109"},"id":72948,"nodeType":"InheritanceSpecifier","src":"561:20:109"}],"canonicalName":"RegistryFactoryV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72946,"nodeType":"StructuredDocumentation","src":"480:49:109","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[73299,70711,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_0","nameLocation":"538:19:109","scope":73300,"usedErrors":[70634,72990,72992]}],"license":"AGPL-3.0-only"},"id":109} \ No newline at end of file +{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161202c61004c6000396000818161072101528181610764015281816107f50152818161083801526108bd015261202c6000f3fe608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001328565b60405180910390f35b3480156200018057600080fd5b50620001986200019236600462001364565b620004c3565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c636600462001384565b62000529565b005b348015620001db57600080fd5b50620001cc620001ed36600462001364565b620006eb565b3480156200020057600080fd5b50620001cc6200021236600462001364565b62000717565b620001cc62000229366004620014be565b620007eb565b3480156200023c57600080fd5b5062000198620008b0565b3480156200025457600080fd5b50620001cc6200026636600462001539565b62000961565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad36600462001364565b620009d2565b348015620002c057600080fd5b50620001cc620009fe565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c36600462001364565b62000a16565b3480156200031f57600080fd5b506200015b62000a72565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc6200038136600462001364565b62000b0f565b3480156200039457600080fd5b50620001cc620003a636600462001573565b62000b3b565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed3660046200163a565b62000b97565b3480156200040057600080fd5b50620001cc6200041236600462001364565b62000cd8565b3480156200042557600080fd5b50620001cc6200043736600462001364565b62000d50565b3480156200044a57600080fd5b506200047d6200045c36600462001364565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200016a9190620017e9565b6001600160a01b03811660009081526066602052604081206001015460ff166200050d578160405163f5a6943d60e01b815260040162000504919062001328565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200054a5750600054600160ff909116105b806200056f57506200055c3062000dc1565b1580156200056f575060005460ff166001145b620005d45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840162000504565b6000805460ff191660011790558015620005f8576000805461ff0019166101001790555b620006038662000cd8565b6000606555620006138562000dd0565b6200061e8462000dd0565b620006298262000dd0565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fd7833981519152906200069490879062001328565b60405180910390a18015620006e3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b620006f562000df8565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620007625760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200079662000e5b565b6001600160a01b031614620007bf5760405162461bcd60e51b8152600401620005049062001839565b620007ca8162000e78565b60408051600080825260208201909252620007e89183919062000eca565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008365760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200086a62000e5b565b6001600160a01b031614620008935760405162461bcd60e51b8152600401620005049062001839565b6200089e8262000e78565b620008ac8282600162000eca565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200094d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000504565b5060008051602062001f9083398151915290565b6200096b62000df8565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009dc62000df8565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a0862000df8565b62000a14600062001047565b565b62000a2062000df8565b62000a2b8162000dd0565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fd78339815191529062000a6790839062001328565b60405180910390a150565b60008062000a886033546001600160a01b031690565b9050806001600160a01b03163b60000362000aa257919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000aff575060408051601f3d908101601f1916820190925262000afc9181019062001874565b60015b62000b0957919050565b92915050565b62000b1962000df8565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b4562000df8565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009c6565b606580546000918262000baa8362001894565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000beb62000a72565b60405160240162000c009493929190620018dd565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c3f906200130d565b62000c4c92919062001a25565b604051809103906000f08015801562000c69573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cc990839062001328565b60405180910390a19392505050565b600054610100900460ff1662000d455760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000504565b620007e88162001047565b62000d5a62000df8565b6001600160a01b03811662000d455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000504565b6001600160a01b03163b151590565b6001600160a01b038116620007e8576040516303988b8160e61b815260040160405180910390fd5b3362000e0362000a72565b6001600160a01b03161462000a145760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000504565b60008051602062001f90833981519152546001600160a01b031690565b3362000e8362000a72565b6001600160a01b031614620007e8573362000e9d62000a72565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000504565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f055762000f008362001099565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f62575060408051601f3d908101601f1916820190925262000f5f9181019062001a4b565b60015b62000fc75760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000504565b60008051602062001f908339815191528114620010395760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000504565b5062000f0083838362001138565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010a48162000dc1565b620011085760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000504565b60008051602062001f9083398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011438362001169565b600082511180620011515750805b1562000f0057620011638383620011ab565b50505050565b620011748162001099565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011d3838360405180606001604052806027815260200162001fb060279139620011da565b9392505050565b6060600080856001600160a01b031685604051620011f9919062001a65565b600060405180830381855af49150503d806000811462001236576040519150601f19603f3d011682016040523d82523d6000602084013e6200123b565b606091505b50915091506200124e8683838762001258565b9695505050505050565b60608315620012cc578251600003620012c457620012768562000dc1565b620012c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000504565b5081620012d8565b620012d88383620012e0565b949350505050565b815115620012f15781518083602001fd5b8060405162461bcd60e51b8152600401620005049190620017e9565b6104ec8062001a8483390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007e857600080fd5b80356200135f816200133c565b919050565b6000602082840312156200137757600080fd5b8135620011d3816200133c565b600080600080600060a086880312156200139d57600080fd5b8535620013aa816200133c565b94506020860135620013bc816200133c565b93506040860135620013ce816200133c565b92506060860135620013e0816200133c565b91506080860135620013f2816200133c565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200143c576200143c62001400565b60405290565b60006001600160401b03808411156200145f576200145f62001400565b604051601f8501601f19908116603f011681019082821181831017156200148a576200148a62001400565b81604052809350858152868686011115620014a457600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014d257600080fd5b8235620014df816200133c565b915060208301356001600160401b03811115620014fb57600080fd5b8301601f810185136200150d57600080fd5b6200151e8582356020840162001442565b9150509250929050565b803580151581146200135f57600080fd5b600080604083850312156200154d57600080fd5b82356200155a816200133c565b91506200156a6020840162001528565b90509250929050565b600080604083850312156200158757600080fd5b823562001594816200133c565b946020939093013593505050565b600082601f830112620015b457600080fd5b620011d38383356020850162001442565b600060408284031215620015d857600080fd5b604080519081016001600160401b038082118383101715620015fe57620015fe62001400565b816040528293508435835260208501359150808211156200161e57600080fd5b506200162d85828601620015a2565b6020830152505092915050565b6000602082840312156200164d57600080fd5b81356001600160401b03808211156200166557600080fd5b9083019061018082860312156200167b57600080fd5b6200168562001416565b620016908362001352565b8152620016a06020840162001352565b6020820152604083013560408201526060830135606082015260808301356080820152620016d160a0840162001352565b60a0820152620016e460c0840162001352565b60c082015260e083013582811115620016fc57600080fd5b6200170a87828601620015c5565b60e0830152506101006200172081850162001352565b9082015261012083810135838111156200173957600080fd5b6200174788828701620015a2565b8284015250506101406200175d81850162001528565b9082015261016083810135838111156200177657600080fd5b6200178488828701620015a2565b918301919091525095945050505050565b60005b83811015620017b257818101518382015260200162001798565b50506000910152565b60008151808452620017d581602086016020860162001795565b601f01601f19169290920160200192915050565b602081526000620011d36020830184620017bb565b6020808252602c9082015260008051602062001f7083398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7083398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200188757600080fd5b8151620011d3816200133c565b600060018201620018b557634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012d86040850182620017bb565b60808152620018f16080820186516200131b565b600060208601516200190760a08401826200131b565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001941818601846200131b565b60c0890151925061014062001959818701856200131b565b60e08a0151935061018061016081818901526200197b610200890187620018bc565b948c015194955062001990888301866200131b565b838c01519450607f19935083888703016101a0890152620019b28686620017bb565b9550828c01519450620019ca6101c089018615159052565b808c0151945050505080858403016101e086015250620019eb8282620017bb565b92505050620019fe60208301866200131b565b62001a0d60408301856200131b565b62001a1c60608301846200131b565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012d890830184620017bb565b60006020828403121562001a5e57600080fd5b5051919050565b6000825162001a7981846020870162001795565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220ef15dda8d1e49aa9e0f78bb0ecd7ebe4ad67e14310c023e52931fedda718055564736f6c63430008130033","sourceMap":"529:4656:106:-:0;;;1088:4:64;1045:48;;529:4656:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001328565b60405180910390f35b3480156200018057600080fd5b50620001986200019236600462001364565b620004c3565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c636600462001384565b62000529565b005b348015620001db57600080fd5b50620001cc620001ed36600462001364565b620006eb565b3480156200020057600080fd5b50620001cc6200021236600462001364565b62000717565b620001cc62000229366004620014be565b620007eb565b3480156200023c57600080fd5b5062000198620008b0565b3480156200025457600080fd5b50620001cc6200026636600462001539565b62000961565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad36600462001364565b620009d2565b348015620002c057600080fd5b50620001cc620009fe565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c36600462001364565b62000a16565b3480156200031f57600080fd5b506200015b62000a72565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc6200038136600462001364565b62000b0f565b3480156200039457600080fd5b50620001cc620003a636600462001573565b62000b3b565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed3660046200163a565b62000b97565b3480156200040057600080fd5b50620001cc6200041236600462001364565b62000cd8565b3480156200042557600080fd5b50620001cc6200043736600462001364565b62000d50565b3480156200044a57600080fd5b506200047d6200045c36600462001364565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200016a9190620017e9565b6001600160a01b03811660009081526066602052604081206001015460ff166200050d578160405163f5a6943d60e01b815260040162000504919062001328565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200054a5750600054600160ff909116105b806200056f57506200055c3062000dc1565b1580156200056f575060005460ff166001145b620005d45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840162000504565b6000805460ff191660011790558015620005f8576000805461ff0019166101001790555b620006038662000cd8565b6000606555620006138562000dd0565b6200061e8462000dd0565b620006298262000dd0565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fd7833981519152906200069490879062001328565b60405180910390a18015620006e3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b620006f562000df8565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620007625760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200079662000e5b565b6001600160a01b031614620007bf5760405162461bcd60e51b8152600401620005049062001839565b620007ca8162000e78565b60408051600080825260208201909252620007e89183919062000eca565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008365760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200086a62000e5b565b6001600160a01b031614620008935760405162461bcd60e51b8152600401620005049062001839565b6200089e8262000e78565b620008ac8282600162000eca565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200094d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000504565b5060008051602062001f9083398151915290565b6200096b62000df8565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009dc62000df8565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a0862000df8565b62000a14600062001047565b565b62000a2062000df8565b62000a2b8162000dd0565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fd78339815191529062000a6790839062001328565b60405180910390a150565b60008062000a886033546001600160a01b031690565b9050806001600160a01b03163b60000362000aa257919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000aff575060408051601f3d908101601f1916820190925262000afc9181019062001874565b60015b62000b0957919050565b92915050565b62000b1962000df8565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b4562000df8565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009c6565b606580546000918262000baa8362001894565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000beb62000a72565b60405160240162000c009493929190620018dd565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c3f906200130d565b62000c4c92919062001a25565b604051809103906000f08015801562000c69573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cc990839062001328565b60405180910390a19392505050565b600054610100900460ff1662000d455760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000504565b620007e88162001047565b62000d5a62000df8565b6001600160a01b03811662000d455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000504565b6001600160a01b03163b151590565b6001600160a01b038116620007e8576040516303988b8160e61b815260040160405180910390fd5b3362000e0362000a72565b6001600160a01b03161462000a145760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000504565b60008051602062001f90833981519152546001600160a01b031690565b3362000e8362000a72565b6001600160a01b031614620007e8573362000e9d62000a72565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000504565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f055762000f008362001099565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f62575060408051601f3d908101601f1916820190925262000f5f9181019062001a4b565b60015b62000fc75760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000504565b60008051602062001f908339815191528114620010395760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000504565b5062000f0083838362001138565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010a48162000dc1565b620011085760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000504565b60008051602062001f9083398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011438362001169565b600082511180620011515750805b1562000f0057620011638383620011ab565b50505050565b620011748162001099565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011d3838360405180606001604052806027815260200162001fb060279139620011da565b9392505050565b6060600080856001600160a01b031685604051620011f9919062001a65565b600060405180830381855af49150503d806000811462001236576040519150601f19603f3d011682016040523d82523d6000602084013e6200123b565b606091505b50915091506200124e8683838762001258565b9695505050505050565b60608315620012cc578251600003620012c457620012768562000dc1565b620012c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000504565b5081620012d8565b620012d88383620012e0565b949350505050565b815115620012f15781518083602001fd5b8060405162461bcd60e51b8152600401620005049190620017e9565b6104ec8062001a8483390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007e857600080fd5b80356200135f816200133c565b919050565b6000602082840312156200137757600080fd5b8135620011d3816200133c565b600080600080600060a086880312156200139d57600080fd5b8535620013aa816200133c565b94506020860135620013bc816200133c565b93506040860135620013ce816200133c565b92506060860135620013e0816200133c565b91506080860135620013f2816200133c565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200143c576200143c62001400565b60405290565b60006001600160401b03808411156200145f576200145f62001400565b604051601f8501601f19908116603f011681019082821181831017156200148a576200148a62001400565b81604052809350858152868686011115620014a457600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014d257600080fd5b8235620014df816200133c565b915060208301356001600160401b03811115620014fb57600080fd5b8301601f810185136200150d57600080fd5b6200151e8582356020840162001442565b9150509250929050565b803580151581146200135f57600080fd5b600080604083850312156200154d57600080fd5b82356200155a816200133c565b91506200156a6020840162001528565b90509250929050565b600080604083850312156200158757600080fd5b823562001594816200133c565b946020939093013593505050565b600082601f830112620015b457600080fd5b620011d38383356020850162001442565b600060408284031215620015d857600080fd5b604080519081016001600160401b038082118383101715620015fe57620015fe62001400565b816040528293508435835260208501359150808211156200161e57600080fd5b506200162d85828601620015a2565b6020830152505092915050565b6000602082840312156200164d57600080fd5b81356001600160401b03808211156200166557600080fd5b9083019061018082860312156200167b57600080fd5b6200168562001416565b620016908362001352565b8152620016a06020840162001352565b6020820152604083013560408201526060830135606082015260808301356080820152620016d160a0840162001352565b60a0820152620016e460c0840162001352565b60c082015260e083013582811115620016fc57600080fd5b6200170a87828601620015c5565b60e0830152506101006200172081850162001352565b9082015261012083810135838111156200173957600080fd5b6200174788828701620015a2565b8284015250506101406200175d81850162001528565b9082015261016083810135838111156200177657600080fd5b6200178488828701620015a2565b918301919091525095945050505050565b60005b83811015620017b257818101518382015260200162001798565b50506000910152565b60008151808452620017d581602086016020860162001795565b601f01601f19169290920160200192915050565b602081526000620011d36020830184620017bb565b6020808252602c9082015260008051602062001f7083398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7083398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200188757600080fd5b8151620011d3816200133c565b600060018201620018b557634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012d86040850182620017bb565b60808152620018f16080820186516200131b565b600060208601516200190760a08401826200131b565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001941818601846200131b565b60c0890151925061014062001959818701856200131b565b60e08a0151935061018061016081818901526200197b610200890187620018bc565b948c015194955062001990888301866200131b565b838c01519450607f19935083888703016101a0890152620019b28686620017bb565b9550828c01519450620019ca6101c089018615159052565b808c0151945050505080858403016101e086015250620019eb8282620017bb565b92505050620019fe60208301866200131b565b62001a0d60408301856200131b565b62001a1c60608301846200131b565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012d890830184620017bb565b60006020828403121562001a5e57600080fd5b5051919050565b6000825162001a7981846020870162001795565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220ef15dda8d1e49aa9e0f78bb0ecd7ebe4ad67e14310c023e52931fedda718055564736f6c63430008130033","sourceMap":"529:4656:106:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:131;;;992:2;977:18;4804:249:106;858:177:131;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;1858:136;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;3048:813;;;;;;;;;;-1:-1:-1;3048:813:106;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;7207:14:131;;7200:22;7182:41;;7170:2;7155:18;4654:144:106;7042:187:131;5060:92:106;;;;;;;;;;-1:-1:-1;5133:12:106;;;;;;;;;;;-1:-1:-1;;;5133:12:106;;;;5060:92;;;;5133:12;5060:92;:::i;4804:249::-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;8192:2:131;3325:201:47;;;8174:21:131;8231:2;8211:18;;;8204:30;8270:34;8250:18;;;8243:62;-1:-1:-1;;;8321:18:131;;;8314:44;8375:19;;3325:201:47;7990:410:131;3325:201:47;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:131;;3721:14:47;;8545:2:131;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:131;2064:92:64;;;9614:21:131;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:131;;;9754:54;9825:19;;2064:92:64;9430:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;10023:51:131;;;10090:18;;;10083:50;4599:42:106::1;::::0;9996:18:131;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;1858:136::-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;:::-;;;;;;;;3867:222:::0;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;10574:51:131;;;10641:18;;10634:34;;;4384:43:106::1;::::0;10547:18:131;4384:43:106::1;10400:274:131::0;3048:813:106;3236:5;:7;;3173:31;;;3236:7;;;:::i;:::-;;;;-1:-1:-1;3220:13:106;;;:23;3287:4;3253:23;;;:39;3362:25;;3476:16;;3494:23;;-1:-1:-1;;;;;;;3362:25:106;;;;-1:-1:-1;;;3425:41:106;3220:6;;3476:16;;;;3494:23;3519:7;:5;:7::i;:::-;3402:125;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3402:125:106;;;;;;;;;;;;;;-1:-1:-1;;;;;3402:125:106;-1:-1:-1;;;;;;3402:125:106;;;;;;;;;;3324:213;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3696:43:106;;3548:39;3696:43;;;:15;:43;;;;;;;3748:4;3696:49;;;:56;;-1:-1:-1;;3696:56:106;;;;;;3767:44;3303:234;;-1:-1:-1;3303:234:106;;3767:44;;;;3303:234;;3767:44;:::i;:::-;;;;;;;;3836:17;3048:813;-1:-1:-1;;;3048:813:106:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13738:2:131;5366:69:47;;;13720:21:131;13777:2;13757:18;;;13750:30;13816:34;13796:18;;;13789:62;-1:-1:-1;;;13867:18:131;;;13860:41;13918:19;;5366:69:47;13536:407:131;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14150:2:131;2415:73:45::1;::::0;::::1;14132:21:131::0;14189:2;14169:18;;;14162:30;14228:34;14208:18;;;14201:62;-1:-1:-1;;;14279:18:131;;;14272:36;14325:19;;2415:73:45::1;13948:402:131::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14557:2:131;1675:68:45;;;14539:21:131;;;14576:18;;;14569:30;14635:34;14615:18;;;14608:62;14687:18;;1675:68:45;14355:356:131;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;14946:15:131;;;1252:35:103;;;14928:34:131;14998:15;;14978:18;;;14971:43;14863:18;;1252:35:103;14716:304:131;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15416:2:131;3262:56:60;;;15398:21:131;15455:2;15435:18;;;15428:30;15494:34;15474:18;;;15467:62;-1:-1:-1;;;15545:18:131;;;15538:44;15599:19;;3262:56:60;15214:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;15831:2:131;3140:82:60;;;15813:21:131;15870:2;15850:18;;;15843:30;15909:34;15889:18;;;15882:62;-1:-1:-1;;;15960:18:131;;;15953:39;16009:19;;3140:82:60;15629:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16241:2:131;1479:95:60;;;16223:21:131;16280:2;16260:18;;;16253:30;16319:34;16299:18;;;16292:62;-1:-1:-1;;;16370:18:131;;;16363:43;16423:19;;1479:95:60;16039:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;16947:2:131;8113:60:76;;;16929:21:131;16986:2;16966:18;;;16959:30;17025:31;17005:18;;;16998:59;17074:18;;8113:60:76;16745:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:131:-;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:131;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:131;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:131;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:131;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:131;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:131;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:131;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:131;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:131;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:131;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:131;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:131;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:131;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:131:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:131;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:131;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:131;5298:1643;-1:-1:-1;;;;;5298:1643:131:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:131;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:131;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:131:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:131;8864:18;;8857:62;-1:-1:-1;;;8950:2:131;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:131;9277:18;;9270:62;-1:-1:-1;;;9363:2:131;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10144:251::-;10214:6;10267:2;10255:9;10246:7;10242:23;10238:32;10235:52;;;10283:1;10280;10273:12;10235:52;10315:9;10309:16;10334:31;10359:5;10334:31;:::i;10679:232::-;10718:3;10739:17;;;10736:140;;10798:10;10793:3;10789:20;10786:1;10779:31;10833:4;10830:1;10823:15;10861:4;10858:1;10851:15;10736:140;-1:-1:-1;10903:1:131;10892:13;;10679:232::o;10916:252::-;11003:5;10997:12;10992:3;10985:25;10967:3;11056:4;11049:5;11045:16;11039:23;11094:4;11087;11082:3;11078:14;11071:28;11115:47;11156:4;11151:3;11147:14;11133:12;11115:47;:::i;11173:2038::-;11498:3;11487:9;11480:22;11511:54;11560:3;11549:9;11545:19;11536:6;11530:13;11511:54;:::i;:::-;11461:4;11612;11604:6;11600:17;11594:24;11627:53;11675:3;11664:9;11660:19;11646:12;11627:53;:::i;:::-;;11735:4;11727:6;11723:17;11717:24;11711:3;11700:9;11696:19;11689:53;11797:4;11789:6;11785:17;11779:24;11773:3;11762:9;11758:19;11751:53;11841:3;11833:6;11829:16;11823:23;11865:3;11904:2;11899;11888:9;11884:18;11877:30;11956:3;11948:6;11944:16;11938:23;11916:45;;11980:3;11992:54;12042:2;12031:9;12027:18;12011:14;11992:54;:::i;:::-;12095:3;12087:6;12083:16;12077:23;12055:45;;12119:3;12131:54;12181:2;12170:9;12166:18;12150:14;12131:54;:::i;:::-;12234:3;12226:6;12222:16;12216:23;12194:45;;12258:6;12283:3;12322:2;12317;12306:9;12302:18;12295:30;12348:63;12406:3;12395:9;12391:19;12375:14;12348:63;:::i;:::-;12448:15;;;12442:22;12334:77;;-1:-1:-1;12473:54:131;12508:18;;;12442:22;12473:54;:::i;:::-;12576:2;12568:6;12564:15;12558:22;12536:44;;12603:3;12599:8;12589:18;;12672:2;12660:9;12652:6;12648:22;12644:31;12638:3;12627:9;12623:19;12616:60;12699:41;12733:6;12717:14;12699:41;:::i;:::-;12685:55;;12789:2;12781:6;12777:15;12771:22;12749:44;;12802:52;12849:3;12838:9;12834:19;12818:14;7016:13;7009:21;6997:34;;6946:91;12802:52;12903:2;12895:6;12891:15;12885:22;12863:44;;;;;12972:2;12960:9;12952:6;12948:22;12944:31;12938:3;12927:9;12923:19;12916:60;;12993:41;13027:6;13011:14;12993:41;:::i;:::-;12985:49;;;;13043:48;13085:4;13074:9;13070:20;13062:6;13043:48;:::i;:::-;13100;13142:4;13131:9;13127:20;13119:6;13100:48;:::i;:::-;13157;13199:4;13188:9;13184:20;13176:6;13157:48;:::i;:::-;11173:2038;;;;;;;:::o;13216:315::-;-1:-1:-1;;;;;13391:32:131;;13373:51;;13460:2;13455;13440:18;;13433:30;;;-1:-1:-1;;13480:45:131;;13506:18;;13498:6;13480:45;:::i;15025:184::-;15095:6;15148:2;15136:9;15127:7;15123:23;15119:32;15116:52;;;15164:1;15161;15154:12;15116:52;-1:-1:-1;15187:16:131;;15025:184;-1:-1:-1;15025:184:131:o;16453:287::-;16582:3;16620:6;16614:13;16636:66;16695:6;16690:3;16683:4;16675:6;16671:17;16636:66;:::i;:::-;16718:16;;;;;16453:287;-1:-1:-1;;16453:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1825,"length":32},{"start":1892,"length":32},{"start":2037,"length":32},{"start":2104,"length":32},{"start":2237,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":\"RegistryFactoryV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":"RegistryFactoryV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","id":72779,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[72419],"ERC1967Proxy":[55021],"ProxyOwnableUpgrader":[70199],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryFactoryV0_0":[72778]},"nodeType":"SourceUnit","src":"42:5144:106","nodes":[{"id":72405,"nodeType":"PragmaDirective","src":"42:24:106","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72408,"nodeType":"ImportDirective","src":"68:134:106","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72406,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72407,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"108:37:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72410,"nodeType":"ImportDirective","src":"203:65:106","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":72409,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"211:20:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72412,"nodeType":"ImportDirective","src":"269:84:106","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":72411,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"277:12:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72414,"nodeType":"ImportDirective","src":"354:65:106","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":72413,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"362:5:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72419,"nodeType":"StructDefinition","src":"421:57:106","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":72416,"mutability":"mutable","name":"fee","nameLocation":"456:3:106","nodeType":"VariableDeclaration","scope":72419,"src":"448:11:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72415,"name":"uint256","nodeType":"ElementaryTypeName","src":"448:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72418,"mutability":"mutable","name":"valid","nameLocation":"470:5:106","nodeType":"VariableDeclaration","scope":72419,"src":"465:10:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72417,"name":"bool","nodeType":"ElementaryTypeName","src":"465:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"428:13:106","scope":72779,"visibility":"public"},{"id":72778,"nodeType":"ContractDefinition","src":"529:4656:106","nodes":[{"id":72424,"nodeType":"VariableDeclaration","src":"636:20:106","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"651:5:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72423,"name":"uint256","nodeType":"ElementaryTypeName","src":"636:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":72429,"nodeType":"VariableDeclaration","src":"663:49:106","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"697:15:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":72428,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":72425,"name":"address","nodeType":"ElementaryTypeName","src":"671:7:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"663:33:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":72427,"nodeType":"UserDefinedTypeName","pathNode":{"id":72426,"name":"CommunityInfo","nameLocations":["682:13:106"],"nodeType":"IdentifierPath","referencedDeclaration":72419,"src":"682:13:106"},"referencedDeclaration":72419,"src":"682:13:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":72431,"nodeType":"VariableDeclaration","src":"718:33:106","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"733:18:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72430,"name":"address","nodeType":"ElementaryTypeName","src":"718:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72433,"nodeType":"VariableDeclaration","src":"757:40:106","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"772:25:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72432,"name":"address","nodeType":"ElementaryTypeName","src":"757:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72435,"nodeType":"VariableDeclaration","src":"803:31:106","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"818:16:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72434,"name":"address","nodeType":"ElementaryTypeName","src":"803:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72437,"nodeType":"VariableDeclaration","src":"840:38:106","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"855:23:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72436,"name":"address","nodeType":"ElementaryTypeName","src":"840:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72441,"nodeType":"EventDefinition","src":"1051:46:106","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1057:14:106","parameters":{"id":72440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72439,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1080:15:106","nodeType":"VariableDeclaration","scope":72441,"src":"1072:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72438,"name":"address","nodeType":"ElementaryTypeName","src":"1072:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1071:25:106"}},{"id":72447,"nodeType":"EventDefinition","src":"1102:66:106","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1108:14:106","parameters":{"id":72446,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72443,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1131:10:106","nodeType":"VariableDeclaration","scope":72447,"src":"1123:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72442,"name":"address","nodeType":"ElementaryTypeName","src":"1123:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72445,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1151:15:106","nodeType":"VariableDeclaration","scope":72447,"src":"1143:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72444,"name":"uint256","nodeType":"ElementaryTypeName","src":"1143:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1122:45:106"}},{"id":72451,"nodeType":"EventDefinition","src":"1173:51:106","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1179:16:106","parameters":{"id":72450,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72449,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1204:18:106","nodeType":"VariableDeclaration","scope":72451,"src":"1196:26:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72448,"name":"address","nodeType":"ElementaryTypeName","src":"1196:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1195:28:106"}},{"id":72457,"nodeType":"EventDefinition","src":"1229:62:106","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1235:20:106","parameters":{"id":72456,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72453,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1264:10:106","nodeType":"VariableDeclaration","scope":72457,"src":"1256:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72452,"name":"address","nodeType":"ElementaryTypeName","src":"1256:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72455,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1281:8:106","nodeType":"VariableDeclaration","scope":72457,"src":"1276:13:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72454,"name":"bool","nodeType":"ElementaryTypeName","src":"1276:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1255:35:106"}},{"id":72461,"nodeType":"ErrorDefinition","src":"1463:43:106","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1469:16:106","parameters":{"id":72460,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72459,"mutability":"mutable","name":"_community","nameLocation":"1494:10:106","nodeType":"VariableDeclaration","scope":72461,"src":"1486:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72458,"name":"address","nodeType":"ElementaryTypeName","src":"1486:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1485:20:106"}},{"id":72463,"nodeType":"ErrorDefinition","src":"1511:28:106","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1517:19:106","parameters":{"id":72462,"nodeType":"ParameterList","parameters":[],"src":"1536:2:106"}},{"id":72479,"nodeType":"FunctionDefinition","src":"1711:141:106","nodes":[],"body":{"id":72478,"nodeType":"Block","src":"1779:73:106","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72468,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72465,"src":"1793:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72471,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1813:1:106","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72470,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1805:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72469,"name":"address","nodeType":"ElementaryTypeName","src":"1805:7:106","typeDescriptions":{}}},"id":72472,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1805:10:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1793:22:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72477,"nodeType":"IfStatement","src":"1789:56:106","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72474,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72463,"src":"1824:19:106","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1824:21:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72476,"nodeType":"RevertStatement","src":"1817:28:106"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1720:18:106","parameters":{"id":72466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72465,"mutability":"mutable","name":"_address","nameLocation":"1747:8:106","nodeType":"VariableDeclaration","scope":72479,"src":"1739:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72464,"name":"address","nodeType":"ElementaryTypeName","src":"1739:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1738:18:106"},"returnParameters":{"id":72467,"nodeType":"ParameterList","parameters":[],"src":"1779:0:106"},"scope":72778,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":72491,"nodeType":"FunctionDefinition","src":"1858:136:106","nodes":[],"body":{"id":72490,"nodeType":"Block","src":"1941:53:106","nodes":[],"statements":[{"expression":{"id":72488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72486,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"1951:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72487,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72481,"src":"1979:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1951:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72489,"nodeType":"ExpressionStatement","src":"1951:36:106"}]},"functionSelector":"5decae02","implemented":true,"kind":"function","modifiers":[{"id":72484,"kind":"modifierInvocation","modifierName":{"id":72483,"name":"onlyOwner","nameLocations":["1931:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"1931:9:106"},"nodeType":"ModifierInvocation","src":"1931:9:106"}],"name":"setRegistryCommunityTemplate","nameLocation":"1867:28:106","parameters":{"id":72482,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72481,"mutability":"mutable","name":"template","nameLocation":"1904:8:106","nodeType":"VariableDeclaration","scope":72491,"src":"1896:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72480,"name":"address","nodeType":"ElementaryTypeName","src":"1896:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1895:18:106"},"returnParameters":{"id":72485,"nodeType":"ParameterList","parameters":[],"src":"1941:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72503,"nodeType":"FunctionDefinition","src":"2000:118:106","nodes":[],"body":{"id":72502,"nodeType":"Block","src":"2074:44:106","nodes":[],"statements":[{"expression":{"id":72500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72498,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"2084:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72499,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"2103:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2084:27:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72501,"nodeType":"ExpressionStatement","src":"2084:27:106"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":72496,"kind":"modifierInvocation","modifierName":{"id":72495,"name":"onlyOwner","nameLocations":["2064:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2064:9:106"},"nodeType":"ModifierInvocation","src":"2064:9:106"}],"name":"setStrategyTemplate","nameLocation":"2009:19:106","parameters":{"id":72494,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72493,"mutability":"mutable","name":"template","nameLocation":"2037:8:106","nodeType":"VariableDeclaration","scope":72503,"src":"2029:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72492,"name":"address","nodeType":"ElementaryTypeName","src":"2029:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2028:18:106"},"returnParameters":{"id":72497,"nodeType":"ParameterList","parameters":[],"src":"2074:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72515,"nodeType":"FunctionDefinition","src":"2124:132:106","nodes":[],"body":{"id":72514,"nodeType":"Block","src":"2205:51:106","nodes":[],"statements":[{"expression":{"id":72512,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72510,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"2215:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72511,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72505,"src":"2241:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2215:34:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72513,"nodeType":"ExpressionStatement","src":"2215:34:106"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":72508,"kind":"modifierInvocation","modifierName":{"id":72507,"name":"onlyOwner","nameLocations":["2195:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2195:9:106"},"nodeType":"ModifierInvocation","src":"2195:9:106"}],"name":"setCollateralVaultTemplate","nameLocation":"2133:26:106","parameters":{"id":72506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72505,"mutability":"mutable","name":"template","nameLocation":"2168:8:106","nodeType":"VariableDeclaration","scope":72515,"src":"2160:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72504,"name":"address","nodeType":"ElementaryTypeName","src":"2160:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2159:18:106"},"returnParameters":{"id":72509,"nodeType":"ParameterList","parameters":[],"src":"2205:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72573,"nodeType":"FunctionDefinition","src":"2262:780:106","nodes":[],"body":{"id":72572,"nodeType":"Block","src":"2489:553:106","nodes":[],"statements":[{"expression":{"arguments":[{"id":72533,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72517,"src":"2516:6:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72530,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2499:5:106","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryV0_0_$72778_$","typeString":"type(contract super RegistryFactoryV0_0)"}},"id":72532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2505:10:106","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70134,"src":"2499:16:106","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72534,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2499:24:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72535,"nodeType":"ExpressionStatement","src":"2499:24:106"},{"expression":{"id":72538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72536,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"2533:5:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":72537,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2541:1:106","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2533:9:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72539,"nodeType":"ExpressionStatement","src":"2533:9:106"},{"expression":{"arguments":[{"id":72541,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2571:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72540,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2552:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2552:39:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72543,"nodeType":"ExpressionStatement","src":"2552:39:106"},{"expression":{"arguments":[{"id":72545,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72521,"src":"2620:26:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72544,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2601:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2601:46:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72547,"nodeType":"ExpressionStatement","src":"2601:46:106"},{"expression":{"arguments":[{"id":72549,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72525,"src":"2676:24:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72548,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2657:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72550,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2657:44:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72551,"nodeType":"ExpressionStatement","src":"2657:44:106"},{"expression":{"id":72554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72552,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"2711:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72553,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2732:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2711:40:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72555,"nodeType":"ExpressionStatement","src":"2711:40:106"},{"expression":{"id":72558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72556,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"2761:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72557,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72521,"src":"2789:26:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2761:54:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72559,"nodeType":"ExpressionStatement","src":"2761:54:106"},{"expression":{"id":72562,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72560,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"2825:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72561,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72523,"src":"2844:17:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2825:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72563,"nodeType":"ExpressionStatement","src":"2825:36:106"},{"expression":{"id":72566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72564,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"2871:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72565,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72525,"src":"2897:24:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2871:50:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72567,"nodeType":"ExpressionStatement","src":"2871:50:106"},{"eventCall":{"arguments":[{"id":72569,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2951:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72568,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72441,"src":"2936:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2936:35:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72571,"nodeType":"EmitStatement","src":"2931:40:106"}]},"functionSelector":"1459457a","implemented":true,"kind":"function","modifiers":[{"id":72528,"kind":"modifierInvocation","modifierName":{"id":72527,"name":"initializer","nameLocations":["2477:11:106"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"2477:11:106"},"nodeType":"ModifierInvocation","src":"2477:11:106"}],"name":"initialize","nameLocation":"2271:10:106","parameters":{"id":72526,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72517,"mutability":"mutable","name":"_owner","nameLocation":"2299:6:106","nodeType":"VariableDeclaration","scope":72573,"src":"2291:14:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72516,"name":"address","nodeType":"ElementaryTypeName","src":"2291:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72519,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"2323:19:106","nodeType":"VariableDeclaration","scope":72573,"src":"2315:27:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72518,"name":"address","nodeType":"ElementaryTypeName","src":"2315:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72521,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"2360:26:106","nodeType":"VariableDeclaration","scope":72573,"src":"2352:34:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72520,"name":"address","nodeType":"ElementaryTypeName","src":"2352:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72523,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"2404:17:106","nodeType":"VariableDeclaration","scope":72573,"src":"2396:25:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72522,"name":"address","nodeType":"ElementaryTypeName","src":"2396:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72525,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"2439:24:106","nodeType":"VariableDeclaration","scope":72573,"src":"2431:32:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72524,"name":"address","nodeType":"ElementaryTypeName","src":"2431:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2281:188:106"},"returnParameters":{"id":72529,"nodeType":"ParameterList","parameters":[],"src":"2489:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":72656,"nodeType":"FunctionDefinition","src":"3048:813:106","nodes":[],"body":{"id":72655,"nodeType":"Block","src":"3210:651:106","nodes":[],"statements":[{"expression":{"id":72586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72581,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3220:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72583,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3227:6:106","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"3220:13:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72585,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3236:7:106","subExpression":{"id":72584,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"3236:5:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3220:23:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72587,"nodeType":"ExpressionStatement","src":"3220:23:106"},{"expression":{"id":72595,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72588,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3253:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72590,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3260:16:106","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"3253:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72593,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3287:4:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$72778","typeString":"contract RegistryFactoryV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$72778","typeString":"contract RegistryFactoryV0_0"}],"id":72592,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3279:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72591,"name":"address","nodeType":"ElementaryTypeName","src":"3279:7:106","typeDescriptions":{}}},"id":72594,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3279:13:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3253:39:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72596,"nodeType":"ExpressionStatement","src":"3253:39:106"},{"assignments":[72599],"declarations":[{"constant":false,"id":72599,"mutability":"mutable","name":"proxy","nameLocation":"3316:5:106","nodeType":"VariableDeclaration","scope":72655,"src":"3303:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":72598,"nodeType":"UserDefinedTypeName","pathNode":{"id":72597,"name":"ERC1967Proxy","nameLocations":["3303:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3303:12:106"},"referencedDeclaration":55021,"src":"3303:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":72619,"initialValue":{"arguments":[{"arguments":[{"id":72605,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"3362:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72604,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3354:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72603,"name":"address","nodeType":"ElementaryTypeName","src":"3354:7:106","typeDescriptions":{}}},"id":72606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3354:34:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72609,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"3425:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72610,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3447:10:106","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"3425:32:106","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":72611,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3458:8:106","memberName":"selector","nodeType":"MemberAccess","src":"3425:41:106","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":72612,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3468:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":72613,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"3476:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72614,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"3494:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72615,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"3519:5:106","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3519:7:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72607,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3402:3:106","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72608,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3406:18:106","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3402:22:106","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3402:125:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72602,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"3324:16:106","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72601,"nodeType":"UserDefinedTypeName","pathNode":{"id":72600,"name":"ERC1967Proxy","nameLocations":["3328:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3328:12:106"},"referencedDeclaration":55021,"src":"3328:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3324:213:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"3303:234:106"},{"assignments":[72622],"declarations":[{"constant":false,"id":72622,"mutability":"mutable","name":"registryCommunity","nameLocation":"3570:17:106","nodeType":"VariableDeclaration","scope":72655,"src":"3548:39:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":72621,"nodeType":"UserDefinedTypeName","pathNode":{"id":72620,"name":"RegistryCommunityV0_0","nameLocations":["3548:21:106"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"3548:21:106"},"referencedDeclaration":72174,"src":"3548:21:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":72632,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72628,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72599,"src":"3628:5:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72627,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3620:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72626,"name":"address","nodeType":"ElementaryTypeName","src":"3620:7:106","typeDescriptions":{}}},"id":72629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3620:14:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3612:8:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":72624,"name":"address","nodeType":"ElementaryTypeName","src":"3612:8:106","stateMutability":"payable","typeDescriptions":{}}},"id":72630,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3612:23:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72623,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"3590:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3590:46:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"3548:88:106"},{"expression":{"id":72641,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72633,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"3696:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72638,"indexExpression":{"arguments":[{"id":72636,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3720:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72635,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3712:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72634,"name":"address","nodeType":"ElementaryTypeName","src":"3712:7:106","typeDescriptions":{}}},"id":72637,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3712:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3696:43:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72639,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3740:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"3696:49:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72640,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3748:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3696:56:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72642,"nodeType":"ExpressionStatement","src":"3696:56:106"},{"eventCall":{"arguments":[{"arguments":[{"id":72646,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3792:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72645,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3784:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72644,"name":"address","nodeType":"ElementaryTypeName","src":"3784:7:106","typeDescriptions":{}}},"id":72647,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3784:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72643,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"3767:16:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72648,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3767:44:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72649,"nodeType":"EmitStatement","src":"3762:49:106"},{"expression":{"arguments":[{"id":72652,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3836:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72651,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3828:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72650,"name":"address","nodeType":"ElementaryTypeName","src":"3828:7:106","typeDescriptions":{}}},"id":72653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3828:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72580,"id":72654,"nodeType":"Return","src":"3821:33:106"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"3057:14:106","parameters":{"id":72577,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72576,"mutability":"mutable","name":"params","nameLocation":"3117:6:106","nodeType":"VariableDeclaration","scope":72656,"src":"3072:51:106","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":72575,"nodeType":"UserDefinedTypeName","pathNode":{"id":72574,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["3072:37:106"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"3072:37:106"},"referencedDeclaration":70264,"src":"3072:37:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"3071:53:106"},"returnParameters":{"id":72580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72579,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"3181:23:106","nodeType":"VariableDeclaration","scope":72656,"src":"3173:31:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72578,"name":"address","nodeType":"ElementaryTypeName","src":"3173:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3172:33:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72676,"nodeType":"FunctionDefinition","src":"3867:222:106","nodes":[],"body":{"id":72675,"nodeType":"Block","src":"3945:144:106","nodes":[],"statements":[{"expression":{"arguments":[{"id":72664,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"3974:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72663,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"3955:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3955:35:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72666,"nodeType":"ExpressionStatement","src":"3955:35:106"},{"expression":{"id":72669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72667,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"4000:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72668,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"4021:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4000:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72670,"nodeType":"ExpressionStatement","src":"4000:36:106"},{"eventCall":{"arguments":[{"id":72672,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"4066:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72671,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72441,"src":"4051:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4051:31:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72674,"nodeType":"EmitStatement","src":"4046:36:106"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":72661,"kind":"modifierInvocation","modifierName":{"id":72660,"name":"onlyOwner","nameLocations":["3935:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"3935:9:106"},"nodeType":"ModifierInvocation","src":"3935:9:106"}],"name":"setReceiverAddress","nameLocation":"3876:18:106","parameters":{"id":72659,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72658,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"3903:15:106","nodeType":"VariableDeclaration","scope":72676,"src":"3895:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72657,"name":"address","nodeType":"ElementaryTypeName","src":"3895:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3894:25:106"},"returnParameters":{"id":72662,"nodeType":"ParameterList","parameters":[],"src":"3945:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72684,"nodeType":"FunctionDefinition","src":"4095:115:106","nodes":[],"body":{"id":72683,"nodeType":"Block","src":"4168:42:106","nodes":[],"statements":[{"expression":{"id":72681,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"4185:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72680,"id":72682,"nodeType":"Return","src":"4178:25:106"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"4104:21:106","parameters":{"id":72677,"nodeType":"ParameterList","parameters":[],"src":"4125:2:106"},"returnParameters":{"id":72680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72679,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72684,"src":"4159:7:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72678,"name":"address","nodeType":"ElementaryTypeName","src":"4159:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4158:9:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72706,"nodeType":"FunctionDefinition","src":"4216:218:106","nodes":[],"body":{"id":72705,"nodeType":"Block","src":"4310:124:106","nodes":[],"statements":[{"expression":{"id":72698,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72693,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4320:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72695,"indexExpression":{"id":72694,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72686,"src":"4336:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4320:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72696,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4348:3:106","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72416,"src":"4320:31:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72697,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72688,"src":"4354:15:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4320:49:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72699,"nodeType":"ExpressionStatement","src":"4320:49:106"},{"eventCall":{"arguments":[{"id":72701,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72686,"src":"4399:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72702,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72688,"src":"4411:15:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72700,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72447,"src":"4384:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72703,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4384:43:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72704,"nodeType":"EmitStatement","src":"4379:48:106"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":72691,"kind":"modifierInvocation","modifierName":{"id":72690,"name":"onlyOwner","nameLocations":["4300:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4300:9:106"},"nodeType":"ModifierInvocation","src":"4300:9:106"}],"name":"setProtocolFee","nameLocation":"4225:14:106","parameters":{"id":72689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72686,"mutability":"mutable","name":"_community","nameLocation":"4248:10:106","nodeType":"VariableDeclaration","scope":72706,"src":"4240:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72685,"name":"address","nodeType":"ElementaryTypeName","src":"4240:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72688,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"4268:15:106","nodeType":"VariableDeclaration","scope":72706,"src":"4260:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72687,"name":"uint256","nodeType":"ElementaryTypeName","src":"4260:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4239:45:106"},"returnParameters":{"id":72692,"nodeType":"ParameterList","parameters":[],"src":"4310:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72728,"nodeType":"FunctionDefinition","src":"4440:208:106","nodes":[],"body":{"id":72727,"nodeType":"Block","src":"4530:118:106","nodes":[],"statements":[{"expression":{"id":72720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72715,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4540:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72717,"indexExpression":{"id":72716,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72708,"src":"4556:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4540:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4568:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4540:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72719,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72710,"src":"4576:8:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4540:44:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72721,"nodeType":"ExpressionStatement","src":"4540:44:106"},{"eventCall":{"arguments":[{"id":72723,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72708,"src":"4620:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72724,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72710,"src":"4632:8:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":72722,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72457,"src":"4599:20:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":72725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4599:42:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72726,"nodeType":"EmitStatement","src":"4594:47:106"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":72713,"kind":"modifierInvocation","modifierName":{"id":72712,"name":"onlyOwner","nameLocations":["4520:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4520:9:106"},"nodeType":"ModifierInvocation","src":"4520:9:106"}],"name":"setCommunityValidity","nameLocation":"4449:20:106","parameters":{"id":72711,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72708,"mutability":"mutable","name":"_community","nameLocation":"4478:10:106","nodeType":"VariableDeclaration","scope":72728,"src":"4470:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72707,"name":"address","nodeType":"ElementaryTypeName","src":"4470:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72710,"mutability":"mutable","name":"_isValid","nameLocation":"4495:8:106","nodeType":"VariableDeclaration","scope":72728,"src":"4490:13:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72709,"name":"bool","nodeType":"ElementaryTypeName","src":"4490:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4469:35:106"},"returnParameters":{"id":72714,"nodeType":"ParameterList","parameters":[],"src":"4530:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72741,"nodeType":"FunctionDefinition","src":"4654:144:106","nodes":[],"body":{"id":72740,"nodeType":"Block","src":"4741:57:106","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":72735,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4758:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72737,"indexExpression":{"id":72736,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"4774:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4758:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72738,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4786:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4758:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72734,"id":72739,"nodeType":"Return","src":"4751:40:106"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"4663:20:106","parameters":{"id":72731,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72730,"mutability":"mutable","name":"_community","nameLocation":"4692:10:106","nodeType":"VariableDeclaration","scope":72741,"src":"4684:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72729,"name":"address","nodeType":"ElementaryTypeName","src":"4684:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4683:20:106"},"returnParameters":{"id":72734,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72733,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72741,"src":"4735:4:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72732,"name":"bool","nodeType":"ElementaryTypeName","src":"4735:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4734:6:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72765,"nodeType":"FunctionDefinition","src":"4804:249:106","nodes":[],"body":{"id":72764,"nodeType":"Block","src":"4888:165:106","nodes":[],"statements":[{"condition":{"id":72752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"4902:34:106","subExpression":{"expression":{"baseExpression":{"id":72748,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4903:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72750,"indexExpression":{"id":72749,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"4919:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4903:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72751,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4931:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4903:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72758,"nodeType":"IfStatement","src":"4898:100:106","trueBody":{"id":72757,"nodeType":"Block","src":"4938:60:106","statements":[{"errorCall":{"arguments":[{"id":72754,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"4976:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72753,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72461,"src":"4959:16:106","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72755,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4959:28:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72756,"nodeType":"RevertStatement","src":"4952:35:106"}]}},{"expression":{"expression":{"baseExpression":{"id":72759,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"5015:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72761,"indexExpression":{"id":72760,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"5031:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5015:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72762,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5043:3:106","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72416,"src":"5015:31:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72747,"id":72763,"nodeType":"Return","src":"5008:38:106"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"4813:14:106","parameters":{"id":72744,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72743,"mutability":"mutable","name":"_community","nameLocation":"4836:10:106","nodeType":"VariableDeclaration","scope":72765,"src":"4828:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72742,"name":"address","nodeType":"ElementaryTypeName","src":"4828:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4827:20:106"},"returnParameters":{"id":72747,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72746,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72765,"src":"4879:7:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72745,"name":"uint256","nodeType":"ElementaryTypeName","src":"4879:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4878:9:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72773,"nodeType":"FunctionDefinition","src":"5060:92:106","nodes":[],"body":{"id":72772,"nodeType":"Block","src":"5123:29:106","nodes":[],"statements":[{"expression":{"hexValue":"302e30","id":72770,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5140:5:106","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"functionReturnParameters":72769,"id":72771,"nodeType":"Return","src":"5133:12:106"}]},"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"5069:7:106","parameters":{"id":72766,"nodeType":"ParameterList","parameters":[],"src":"5076:2:106"},"returnParameters":{"id":72769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72768,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72773,"src":"5108:13:106","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":72767,"name":"string","nodeType":"ElementaryTypeName","src":"5108:6:106","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5107:15:106"},"scope":72778,"stateMutability":"pure","virtual":true,"visibility":"public"},{"id":72777,"nodeType":"VariableDeclaration","src":"5157:25:106","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5177:5:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":72774,"name":"uint256","nodeType":"ElementaryTypeName","src":"5157:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72776,"length":{"hexValue":"3530","id":72775,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5165:2:106","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5157:11:106","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":72421,"name":"ProxyOwnableUpgrader","nameLocations":["561:20:106"],"nodeType":"IdentifierPath","referencedDeclaration":70199,"src":"561:20:106"},"id":72422,"nodeType":"InheritanceSpecifier","src":"561:20:106"}],"canonicalName":"RegistryFactoryV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72420,"nodeType":"StructuredDocumentation","src":"480:49:106","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_0","nameLocation":"538:19:106","scope":72779,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":106} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json b/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json index 3fd3fb90..3fa43576 100644 --- a/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json +++ b/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516120eb61004c600039600081816106f90152818161073c015281816107cd01528181610810015261089501526120eb6000f3fe608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b60405162000176919062001379565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013b5565b620004f2565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013d5565b62000558565b005b348015620001e757600080fd5b50620001d8620001f9366004620013b5565b620006c3565b3480156200020c57600080fd5b50620001d86200021e366004620013b5565b620006ef565b620001d8620002353660046200150f565b620007c3565b3480156200024857600080fd5b50620001a462000888565b3480156200026057600080fd5b50620001d8620002723660046200158a565b62000939565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d8620009aa565b348015620002bf57600080fd5b50620001d8620002d1366004620013b5565b62000a2e565b348015620002e457600080fd5b50620001d862000a5a565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013b5565b62000a72565b3480156200034357600080fd5b506200016762000ac3565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013b5565b62000b60565b348015620003b857600080fd5b50620001d8620003ca366004620015c4565b62000b8c565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b5062000167620004113660046200168b565b62000be8565b3480156200042457600080fd5b50620001d862000436366004620013b5565b62000d29565b3480156200044957600080fd5b50620001d86200045b366004620013b5565b62000da1565b3480156200046e57600080fd5b50620004a162000480366004620013b5565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b50620004e3604051806040016040528060038152602001620302e360ec1b81525081565b6040516200017691906200183a565b6001600160a01b03811660009081526066602052604081206001015460ff166200053c578160405163f5a6943d60e01b815260040162000533919062001379565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005795750600054600160ff909116105b806200059e57506200058b3062000e12565b1580156200059e575060005460ff166001145b620005bd5760405162461bcd60e51b815260040162000533906200184f565b6000805460ff191660011790558015620005e1576000805461ff0019166101001790555b620005ec8662000d29565b6000606555620005fc8562000e21565b620006078462000e21565b620006128262000e21565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062002096833981519152906200067d90879062001379565b60405180910390a18015620006bb576000805461ff0019169055604051600181526000805160206200204f8339815191529060200160405180910390a15b505050505050565b620006cd62000e49565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200073a5760405162461bcd60e51b815260040162000533906200189d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076e62000eac565b6001600160a01b031614620007975760405162461bcd60e51b81526004016200053390620018d8565b620007a28162000ec9565b60408051600080825260208201909252620007c09183919062000f1b565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200080e5760405162461bcd60e51b815260040162000533906200189d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200084262000eac565b6001600160a01b0316146200086b5760405162461bcd60e51b81526004016200053390620018d8565b620008768262000ec9565b620008848282600162000f1b565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620009255760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000533565b506000805160206200202f83398151915290565b6200094362000e49565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009cd575060005460ff8083169116105b620009ec5760405162461bcd60e51b815260040162000533906200184f565b6000805461ffff191660ff83169081176101001761ff0019169091556040519081526000805160206200204f833981519152906020015b60405180910390a150565b62000a3862000e49565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a6462000e49565b62000a70600062001098565b565b62000a7c62000e49565b62000a878162000e21565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620020968339815191529062000a2390839062001379565b60008062000ad96033546001600160a01b031690565b9050806001600160a01b03163b60000362000af357919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b50575060408051601f3d908101601f1916820190925262000b4d9181019062001913565b60015b62000b5a57919050565b92915050565b62000b6a62000e49565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b9662000e49565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c91016200099e565b606580546000918262000bfb8362001933565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3c62000ac3565b60405160240162000c5194939291906200197c565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c90906200135e565b62000c9d92919062001ac4565b604051809103906000f08015801562000cba573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d1a90839062001379565b60405180910390a19392505050565b600054610100900460ff1662000d965760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000533565b620007c08162001098565b62000dab62000e49565b6001600160a01b03811662000d965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000533565b6001600160a01b03163b151590565b6001600160a01b038116620007c0576040516303988b8160e61b815260040160405180910390fd5b3362000e5462000ac3565b6001600160a01b03161462000a705760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000533565b6000805160206200202f833981519152546001600160a01b031690565b3362000ed462000ac3565b6001600160a01b031614620007c0573362000eee62000ac3565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000533565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f565762000f5183620010ea565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fb3575060408051601f3d908101601f1916820190925262000fb09181019062001aea565b60015b620010185760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000533565b6000805160206200202f83398151915281146200108a5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000533565b5062000f5183838362001189565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010f58162000e12565b620011595760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000533565b6000805160206200202f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200119483620011ba565b600082511180620011a25750805b1562000f5157620011b48383620011fc565b50505050565b620011c581620010ea565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200122483836040518060600160405280602781526020016200206f602791396200122b565b9392505050565b6060600080856001600160a01b0316856040516200124a919062001b04565b600060405180830381855af49150503d806000811462001287576040519150601f19603f3d011682016040523d82523d6000602084013e6200128c565b606091505b50915091506200129f86838387620012a9565b9695505050505050565b606083156200131d5782516000036200131557620012c78562000e12565b620013155760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000533565b508162001329565b62001329838362001331565b949350505050565b815115620013425781518083602001fd5b8060405162461bcd60e51b81526004016200053391906200183a565b6104ec8062001b2383390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007c057600080fd5b8035620013b0816200138d565b919050565b600060208284031215620013c857600080fd5b813562001224816200138d565b600080600080600060a08688031215620013ee57600080fd5b8535620013fb816200138d565b945060208601356200140d816200138d565b935060408601356200141f816200138d565b9250606086013562001431816200138d565b9150608086013562001443816200138d565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200148d576200148d62001451565b60405290565b60006001600160401b0380841115620014b057620014b062001451565b604051601f8501601f19908116603f01168101908282118183101715620014db57620014db62001451565b81604052809350858152868686011115620014f557600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200152357600080fd5b823562001530816200138d565b915060208301356001600160401b038111156200154c57600080fd5b8301601f810185136200155e57600080fd5b6200156f8582356020840162001493565b9150509250929050565b80358015158114620013b057600080fd5b600080604083850312156200159e57600080fd5b8235620015ab816200138d565b9150620015bb6020840162001579565b90509250929050565b60008060408385031215620015d857600080fd5b8235620015e5816200138d565b946020939093013593505050565b600082601f8301126200160557600080fd5b620012248383356020850162001493565b6000604082840312156200162957600080fd5b604080519081016001600160401b0380821183831017156200164f576200164f62001451565b816040528293508435835260208501359150808211156200166f57600080fd5b506200167e85828601620015f3565b6020830152505092915050565b6000602082840312156200169e57600080fd5b81356001600160401b0380821115620016b657600080fd5b908301906101808286031215620016cc57600080fd5b620016d662001467565b620016e183620013a3565b8152620016f160208401620013a3565b60208201526040830135604082015260608301356060820152608083013560808201526200172260a08401620013a3565b60a08201526200173560c08401620013a3565b60c082015260e0830135828111156200174d57600080fd5b6200175b8782860162001616565b60e08301525061010062001771818501620013a3565b9082015261012083810135838111156200178a57600080fd5b6200179888828701620015f3565b828401525050610140620017ae81850162001579565b908201526101608381013583811115620017c757600080fd5b620017d588828701620015f3565b918301919091525095945050505050565b60005b8381101562001803578181015183820152602001620017e9565b50506000910152565b6000815180845262001826816020860160208601620017e6565b601f01601f19169290920160200192915050565b6020815260006200122460208301846200180c565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200192657600080fd5b815162001224816200138d565b6000600182016200195457634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200132960408501826200180c565b60808152620019906080820186516200136c565b60006020860151620019a660a08401826200136c565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019e0818601846200136c565b60c08901519250610140620019f8818701856200136c565b60e08a01519350610180610160818189015262001a1a6102008901876200195b565b948c015194955062001a2f888301866200136c565b838c01519450607f19935083888703016101a089015262001a5186866200180c565b9550828c0151945062001a696101c089018615159052565b808c0151945050505080858403016101e08601525062001a8a82826200180c565b9250505062001a9d60208301866200136c565b62001aac60408301856200136c565b62001abb60608301846200136c565b95945050505050565b6001600160a01b038316815260406020820181905260009062001329908301846200180c565b60006020828403121562001afd57600080fd5b5051919050565b6000825162001b18818460208701620017e6565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da26469706673582212201968bc98a73c2287ac478184f176b078b77c47f2cfec44709683d331d1305eae64736f6c63430008130033","sourceMap":"433:976:110:-:0;;;1088:4:64;1045:48;;433:976:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b60405162000176919062001379565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013b5565b620004f2565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013d5565b62000558565b005b348015620001e757600080fd5b50620001d8620001f9366004620013b5565b620006c3565b3480156200020c57600080fd5b50620001d86200021e366004620013b5565b620006ef565b620001d8620002353660046200150f565b620007c3565b3480156200024857600080fd5b50620001a462000888565b3480156200026057600080fd5b50620001d8620002723660046200158a565b62000939565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d8620009aa565b348015620002bf57600080fd5b50620001d8620002d1366004620013b5565b62000a2e565b348015620002e457600080fd5b50620001d862000a5a565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013b5565b62000a72565b3480156200034357600080fd5b506200016762000ac3565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013b5565b62000b60565b348015620003b857600080fd5b50620001d8620003ca366004620015c4565b62000b8c565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b5062000167620004113660046200168b565b62000be8565b3480156200042457600080fd5b50620001d862000436366004620013b5565b62000d29565b3480156200044957600080fd5b50620001d86200045b366004620013b5565b62000da1565b3480156200046e57600080fd5b50620004a162000480366004620013b5565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b50620004e3604051806040016040528060038152602001620302e360ec1b81525081565b6040516200017691906200183a565b6001600160a01b03811660009081526066602052604081206001015460ff166200053c578160405163f5a6943d60e01b815260040162000533919062001379565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005795750600054600160ff909116105b806200059e57506200058b3062000e12565b1580156200059e575060005460ff166001145b620005bd5760405162461bcd60e51b815260040162000533906200184f565b6000805460ff191660011790558015620005e1576000805461ff0019166101001790555b620005ec8662000d29565b6000606555620005fc8562000e21565b620006078462000e21565b620006128262000e21565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062002096833981519152906200067d90879062001379565b60405180910390a18015620006bb576000805461ff0019169055604051600181526000805160206200204f8339815191529060200160405180910390a15b505050505050565b620006cd62000e49565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200073a5760405162461bcd60e51b815260040162000533906200189d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076e62000eac565b6001600160a01b031614620007975760405162461bcd60e51b81526004016200053390620018d8565b620007a28162000ec9565b60408051600080825260208201909252620007c09183919062000f1b565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200080e5760405162461bcd60e51b815260040162000533906200189d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200084262000eac565b6001600160a01b0316146200086b5760405162461bcd60e51b81526004016200053390620018d8565b620008768262000ec9565b620008848282600162000f1b565b5050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620009255760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000533565b506000805160206200202f83398151915290565b6200094362000e49565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009cd575060005460ff8083169116105b620009ec5760405162461bcd60e51b815260040162000533906200184f565b6000805461ffff191660ff83169081176101001761ff0019169091556040519081526000805160206200204f833981519152906020015b60405180910390a150565b62000a3862000e49565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a6462000e49565b62000a70600062001098565b565b62000a7c62000e49565b62000a878162000e21565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620020968339815191529062000a2390839062001379565b60008062000ad96033546001600160a01b031690565b9050806001600160a01b03163b60000362000af357919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b50575060408051601f3d908101601f1916820190925262000b4d9181019062001913565b60015b62000b5a57919050565b92915050565b62000b6a62000e49565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b9662000e49565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c91016200099e565b606580546000918262000bfb8362001933565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3c62000ac3565b60405160240162000c5194939291906200197c565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c90906200135e565b62000c9d92919062001ac4565b604051809103906000f08015801562000cba573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d1a90839062001379565b60405180910390a19392505050565b600054610100900460ff1662000d965760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000533565b620007c08162001098565b62000dab62000e49565b6001600160a01b03811662000d965760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000533565b6001600160a01b03163b151590565b6001600160a01b038116620007c0576040516303988b8160e61b815260040160405180910390fd5b3362000e5462000ac3565b6001600160a01b03161462000a705760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000533565b6000805160206200202f833981519152546001600160a01b031690565b3362000ed462000ac3565b6001600160a01b031614620007c0573362000eee62000ac3565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000533565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f565762000f5183620010ea565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fb3575060408051601f3d908101601f1916820190925262000fb09181019062001aea565b60015b620010185760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000533565b6000805160206200202f83398151915281146200108a5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000533565b5062000f5183838362001189565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010f58162000e12565b620011595760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000533565b6000805160206200202f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200119483620011ba565b600082511180620011a25750805b1562000f5157620011b48383620011fc565b50505050565b620011c581620010ea565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200122483836040518060600160405280602781526020016200206f602791396200122b565b9392505050565b6060600080856001600160a01b0316856040516200124a919062001b04565b600060405180830381855af49150503d806000811462001287576040519150601f19603f3d011682016040523d82523d6000602084013e6200128c565b606091505b50915091506200129f86838387620012a9565b9695505050505050565b606083156200131d5782516000036200131557620012c78562000e12565b620013155760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000533565b508162001329565b62001329838362001331565b949350505050565b815115620013425781518083602001fd5b8060405162461bcd60e51b81526004016200053391906200183a565b6104ec8062001b2383390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007c057600080fd5b8035620013b0816200138d565b919050565b600060208284031215620013c857600080fd5b813562001224816200138d565b600080600080600060a08688031215620013ee57600080fd5b8535620013fb816200138d565b945060208601356200140d816200138d565b935060408601356200141f816200138d565b9250606086013562001431816200138d565b9150608086013562001443816200138d565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200148d576200148d62001451565b60405290565b60006001600160401b0380841115620014b057620014b062001451565b604051601f8501601f19908116603f01168101908282118183101715620014db57620014db62001451565b81604052809350858152868686011115620014f557600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200152357600080fd5b823562001530816200138d565b915060208301356001600160401b038111156200154c57600080fd5b8301601f810185136200155e57600080fd5b6200156f8582356020840162001493565b9150509250929050565b80358015158114620013b057600080fd5b600080604083850312156200159e57600080fd5b8235620015ab816200138d565b9150620015bb6020840162001579565b90509250929050565b60008060408385031215620015d857600080fd5b8235620015e5816200138d565b946020939093013593505050565b600082601f8301126200160557600080fd5b620012248383356020850162001493565b6000604082840312156200162957600080fd5b604080519081016001600160401b0380821183831017156200164f576200164f62001451565b816040528293508435835260208501359150808211156200166f57600080fd5b506200167e85828601620015f3565b6020830152505092915050565b6000602082840312156200169e57600080fd5b81356001600160401b0380821115620016b657600080fd5b908301906101808286031215620016cc57600080fd5b620016d662001467565b620016e183620013a3565b8152620016f160208401620013a3565b60208201526040830135604082015260608301356060820152608083013560808201526200172260a08401620013a3565b60a08201526200173560c08401620013a3565b60c082015260e0830135828111156200174d57600080fd5b6200175b8782860162001616565b60e08301525061010062001771818501620013a3565b9082015261012083810135838111156200178a57600080fd5b6200179888828701620015f3565b828401525050610140620017ae81850162001579565b908201526101608381013583811115620017c757600080fd5b620017d588828701620015f3565b918301919091525095945050505050565b60005b8381101562001803578181015183820152602001620017e9565b50506000910152565b6000815180845262001826816020860160208601620017e6565b601f01601f19169290920160200192915050565b6020815260006200122460208301846200180c565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200192657600080fd5b815162001224816200138d565b6000600182016200195457634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200132960408501826200180c565b60808152620019906080820186516200136c565b60006020860151620019a660a08401826200136c565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019e0818601846200136c565b60c08901519250610140620019f8818701856200136c565b60e08a01519350610180610160818189015262001a1a6102008901876200195b565b948c015194955062001a2f888301866200136c565b838c01519450607f19935083888703016101a089015262001a5186866200180c565b9550828c0151945062001a696101c089018615159052565b808c0151945050505080858403016101e08601525062001a8a82826200180c565b9250505062001a9d60208301866200136c565b62001aac60408301856200136c565b62001abb60608301846200136c565b95945050505050565b6001600160a01b038316815260406020820181905260009062001329908301846200180c565b60006020828403121562001afd57600080fd5b5051919050565b6000825162001b18818460208701620017e6565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da26469706673582212201968bc98a73c2287ac478184f176b078b77c47f2cfec44709683d331d1305eae64736f6c63430008130033","sourceMap":"433:976:110:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;753:40:109;;;;;;;;;;-1:-1:-1;753:40:109;;;;-1:-1:-1;;;;;753:40:109;;;;;;;;;;:::i;:::-;;;;;;;;4800:249;;;;;;;;;;-1:-1:-1;4800:249:109;;;;;:::i;:::-;;:::i;:::-;;;1004:25:142;;;992:2;977:18;4800:249:109;858:177:142;2258:780:109;;;;;;;;;;-1:-1:-1;2258:780:109;;;;;:::i;:::-;;:::i;:::-;;1996:118;;;;;;;;;;-1:-1:-1;1996:118:109;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4436:208:109:-;;;;;;;;;;-1:-1:-1;4436:208:109;;;;;:::i;:::-;;:::i;799:31::-;;;;;;;;;;-1:-1:-1;799:31:109;;;;-1:-1:-1;;;;;799:31:109;;;491:50:110;;;;;;;;;;;;;:::i;1854:136:109:-;;;;;;;;;;-1:-1:-1;1854:136:109;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;836:38:109:-;;;;;;;;;;-1:-1:-1;836:38:109;;;;-1:-1:-1;;;;;836:38:109;;;3863:222;;;;;;;;;;-1:-1:-1;3863:222:109;;;;;:::i;:::-;;:::i;525:604:105:-;;;;;;;;;;;;;:::i;4091:115:109:-;;;;;;;;;;-1:-1:-1;4181:18:109;;-1:-1:-1;;;;;4181:18:109;4091:115;;632:20;;;;;;;;;;;;;;;;2120:132;;;;;;;;;;-1:-1:-1;2120:132:109;;;;;:::i;:::-;;:::i;4212:218::-;;;;;;;;;;-1:-1:-1;4212:218:109;;;;;:::i;:::-;;:::i;714:33::-;;;;;;;;;;-1:-1:-1;714:33:109;;;;-1:-1:-1;;;;;714:33:109;;;547:860:110;;;;;;;;;;-1:-1:-1;547:860:110;;;;;:::i;:::-;;:::i;404:115:105:-;;;;;;;;;;-1:-1:-1;404:115:105;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4650:144:109:-;;;;;;;;;;-1:-1:-1;4650:144:109;;;;;:::i;:::-;-1:-1:-1;;;;;4754:27:109;4731:4;4754:27;;;:15;:27;;;;;:33;;;;;;4650:144;;;;7207:14:142;;7200:22;7182:41;;7170:2;7155:18;4650:144:109;7042:187:142;588:38:109;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;588:38:109;;;;;;;;;;;;:::i;4800:249::-;-1:-1:-1;;;;;4899:27:109;;4875:7;4899:27;;;:15;:27;;;;;:33;;;;;4894:100;;4972:10;4955:28;;-1:-1:-1;;;4955:28:109;;;;;;;;:::i;:::-;;;;;;;;4894:100;-1:-1:-1;;;;;;5011:27:109;;;;;:15;:27;;;;;:31;;4800:249::o;2258:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2495:24:109::1;2512:6;2495:16;:24::i;:::-;2537:1;2529:5;:9:::0;2548:39:::1;2567:19:::0;2548:18:::1;:39::i;:::-;2597:46;2616:26;2597:18;:46::i;:::-;2653:44;2672:24;2653:18;:44::i;:::-;2707:18;:40:::0;;-1:-1:-1;;;;;2707:40:109;;::::1;-1:-1:-1::0;;;;;;2707:40:109;;::::1;;::::0;;;2757:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2821:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2867:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2932:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2932:35:109;::::1;::::0;2728:19;;2932:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:142;;-1:-1:-1;;;;;;;;;;;3721:14:47;8545:2:142;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2258:780:109;;;;;:::o;1996:118::-;1355:13:45;:11;:13::i;:::-;2080:16:109::1;:27:::0;;-1:-1:-1;;;;;;2080:27:109::1;-1:-1:-1::0;;;;;2080:27:109;;;::::1;::::0;;;::::1;::::0;;1996:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:142;2064:92:64;;;9614:21:142;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:142;;;9754:54;9825:19;;2064:92:64;9430:420:142;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4436:208:109:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4536:27:109;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4536:44:109::1;::::0;::::1;;::::0;;::::1;::::0;;;4595:42;;10023:51:142;;;10090:18;;;10083:50;4595:42:109::1;::::0;9996:18:142;4595:42:109::1;;;;;;;;4436:208:::0;;:::o;491:50:110:-;4882:13:47;;536:1:110;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;;;4982:22;5014:20;-1:-1:-1;;5055:21:47;;;;5091:20;;8557:36:142;;;-1:-1:-1;;;;;;;;;;;5091:20:47;8545:2:142;8530:18;5091:20:47;;;;;;;;491:50:110;:::o;1854:136:109:-;1355:13:45;:11;:13::i;:::-;1947:25:109::1;:36:::0;;-1:-1:-1;;;;;;1947:36:109::1;-1:-1:-1::0;;;;;1947:36:109;;;::::1;::::0;;;::::1;::::0;;1854:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3863:222:109:-;1355:13:45;:11;:13::i;:::-;3951:35:109::1;3970:15;3951:18;:35::i;:::-;3996:18;:36:::0;;-1:-1:-1;;;;;;3996:36:109::1;-1:-1:-1::0;;;;;3996:36:109;::::1;;::::0;;4047:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4047:31:109;::::1;::::0;3996:36;;4047:31:::1;:::i;525:604:105:-:0;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:105;591:49;;715:12;-1:-1:-1;;;;;707:33:105;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:105:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:105;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:105;;;;;;;;-1:-1:-1;;876:40:105;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:105:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:105:o;2120:132:109:-;1355:13:45;:11;:13::i;:::-;2211:23:109::1;:34:::0;;-1:-1:-1;;;;;;2211:34:109::1;-1:-1:-1::0;;;;;2211:34:109;;;::::1;::::0;;;::::1;::::0;;2120:132::o;4212:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4316:27:109;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4380:43;;10763:51:142;;;10830:18;;10823:34;;;4380:43:109::1;::::0;10736:18:142;4380:43:109::1;10589:274:142::0;547:860:110;752:5;:7;;689:31;;;752:7;;;:::i;:::-;;;;-1:-1:-1;736:13:110;;;:23;803:4;769:23;;;:39;878:25;;1009:16;;1027:23;;-1:-1:-1;;;;;;;878:25:110;;;;-1:-1:-1;;;958:41:110;736:6;;1009:16;;;;1027:23;1052:7;:5;:7::i;:::-;918:155;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;918:155:110;;;;;;;;;;;;;;-1:-1:-1;;;;;918:155:110;-1:-1:-1;;;;;;918:155:110;;;;;;;;;;840:243;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1242:43:110;;1094:39;1242:43;;;:15;:43;;;;;;;1294:4;1242:49;;;:56;;-1:-1:-1;;1242:56:110;;;;;;1313:44;819:264;;-1:-1:-1;819:264:110;;1313:44;;;;819:264;;1313:44;:::i;:::-;;;;;;;;1382:17;547:860;-1:-1:-1;;;547:860:110:o;404:115:105:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13927:2:142;5366:69:47;;;13909:21:142;13966:2;13946:18;;;13939:30;14005:34;13985:18;;;13978:62;-1:-1:-1;;;14056:18:142;;;14049:41;14107:19;;5366:69:47;13725:407:142;5366:69:47;480:32:105::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14339:2:142;2415:73:45::1;::::0;::::1;14321:21:142::0;14378:2;14358:18;;;14351:30;14417:34;14397:18;;;14390:62;-1:-1:-1;;;14468:18:142;;;14461:36;14514:19;;2415:73:45::1;14137:402:142::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1707:141:109:-;-1:-1:-1;;;;;1789:22:109;;1785:56;;1820:21;;-1:-1:-1;;;1820:21:109;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14746:2:142;1675:68:45;;;14728:21:142;;;14765:18;;;14758:30;14824:34;14804:18;;;14797:62;14876:18;;1675:68:45;14544:356:142;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:105:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:105;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:105;;-1:-1:-1;;;;;15135:15:142;;;1252:35:105;;;15117:34:142;15187:15;;15167:18;;;15160:43;15052:18;;1252:35:105;14905:304:142;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15605:2:142;3262:56:60;;;15587:21:142;15644:2;15624:18;;;15617:30;15683:34;15663:18;;;15656:62;-1:-1:-1;;;15734:18:142;;;15727:44;15788:19;;3262:56:60;15403:410:142;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;16020:2:142;3140:82:60;;;16002:21:142;16059:2;16039:18;;;16032:30;16098:34;16078:18;;;16071:62;-1:-1:-1;;;16149:18:142;;;16142:39;16198:19;;3140:82:60;15818:405:142;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16430:2:142;1479:95:60;;;16412:21:142;16469:2;16449:18;;;16442:30;16508:34;16488:18;;;16481:62;-1:-1:-1;;;16559:18:142;;;16552:43;16612:19;;1479:95:60;16228:409:142;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;17136:2:142;8113:60:76;;;17118:21:142;17175:2;17155:18;;;17148:30;17214:31;17194:18;;;17187:59;17263:18;;8113:60:76;16934:353:142;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:142:-;-1:-1:-1;;;;;80:31:142;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:142;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:142;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:142;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:142;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:142;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:142;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:142;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:142;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:142;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:142;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:142;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:142;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:142;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:142:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:142;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:142;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:142;5298:1643;-1:-1:-1;;;;;5298:1643:142:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:142;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:142;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:142:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;7990:410::-;8192:2;8174:21;;;8231:2;8211:18;;;8204:30;8270:34;8265:2;8250:18;;8243:62;-1:-1:-1;;;8336:2:142;8321:18;;8314:44;8390:3;8375:19;;7990:410::o;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:142;8864:18;;8857:62;-1:-1:-1;;;8950:2:142;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:142;9277:18;;9270:62;-1:-1:-1;;;9363:2:142;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10333:251::-;10403:6;10456:2;10444:9;10435:7;10431:23;10427:32;10424:52;;;10472:1;10469;10462:12;10424:52;10504:9;10498:16;10523:31;10548:5;10523:31;:::i;10868:232::-;10907:3;10928:17;;;10925:140;;10987:10;10982:3;10978:20;10975:1;10968:31;11022:4;11019:1;11012:15;11050:4;11047:1;11040:15;10925:140;-1:-1:-1;11092:1:142;11081:13;;10868:232::o;11105:252::-;11192:5;11186:12;11181:3;11174:25;11156:3;11245:4;11238:5;11234:16;11228:23;11283:4;11276;11271:3;11267:14;11260:28;11304:47;11345:4;11340:3;11336:14;11322:12;11304:47;:::i;11362:2038::-;11687:3;11676:9;11669:22;11700:54;11749:3;11738:9;11734:19;11725:6;11719:13;11700:54;:::i;:::-;11650:4;11801;11793:6;11789:17;11783:24;11816:53;11864:3;11853:9;11849:19;11835:12;11816:53;:::i;:::-;;11924:4;11916:6;11912:17;11906:24;11900:3;11889:9;11885:19;11878:53;11986:4;11978:6;11974:17;11968:24;11962:3;11951:9;11947:19;11940:53;12030:3;12022:6;12018:16;12012:23;12054:3;12093:2;12088;12077:9;12073:18;12066:30;12145:3;12137:6;12133:16;12127:23;12105:45;;12169:3;12181:54;12231:2;12220:9;12216:18;12200:14;12181:54;:::i;:::-;12284:3;12276:6;12272:16;12266:23;12244:45;;12308:3;12320:54;12370:2;12359:9;12355:18;12339:14;12320:54;:::i;:::-;12423:3;12415:6;12411:16;12405:23;12383:45;;12447:6;12472:3;12511:2;12506;12495:9;12491:18;12484:30;12537:63;12595:3;12584:9;12580:19;12564:14;12537:63;:::i;:::-;12637:15;;;12631:22;12523:77;;-1:-1:-1;12662:54:142;12697:18;;;12631:22;12662:54;:::i;:::-;12765:2;12757:6;12753:15;12747:22;12725:44;;12792:3;12788:8;12778:18;;12861:2;12849:9;12841:6;12837:22;12833:31;12827:3;12816:9;12812:19;12805:60;12888:41;12922:6;12906:14;12888:41;:::i;:::-;12874:55;;12978:2;12970:6;12966:15;12960:22;12938:44;;12991:52;13038:3;13027:9;13023:19;13007:14;7016:13;7009:21;6997:34;;6946:91;12991:52;13092:2;13084:6;13080:15;13074:22;13052:44;;;;;13161:2;13149:9;13141:6;13137:22;13133:31;13127:3;13116:9;13112:19;13105:60;;13182:41;13216:6;13200:14;13182:41;:::i;:::-;13174:49;;;;13232:48;13274:4;13263:9;13259:20;13251:6;13232:48;:::i;:::-;13289;13331:4;13320:9;13316:20;13308:6;13289:48;:::i;:::-;13346;13388:4;13377:9;13373:20;13365:6;13346:48;:::i;:::-;11362:2038;;;;;;;:::o;13405:315::-;-1:-1:-1;;;;;13580:32:142;;13562:51;;13649:2;13644;13629:18;;13622:30;;;-1:-1:-1;;13669:45:142;;13695:18;;13687:6;13669:45;:::i;15214:184::-;15284:6;15337:2;15325:9;15316:7;15312:23;15308:32;15305:52;;;15353:1;15350;15343:12;15305:52;-1:-1:-1;15376:16:142;;15214:184;-1:-1:-1;15214:184:142:o;16642:287::-;16771:3;16809:6;16803:13;16825:66;16884:6;16879:3;16872:4;16864:6;16860:17;16825:66;:::i;:::-;16907:16;;;;;16642:287;-1:-1:-1;;16642:287:142:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1785,"length":32},{"start":1852,"length":32},{"start":1997,"length":32},{"start":2064,"length":32},{"start":2197,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2()":"5cd8a76b","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":\"RegistryFactoryV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a\",\"dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0xe130342ecd3a0023a97611845108dd8f7411a4b18dfe8bccc7d880b716e94932\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://be21850b019ca2fd1a2da4474822621b3471d1def2f78599ffac20d94c8782ff\",\"dweb:/ipfs/QmPA536ZAYTcqBdyh3AxafpKM5Rx5C97uNP7n5dXKZqNvM\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":{\"keccak256\":\"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383\",\"dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":"RegistryFactoryV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x6b05f27573e30362ec808b4d79f8156550a8dd5090b107b46928ab8d87be3c87","urls":["bzz-raw://134753f1a9a463e4193ffa2b2f6e32813b7a3d7603ddacaedf0f65a6a72c864a","dweb:/ipfs/QmZnQa6a3aFUvxdT1yaj72DBQUShfq5okHshhHwGv85Mdq"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0xe130342ecd3a0023a97611845108dd8f7411a4b18dfe8bccc7d880b716e94932","urls":["bzz-raw://be21850b019ca2fd1a2da4474822621b3471d1def2f78599ffac20d94c8782ff","dweb:/ipfs/QmPA536ZAYTcqBdyh3AxafpKM5Rx5C97uNP7n5dXKZqNvM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":{"keccak256":"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c","urls":["bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383","dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72953,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72958,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72945_storage)"},{"astId":72960,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72962,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72964,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72966,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73298,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72945_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72945_storage"},"t_struct(CommunityInfo)72945_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72942,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72944,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol","id":73405,"exportedSymbols":{"ERC1967Proxy":[55021],"RegistryCommunityInitializeParamsV0_0":[70795],"RegistryCommunityV0_0":[72700],"RegistryCommunityV0_1":[72929],"RegistryFactoryV0_0":[73299],"RegistryFactoryV0_1":[73404]},"nodeType":"SourceUnit","src":"42:1368:110","nodes":[{"id":73301,"nodeType":"PragmaDirective","src":"42:24:110","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73304,"nodeType":"ImportDirective","src":"68:93:110","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"../RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":73405,"sourceUnit":73300,"symbolAliases":[{"foreign":{"id":73302,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73299,"src":"76:19:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73303,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"97:12:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73307,"nodeType":"ImportDirective","src":"162:134:110","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":73405,"sourceUnit":72701,"symbolAliases":[{"foreign":{"id":73305,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70795,"src":"175:37:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73306,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"218:21:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73309,"nodeType":"ImportDirective","src":"297:85:110","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":73405,"sourceUnit":72930,"symbolAliases":[{"foreign":{"id":73308,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72929,"src":"305:21:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73404,"nodeType":"ContractDefinition","src":"433:976:110","nodes":[{"id":73319,"nodeType":"FunctionDefinition","src":"491:50:110","nodes":[],"body":{"id":73318,"nodeType":"Block","src":"539:2:110","nodes":[],"statements":[]},"functionSelector":"5cd8a76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":73315,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"536:1:110","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":73316,"kind":"modifierInvocation","modifierName":{"id":73314,"name":"reinitializer","nameLocations":["522:13:110"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"522:13:110"},"nodeType":"ModifierInvocation","src":"522:16:110"}],"name":"initializeV2","nameLocation":"500:12:110","parameters":{"id":73313,"nodeType":"ParameterList","parameters":[],"src":"512:2:110"},"returnParameters":{"id":73317,"nodeType":"ParameterList","parameters":[],"src":"539:0:110"},"scope":73404,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":73403,"nodeType":"FunctionDefinition","src":"547:860:110","nodes":[],"body":{"id":73402,"nodeType":"Block","src":"726:681:110","nodes":[],"statements":[{"expression":{"id":73333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73328,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73322,"src":"736:6:110","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73330,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"743:6:110","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70779,"src":"736:13:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73332,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"752:7:110","subExpression":{"id":73331,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72953,"src":"752:5:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"736:23:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73334,"nodeType":"ExpressionStatement","src":"736:23:110"},{"expression":{"id":73342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73335,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73322,"src":"769:6:110","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73337,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"776:16:110","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70781,"src":"769:23:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":73340,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"803:4:110","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$73404","typeString":"contract RegistryFactoryV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$73404","typeString":"contract RegistryFactoryV0_1"}],"id":73339,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"795:7:110","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73338,"name":"address","nodeType":"ElementaryTypeName","src":"795:7:110","typeDescriptions":{}}},"id":73341,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"795:13:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"769:39:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73343,"nodeType":"ExpressionStatement","src":"769:39:110"},{"assignments":[73346],"declarations":[{"constant":false,"id":73346,"mutability":"mutable","name":"proxy","nameLocation":"832:5:110","nodeType":"VariableDeclaration","scope":73402,"src":"819:18:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":73345,"nodeType":"UserDefinedTypeName","pathNode":{"id":73344,"name":"ERC1967Proxy","nameLocations":["819:12:110"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"819:12:110"},"referencedDeclaration":55021,"src":"819:12:110","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":73366,"initialValue":{"arguments":[{"arguments":[{"id":73352,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72962,"src":"878:25:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73351,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"870:7:110","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73350,"name":"address","nodeType":"ElementaryTypeName","src":"870:7:110","typeDescriptions":{}}},"id":73353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"870:34:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":73356,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72700,"src":"958:21:110","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72700_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73357,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"980:10:110","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71485,"src":"958:32:110","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":73358,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"991:8:110","memberName":"selector","nodeType":"MemberAccess","src":"958:41:110","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":73359,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73322,"src":"1001:6:110","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":73360,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72964,"src":"1009:16:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73361,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72966,"src":"1027:23:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":73362,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70689],"referencedDeclaration":70689,"src":"1052:5:110","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":73363,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1052:7:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73354,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"918:3:110","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":73355,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"922:18:110","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"918:22:110","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":73364,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"918:155:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":73349,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"840:16:110","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":73348,"nodeType":"UserDefinedTypeName","pathNode":{"id":73347,"name":"ERC1967Proxy","nameLocations":["844:12:110"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"844:12:110"},"referencedDeclaration":55021,"src":"844:12:110","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":73365,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"840:243:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"819:264:110"},{"assignments":[73369],"declarations":[{"constant":false,"id":73369,"mutability":"mutable","name":"registryCommunity","nameLocation":"1116:17:110","nodeType":"VariableDeclaration","scope":73402,"src":"1094:39:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":73368,"nodeType":"UserDefinedTypeName","pathNode":{"id":73367,"name":"RegistryCommunityV0_1","nameLocations":["1094:21:110"],"nodeType":"IdentifierPath","referencedDeclaration":72929,"src":"1094:21:110"},"referencedDeclaration":72929,"src":"1094:21:110","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"id":73379,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":73375,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73346,"src":"1174:5:110","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":73374,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:7:110","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73373,"name":"address","nodeType":"ElementaryTypeName","src":"1166:7:110","typeDescriptions":{}}},"id":73376,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1166:14:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73372,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1158:8:110","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":73371,"name":"address","nodeType":"ElementaryTypeName","src":"1158:8:110","stateMutability":"payable","typeDescriptions":{}}},"id":73377,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1158:23:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":73370,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72929,"src":"1136:21:110","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72929_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":73378,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:46:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}},"nodeType":"VariableDeclarationStatement","src":"1094:88:110"},{"expression":{"id":73388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73380,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72958,"src":"1242:15:110","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72945_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73385,"indexExpression":{"arguments":[{"id":73383,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73369,"src":"1266:17:110","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}],"id":73382,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1258:7:110","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73381,"name":"address","nodeType":"ElementaryTypeName","src":"1258:7:110","typeDescriptions":{}}},"id":73384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1258:26:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1242:43:110","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72945_storage","typeString":"struct CommunityInfo storage ref"}},"id":73386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1286:5:110","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72944,"src":"1242:49:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":73387,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1294:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"1242:56:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73389,"nodeType":"ExpressionStatement","src":"1242:56:110"},{"eventCall":{"arguments":[{"arguments":[{"id":73393,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73369,"src":"1338:17:110","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}],"id":73392,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1330:7:110","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73391,"name":"address","nodeType":"ElementaryTypeName","src":"1330:7:110","typeDescriptions":{}}},"id":73394,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1330:26:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73390,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72980,"src":"1313:16:110","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1313:44:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73396,"nodeType":"EmitStatement","src":"1308:49:110"},{"expression":{"arguments":[{"id":73399,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73369,"src":"1382:17:110","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72929","typeString":"contract RegistryCommunityV0_1"}],"id":73398,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1374:7:110","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73397,"name":"address","nodeType":"ElementaryTypeName","src":"1374:7:110","typeDescriptions":{}}},"id":73400,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1374:26:110","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73327,"id":73401,"nodeType":"Return","src":"1367:33:110"}]},"baseFunctions":[73185],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"556:14:110","overrides":{"id":73324,"nodeType":"OverrideSpecifier","overrides":[],"src":"663:8:110"},"parameters":{"id":73323,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73322,"mutability":"mutable","name":"params","nameLocation":"616:6:110","nodeType":"VariableDeclaration","scope":73403,"src":"571:51:110","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":73321,"nodeType":"UserDefinedTypeName","pathNode":{"id":73320,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["571:37:110"],"nodeType":"IdentifierPath","referencedDeclaration":70795,"src":"571:37:110"},"referencedDeclaration":70795,"src":"571:37:110","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70795_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"570:53:110"},"returnParameters":{"id":73327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73326,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"697:23:110","nodeType":"VariableDeclaration","scope":73403,"src":"689:31:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73325,"name":"address","nodeType":"ElementaryTypeName","src":"689:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"688:33:110"},"scope":73404,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":73311,"name":"RegistryFactoryV0_0","nameLocations":["465:19:110"],"nodeType":"IdentifierPath","referencedDeclaration":73299,"src":"465:19:110"},"id":73312,"nodeType":"InheritanceSpecifier","src":"465:19:110"}],"canonicalName":"RegistryFactoryV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":73310,"nodeType":"StructuredDocumentation","src":"384:49:110","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[73404,73299,70711,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_1","nameLocation":"442:19:110","scope":73405,"usedErrors":[70634,72990,72992]}],"license":"AGPL-3.0-only"},"id":110} \ No newline at end of file +{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516120e061004c600039600081816106ee01528181610731015281816107c201528181610805015261088a01526120e06000f3fe608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b6040516200017691906200136e565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013aa565b620004e7565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013ca565b6200054d565b005b348015620001e757600080fd5b50620001d8620001f9366004620013aa565b620006b8565b3480156200020c57600080fd5b50620001d86200021e366004620013aa565b620006e4565b620001d86200023536600462001504565b620007b8565b3480156200024857600080fd5b50620001a46200087d565b3480156200026057600080fd5b50620001d8620002723660046200157f565b6200092e565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d86200099f565b348015620002bf57600080fd5b50620001d8620002d1366004620013aa565b62000a23565b348015620002e457600080fd5b50620001d862000a4f565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013aa565b62000a67565b3480156200034357600080fd5b506200016762000ab8565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013aa565b62000b55565b348015620003b857600080fd5b50620001d8620003ca366004620015b9565b62000b81565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b50620001676200041136600462001680565b62000bdd565b3480156200042457600080fd5b50620001d862000436366004620013aa565b62000d1e565b3480156200044957600080fd5b50620001d86200045b366004620013aa565b62000d96565b3480156200046e57600080fd5b50620004a162000480366004620013aa565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200017691906200182f565b6001600160a01b03811660009081526066602052604081206001015460ff1662000531578160405163f5a6943d60e01b81526004016200052891906200136e565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056e5750600054600160ff909116105b80620005935750620005803062000e07565b15801562000593575060005460ff166001145b620005b25760405162461bcd60e51b8152600401620005289062001844565b6000805460ff191660011790558015620005d6576000805461ff0019166101001790555b620005e18662000d1e565b6000606555620005f18562000e16565b620005fc8462000e16565b620006078262000e16565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200208b83398151915290620006729087906200136e565b60405180910390a18015620006b0576000805461ff001916905560405160018152600080516020620020448339815191529060200160405180910390a15b505050505050565b620006c262000e3e565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200072f5760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076362000ea1565b6001600160a01b0316146200078c5760405162461bcd60e51b81526004016200052890620018cd565b620007978162000ebe565b60408051600080825260208201909252620007b59183919062000f10565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ea1565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052890620018cd565b6200086b8262000ebe565b620008798282600162000f10565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200091a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000528565b506000805160206200202483398151915290565b6200093862000e3e565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009c2575060005460ff8083169116105b620009e15760405162461bcd60e51b8152600401620005289062001844565b6000805461ffff191660ff83169081176101001761ff00191690915560405190815260008051602062002044833981519152906020015b60405180910390a150565b62000a2d62000e3e565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a5962000e3e565b62000a6560006200108d565b565b62000a7162000e3e565b62000a7c8162000e16565b606780546001600160a01b0319166001600160a01b0383161790556040516000805160206200208b8339815191529062000a189083906200136e565b60008062000ace6033546001600160a01b031690565b9050806001600160a01b03163b60000362000ae857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b45575060408051601f3d908101601f1916820190925262000b429181019062001908565b60015b62000b4f57919050565b92915050565b62000b5f62000e3e565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b8b62000e3e565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000993565b606580546000918262000bf08362001928565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3162000ab8565b60405160240162000c46949392919062001971565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c859062001353565b62000c9292919062001ab9565b604051809103906000f08015801562000caf573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d0f9083906200136e565b60405180910390a19392505050565b600054610100900460ff1662000d8b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000528565b620007b5816200108d565b62000da062000e3e565b6001600160a01b03811662000d8b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000528565b6001600160a01b03163b151590565b6001600160a01b038116620007b5576040516303988b8160e61b815260040160405180910390fd5b3362000e4962000ab8565b6001600160a01b03161462000a655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000528565b60008051602062002024833981519152546001600160a01b031690565b3362000ec962000ab8565b6001600160a01b031614620007b5573362000ee362000ab8565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000528565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f4b5762000f4683620010df565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fa8575060408051601f3d908101601f1916820190925262000fa59181019062001adf565b60015b6200100d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000528565b6000805160206200202483398151915281146200107f5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000528565b5062000f468383836200117e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010ea8162000e07565b6200114e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000528565b6000805160206200202483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200118983620011af565b600082511180620011975750805b1562000f4657620011a98383620011f1565b50505050565b620011ba81620010df565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620012198383604051806060016040528060278152602001620020646027913962001220565b9392505050565b6060600080856001600160a01b0316856040516200123f919062001af9565b600060405180830381855af49150503d80600081146200127c576040519150601f19603f3d011682016040523d82523d6000602084013e62001281565b606091505b509150915062001294868383876200129e565b9695505050505050565b60608315620013125782516000036200130a57620012bc8562000e07565b6200130a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000528565b50816200131e565b6200131e838362001326565b949350505050565b815115620013375781518083602001fd5b8060405162461bcd60e51b81526004016200052891906200182f565b6104ec8062001b1883390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007b557600080fd5b8035620013a58162001382565b919050565b600060208284031215620013bd57600080fd5b8135620012198162001382565b600080600080600060a08688031215620013e357600080fd5b8535620013f08162001382565b94506020860135620014028162001382565b93506040860135620014148162001382565b92506060860135620014268162001382565b91506080860135620014388162001382565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b038111828210171562001482576200148262001446565b60405290565b60006001600160401b0380841115620014a557620014a562001446565b604051601f8501601f19908116603f01168101908282118183101715620014d057620014d062001446565b81604052809350858152868686011115620014ea57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200151857600080fd5b8235620015258162001382565b915060208301356001600160401b038111156200154157600080fd5b8301601f810185136200155357600080fd5b620015648582356020840162001488565b9150509250929050565b80358015158114620013a557600080fd5b600080604083850312156200159357600080fd5b8235620015a08162001382565b9150620015b0602084016200156e565b90509250929050565b60008060408385031215620015cd57600080fd5b8235620015da8162001382565b946020939093013593505050565b600082601f830112620015fa57600080fd5b620012198383356020850162001488565b6000604082840312156200161e57600080fd5b604080519081016001600160401b03808211838310171562001644576200164462001446565b816040528293508435835260208501359150808211156200166457600080fd5b506200167385828601620015e8565b6020830152505092915050565b6000602082840312156200169357600080fd5b81356001600160401b0380821115620016ab57600080fd5b908301906101808286031215620016c157600080fd5b620016cb6200145c565b620016d68362001398565b8152620016e66020840162001398565b60208201526040830135604082015260608301356060820152608083013560808201526200171760a0840162001398565b60a08201526200172a60c0840162001398565b60c082015260e0830135828111156200174257600080fd5b62001750878286016200160b565b60e0830152506101006200176681850162001398565b9082015261012083810135838111156200177f57600080fd5b6200178d88828701620015e8565b828401525050610140620017a38185016200156e565b908201526101608381013583811115620017bc57600080fd5b620017ca88828701620015e8565b918301919091525095945050505050565b60005b83811015620017f8578181015183820152602001620017de565b50506000910152565b600081518084526200181b816020860160208601620017db565b601f01601f19169290920160200192915050565b60208152600062001219602083018462001801565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200191b57600080fd5b8151620012198162001382565b6000600182016200194957634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200131e604085018262001801565b608081526200198560808201865162001361565b600060208601516200199b60a084018262001361565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019d58186018462001361565b60c08901519250610140620019ed8187018562001361565b60e08a01519350610180610160818189015262001a0f61020089018762001950565b948c015194955062001a248883018662001361565b838c01519450607f19935083888703016101a089015262001a46868662001801565b9550828c0151945062001a5e6101c089018615159052565b808c0151945050505080858403016101e08601525062001a7f828262001801565b9250505062001a92602083018662001361565b62001aa1604083018562001361565b62001ab0606083018462001361565b95945050505050565b6001600160a01b03831681526040602082018190526000906200131e9083018462001801565b60006020828403121562001af257600080fd5b5051919050565b6000825162001b0d818460208701620017db565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220670003da5980805d3802d4f1fb5a407c00340bae505994972a1d13db87a8c96c64736f6c63430008130033","sourceMap":"433:976:107:-:0;;;1088:4:64;1045:48;;433:976:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b6040516200017691906200136e565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013aa565b620004e7565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013ca565b6200054d565b005b348015620001e757600080fd5b50620001d8620001f9366004620013aa565b620006b8565b3480156200020c57600080fd5b50620001d86200021e366004620013aa565b620006e4565b620001d86200023536600462001504565b620007b8565b3480156200024857600080fd5b50620001a46200087d565b3480156200026057600080fd5b50620001d8620002723660046200157f565b6200092e565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d86200099f565b348015620002bf57600080fd5b50620001d8620002d1366004620013aa565b62000a23565b348015620002e457600080fd5b50620001d862000a4f565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013aa565b62000a67565b3480156200034357600080fd5b506200016762000ab8565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013aa565b62000b55565b348015620003b857600080fd5b50620001d8620003ca366004620015b9565b62000b81565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b50620001676200041136600462001680565b62000bdd565b3480156200042457600080fd5b50620001d862000436366004620013aa565b62000d1e565b3480156200044957600080fd5b50620001d86200045b366004620013aa565b62000d96565b3480156200046e57600080fd5b50620004a162000480366004620013aa565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200017691906200182f565b6001600160a01b03811660009081526066602052604081206001015460ff1662000531578160405163f5a6943d60e01b81526004016200052891906200136e565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056e5750600054600160ff909116105b80620005935750620005803062000e07565b15801562000593575060005460ff166001145b620005b25760405162461bcd60e51b8152600401620005289062001844565b6000805460ff191660011790558015620005d6576000805461ff0019166101001790555b620005e18662000d1e565b6000606555620005f18562000e16565b620005fc8462000e16565b620006078262000e16565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200208b83398151915290620006729087906200136e565b60405180910390a18015620006b0576000805461ff001916905560405160018152600080516020620020448339815191529060200160405180910390a15b505050505050565b620006c262000e3e565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200072f5760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076362000ea1565b6001600160a01b0316146200078c5760405162461bcd60e51b81526004016200052890620018cd565b620007978162000ebe565b60408051600080825260208201909252620007b59183919062000f10565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ea1565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052890620018cd565b6200086b8262000ebe565b620008798282600162000f10565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200091a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000528565b506000805160206200202483398151915290565b6200093862000e3e565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009c2575060005460ff8083169116105b620009e15760405162461bcd60e51b8152600401620005289062001844565b6000805461ffff191660ff83169081176101001761ff00191690915560405190815260008051602062002044833981519152906020015b60405180910390a150565b62000a2d62000e3e565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a5962000e3e565b62000a6560006200108d565b565b62000a7162000e3e565b62000a7c8162000e16565b606780546001600160a01b0319166001600160a01b0383161790556040516000805160206200208b8339815191529062000a189083906200136e565b60008062000ace6033546001600160a01b031690565b9050806001600160a01b03163b60000362000ae857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b45575060408051601f3d908101601f1916820190925262000b429181019062001908565b60015b62000b4f57919050565b92915050565b62000b5f62000e3e565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b8b62000e3e565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000993565b606580546000918262000bf08362001928565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3162000ab8565b60405160240162000c46949392919062001971565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c859062001353565b62000c9292919062001ab9565b604051809103906000f08015801562000caf573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d0f9083906200136e565b60405180910390a19392505050565b600054610100900460ff1662000d8b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000528565b620007b5816200108d565b62000da062000e3e565b6001600160a01b03811662000d8b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000528565b6001600160a01b03163b151590565b6001600160a01b038116620007b5576040516303988b8160e61b815260040160405180910390fd5b3362000e4962000ab8565b6001600160a01b03161462000a655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000528565b60008051602062002024833981519152546001600160a01b031690565b3362000ec962000ab8565b6001600160a01b031614620007b5573362000ee362000ab8565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000528565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f4b5762000f4683620010df565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fa8575060408051601f3d908101601f1916820190925262000fa59181019062001adf565b60015b6200100d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000528565b6000805160206200202483398151915281146200107f5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000528565b5062000f468383836200117e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010ea8162000e07565b6200114e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000528565b6000805160206200202483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200118983620011af565b600082511180620011975750805b1562000f4657620011a98383620011f1565b50505050565b620011ba81620010df565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620012198383604051806060016040528060278152602001620020646027913962001220565b9392505050565b6060600080856001600160a01b0316856040516200123f919062001af9565b600060405180830381855af49150503d80600081146200127c576040519150601f19603f3d011682016040523d82523d6000602084013e62001281565b606091505b509150915062001294868383876200129e565b9695505050505050565b60608315620013125782516000036200130a57620012bc8562000e07565b6200130a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000528565b50816200131e565b6200131e838362001326565b949350505050565b815115620013375781518083602001fd5b8060405162461bcd60e51b81526004016200052891906200182f565b6104ec8062001b1883390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007b557600080fd5b8035620013a58162001382565b919050565b600060208284031215620013bd57600080fd5b8135620012198162001382565b600080600080600060a08688031215620013e357600080fd5b8535620013f08162001382565b94506020860135620014028162001382565b93506040860135620014148162001382565b92506060860135620014268162001382565b91506080860135620014388162001382565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b038111828210171562001482576200148262001446565b60405290565b60006001600160401b0380841115620014a557620014a562001446565b604051601f8501601f19908116603f01168101908282118183101715620014d057620014d062001446565b81604052809350858152868686011115620014ea57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200151857600080fd5b8235620015258162001382565b915060208301356001600160401b038111156200154157600080fd5b8301601f810185136200155357600080fd5b620015648582356020840162001488565b9150509250929050565b80358015158114620013a557600080fd5b600080604083850312156200159357600080fd5b8235620015a08162001382565b9150620015b0602084016200156e565b90509250929050565b60008060408385031215620015cd57600080fd5b8235620015da8162001382565b946020939093013593505050565b600082601f830112620015fa57600080fd5b620012198383356020850162001488565b6000604082840312156200161e57600080fd5b604080519081016001600160401b03808211838310171562001644576200164462001446565b816040528293508435835260208501359150808211156200166457600080fd5b506200167385828601620015e8565b6020830152505092915050565b6000602082840312156200169357600080fd5b81356001600160401b0380821115620016ab57600080fd5b908301906101808286031215620016c157600080fd5b620016cb6200145c565b620016d68362001398565b8152620016e66020840162001398565b60208201526040830135604082015260608301356060820152608083013560808201526200171760a0840162001398565b60a08201526200172a60c0840162001398565b60c082015260e0830135828111156200174257600080fd5b62001750878286016200160b565b60e0830152506101006200176681850162001398565b9082015261012083810135838111156200177f57600080fd5b6200178d88828701620015e8565b828401525050610140620017a38185016200156e565b908201526101608381013583811115620017bc57600080fd5b620017ca88828701620015e8565b918301919091525095945050505050565b60005b83811015620017f8578181015183820152602001620017de565b50506000910152565b600081518084526200181b816020860160208601620017db565b601f01601f19169290920160200192915050565b60208152600062001219602083018462001801565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200191b57600080fd5b8151620012198162001382565b6000600182016200194957634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200131e604085018262001801565b608081526200198560808201865162001361565b600060208601516200199b60a084018262001361565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019d58186018462001361565b60c08901519250610140620019ed8187018562001361565b60e08a01519350610180610160818189015262001a0f61020089018762001950565b948c015194955062001a248883018662001361565b838c01519450607f19935083888703016101a089015262001a46868662001801565b9550828c0151945062001a5e6101c089018615159052565b808c0151945050505080858403016101e08601525062001a7f828262001801565b9250505062001a92602083018662001361565b62001aa1604083018562001361565b62001ab0606083018462001361565b95945050505050565b6001600160a01b03831681526040602082018190526000906200131e9083018462001801565b60006020828403121562001af257600080fd5b5051919050565b6000825162001b0d818460208701620017db565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220670003da5980805d3802d4f1fb5a407c00340bae505994972a1d13db87a8c96c64736f6c63430008130033","sourceMap":"433:976:107:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40:106;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:131;;;992:2;977:18;4804:249:106;858:177:131;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;491:50:107;;;;;;;;;;;;;:::i;1858:136:106:-;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;547:860:107;;;;;;;;;;-1:-1:-1;547:860:107;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;7207:14:131;;7200:22;7182:41;;7170:2;7155:18;4654:144:106;7042:187:131;5060:92:106;;;;;;;;;;-1:-1:-1;5133:12:106;;;;;;;;;;;-1:-1:-1;;;5133:12:106;;;;5060:92;;;;5133:12;5060:92;:::i;4804:249::-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:131;;-1:-1:-1;;;;;;;;;;;3721:14:47;8545:2:131;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:131;2064:92:64;;;9614:21:131;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:131;;;9754:54;9825:19;;2064:92:64;9430:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;10023:51:131;;;10090:18;;;10083:50;4599:42:106::1;::::0;9996:18:131;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;491:50:107:-;4882:13:47;;536:1:107;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;;;4982:22;5014:20;-1:-1:-1;;5055:21:47;;;;5091:20;;8557:36:131;;;-1:-1:-1;;;;;;;;;;;5091:20:47;8545:2:131;8530:18;5091:20:47;;;;;;;;491:50:107;:::o;1858:136:106:-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;525:604:103:-:0;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;10763:51:131;;;10830:18;;10823:34;;;4384:43:106::1;::::0;10736:18:131;4384:43:106::1;10589:274:131::0;547:860:107;752:5;:7;;689:31;;;752:7;;;:::i;:::-;;;;-1:-1:-1;736:13:107;;;:23;803:4;769:23;;;:39;878:25;;1009:16;;1027:23;;-1:-1:-1;;;;;;;878:25:107;;;;-1:-1:-1;;;958:41:107;736:6;;1009:16;;;;1027:23;1052:7;:5;:7::i;:::-;918:155;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;918:155:107;;;;;;;;;;;;;;-1:-1:-1;;;;;918:155:107;-1:-1:-1;;;;;;918:155:107;;;;;;;;;;840:243;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1242:43:107;;1094:39;1242:43;;;:15;:43;;;;;;;1294:4;1242:49;;;:56;;-1:-1:-1;;1242:56:107;;;;;;1313:44;819:264;;-1:-1:-1;819:264:107;;1313:44;;;;819:264;;1313:44;:::i;:::-;;;;;;;;1382:17;547:860;-1:-1:-1;;;547:860:107:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13927:2:131;5366:69:47;;;13909:21:131;13966:2;13946:18;;;13939:30;14005:34;13985:18;;;13978:62;-1:-1:-1;;;14056:18:131;;;14049:41;14107:19;;5366:69:47;13725:407:131;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14339:2:131;2415:73:45::1;::::0;::::1;14321:21:131::0;14378:2;14358:18;;;14351:30;14417:34;14397:18;;;14390:62;-1:-1:-1;;;14468:18:131;;;14461:36;14514:19;;2415:73:45::1;14137:402:131::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14746:2:131;1675:68:45;;;14728:21:131;;;14765:18;;;14758:30;14824:34;14804:18;;;14797:62;14876:18;;1675:68:45;14544:356:131;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;15135:15:131;;;1252:35:103;;;15117:34:131;15187:15;;15167:18;;;15160:43;15052:18;;1252:35:103;14905:304:131;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15605:2:131;3262:56:60;;;15587:21:131;15644:2;15624:18;;;15617:30;15683:34;15663:18;;;15656:62;-1:-1:-1;;;15734:18:131;;;15727:44;15788:19;;3262:56:60;15403:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;16020:2:131;3140:82:60;;;16002:21:131;16059:2;16039:18;;;16032:30;16098:34;16078:18;;;16071:62;-1:-1:-1;;;16149:18:131;;;16142:39;16198:19;;3140:82:60;15818:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16430:2:131;1479:95:60;;;16412:21:131;16469:2;16449:18;;;16442:30;16508:34;16488:18;;;16481:62;-1:-1:-1;;;16559:18:131;;;16552:43;16612:19;;1479:95:60;16228:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;17136:2:131;8113:60:76;;;17118:21:131;17175:2;17155:18;;;17148:30;17214:31;17194:18;;;17187:59;17263:18;;8113:60:76;16934:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:131:-;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:131;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:131;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:131;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:131;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:131;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:131;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:131;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:131;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:131;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:131;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:131;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:131;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:131;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:131:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:131;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:131;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:131;5298:1643;-1:-1:-1;;;;;5298:1643:131:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:131;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:131;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:131:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;7990:410::-;8192:2;8174:21;;;8231:2;8211:18;;;8204:30;8270:34;8265:2;8250:18;;8243:62;-1:-1:-1;;;8336:2:131;8321:18;;8314:44;8390:3;8375:19;;7990:410::o;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:131;8864:18;;8857:62;-1:-1:-1;;;8950:2:131;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:131;9277:18;;9270:62;-1:-1:-1;;;9363:2:131;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10333:251::-;10403:6;10456:2;10444:9;10435:7;10431:23;10427:32;10424:52;;;10472:1;10469;10462:12;10424:52;10504:9;10498:16;10523:31;10548:5;10523:31;:::i;10868:232::-;10907:3;10928:17;;;10925:140;;10987:10;10982:3;10978:20;10975:1;10968:31;11022:4;11019:1;11012:15;11050:4;11047:1;11040:15;10925:140;-1:-1:-1;11092:1:131;11081:13;;10868:232::o;11105:252::-;11192:5;11186:12;11181:3;11174:25;11156:3;11245:4;11238:5;11234:16;11228:23;11283:4;11276;11271:3;11267:14;11260:28;11304:47;11345:4;11340:3;11336:14;11322:12;11304:47;:::i;11362:2038::-;11687:3;11676:9;11669:22;11700:54;11749:3;11738:9;11734:19;11725:6;11719:13;11700:54;:::i;:::-;11650:4;11801;11793:6;11789:17;11783:24;11816:53;11864:3;11853:9;11849:19;11835:12;11816:53;:::i;:::-;;11924:4;11916:6;11912:17;11906:24;11900:3;11889:9;11885:19;11878:53;11986:4;11978:6;11974:17;11968:24;11962:3;11951:9;11947:19;11940:53;12030:3;12022:6;12018:16;12012:23;12054:3;12093:2;12088;12077:9;12073:18;12066:30;12145:3;12137:6;12133:16;12127:23;12105:45;;12169:3;12181:54;12231:2;12220:9;12216:18;12200:14;12181:54;:::i;:::-;12284:3;12276:6;12272:16;12266:23;12244:45;;12308:3;12320:54;12370:2;12359:9;12355:18;12339:14;12320:54;:::i;:::-;12423:3;12415:6;12411:16;12405:23;12383:45;;12447:6;12472:3;12511:2;12506;12495:9;12491:18;12484:30;12537:63;12595:3;12584:9;12580:19;12564:14;12537:63;:::i;:::-;12637:15;;;12631:22;12523:77;;-1:-1:-1;12662:54:131;12697:18;;;12631:22;12662:54;:::i;:::-;12765:2;12757:6;12753:15;12747:22;12725:44;;12792:3;12788:8;12778:18;;12861:2;12849:9;12841:6;12837:22;12833:31;12827:3;12816:9;12812:19;12805:60;12888:41;12922:6;12906:14;12888:41;:::i;:::-;12874:55;;12978:2;12970:6;12966:15;12960:22;12938:44;;12991:52;13038:3;13027:9;13023:19;13007:14;7016:13;7009:21;6997:34;;6946:91;12991:52;13092:2;13084:6;13080:15;13074:22;13052:44;;;;;13161:2;13149:9;13141:6;13137:22;13133:31;13127:3;13116:9;13112:19;13105:60;;13182:41;13216:6;13200:14;13182:41;:::i;:::-;13174:49;;;;13232:48;13274:4;13263:9;13259:20;13251:6;13232:48;:::i;:::-;13289;13331:4;13320:9;13316:20;13308:6;13289:48;:::i;:::-;13346;13388:4;13377:9;13373:20;13365:6;13346:48;:::i;:::-;11362:2038;;;;;;;:::o;13405:315::-;-1:-1:-1;;;;;13580:32:131;;13562:51;;13649:2;13644;13629:18;;13622:30;;;-1:-1:-1;;13669:45:131;;13695:18;;13687:6;13669:45;:::i;15214:184::-;15284:6;15337:2;15325:9;15316:7;15312:23;15308:32;15305:52;;;15353:1;15350;15343:12;15305:52;-1:-1:-1;15376:16:131;;15214:184;-1:-1:-1;15214:184:131:o;16642:287::-;16771:3;16809:6;16803:13;16825:66;16884:6;16879:3;16872:4;16864:6;16860:17;16825:66;:::i;:::-;16907:16;;;;;16642:287;-1:-1:-1;;16642:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1774,"length":32},{"start":1841,"length":32},{"start":1986,"length":32},{"start":2053,"length":32},{"start":2186,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2()":"5cd8a76b","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":\"RegistryFactoryV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":{\"keccak256\":\"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383\",\"dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":"RegistryFactoryV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":{"keccak256":"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c","urls":["bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383","dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol","id":72884,"exportedSymbols":{"ERC1967Proxy":[55021],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403],"RegistryFactoryV0_0":[72778],"RegistryFactoryV0_1":[72883]},"nodeType":"SourceUnit","src":"42:1368:107","nodes":[{"id":72780,"nodeType":"PragmaDirective","src":"42:24:107","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72783,"nodeType":"ImportDirective","src":"68:93:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"../RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72779,"symbolAliases":[{"foreign":{"id":72781,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72778,"src":"76:19:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72782,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"97:12:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72786,"nodeType":"ImportDirective","src":"162:134:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72784,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"175:37:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72785,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"218:21:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72788,"nodeType":"ImportDirective","src":"297:85:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":72787,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"305:21:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72883,"nodeType":"ContractDefinition","src":"433:976:107","nodes":[{"id":72798,"nodeType":"FunctionDefinition","src":"491:50:107","nodes":[],"body":{"id":72797,"nodeType":"Block","src":"539:2:107","nodes":[],"statements":[]},"functionSelector":"5cd8a76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":72794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"536:1:107","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":72795,"kind":"modifierInvocation","modifierName":{"id":72793,"name":"reinitializer","nameLocations":["522:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"522:13:107"},"nodeType":"ModifierInvocation","src":"522:16:107"}],"name":"initializeV2","nameLocation":"500:12:107","parameters":{"id":72792,"nodeType":"ParameterList","parameters":[],"src":"512:2:107"},"returnParameters":{"id":72796,"nodeType":"ParameterList","parameters":[],"src":"539:0:107"},"scope":72883,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":72882,"nodeType":"FunctionDefinition","src":"547:860:107","nodes":[],"body":{"id":72881,"nodeType":"Block","src":"726:681:107","nodes":[],"statements":[{"expression":{"id":72812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72807,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"736:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"743:6:107","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"736:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"752:7:107","subExpression":{"id":72810,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"752:5:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"736:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72813,"nodeType":"ExpressionStatement","src":"736:23:107"},{"expression":{"id":72821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72814,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"769:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72816,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"776:16:107","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"769:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72819,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"803:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$72883","typeString":"contract RegistryFactoryV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$72883","typeString":"contract RegistryFactoryV0_1"}],"id":72818,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"795:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72817,"name":"address","nodeType":"ElementaryTypeName","src":"795:7:107","typeDescriptions":{}}},"id":72820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"795:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"769:39:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72822,"nodeType":"ExpressionStatement","src":"769:39:107"},{"assignments":[72825],"declarations":[{"constant":false,"id":72825,"mutability":"mutable","name":"proxy","nameLocation":"832:5:107","nodeType":"VariableDeclaration","scope":72881,"src":"819:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":72824,"nodeType":"UserDefinedTypeName","pathNode":{"id":72823,"name":"ERC1967Proxy","nameLocations":["819:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"819:12:107"},"referencedDeclaration":55021,"src":"819:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":72845,"initialValue":{"arguments":[{"arguments":[{"id":72831,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"878:25:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"870:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72829,"name":"address","nodeType":"ElementaryTypeName","src":"870:7:107","typeDescriptions":{}}},"id":72832,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"870:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72835,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"958:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72836,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"980:10:107","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"958:32:107","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":72837,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"991:8:107","memberName":"selector","nodeType":"MemberAccess","src":"958:41:107","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":72838,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"1001:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":72839,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"1009:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72840,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"1027:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72841,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"1052:5:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1052:7:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72833,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"918:3:107","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72834,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"922:18:107","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"918:22:107","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72843,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"918:155:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"840:16:107","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72827,"nodeType":"UserDefinedTypeName","pathNode":{"id":72826,"name":"ERC1967Proxy","nameLocations":["844:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"844:12:107"},"referencedDeclaration":55021,"src":"844:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72844,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"840:243:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"819:264:107"},{"assignments":[72848],"declarations":[{"constant":false,"id":72848,"mutability":"mutable","name":"registryCommunity","nameLocation":"1116:17:107","nodeType":"VariableDeclaration","scope":72881,"src":"1094:39:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":72847,"nodeType":"UserDefinedTypeName","pathNode":{"id":72846,"name":"RegistryCommunityV0_1","nameLocations":["1094:21:107"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"1094:21:107"},"referencedDeclaration":72403,"src":"1094:21:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"id":72858,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72854,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72825,"src":"1174:5:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72853,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72852,"name":"address","nodeType":"ElementaryTypeName","src":"1166:7:107","typeDescriptions":{}}},"id":72855,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1166:14:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72851,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1158:8:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":72850,"name":"address","nodeType":"ElementaryTypeName","src":"1158:8:107","stateMutability":"payable","typeDescriptions":{}}},"id":72856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1158:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72849,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"1136:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":72857,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:46:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"nodeType":"VariableDeclarationStatement","src":"1094:88:107"},{"expression":{"id":72867,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72859,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"1242:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72864,"indexExpression":{"arguments":[{"id":72862,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1266:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72861,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1258:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72860,"name":"address","nodeType":"ElementaryTypeName","src":"1258:7:107","typeDescriptions":{}}},"id":72863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1258:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1242:43:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72865,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1286:5:107","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"1242:49:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72866,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1294:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"1242:56:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72868,"nodeType":"ExpressionStatement","src":"1242:56:107"},{"eventCall":{"arguments":[{"arguments":[{"id":72872,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1338:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1330:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72870,"name":"address","nodeType":"ElementaryTypeName","src":"1330:7:107","typeDescriptions":{}}},"id":72873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1330:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72869,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"1313:16:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1313:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72875,"nodeType":"EmitStatement","src":"1308:49:107"},{"expression":{"arguments":[{"id":72878,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1382:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72877,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1374:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72876,"name":"address","nodeType":"ElementaryTypeName","src":"1374:7:107","typeDescriptions":{}}},"id":72879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1374:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72806,"id":72880,"nodeType":"Return","src":"1367:33:107"}]},"baseFunctions":[72656],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"556:14:107","overrides":{"id":72803,"nodeType":"OverrideSpecifier","overrides":[],"src":"663:8:107"},"parameters":{"id":72802,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72801,"mutability":"mutable","name":"params","nameLocation":"616:6:107","nodeType":"VariableDeclaration","scope":72882,"src":"571:51:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":72800,"nodeType":"UserDefinedTypeName","pathNode":{"id":72799,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["571:37:107"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"571:37:107"},"referencedDeclaration":70264,"src":"571:37:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"570:53:107"},"returnParameters":{"id":72806,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72805,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"697:23:107","nodeType":"VariableDeclaration","scope":72882,"src":"689:31:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72804,"name":"address","nodeType":"ElementaryTypeName","src":"689:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"688:33:107"},"scope":72883,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":72790,"name":"RegistryFactoryV0_0","nameLocations":["465:19:107"],"nodeType":"IdentifierPath","referencedDeclaration":72778,"src":"465:19:107"},"id":72791,"nodeType":"InheritanceSpecifier","src":"465:19:107"}],"canonicalName":"RegistryFactoryV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72789,"nodeType":"StructuredDocumentation","src":"384:49:107","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72883,72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_1","nameLocation":"442:19:107","scope":72884,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":107} \ No newline at end of file diff --git a/pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol b/pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol index 883319cd..8766a2c5 100644 --- a/pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol +++ b/pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol @@ -118,7 +118,10 @@ contract RegistryCommunityV0_0 is ProxyOwnableUpgrader, ReentrancyGuardUpgradeab using SafeERC20 for IERC20; using Clone for address; - string public constant VERSION = "0.0"; + // string public constant VERSION = "0.0"; + function VERSION() public pure virtual returns (string memory) { + return "0.0"; + } /// @notice The native address to represent native token eg: ETH in mainnet address public constant NATIVE = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; /// @notice The precision scale used in the contract to avoid loss of precision diff --git a/pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol b/pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol index caedaa4e..d5dc84da 100644 --- a/pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol +++ b/pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol @@ -16,7 +16,7 @@ struct CommunityInfo { /// @custom:oz-upgrades-from RegistryFactoryV0_0 contract RegistryFactoryV0_0 is ProxyOwnableUpgrader { - string public constant VERSION = "0.0"; + // string public constant VERSION = "0.0"; uint256 public nonce; mapping(address => CommunityInfo) communityToInfo; @@ -134,5 +134,9 @@ contract RegistryFactoryV0_0 is ProxyOwnableUpgrader { return communityToInfo[_community].fee; } + + function VERSION() public pure virtual returns (string memory) { + return "0.0"; + } uint256[50] private __gap; } diff --git a/pkg/contracts/src/diamonds/BaseDiamond.sol b/pkg/contracts/src/diamonds/BaseDiamond.sol index 0a00d8de..c48b3be9 100644 --- a/pkg/contracts/src/diamonds/BaseDiamond.sol +++ b/pkg/contracts/src/diamonds/BaseDiamond.sol @@ -2,11 +2,9 @@ pragma solidity ^0.8.19; -import {LibDiamond} from "./libraries/LibDiamond.sol"; -import {IDiamondCut} from "./interfaces/IDiamondCut.sol"; -import {IDiamondLoupe} from "./interfaces/IDiamondLoupe.sol"; -import {IERC173} from "./interfaces/IERC173.sol"; -//import { IERC165} from "./interfaces/IERC165.sol"; +import {BaseDiamond} from "@src/diamonds/BaseDiamond.sol"; +import {LibDiamond} from "@src/diamonds/libraries/LibDiamond.sol"; +import {IDiamondCut} from "@src/diamonds/interfaces/IDiamondCut.sol"; import {IERC1822Proxiable} from "@openzeppelin/contracts/interfaces/draft-IERC1822.sol"; // When no function exists for function called @@ -29,7 +27,7 @@ contract BaseDiamond is IERC1822Proxiable, IDiamondCut { constructor() payable { } - function initialize(address _owner) external { + function initializeOwner(address _owner) external { if (LibDiamond.isInitialized()) { revert DiamondAlreadyInitialized(); } diff --git a/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol b/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol index 1ca5a2e2..a629456b 100644 --- a/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol +++ b/pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol @@ -1,25 +1,26 @@ // SPDX-License-Identifier: AGPL-3.0-only pragma solidity ^0.8.19; -import {BaseDiamond} from "./BaseDiamond.sol"; -import {LibDiamond} from "./libraries/LibDiamond.sol"; +import {BaseDiamond} from "@src/diamonds/BaseDiamond.sol"; +import {LibDiamond} from "@src/diamonds/libraries/LibDiamond.sol"; + struct CommunityInfo { uint256 fee; bool valid; } -contract RegistryFactoryDiamond is BaseDiamond { + contract RegistryFactoryDiamond is BaseDiamond { /*|--------------------------------------------|*/ /*| CONSTANTS & IMMUTABLE |*/ /*|--------------------------------------------|*/ - string public constant VERSION = "0.0"; + // string public constant VERSION = "0.0"; /*|--------------------------------------------|*/ /*| STORAGE |*/ /*|--------------------------------------------|*/ - uint8 private _initialized; + uint8 private _initialized; bool private _initializing; uint256[50] private __gap1; - address public _owner; + address public _owner; uint256[49] private __gap2; uint256 public nonce; diff --git a/pkg/contracts/src/diamonds/StorageCommunityDiamond.sol b/pkg/contracts/src/diamonds/StorageCommunityDiamond.sol new file mode 100644 index 00000000..869bc25e --- /dev/null +++ b/pkg/contracts/src/diamonds/StorageCommunityDiamond.sol @@ -0,0 +1,103 @@ +// SPDX-License-Identifier: AGPL-3.0-only +pragma solidity ^0.8.19; + +import {BaseDiamond} from "@src/diamonds/BaseDiamond.sol"; +import {LibDiamond} from "@src/diamonds/libraries/LibDiamond.sol"; + +import {IRegistry} from "allo-v2-contracts/core/interfaces/IRegistry.sol"; +import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; +import {ISafe} from "@src/interfaces/ISafe.sol"; +import {FAllo} from "@src/interfaces/FAllo.sol"; +import {Metadata} from "allo-v2-contracts/core/libraries/Metadata.sol"; + +/*|--------------------------------------------|*/ +/*| STRUCTS/ENUMS |*/ +/*|--------------------------------------------|*/ + +/// @dev Initialize parameters for the contract +/// @param _allo The Allo contract address +/// @param _gardenToken The token used to stake in the community +/// @param _registerStakeAmount The amount of tokens required to register a member +/// @param _communityFee The fee charged to the community for each registration +/// @param _nonce The nonce used to create new strategy clones +/// @param _registryFactory The address of the registry factory +/// @param _feeReceiver The address that receives the community fee +/// @param _metadata The covenant IPFS hash of the community +/// @param _councilSafe The council safe contract address +/// @param _communityName The community name +/// @param _isKickEnabled Enable or disable the kick feature +struct RegistryCommunityInitializeParamsV0_0 { + address _allo; + IERC20 _gardenToken; + uint256 _registerStakeAmount; + uint256 _communityFee; + uint256 _nonce; + address _registryFactory; + address _feeReceiver; + Metadata _metadata; + address payable _councilSafe; + string _communityName; + bool _isKickEnabled; + string covenantIpfsHash; +} + +struct Member { + address member; + uint256 stakedAmount; + bool isRegistered; +} + +struct Strategies { + address[] strategies; +} +struct RoleData { + mapping(address => bool) members; + bytes32 adminRole; +} +abstract contract StorageCommunityDiamond is BaseDiamond { + /*|--------------------------------------------|*/ + /*| CONSTANTS & IMMUTABLE |*/ + /*|--------------------------------------------|*/ + + /*|--------------------------------------------|*/ + /*| STORAGE |*/ + /*|--------------------------------------------|*/ + + uint8 private _initialized; // || SLOT 0 + bool private _initializing; // || SLOT 0 + uint256[50] private __gap1; // || SLOT 1 + address public _owner; // || SLOT 51 + uint256[49] private __gap2; // || SLOT 52 + uint256 private _status; // || SLOT 101 + uint256[49] private __gap3; // || SLOT 102 + uint256[50] private __gap4; // || SLOT 151 + mapping(bytes32 => RoleData) private _roles; // || SLOT 201 + uint256[49] private __gap5; // || SLOT 202 + + uint256 public registerStakeAmount; // || SLOT 251 + uint256 public communityFee; // || SLOT 252 + uint256 public cloneNonce; // || SLOT 253 + bytes32 public profileId; // || SLOT 254 + bool public isKickEnabled; // || SLOT 255 + address public feeReceiver; // || SLOT 255 + address public registryFactory; // || SLOT 256 + address public collateralVaultTemplate; // || SLOT 257 + address public strategyTemplate; // || SLOT 258 + address payable public pendingCouncilSafe; // || SLOT 259 + IRegistry public registry; // || SLOT 260 + IERC20 public gardenToken; // || SLOT 261 + ISafe public councilSafe; // || SLOT 262 + FAllo public allo; // || SLOT 263 + string public communityName; // || SLOT 264 + string public covenantIpfsHash; // || SLOT 265 + mapping(address => bool) public enabledStrategies; // || SLOT 266 + mapping(address => mapping(address => uint256)) public memberPowerInStrategy; // || SLOT 267 + mapping(address => Member) public addressToMemberInfo; // || SLOT 268 + mapping(address => address[]) public strategiesByMember; // || SLOT 269 + mapping(address => mapping(address => bool)) public memberActivatedInStrategies; // || SLOT 270 + address[] public initialMembers; // || SLOT 271 + uint256[50] private __gap6; // || SLOT 272 + /*|--------------------------------------------|*/ + /*| STORAGE |*/ + /*|--------------------------------------------|*/ +} diff --git a/pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol b/pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol new file mode 100644 index 00000000..9c20283a --- /dev/null +++ b/pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol @@ -0,0 +1,45 @@ +// SPDX-License-Identifier: AGPL-3.0-only +pragma solidity ^0.8.19; + +import {LibDiamond} from "@src/diamonds/libraries/LibDiamond.sol"; + +import {RegistryCommunityV0_1 } from "@src/RegistryCommunity/RegistryCommunityV0_1.sol"; +import {ProxyOwnableUpgrader} from "@src/ProxyOwnableUpgrader.sol"; +import {ERC1967Proxy} from "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol"; +import {Clone} from "allo-v2-contracts/core/libraries/Clone.sol"; + + +contract RegistryCommunityFacet is RegistryCommunityV0_1 { + + // AUDIT: acknowledged upgradeable contract hat does not protect initialize functions, + // slither-disable-next-line unprotected-upgrade + function initializeV2( + address _owner, + address _strategyTemplate, + address _collateralVaultTemplate + ) public reinitializer(2) onlyOwner { + _revertZeroAddress(_owner); + _revertZeroAddress(_strategyTemplate); + _revertZeroAddress(_collateralVaultTemplate); + + transferOwnership(_owner); + + strategyTemplate = _strategyTemplate; + collateralVaultTemplate = _collateralVaultTemplate; + //TODO emit event reinitialized + } + + + function VERSION() public pure override returns (string memory) { + return "0.1"; + } + + // This implements ERC-165. + function supportsInterface(bytes4 _interfaceId) public view override virtual returns (bool) { + LibDiamond.DiamondStorage storage ds = LibDiamond.diamondStorage(); + return ds.supportedInterfaces[_interfaceId]; + } + + + uint256[50] private __gap; +} diff --git a/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol b/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol index 23b2861f..87bd610b 100644 --- a/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol +++ b/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol @@ -9,152 +9,82 @@ import {RegistryCommunityV0_1 } from "@src/RegistryCommunity/RegistryCommunityV0 import {ProxyOwnableUpgrader} from "@src/ProxyOwnableUpgrader.sol"; import {ERC1967Proxy} from "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol"; import {Clone} from "allo-v2-contracts/core/libraries/Clone.sol"; +import {RegistryFactoryV0_0} from "@src/RegistryFactory/RegistryFactoryV0_0.sol"; +import {IDiamond} from "@src/diamonds/interfaces/IDiamond.sol"; +import {IDiamondCut} from "@src/diamonds/interfaces/IDiamondCut.sol"; +import {DiamondCutFacet} from "@src/diamonds/facets/DiamondCutFacet.sol"; +import {DiamondLoupeFacet} from "@src/diamonds/facets/DiamondLoupeFacet.sol"; + +import {BaseDiamond} from "@src/diamonds/BaseDiamond.sol"; + struct CommunityInfo { uint256 fee; bool valid; } -/// @custom:oz-upgrades-from RegistryFactory - -contract RegistryFactoryFacet is ProxyOwnableUpgrader { - uint256 public nonce; - - mapping(address => CommunityInfo) communityToInfo; - address public gardensFeeReceiver; - address public registryCommunityTemplate; - address public strategyTemplate; - address public collateralVaultTemplate; - - /*|--------------------------------------------|*/ - /*| EVENTS |*/ - /*|--------------------------------------------|*/ - event FeeReceiverSet(address _newFeeReceiver); - event ProtocolFeeSet(address _community, uint256 _newProtocolFee); - event CommunityCreated(address _registryCommunity); - event CommunityValiditySet(address _community, bool _isValid); +contract RegistryFactoryFacet is RegistryFactoryV0_0 { - /*|--------------------------------------------|*/ - /*| ERRORS |*/ - /*|--------------------------------------------|*/ - error CommunityInvalid(address _community); - error AddressCannotBeZero(); - - /*|--------------------------------------------|*/ - /*| MODIFIERS |*/ - /*|--------------------------------------------|*/ - - function _revertZeroAddress(address _address) internal pure virtual { - if (_address == address(0)) revert AddressCannotBeZero(); - } - /// @param template: address of the template contract for creating new registries - /// @dev Set the address of the template contract for creating new registries - - function setRegistryCommunityTemplate(address template) external onlyOwner { - registryCommunityTemplate = template; - } + IDiamondCut.FacetCut[] public cutsCommunity; - /// @param template: address of the template contract for creating new strategies - /// @dev Set the address of the template contract for creating new strategies - function setStrategyTemplate(address template) external onlyOwner { - strategyTemplate = template; - } - - /// @param template: address of the template contract for creating new collateral vaults - /// @dev Set the address of the template contract for creating new collateral vaults - function setCollateralVaultTemplate(address template) external onlyOwner { - collateralVaultTemplate = template; - } - - /// @param _owner: address of the owner of the registry - /// @param _gardensFeeReceiver: address of the receiver of the fees - /// @param _registryCommunityTemplate: address of the template contract for creating new registries - /// @param _strategyTemplate: address of the template contract for creating new strategies - /// @param _collateralVaultTemplate: address of the template contract for creating new collateral vaults - // slither-disable-next-line unprotected-upgrade - function initialize( + function initializeV2( address _owner, - address _gardensFeeReceiver, address _registryCommunityTemplate, + IDiamond.FacetCut[] calldata _cuts, address _strategyTemplate, address _collateralVaultTemplate - ) public virtual initializer { - super.initialize(_owner); - nonce = 0; - _revertZeroAddress(_gardensFeeReceiver); + ) public onlyOwner reinitializer(2) { + transferOwnership(_owner); _revertZeroAddress(_registryCommunityTemplate); _revertZeroAddress(_collateralVaultTemplate); - gardensFeeReceiver = _gardensFeeReceiver; registryCommunityTemplate = _registryCommunityTemplate; strategyTemplate = _strategyTemplate; collateralVaultTemplate = _collateralVaultTemplate; - emit FeeReceiverSet(_gardensFeeReceiver); - // setReceiverAddress(_gardensFeeReceiver); //onlyOwner - } - - function initializeV2(address _owner) public reinitializer(2) { - transferOwnership(_owner); - } + for (uint i = 0; i < _cuts.length; i++) { + cutsCommunity.push(IDiamond.FacetCut({ + facetAddress: _cuts[i].facetAddress, + action: _cuts[i].action, + functionSelectors: _cuts[i].functionSelectors + })); + } - function initializeV3(address _owner) public reinitializer(3) { - transferOwnership(_owner); } function createRegistry(RegistryCommunityInitializeParamsV0_0 memory params) public + override virtual returns (address _createdRegistryAddress) { params._nonce = nonce++; params._registryFactory = address(this); + ERC1967Proxy proxy = new ERC1967Proxy( address(registryCommunityTemplate), - abi.encodeWithSelector( - RegistryCommunityV0_0.initialize.selector, params, strategyTemplate, collateralVaultTemplate, owner() - ) + abi.encodeWithSelector(BaseDiamond.initializeOwner.selector, owner()) ); - RegistryCommunityV0_0 registryCommunity = RegistryCommunityV0_0(payable(address(proxy))); + IDiamondCut(address(proxy)).diamondCut(cutsCommunity, address(0), ""); // @TODO put init address for add supportInterfaces with DiamondInit.sol - // registryCommunity.initialize(params); - communityToInfo[address(registryCommunity)].valid = true; - emit CommunityCreated(address(registryCommunity)); - return address(registryCommunity); - } - function setReceiverAddress(address _newFeeReceiver) public virtual onlyOwner { - _revertZeroAddress(_newFeeReceiver); - gardensFeeReceiver = _newFeeReceiver; - emit FeeReceiverSet(_newFeeReceiver); - } + RegistryCommunityV0_0 registryCommunity = RegistryCommunityV0_0(payable(address(proxy))); - function getGardensFeeReceiver() external view virtual returns (address) { - return gardensFeeReceiver; - } + registryCommunity.initialize(params, strategyTemplate, collateralVaultTemplate, owner()); - function setProtocolFee(address _community, uint256 _newProtocolFee) public virtual onlyOwner { - communityToInfo[_community].fee = _newProtocolFee; - emit ProtocolFeeSet(_community, _newProtocolFee); - } + - function setCommunityValidity(address _community, bool _isValid) public virtual onlyOwner { - communityToInfo[_community].valid = _isValid; - emit CommunityValiditySet(_community, _isValid); + communityToInfo[address(registryCommunity)].valid = true; + emit CommunityCreated(address(registryCommunity)); + return address(registryCommunity); } - function getCommunityValidity(address _community) external view virtual returns (bool) { - return communityToInfo[_community].valid; + + function VERSION() public pure override returns (string memory) { + return "0.1"; } - function getProtocolFee(address _community) external view virtual returns (uint256) { - if (!communityToInfo[_community].valid) { - revert CommunityInvalid(_community); - } - - return communityToInfo[_community].fee; - } uint256[50] private __gap; } diff --git a/pkg/contracts/test/HelperContract.sol b/pkg/contracts/test/HelperContract.sol new file mode 100644 index 00000000..45cf0056 --- /dev/null +++ b/pkg/contracts/test/HelperContract.sol @@ -0,0 +1,138 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.0; + +/** + * \ + * Authors: Timo Neumann + * EIP-2535 Diamonds: https://eips.ethereum.org/EIPS/eip-2535 + * Helper functions for the translation from the jest tests in the original repo + * to solidity tests. + * /***************************************************************************** + */ +// import "github.com/Arachnid/solidity-stringutils/strings.sol"; +import "./shared/strings.sol"; +import "@src/diamonds/interfaces/IDiamond.sol"; +import "@src/diamonds/interfaces/IDiamondLoupe.sol"; +import {Test} from "forge-std/Test.sol"; + +abstract contract HelperContract is IDiamond, IDiamondLoupe, Test { + using strings for *; + + // return array of function selectors for given facet name + function generateSelectors(string memory _facetName) internal returns (bytes4[] memory selectors) { + //get string of contract methods + string[] memory cmd = new string[](4); + cmd[0] = "forge"; + cmd[1] = "inspect"; + cmd[2] = _facetName; + cmd[3] = "methods"; + bytes memory res = vm.ffi(cmd); + string memory st = string(res); + + // extract function signatures and take first 4 bytes of keccak + strings.slice memory s = st.toSlice(); + + // Skip TRACE lines if any + strings.slice memory nl = "\n".toSlice(); + strings.slice memory trace = "TRACE".toSlice(); + while (s.contains(trace)) { + s.split(nl); + } + + strings.slice memory colon = ":".toSlice(); + strings.slice memory comma = ",".toSlice(); + strings.slice memory dbquote = '"'.toSlice(); + selectors = new bytes4[]((s.count(colon))); + + for (uint256 i = 0; i < selectors.length; i++) { + s.split(dbquote); // advance to next doublequote + // split at colon, extract string up to next doublequote for methodname + strings.slice memory method = s.split(colon).until(dbquote); + selectors[i] = bytes4(method.keccak()); + strings.slice memory selectr = s.split(comma).until(dbquote); // advance s to the next comma + } + return selectors; + } + + // helper to remove index from bytes4[] array + function removeElement(uint256 index, bytes4[] memory array) public pure returns (bytes4[] memory) { + bytes4[] memory newarray = new bytes4[](array.length - 1); + uint256 j = 0; + for (uint256 i = 0; i < array.length; i++) { + if (i != index) { + newarray[j] = array[i]; + j += 1; + } + } + return newarray; + } + + // helper to remove value from bytes4[] array + function removeElement(bytes4 el, bytes4[] memory array) public pure returns (bytes4[] memory) { + for (uint256 i = 0; i < array.length; i++) { + if (array[i] == el) { + return removeElement(i, array); + } + } + return array; + } + + function containsElement(bytes4[] memory array, bytes4 el) public pure returns (bool) { + for (uint256 i = 0; i < array.length; i++) { + if (array[i] == el) { + return true; + } + } + + return false; + } + + function containsElement(address[] memory array, address el) public pure returns (bool) { + for (uint256 i = 0; i < array.length; i++) { + if (array[i] == el) { + return true; + } + } + + return false; + } + + function sameMembers(bytes4[] memory array1, bytes4[] memory array2) public pure returns (bool) { + if (array1.length != array2.length) { + return false; + } + for (uint256 i = 0; i < array1.length; i++) { + if (containsElement(array1, array2[i])) { + return true; + } + } + + return false; + } + + function getAllSelectors(address diamondAddress) public view returns (bytes4[] memory) { + Facet[] memory facetList = IDiamondLoupe(diamondAddress).facets(); + + uint256 len = 0; + for (uint256 i = 0; i < facetList.length; i++) { + len += facetList[i].functionSelectors.length; + } + + uint256 pos = 0; + bytes4[] memory selectors = new bytes4[](len); + for (uint256 i = 0; i < facetList.length; i++) { + for (uint256 j = 0; j < facetList[i].functionSelectors.length; j++) { + selectors[pos] = facetList[i].functionSelectors[j]; + pos += 1; + } + } + return selectors; + } + + // implement dummy override functions + function diamondCut(FacetCut[] calldata _diamondCut, address _init, bytes calldata _calldata) external {} + function facetAddress(bytes4 _functionSelector) external view returns (address facetAddress_) {} + function facetAddresses() external view returns (address[] memory facetAddresses_) {} + function facetFunctionSelectors(address _facet) external view returns (bytes4[] memory facetFunctionSelectors_) {} + function facets() external view returns (Facet[] memory facets_) {} +} diff --git a/pkg/contracts/test/RegistryTest.t.sol b/pkg/contracts/test/RegistryTest.t.sol index 6a6aff28..22927ba5 100644 --- a/pkg/contracts/test/RegistryTest.t.sol +++ b/pkg/contracts/test/RegistryTest.t.sol @@ -58,9 +58,12 @@ import {IDiamondCut} from "@src/diamonds/interfaces/IDiamondCut.sol"; import {DiamondCutFacet} from "@src/diamonds/facets/DiamondCutFacet.sol"; import {DiamondLoupeFacet} from "@src/diamonds/facets/DiamondLoupeFacet.sol"; import {RegistryFactoryFacet} from "@src/diamonds/facets/RegistryFactoryFacet.sol"; +import {RegistryCommunityFacet} from "@src/diamonds/facets/RegistryCommunityFacet.sol"; + +import {HelperContract} from "./HelperContract.sol"; // @dev Run forge test --mc RegistryTest -vvvvv -contract RegistryTest is Test, AlloSetup, RegistrySetupFull, CVStrategyHelpers, Errors, GasHelpers2, SafeSetup { +contract RegistryTest is Test, AlloSetup, RegistrySetupFull, CVStrategyHelpers, Errors, GasHelpers2, SafeSetup, HelperContract { CVStrategyV0_1 public strategy; uint256 public poolId; IArbitrator safeArbitrator; @@ -194,18 +197,32 @@ contract RegistryTest is Test, AlloSetup, RegistrySetupFull, CVStrategyHelpers, Core.upgradeProxyTo( address(_registryFactory()), address(new RegistryFactoryDiamond()), - abi.encodeWithSelector(BaseDiamond.initialize.selector, gardenOwner) + abi.encodeWithSelector(BaseDiamond.initializeOwner.selector, gardenOwner) ); // RegistryFactoryFacet(address(_registryFactory())).initialize(gardenOwner); IDiamondCut(address(_registryFactory())).diamondCut(createCutsFactory(), address(0), ""); - RegistryFactoryFacet(address(_registryFactory())).initializeV2(gardenOwner); + + BaseDiamond communityDiamond = new BaseDiamond(); + + + (IDiamond.FacetCut[] memory cuts, RegistryCommunityFacet rcfTemplate ) = _createCutsCommunity(); + + + + RegistryFactoryFacet(address(_registryFactory())).initializeV2( + gardenOwner, + address(communityDiamond), + cuts, + address(new BaseDiamond()), + address(new BaseDiamond()) + ); assertEq(address(RegistryFactoryDiamond(payable(address(registryFactory)))._owner()), address(gardenOwner), "owner after upgrade"); assertEq(registryFactory.nonce(), 1, "nonce after upgrade"); - assertEq(registryFactory.VERSION(), "0.0", "VERSION after upgrade"); + assertEq(registryFactory.VERSION(), "0.1", "VERSION after upgrade"); vm.stopPrank(); @@ -219,7 +236,7 @@ contract RegistryTest is Test, AlloSetup, RegistrySetupFull, CVStrategyHelpers, DiamondCutFacet dCutFacet = new DiamondCutFacet();//@todo can be removed DiamondLoupeFacet dLoupe = new DiamondLoupeFacet(); // OwnershipFacet ownerF = new OwnershipFacet(); - RegistryFactoryFacet registryFactoryF = new RegistryFactoryFacet(); + RegistryFactoryFacet registryCommunityF = new RegistryFactoryFacet(); cuts = new IDiamond.FacetCut[](3); @@ -249,42 +266,92 @@ contract RegistryTest is Test, AlloSetup, RegistrySetupFull, CVStrategyHelpers, // cut[1] = (IDiamond.FacetCut({facetAddress: address(ownerF), action: IDiamond.FacetCutAction.Add, functionSelectors: sighashes})); - bytes4[] memory sighashesInit = new bytes4[](25); - sighashesInit[0] = bytes4(0x77122d56); - sighashesInit[1] = bytes4(0xbeb331a3); - sighashesInit[2] = bytes4(0xb8bed901); - sighashesInit[3] = bytes4(0xf5016b5e); - sighashesInit[4] = bytes4(0x987435be); - sighashesInit[5] = bytes4(0x0a992e0c); - sighashesInit[6] = bytes4(0xc4d66de8); - sighashesInit[7] = bytes4(0x1459457a); - sighashesInit[8] = bytes4(0x29b6eca9); - sighashesInit[9] = bytes4(0x3101cfcb); - sighashesInit[10] = bytes4(0xaffed0e0); - sighashesInit[11] = bytes4(0x8da5cb5b); - sighashesInit[12] = bytes4(0x52d1902d); - sighashesInit[13] = bytes4(0x02c1d0b1); - sighashesInit[14] = bytes4(0x715018a6); - sighashesInit[15] = bytes4(0xb0d3713a); - sighashesInit[16] = bytes4(0x5a2c8ace); - sighashesInit[17] = bytes4(0xb5b3ca2c); - sighashesInit[18] = bytes4(0x8279c7db); - sighashesInit[19] = bytes4(0x5decae02); - sighashesInit[20] = bytes4(0x1b71f0e4); - sighashesInit[21] = bytes4(0x5c94e4d2); - sighashesInit[22] = bytes4(0xf2fde38b); - sighashesInit[23] = bytes4(0x3659cfe6); - sighashesInit[24] = bytes4(0x4f1ef286); + // bytes4[] memory sighashesInit = new bytes4[](26); + // sighashesInit[0] = bytes4(0x77122d56); + // sighashesInit[1] = bytes4(0xbeb331a3); + // sighashesInit[2] = bytes4(0xb8bed901); + // sighashesInit[3] = bytes4(0xf5016b5e); + // sighashesInit[4] = bytes4(0x987435be); + // sighashesInit[5] = bytes4(0x0a992e0c); + // sighashesInit[6] = bytes4(0xc4d66de8); + // sighashesInit[7] = bytes4(0x1459457a); + // sighashesInit[8] = bytes4(0xf27ebced); + // sighashesInit[9] = bytes4(0x3101cfcb); + // sighashesInit[10] = bytes4(0xaffed0e0); + // sighashesInit[11] = bytes4(0x8da5cb5b); + // sighashesInit[12] = bytes4(0x52d1902d); + // sighashesInit[13] = bytes4(0x02c1d0b1); + // sighashesInit[14] = bytes4(0x715018a6); + // sighashesInit[15] = bytes4(0xb0d3713a); + // sighashesInit[16] = bytes4(0x5a2c8ace); + // sighashesInit[17] = bytes4(0xb5b3ca2c); + // sighashesInit[18] = bytes4(0x8279c7db); + // sighashesInit[19] = bytes4(0x5decae02); + // sighashesInit[20] = bytes4(0x1b71f0e4); + // sighashesInit[21] = bytes4(0x5c94e4d2); + // sighashesInit[22] = bytes4(0xf2fde38b); + // sighashesInit[23] = bytes4(0x3659cfe6); + // sighashesInit[24] = bytes4(0x4f1ef286); + // sighashesInit[25] = bytes4(0xffa1ad74); + + cuts[2] = ( + IDiamond.FacetCut({ + facetAddress: address(registryCommunityF), + action: IDiamond.FacetCutAction.Add, + functionSelectors: generateSelectors("RegistryFactoryFacet") + + }) + ); + + } + + function _createCutsCommunity() public returns (IDiamond.FacetCut[] memory cuts,RegistryCommunityFacet registryCommunityF) { + DiamondCutFacet dCutFacet = new DiamondCutFacet();//@todo can be removed + DiamondLoupeFacet dLoupe = new DiamondLoupeFacet(); + // OwnershipFacet ownerF = new OwnershipFacet(); + registryCommunityF = new RegistryCommunityFacet(); + + cuts = new IDiamond.FacetCut[](3); + + bytes4[] memory sighashes = new bytes4[](1); + sighashes[0] = bytes4(0x1f931c1c); + + cuts[0] = IDiamond.FacetCut({ + facetAddress: address(dCutFacet), + action: IDiamond.FacetCutAction.Add, + functionSelectors: sighashes + }); + + sighashes = new bytes4[](5); + sighashes[0] = bytes4(0x7a0ed627); + sighashes[1] = bytes4(0xadfca15e); + sighashes[2] = bytes4(0x52ef6b2c); + sighashes[3] = bytes4(0xcdffacc6); + // sighashes[4] = bytes4(0x01ffc9a7); //supportsInterface(byte4) + //build cut struct + // IDiamond.FacetCut[] memory cut = new IDiamond.FacetCut[](2); + + cuts[1] = (IDiamond.FacetCut({facetAddress: address(dLoupe), action: IDiamond.FacetCutAction.Add, functionSelectors: sighashes})); + + // sighashes = new bytes4[](2); + // sighashes[0] = bytes4(0xf2fde38b); + // sighashes[1] = bytes4(0x8da5cb5b); + // cut[1] = (IDiamond.FacetCut({facetAddress: address(ownerF), action: IDiamond.FacetCutAction.Add, functionSelectors: sighashes})); + + // bytes4[] memory sighashesInit = new bytes4[](26); + cuts[2] = ( IDiamond.FacetCut({ - facetAddress: address(registryFactoryF), + facetAddress: address(registryCommunityF), action: IDiamond.FacetCutAction.Add, - functionSelectors: sighashesInit + functionSelectors: generateSelectors("RegistryCommunityFacet") }) ); } + + function _registryCommunity() internal view returns (RegistryCommunityV0_1) { return registryCommunity; } diff --git a/pkg/contracts/test/shared/strings.sol b/pkg/contracts/test/shared/strings.sol new file mode 100644 index 00000000..6ca1e934 --- /dev/null +++ b/pkg/contracts/test/shared/strings.sol @@ -0,0 +1,776 @@ +/* + * @title String & slice utility library for Solidity contracts. + * @author Nick Johnson + * + * @dev Functionality in this library is largely implemented using an + * abstraction called a 'slice'. A slice represents a part of a string - + * anything from the entire string to a single character, or even no + * characters at all (a 0-length slice). Since a slice only has to specify + * an offset and a length, copying and manipulating slices is a lot less + * expensive than copying and manipulating the strings they reference. + * + * To further reduce gas costs, most functions on slice that need to return + * a slice modify the original one instead of allocating a new one; for + * instance, `s.split(".")` will return the text up to the first '.', + * modifying s to only contain the remainder of the string after the '.'. + * In situations where you do not want to modify the original slice, you + * can make a copy first with `.copy()`, for example: + * `s.copy().split(".")`. Try and avoid using this idiom in loops; since + * Solidity has no memory management, it will result in allocating many + * short-lived slices that are later discarded. + * + * Functions that return two slices come in two versions: a non-allocating + * version that takes the second slice as an argument, modifying it in + * place, and an allocating version that allocates and returns the second + * slice; see `nextRune` for example. + * + * Functions that have to copy string data will return strings rather than + * slices; these can be cast back to slices for further processing if + * required. + * + * For convenience, some functions are provided with non-modifying + * variants that create a new slice and return both; for instance, + * `s.splitNew('.')` leaves s unmodified, and returns two values + * corresponding to the left and right parts of the string. + */ + +pragma solidity ^0.8.0; + +library strings { + struct slice { + uint256 _len; + uint256 _ptr; + } + + function memcpy(uint256 dest, uint256 src, uint256 len) private pure { + // Copy word-length chunks while possible + for (; len >= 32; len -= 32) { + assembly { + mstore(dest, mload(src)) + } + dest += 32; + src += 32; + } + + // Copy remaining bytes + uint256 mask = type(uint256).max; + if (len > 0) { + mask = 256 ** (32 - len) - 1; + } + assembly { + let srcpart := and(mload(src), not(mask)) + let destpart := and(mload(dest), mask) + mstore(dest, or(destpart, srcpart)) + } + } + + /* + * @dev Returns a slice containing the entire string. + * @param self The string to make a slice from. + * @return A newly allocated slice containing the entire string. + */ + function toSlice(string memory self) internal pure returns (slice memory) { + uint256 ptr; + assembly { + ptr := add(self, 0x20) + } + return slice(bytes(self).length, ptr); + } + + /* + * @dev Returns the length of a null-terminated bytes32 string. + * @param self The value to find the length of. + * @return The length of the string, from 0 to 32. + */ + function len(bytes32 self) internal pure returns (uint256) { + uint256 ret; + if (self == 0) { + return 0; + } + if (uint256(self) & type(uint128).max == 0) { + ret += 16; + self = bytes32(uint256(self) / 0x100000000000000000000000000000000); + } + if (uint256(self) & type(uint64).max == 0) { + ret += 8; + self = bytes32(uint256(self) / 0x10000000000000000); + } + if (uint256(self) & type(uint32).max == 0) { + ret += 4; + self = bytes32(uint256(self) / 0x100000000); + } + if (uint256(self) & type(uint16).max == 0) { + ret += 2; + self = bytes32(uint256(self) / 0x10000); + } + if (uint256(self) & type(uint8).max == 0) { + ret += 1; + } + return 32 - ret; + } + + /* + * @dev Returns a slice containing the entire bytes32, interpreted as a + * null-terminated utf-8 string. + * @param self The bytes32 value to convert to a slice. + * @return A new slice containing the value of the input argument up to the + * first null. + */ + function toSliceB32(bytes32 self) internal pure returns (slice memory ret) { + // Allocate space for `self` in memory, copy it there, and point ret at it + assembly { + let ptr := mload(0x40) + mstore(0x40, add(ptr, 0x20)) + mstore(ptr, self) + mstore(add(ret, 0x20), ptr) + } + ret._len = len(self); + } + + /* + * @dev Returns a new slice containing the same data as the current slice. + * @param self The slice to copy. + * @return A new slice containing the same data as `self`. + */ + function copy(slice memory self) internal pure returns (slice memory) { + return slice(self._len, self._ptr); + } + + /* + * @dev Copies a slice to a new string. + * @param self The slice to copy. + * @return A newly allocated string containing the slice's text. + */ + function toString(slice memory self) internal pure returns (string memory) { + string memory ret = new string(self._len); + uint256 retptr; + assembly { + retptr := add(ret, 32) + } + + memcpy(retptr, self._ptr, self._len); + return ret; + } + + /* + * @dev Returns the length in runes of the slice. Note that this operation + * takes time proportional to the length of the slice; avoid using it + * in loops, and call `slice.empty()` if you only need to know whether + * the slice is empty or not. + * @param self The slice to operate on. + * @return The length of the slice in runes. + */ + function len(slice memory self) internal pure returns (uint256 l) { + // Starting at ptr-31 means the LSB will be the byte we care about + uint256 ptr = self._ptr - 31; + uint256 end = ptr + self._len; + for (l = 0; ptr < end; l++) { + uint8 b; + assembly { + b := and(mload(ptr), 0xFF) + } + if (b < 0x80) { + ptr += 1; + } else if (b < 0xE0) { + ptr += 2; + } else if (b < 0xF0) { + ptr += 3; + } else if (b < 0xF8) { + ptr += 4; + } else if (b < 0xFC) { + ptr += 5; + } else { + ptr += 6; + } + } + } + + /* + * @dev Returns true if the slice is empty (has a length of 0). + * @param self The slice to operate on. + * @return True if the slice is empty, False otherwise. + */ + function empty(slice memory self) internal pure returns (bool) { + return self._len == 0; + } + + /* + * @dev Returns a positive number if `other` comes lexicographically after + * `self`, a negative number if it comes before, or zero if the + * contents of the two slices are equal. Comparison is done per-rune, + * on unicode codepoints. + * @param self The first slice to compare. + * @param other The second slice to compare. + * @return The result of the comparison. + */ + function compare(slice memory self, slice memory other) internal pure returns (int256) { + uint256 shortest = self._len; + if (other._len < self._len) { + shortest = other._len; + } + + uint256 selfptr = self._ptr; + uint256 otherptr = other._ptr; + for (uint256 idx = 0; idx < shortest; idx += 32) { + uint256 a; + uint256 b; + assembly { + a := mload(selfptr) + b := mload(otherptr) + } + if (a != b) { + // Mask out irrelevant bytes and check again + uint256 mask = type(uint256).max; // 0xffff... + if (shortest < 32) { + mask = ~(2 ** (8 * (32 - shortest + idx)) - 1); + } + unchecked { + uint256 diff = (a & mask) - (b & mask); + if (diff != 0) { + return int256(diff); + } + } + } + selfptr += 32; + otherptr += 32; + } + return int256(self._len) - int256(other._len); + } + + /* + * @dev Returns true if the two slices contain the same text. + * @param self The first slice to compare. + * @param self The second slice to compare. + * @return True if the slices are equal, false otherwise. + */ + function equals(slice memory self, slice memory other) internal pure returns (bool) { + return compare(self, other) == 0; + } + + /* + * @dev Extracts the first rune in the slice into `rune`, advancing the + * slice to point to the next rune and returning `self`. + * @param self The slice to operate on. + * @param rune The slice that will contain the first rune. + * @return `rune`. + */ + function nextRune(slice memory self, slice memory rune) internal pure returns (slice memory) { + rune._ptr = self._ptr; + + if (self._len == 0) { + rune._len = 0; + return rune; + } + + uint256 l; + uint256 b; + // Load the first byte of the rune into the LSBs of b + assembly { + b := and(mload(sub(mload(add(self, 32)), 31)), 0xFF) + } + if (b < 0x80) { + l = 1; + } else if (b < 0xE0) { + l = 2; + } else if (b < 0xF0) { + l = 3; + } else { + l = 4; + } + + // Check for truncated codepoints + if (l > self._len) { + rune._len = self._len; + self._ptr += self._len; + self._len = 0; + return rune; + } + + self._ptr += l; + self._len -= l; + rune._len = l; + return rune; + } + + /* + * @dev Returns the first rune in the slice, advancing the slice to point + * to the next rune. + * @param self The slice to operate on. + * @return A slice containing only the first rune from `self`. + */ + function nextRune(slice memory self) internal pure returns (slice memory ret) { + nextRune(self, ret); + } + + /* + * @dev Returns the number of the first codepoint in the slice. + * @param self The slice to operate on. + * @return The number of the first codepoint in the slice. + */ + function ord(slice memory self) internal pure returns (uint256 ret) { + if (self._len == 0) { + return 0; + } + + uint256 word; + uint256 length; + uint256 divisor = 2 ** 248; + + // Load the rune into the MSBs of b + assembly { + word := mload(mload(add(self, 32))) + } + uint256 b = word / divisor; + if (b < 0x80) { + ret = b; + length = 1; + } else if (b < 0xE0) { + ret = b & 0x1F; + length = 2; + } else if (b < 0xF0) { + ret = b & 0x0F; + length = 3; + } else { + ret = b & 0x07; + length = 4; + } + + // Check for truncated codepoints + if (length > self._len) { + return 0; + } + + for (uint256 i = 1; i < length; i++) { + divisor = divisor / 256; + b = (word / divisor) & 0xFF; + if (b & 0xC0 != 0x80) { + // Invalid UTF-8 sequence + return 0; + } + ret = (ret * 64) | (b & 0x3F); + } + + return ret; + } + + /* + * @dev Returns the keccak-256 hash of the slice. + * @param self The slice to hash. + * @return The hash of the slice. + */ + function keccak(slice memory self) internal pure returns (bytes32 ret) { + assembly { + ret := keccak256(mload(add(self, 32)), mload(self)) + } + } + + /* + * @dev Returns true if `self` starts with `needle`. + * @param self The slice to operate on. + * @param needle The slice to search for. + * @return True if the slice starts with the provided text, false otherwise. + */ + function startsWith(slice memory self, slice memory needle) internal pure returns (bool) { + if (self._len < needle._len) { + return false; + } + + if (self._ptr == needle._ptr) { + return true; + } + + bool equal; + assembly { + let length := mload(needle) + let selfptr := mload(add(self, 0x20)) + let needleptr := mload(add(needle, 0x20)) + equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) + } + return equal; + } + + /* + * @dev If `self` starts with `needle`, `needle` is removed from the + * beginning of `self`. Otherwise, `self` is unmodified. + * @param self The slice to operate on. + * @param needle The slice to search for. + * @return `self` + */ + function beyond(slice memory self, slice memory needle) internal pure returns (slice memory) { + if (self._len < needle._len) { + return self; + } + + bool equal = true; + if (self._ptr != needle._ptr) { + assembly { + let length := mload(needle) + let selfptr := mload(add(self, 0x20)) + let needleptr := mload(add(needle, 0x20)) + equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) + } + } + + if (equal) { + self._len -= needle._len; + self._ptr += needle._len; + } + + return self; + } + + /* + * @dev Returns true if the slice ends with `needle`. + * @param self The slice to operate on. + * @param needle The slice to search for. + * @return True if the slice starts with the provided text, false otherwise. + */ + function endsWith(slice memory self, slice memory needle) internal pure returns (bool) { + if (self._len < needle._len) { + return false; + } + + uint256 selfptr = self._ptr + self._len - needle._len; + + if (selfptr == needle._ptr) { + return true; + } + + bool equal; + assembly { + let length := mload(needle) + let needleptr := mload(add(needle, 0x20)) + equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) + } + + return equal; + } + + /* + * @dev If `self` ends with `needle`, `needle` is removed from the + * end of `self`. Otherwise, `self` is unmodified. + * @param self The slice to operate on. + * @param needle The slice to search for. + * @return `self` + */ + function until(slice memory self, slice memory needle) internal pure returns (slice memory) { + if (self._len < needle._len) { + return self; + } + + uint256 selfptr = self._ptr + self._len - needle._len; + bool equal = true; + if (selfptr != needle._ptr) { + assembly { + let length := mload(needle) + let needleptr := mload(add(needle, 0x20)) + equal := eq(keccak256(selfptr, length), keccak256(needleptr, length)) + } + } + + if (equal) { + self._len -= needle._len; + } + + return self; + } + + // Returns the memory address of the first byte of the first occurrence of + // `needle` in `self`, or the first byte after `self` if not found. + function findPtr(uint256 selflen, uint256 selfptr, uint256 needlelen, uint256 needleptr) + private + pure + returns (uint256) + { + uint256 ptr = selfptr; + uint256 idx; + + if (needlelen <= selflen) { + if (needlelen <= 32) { + bytes32 mask; + if (needlelen > 0) { + mask = bytes32(~(2 ** (8 * (32 - needlelen)) - 1)); + } + + bytes32 needledata; + assembly { + needledata := and(mload(needleptr), mask) + } + + uint256 end = selfptr + selflen - needlelen; + bytes32 ptrdata; + assembly { + ptrdata := and(mload(ptr), mask) + } + + while (ptrdata != needledata) { + if (ptr >= end) { + return selfptr + selflen; + } + ptr++; + assembly { + ptrdata := and(mload(ptr), mask) + } + } + return ptr; + } else { + // For long needles, use hashing + bytes32 hash; + assembly { + hash := keccak256(needleptr, needlelen) + } + + for (idx = 0; idx <= selflen - needlelen; idx++) { + bytes32 testHash; + assembly { + testHash := keccak256(ptr, needlelen) + } + if (hash == testHash) { + return ptr; + } + ptr += 1; + } + } + } + return selfptr + selflen; + } + + // Returns the memory address of the first byte after the last occurrence of + // `needle` in `self`, or the address of `self` if not found. + function rfindPtr(uint256 selflen, uint256 selfptr, uint256 needlelen, uint256 needleptr) + private + pure + returns (uint256) + { + uint256 ptr; + + if (needlelen <= selflen) { + if (needlelen <= 32) { + bytes32 mask; + if (needlelen > 0) { + mask = bytes32(~(2 ** (8 * (32 - needlelen)) - 1)); + } + + bytes32 needledata; + assembly { + needledata := and(mload(needleptr), mask) + } + + ptr = selfptr + selflen - needlelen; + bytes32 ptrdata; + assembly { + ptrdata := and(mload(ptr), mask) + } + + while (ptrdata != needledata) { + if (ptr <= selfptr) { + return selfptr; + } + ptr--; + assembly { + ptrdata := and(mload(ptr), mask) + } + } + return ptr + needlelen; + } else { + // For long needles, use hashing + bytes32 hash; + assembly { + hash := keccak256(needleptr, needlelen) + } + ptr = selfptr + (selflen - needlelen); + while (ptr >= selfptr) { + bytes32 testHash; + assembly { + testHash := keccak256(ptr, needlelen) + } + if (hash == testHash) { + return ptr + needlelen; + } + ptr -= 1; + } + } + } + return selfptr; + } + + /* + * @dev Modifies `self` to contain everything from the first occurrence of + * `needle` to the end of the slice. `self` is set to the empty slice + * if `needle` is not found. + * @param self The slice to search and modify. + * @param needle The text to search for. + * @return `self`. + */ + function find(slice memory self, slice memory needle) internal pure returns (slice memory) { + uint256 ptr = findPtr(self._len, self._ptr, needle._len, needle._ptr); + self._len -= ptr - self._ptr; + self._ptr = ptr; + return self; + } + + /* + * @dev Modifies `self` to contain the part of the string from the start of + * `self` to the end of the first occurrence of `needle`. If `needle` + * is not found, `self` is set to the empty slice. + * @param self The slice to search and modify. + * @param needle The text to search for. + * @return `self`. + */ + function rfind(slice memory self, slice memory needle) internal pure returns (slice memory) { + uint256 ptr = rfindPtr(self._len, self._ptr, needle._len, needle._ptr); + self._len = ptr - self._ptr; + return self; + } + + /* + * @dev Splits the slice, setting `self` to everything after the first + * occurrence of `needle`, and `token` to everything before it. If + * `needle` does not occur in `self`, `self` is set to the empty slice, + * and `token` is set to the entirety of `self`. + * @param self The slice to split. + * @param needle The text to search for in `self`. + * @param token An output parameter to which the first token is written. + * @return `token`. + */ + function split(slice memory self, slice memory needle, slice memory token) internal pure returns (slice memory) { + uint256 ptr = findPtr(self._len, self._ptr, needle._len, needle._ptr); + token._ptr = self._ptr; + token._len = ptr - self._ptr; + if (ptr == self._ptr + self._len) { + // Not found + self._len = 0; + } else { + self._len -= token._len + needle._len; + self._ptr = ptr + needle._len; + } + return token; + } + + /* + * @dev Splits the slice, setting `self` to everything after the first + * occurrence of `needle`, and returning everything before it. If + * `needle` does not occur in `self`, `self` is set to the empty slice, + * and the entirety of `self` is returned. + * @param self The slice to split. + * @param needle The text to search for in `self`. + * @return The part of `self` up to the first occurrence of `delim`. + */ + function split(slice memory self, slice memory needle) internal pure returns (slice memory token) { + split(self, needle, token); + } + + /* + * @dev Splits the slice, setting `self` to everything before the last + * occurrence of `needle`, and `token` to everything after it. If + * `needle` does not occur in `self`, `self` is set to the empty slice, + * and `token` is set to the entirety of `self`. + * @param self The slice to split. + * @param needle The text to search for in `self`. + * @param token An output parameter to which the first token is written. + * @return `token`. + */ + function rsplit(slice memory self, slice memory needle, slice memory token) internal pure returns (slice memory) { + uint256 ptr = rfindPtr(self._len, self._ptr, needle._len, needle._ptr); + token._ptr = ptr; + token._len = self._len - (ptr - self._ptr); + if (ptr == self._ptr) { + // Not found + self._len = 0; + } else { + self._len -= token._len + needle._len; + } + return token; + } + + /* + * @dev Splits the slice, setting `self` to everything before the last + * occurrence of `needle`, and returning everything after it. If + * `needle` does not occur in `self`, `self` is set to the empty slice, + * and the entirety of `self` is returned. + * @param self The slice to split. + * @param needle The text to search for in `self`. + * @return The part of `self` after the last occurrence of `delim`. + */ + function rsplit(slice memory self, slice memory needle) internal pure returns (slice memory token) { + rsplit(self, needle, token); + } + + /* + * @dev Counts the number of nonoverlapping occurrences of `needle` in `self`. + * @param self The slice to search. + * @param needle The text to search for in `self`. + * @return The number of occurrences of `needle` found in `self`. + */ + function count(slice memory self, slice memory needle) internal pure returns (uint256 cnt) { + uint256 ptr = findPtr(self._len, self._ptr, needle._len, needle._ptr) + needle._len; + while (ptr <= self._ptr + self._len) { + cnt++; + ptr = findPtr(self._len - (ptr - self._ptr), ptr, needle._len, needle._ptr) + needle._len; + } + } + + /* + * @dev Returns True if `self` contains `needle`. + * @param self The slice to search. + * @param needle The text to search for in `self`. + * @return True if `needle` is found in `self`, false otherwise. + */ + function contains(slice memory self, slice memory needle) internal pure returns (bool) { + return rfindPtr(self._len, self._ptr, needle._len, needle._ptr) != self._ptr; + } + + /* + * @dev Returns a newly allocated string containing the concatenation of + * `self` and `other`. + * @param self The first slice to concatenate. + * @param other The second slice to concatenate. + * @return The concatenation of the two strings. + */ + function concat(slice memory self, slice memory other) internal pure returns (string memory) { + string memory ret = new string(self._len + other._len); + uint256 retptr; + assembly { + retptr := add(ret, 32) + } + memcpy(retptr, self._ptr, self._len); + memcpy(retptr + self._len, other._ptr, other._len); + return ret; + } + + /* + * @dev Joins an array of slices, using `self` as a delimiter, returning a + * newly allocated string. + * @param self The delimiter to use. + * @param parts A list of slices to join. + * @return A newly allocated string containing all the slices in `parts`, + * joined with `self`. + */ + function join(slice memory self, slice[] memory parts) internal pure returns (string memory) { + if (parts.length == 0) { + return ""; + } + + uint256 length = self._len * (parts.length - 1); + for (uint256 i = 0; i < parts.length; i++) { + length += parts[i]._len; + } + + string memory ret = new string(length); + uint256 retptr; + assembly { + retptr := add(ret, 32) + } + + for (uint256 i = 0; i < parts.length; i++) { + memcpy(retptr, parts[i]._ptr, parts[i]._len); + retptr += parts[i]._len; + if (i < parts.length - 1) { + memcpy(retptr, self._ptr, self._len); + retptr += self._len; + } + } + + return ret; + } +} From c00daf551e46080f7259f9fccd0c7ec7f3a7eed8 Mon Sep 17 00:00:00 2001 From: Felipe Novaes F Rocha Date: Sat, 21 Sep 2024 01:29:58 -0300 Subject: [PATCH 3/3] :bug: owner + cut --- pkg/contracts/out/Allo.sol/Allo.json | 2 +- .../CVStrategyHelpers.json | 2 +- .../CVStrategyV0_0.sol/CVStrategyV0_0.json | 2 +- .../CVStrategyV0_0.sol/IPointStrategy.json | 2 +- .../CVStrategyV0_1.sol/CVStrategyV0_1.json | 2 +- pkg/contracts/out/Registry.sol/Registry.json | 2 +- .../RegistryCommunityFacet.json | 2 +- .../RegistryCommunityV0_0.json | 2 +- .../RegistryCommunityV0_1.json | 2 +- .../RegistryFactoryDiamond.json | 2 +- .../RegistryFactoryFacet.json | 2 +- .../RegistryFactoryV0_0.json | 2 +- .../RegistryFactoryV0_1.json | 2 +- .../out/RegistrySetup.sol/RegistrySetup.json | 2 +- .../RegistrySetup.sol/RegistrySetupFull.json | 2 +- pkg/contracts/src/diamonds/BaseDiamond.sol | 12 +++++++++- .../diamonds/facets/RegistryFactoryFacet.sol | 8 +++++-- .../src/diamonds/libraries/LibDiamond.sol | 23 ++++++++++++++++++- 18 files changed, 54 insertions(+), 19 deletions(-) diff --git a/pkg/contracts/out/Allo.sol/Allo.json b/pkg/contracts/out/Allo.sol/Allo.json index 278266b2..9bf9e8ac 100644 --- a/pkg/contracts/out/Allo.sol/Allo.json +++ b/pkg/contracts/out/Allo.sol/Allo.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"addPoolManager","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_manager","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addToCloneableStrategies","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"batchAllocate","inputs":[{"name":"_poolIds","type":"uint256[]","internalType":"uint256[]"},{"name":"_datas","type":"bytes[]","internalType":"bytes[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"batchRegisterRecipient","inputs":[{"name":"_poolIds","type":"uint256[]","internalType":"uint256[]"},{"name":"_data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"recipientIds","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"cancelOwnershipHandover","inputs":[],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"completeOwnershipHandover","inputs":[{"name":"pendingOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"createPool","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_strategy","type":"address","internalType":"address"},{"name":"_initStrategyData","type":"bytes","internalType":"bytes"},{"name":"_token","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"createPoolWithCustomStrategy","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_strategy","type":"address","internalType":"address"},{"name":"_initStrategyData","type":"bytes","internalType":"bytes"},{"name":"_token","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fundPool","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"getBaseFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getFeeDenominator","inputs":[],"outputs":[{"name":"FEE_DENOMINATOR","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"getPercentFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPool","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IAllo.Pool","components":[{"name":"profileId","type":"bytes32","internalType":"bytes32"},{"name":"strategy","type":"address","internalType":"contract IStrategy"},{"name":"token","type":"address","internalType":"address"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"managerRole","type":"bytes32","internalType":"bytes32"},{"name":"adminRole","type":"bytes32","internalType":"bytes32"}]}],"stateMutability":"view"},{"type":"function","name":"getRegistry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStrategy","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getTreasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_registry","type":"address","internalType":"address"},{"name":"_treasury","type":"address","internalType":"address payable"},{"name":"_percentFee","type":"uint256","internalType":"uint256"},{"name":"_baseFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCloneableStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isPoolAdmin","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_address","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isPoolManager","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_address","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"result","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"ownershipHandoverExpiresAt","inputs":[{"name":"pendingOwner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"recoverFunds","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"removeFromCloneableStrategies","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removePoolManager","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_manager","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"requestOwnershipHandover","inputs":[],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"updateBaseFee","inputs":[{"name":"_baseFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updatePercentFee","inputs":[{"name":"_percentFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updatePoolMetadata","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateRegistry","inputs":[{"name":"_registry","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateTreasury","inputs":[{"name":"_treasury","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"BaseFeePaid","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BaseFeeUpdated","inputs":[{"name":"baseFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipHandoverCanceled","inputs":[{"name":"pendingOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnershipHandoverRequested","inputs":[{"name":"pendingOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"oldOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PercentFeeUpdated","inputs":[{"name":"percentFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"strategy","type":"address","indexed":false,"internalType":"contract IStrategy"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"PoolFunded","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"fee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PoolMetadataUpdated","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registry","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyApproved","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"TreasuryUpdated","inputs":[{"name":"treasury","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NewOwnerIsZeroAddress","inputs":[]},{"type":"error","name":"NoHandoverRequest","inputs":[]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"Unauthorized","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50613183806100206000396000f3fe6080604052600436106101f75760003560e01c806301ffc9a7146101fc578063031e2fa114610231578063068bcd8d14610253578063075c0e9c1461028057806315e812ad146102a05780631a20bd88146102bf5780631a5da6c8146102ec578063248a9ca31461030c57806324ae6a271461032c578063256929621461034c57806329e40d4b146103545780632cf682b0146103745780632ec38188146103945780632f2ff15d146103a757806336568abe146103c75780633a5fbd92146103e75780633b19e84a1461040757806341bba0b4146104255780634edbaadc1461044557806354d1f13d1461045a5780635ab1bd53146104625780635acd6fac146104805780635f9ca13814610493578063715018a6146104b357806377da8caf146104bb5780637f51bb1f146104ce5780637f5a70bd146104ee5780638da5cb5b1461050e5780638e6901861461052757806391d1485414610547578063a0cf0aea14610567578063a217fddf1461058f578063a6b63eb8146105a4578063ab2ec589146105c4578063ab3febc6146105e4578063c6dff1cf14610604578063cfc0cc3414610624578063d547741f1461065d578063e1007d4a1461067d578063f04e283e14610690578063f2fde38b146106a3578063f4e1fc41146106b6578063f54fc4a0146106d1578063fee81cf4146106f1575b600080fd5b34801561020857600080fd5b5061021c6102173660046125af565b610724565b60405190151581526020015b60405180910390f35b34801561023d57600080fd5b5061025161024c3660046125ee565b61075b565b005b34801561025f57600080fd5b5061027361026e36600461260b565b6107be565b6040516102289190612693565b61029361028e3660046127b8565b6108d1565b60405161022891906127fe565b3480156102ac57600080fd5b5060ca545b604051908152602001610228565b3480156102cb57600080fd5b506102df6102da3660046128c4565b61096e565b60405161022891906129b6565b3480156102f857600080fd5b506102516103073660046125ee565b610af4565b34801561031857600080fd5b506102b161032736600461260b565b610b08565b34801561033857600080fd5b506102516103473660046129c9565b610b1d565b610251610bd1565b34801561036057600080fd5b5061021c61036f366004612a02565b610c20565b34801561038057600080fd5b5061025161038f366004612a02565b610c33565b6102516103a23660046127b8565b610c80565b3480156103b357600080fd5b506102516103c2366004612a02565b610ca0565b3480156103d357600080fd5b506102516103e2366004612a02565b610cbc565b3480156103f357600080fd5b50610251610402366004612a8b565b610d3b565b34801561041357600080fd5b5060cc546001600160a01b0316610293565b34801561043157600080fd5b506102516104403660046125ee565b610dc3565b34801561045157600080fd5b5060c9546102b1565b610251610e45565b34801561046e57600080fd5b5060cd546001600160a01b0316610293565b61025161048e366004612af7565b610e81565b34801561049f57600080fd5b506102516104ae366004612b9b565b611018565b610251611095565b6102b16104c9366004612bd7565b6110a9565b3480156104da57600080fd5b506102516104e93660046125ee565b61112c565b3480156104fa57600080fd5b50610251610509366004612a02565b61113d565b34801561051a57600080fd5b50638b78c6d81954610293565b34801561053357600080fd5b5061025161054236600461260b565b611163565b34801561055357600080fd5b5061021c610562366004612a02565b611174565b34801561057357600080fd5b5061029373eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801561059b57600080fd5b506102b1600081565b3480156105b057600080fd5b506102516105bf366004612c99565b61119f565b3480156105d057600080fd5b5061021c6105df3660046125ee565b6112ae565b3480156105f057600080fd5b5061021c6105ff366004612a02565b6112b9565b34801561061057600080fd5b5061025161061f366004612cf4565b6112c5565b34801561063057600080fd5b5061029361063f36600461260b565b600090815260cf60205260409020600101546001600160a01b031690565b34801561066957600080fd5b50610251610678366004612a02565b61134a565b6102b161068b366004612bd7565b611366565b61025161069e3660046125ee565b6113d1565b6102516106b13660046125ee565b61140e565b3480156106c257600080fd5b50670de0b6b3a76400006102b1565b3480156106dd57600080fd5b506102516106ec36600461260b565b611435565b3480156106fd57600080fd5b506102b161070c3660046125ee565b63389a75e1600c908152600091909152602090205490565b60006001600160e01b03198216637965db0b60e01b148061075557506301ffc9a760e01b6001600160e01b03198316145b92915050565b610763611446565b6001600160a01b038116600090815260d0602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4906107b39083906127fe565b60405180910390a150565b6107c6612549565b600082815260cf6020908152604091829020825160c0810184528154815260018201546001600160a01b0390811682850152600283015416818501528351808501909452600382018054855260048301805492959394606087019493908401919061083090612d80565b80601f016020809104026020016040519081016040528092919081815260200182805461085c90612d80565b80156108a95780601f1061087e576101008083540402835291602001916108a9565b820191906000526020600020905b81548152906001019060200180831161088c57829003601f168201915b5050505050815250508152602001600582015481526020016006820154815250509050919050565b60006108db611461565b600083815260cf6020526040908190206001015490516315df065760e11b81526001600160a01b0390911690632bbe0cae90349061091f9086903390600401612dba565b60206040518083038185885af115801561093d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109629190612de4565b90506107556001609755565b6060610978611461565b8251806001600160401b03811115610992576109926126fb565b6040519080825280602002602001820160405280156109bb578160200160208202803683370190505b509150825181146109df5760405163636e39bb60e01b815260040160405180910390fd5b60005b81811015610ae85760cf6000868381518110610a0057610a00612e01565b6020026020010151815260200190815260200160002060010160009054906101000a90046001600160a01b03166001600160a01b0316632bbe0cae858381518110610a4d57610a4d612e01565b6020026020010151336040518363ffffffff1660e01b8152600401610a73929190612dba565b6020604051808303816000875af1158015610a92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab69190612de4565b838281518110610ac857610ac8612e01565b6001600160a01b03909216602092830291909101909101526001016109e2565b50506107556001609755565b610afc611446565b610b05816114ba565b50565b60009081526065602052604090206001015490565b610b25611446565b60006001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14610bbd576040516370a0823160e01b81526001600160a01b038416906370a0823190610b779030906004016127fe565b602060405180830381865afa158015610b94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb89190612e17565b610bbf565b475b9050610bcc83838361152c565b505050565b60006202a3006001600160401b03164201905063389a75e1600c5233600052806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d600080a250565b6000610c2c8383611566565b9392505050565b81610c3d81611592565b6001600160a01b038216610c645760405163538ba4f960e01b815260040160405180910390fd5b600083815260cf6020526040902060050154610bcc90836115b9565b610c88611461565b610c92828261163f565b610c9c6001609755565b5050565b610ca982610b08565b610cb2816116b9565b610bcc83836115b9565b6001600160a01b0381163314610d315760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610c9c82826116c3565b610d43611461565b600083815260cf602052604090819020600101549051630a6f0ee960e01b81526001600160a01b0390911690630a6f0ee990610d8790859085903390600401612e30565b600060405180830381600087803b158015610da157600080fd5b505af1158015610db5573d6000803e3d6000fd5b50505050610bcc6001609755565b610dcb611446565b6001600160a01b038116610df25760405163538ba4f960e01b815260040160405180910390fd5b6001600160a01b038116600090815260d0602052604090819020805460ff19166001179055517f960dd94cbb79169f09a4e445d58b895df2d9bffa5b31055d0932d801724a20d1906107b39083906127fe565b63389a75e1600c523360005260006020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c92600080a2565b610e89611461565b80600003610eaa576040516303e09bb960e31b815260040160405180910390fd5b600082815260cf60209081526040808320815160c0810183528154815260018201546001600160a01b0390811682860152600283015416818401528251808401909352600382018054845260048301805492959394606087019490939084019190610f1490612d80565b80601f0160208091040260200160405190810160405280929190818152602001828054610f4090612d80565b8015610f8d5780601f10610f6257610100808354040283529160200191610f8d565b820191906000526020600020905b815481529060010190602001808311610f7057829003601f168201915b505050919092525050508152600582015460208201526006909101546040918201528101519091506001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015610fe05750348214155b15610ffe576040516303e09bb960e31b815260040160405180910390fd5b61100d8284836020015161172a565b50610c9c6001609755565b81611022816119dc565b600083815260cf60209081526040909120835160038201908155918401519091849160048401906110539082612ebc565b50905050837f14f52b76bda9e4c482842cefda2968d332933577988f224e80aae18fba10edf0846040516110879190612f7b565b60405180910390a250505050565b61109d611446565b6110a760006119e6565b565b60006110b3611461565b6110bc87611a12565b6110d95760405163126d324760e31b815260040160405180910390fd5b33600090815260ce602052604081208054611115928b9261110b928c9290919061110283612fa4565b91905055611a30565b8888888888611a7f565b90506111216001609755565b979650505050505050565b611134611446565b610b0581611f63565b8161114781611592565b600083815260cf6020526040902060050154610bcc90836116c3565b61116b611446565b610b0581611fd6565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054600190610100900460ff161580156111c1575060005460ff8083169116105b6112245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610d28565b6000805461ffff191660ff8316176101001790556112418661200b565b61124a856114ba565b61125384611f63565b61125c83612035565b61126582611fd6565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050505050565b600061075582611a12565b6000610c2c8383612093565b6112cd611461565b8051829081146112f05760405163636e39bb60e01b815260040160405180910390fd5b60005b8181101561133e5761133685858381811061131057611310612e01565b9050602002013584838151811061132957611329612e01565b602002602001015161163f565b6001016112f3565b5050610bcc6001609755565b61135382610b08565b61135c816116b9565b610bcc83836116c3565b60006001600160a01b03871661138f5760405163538ba4f960e01b815260040160405180910390fd5b61139887611a12565b156113b65760405163eeffa72160e01b815260040160405180910390fd5b6113c588888888888888611a7f565b98975050505050505050565b6113d9611446565b63389a75e1600c52806000526020600c20805442111561140157636f5e88186000526004601cfd5b60009055610b05816119e6565b611416611446565b8060601b61142c57637448fbae6000526004601cfd5b610b05816119e6565b61143d611446565b610b0581612035565b638b78c6d8195433146110a7576382b429006000526004601cfd5b6002609754036114b35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610d28565b6002609755565b6001600160a01b0381166114e15760405163538ba4f960e01b815260040160405180910390fd5b60cd80546001600160a01b0319166001600160a01b0383161790556040517fd6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd906107b39083906127fe565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161155b57610bcc82826120af565b610bcc8383836120cb565b600082815260cf60205260408120600501546115829083611174565b80610c2c5750610c2c8383612093565b61159c8133612093565b610b055760405163075fd2b160e01b815260040160405180910390fd5b6115c38282611174565b610c9c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556115fb3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260cf602052604090819020600101549051633bca483f60e21b81526001600160a01b039091169063ef2920fc9034906116839085903390600401612dba565b6000604051808303818588803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b50505050505050565b610b058133612111565b6116cd8282611174565b15610c9c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600082815260cf60205260408120600281015460c9548692916001600160a01b0316901561187b57670de0b6b3a764000060c9546117689089612fbd565b6117729190612fd4565b935061177e8484612ff6565b92508661178b8486613009565b146117a957604051637fcce2a960e01b815260040160405180910390fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03821601611803576040805160608101825233815260cc546001600160a01b031660208201529081018590526117fd90829061216a565b5061187b565b60cc5460009061181d9083906001600160a01b03166121e9565b6040805160608101825233815260cc546001600160a01b0316602082015290810187905290915061184f90839061216a565b5060cc5460009061186a9084906001600160a01b03166121e9565b90506118768282612ff6565b955050505b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038216016118dc576118d6816040518060600160405280336001600160a01b03168152602001886001600160a01b031681526020018681525061216a565b5061193e565b60006118e882876121e9565b9050611920826040518060600160405280336001600160a01b03168152602001896001600160a01b031681526020018781525061216a565b50600061192d83886121e9565b90506119398282612ff6565b945050505b60405163f5b0dfb760e01b8152600481018490526001600160a01b0386169063f5b0dfb790602401600060405180830381600087803b15801561198057600080fd5b505af1158015611994573d6000803e3d6000fd5b505060408051868152602081018890528993507fbf59838198f4ea92f663f5c1fc697f151a1b746b7dff86d564f250a55cbb485192500160405180910390a250505050505050565b61159c8133611566565b638b78c6d81980546001600160a01b0390921691829060008051602061312e833981519152600080a355565b6001600160a01b0316600090815260d0602052604090205460ff1690565b6040516001600160601b03193360601b166020820152603481018290526000908190605401604051602081830303815290604052805190602001209050611a778482612232565b949350505050565b60cd54604051635e8a791560e01b8152600481018990523360248201526000916001600160a01b031690635e8a791590604401602060405180830381865afa158015611acf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611af3919061301c565b611b105760405163075fd2b160e01b815260040160405180910390fd5b60cb60008154611b1f90612fa4565b91829055506040519091508190600090611b4f9083906020019081526430b236b4b760d91b602082015260250190565b60408051601f19818403018152828252805160209182012060c0840183528d84526001600160a01b03808e168584019081528c8216868601908152606087018c8152608088018a905260a0880185905260008b815260cf8752969096208751815591516001830180549185166001600160a01b031992831617905590516002830180549190941691161790915592518051600385019081559281015191955084939290916004840190611c029082612ebc565b5050506080820151600582015560a090910151600690910155611c2582336115b9565b611c2f83836122c9565b604051633b7451b360e21b81526001600160a01b038b169063edd146cc90611c5d9087908d9060040161303e565b600060405180830381600087803b158015611c7757600080fd5b505af1158015611c8b573d6000803e3d6000fd5b50505050838a6001600160a01b03166338fff2d06040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf29190612e17565b141580611d725750306001600160a01b03168a6001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d669190612de4565b6001600160a01b031614155b15611d905760405163636e39bb60e01b815260040160405180910390fd5b845160005b81811015611e01576000878281518110611db157611db1612e01565b6020026020010151905060006001600160a01b0316816001600160a01b031603611dee5760405163538ba4f960e01b815260040160405180910390fd5b611df886826115b9565b50600101611d95565b5060ca5415611f04576001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015611e435750348860ca54611e409190613009565b14155b80611e7857506001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14801590611e7857503460ca5414155b15611e96576040516303e09bb960e31b815260040160405180910390fd5b60cc5460ca54611ec79173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b039091169061152c565b847f02e340b51c6ae66fd22509c9b016f224c47a54063d4259fe3d860958e9eaac7260ca54604051611efb91815260200190565b60405180910390a25b8715611f1557611f1588868d61172a565b8b857f69bcb5a6cf6a3c95185cbb451e77787240c866dd2e8332597e3013ff18a1aba18d8c8c8c604051611f4c9493929190613057565b60405180910390a350505050979650505050505050565b6001600160a01b038116611f8a5760405163538ba4f960e01b815260040160405180910390fd5b60cc80546001600160a01b0319166001600160a01b0383169081179091556040517f7dae230f18360d76a040c81f050aa14eb9d6dc7901b20fc5d855e2a20fe814d1916107b3916127fe565b60ca8190556040518181527f803bee7e92bbc6ae7a1551f9f4ed3e31a8ea8df32e93332f41b0028f1091f9c3906020016107b3565b6001600160a01b0316638b78c6d81981905580600060008051602061312e8339815191528180a350565b670de0b6b3a764000081111561205e57604051632fb15b8760e01b815260040160405180910390fd5b60c98190556040518181527f9e826789de2de708fd9f09edea1182545e543893caa8ff71f8eb3aab50a4b065906020016107b3565b600082815260cf6020526040812060060154610c2c9083611174565b60008060008084865af1610c9c5763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716612107576390b8ec186000526004601cfd5b6000603452505050565b61211b8282611174565b610c9c576121288161231c565b61213383602061232e565b604051602001612144929190613094565b60408051601f198184030181529082905262461bcd60e51b8252610d2891600401613103565b604081015160009073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038516016121cb57803410156121b8576040516374c5672b60e01b815260040160405180910390fd5b6121c68360200151826120af565b6121df565b6121df8484600001518560200151846124c9565b5060019392505050565b600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161222157506001600160a01b03811631610755565b61222b838361251d565b9050610755565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166107555760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610d28565b60006122d483610b08565b600084815260656020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60606107556001600160a01b03831660145b6060600061233d836002612fbd565b612348906002613009565b6001600160401b0381111561235f5761235f6126fb565b6040519080825280601f01601f191660200182016040528015612389576020820181803683370190505b509050600360fc1b816000815181106123a4576123a4612e01565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123d3576123d3612e01565b60200101906001600160f81b031916908160001a90535060006123f7846002612fbd565b612402906001613009565b90505b600181111561247a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061243657612436612e01565b1a60f81b82828151811061244c5761244c612e01565b60200101906001600160f81b031916908160001a90535060049490941c9361247381613116565b9050612405565b508315610c2c5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610d28565b60405181606052826040528360601b602c526323b872dd60601b600c52602060006064601c6000895af13d15600160005114171661250f57637939f4246000526004601cfd5b600060605260405250505050565b6000816014526370a0823160601b60005260208060246010865afa601f3d111660205102905092915050565b6040518060c001604052806000801916815260200160006001600160a01b0316815260200160006001600160a01b0316815260200161259b604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b6000602082840312156125c157600080fd5b81356001600160e01b031981168114610c2c57600080fd5b6001600160a01b0381168114610b0557600080fd5b60006020828403121561260057600080fd5b8135610c2c816125d9565b60006020828403121561261d57600080fd5b5035919050565b60005b8381101561263f578181015183820152602001612627565b50506000910152565b60008151808452612660816020860160208601612624565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152611a776040850182612648565b60208152815160208201526000602083015160018060a01b0380821660408501528060408601511660608501525050606083015160c060808401526126db60e0840182612674565b9050608084015160a084015260a084015160c08401528091505092915050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612739576127396126fb565b604052919050565b60006001600160401b0383111561275a5761275a6126fb565b61276d601f8401601f1916602001612711565b905082815283838301111561278157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126127a957600080fd5b610c2c83833560208501612741565b600080604083850312156127cb57600080fd5b8235915060208301356001600160401b038111156127e857600080fd5b6127f485828601612798565b9150509250929050565b6001600160a01b0391909116815260200190565b60006001600160401b0382111561282b5761282b6126fb565b5060051b60200190565b600082601f83011261284657600080fd5b8135602061285b61285683612812565b612711565b82815260059290921b8401810191818101908684111561287a57600080fd5b8286015b848110156128b95780356001600160401b0381111561289d5760008081fd5b6128ab8986838b0101612798565b84525091830191830161287e565b509695505050505050565b600080604083850312156128d757600080fd5b82356001600160401b03808211156128ee57600080fd5b818501915085601f83011261290257600080fd5b8135602061291261285683612812565b82815260059290921b8401810191818101908984111561293157600080fd5b948201945b8386101561294f57853582529482019490820190612936565b9650508601359250508082111561296557600080fd5b506127f485828601612835565b600081518084526020808501945080840160005b838110156129ab5781516001600160a01b031687529582019590820190600101612986565b509495945050505050565b602081526000610c2c6020830184612972565b600080604083850312156129dc57600080fd5b82356129e7816125d9565b915060208301356129f7816125d9565b809150509250929050565b60008060408385031215612a1557600080fd5b8235915060208301356129f7816125d9565b600082601f830112612a3857600080fd5b81356020612a4861285683612812565b82815260059290921b84018101918181019086841115612a6757600080fd5b8286015b848110156128b9578035612a7e816125d9565b8352918301918301612a6b565b600080600060608486031215612aa057600080fd5b8335925060208401356001600160401b0380821115612abe57600080fd5b612aca87838801612a27565b93506040860135915080821115612ae057600080fd5b50612aed86828701612798565b9150509250925092565b60008060408385031215612b0a57600080fd5b50508035926020909101359150565b600060408284031215612b2b57600080fd5b604080519081016001600160401b038082118383101715612b4e57612b4e6126fb565b81604052829350843583526020850135915080821115612b6d57600080fd5b508301601f81018513612b7f57600080fd5b612b8e85823560208401612741565b6020830152505092915050565b60008060408385031215612bae57600080fd5b8235915060208301356001600160401b03811115612bcb57600080fd5b6127f485828601612b19565b600080600080600080600060e0888a031215612bf257600080fd5b873596506020880135612c04816125d9565b955060408801356001600160401b0380821115612c2057600080fd5b612c2c8b838c01612798565b965060608a01359150612c3e826125d9565b9094506080890135935060a08901359080821115612c5b57600080fd5b612c678b838c01612b19565b935060c08a0135915080821115612c7d57600080fd5b50612c8a8a828b01612a27565b91505092959891949750929550565b600080600080600060a08688031215612cb157600080fd5b8535612cbc816125d9565b94506020860135612ccc816125d9565b93506040860135612cdc816125d9565b94979396509394606081013594506080013592915050565b600080600060408486031215612d0957600080fd5b83356001600160401b0380821115612d2057600080fd5b818601915086601f830112612d3457600080fd5b813581811115612d4357600080fd5b8760208260051b8501011115612d5857600080fd5b602092830195509350908501359080821115612d7357600080fd5b50612aed86828701612835565b600181811c90821680612d9457607f821691505b602082108103612db457634e487b7160e01b600052602260045260246000fd5b50919050565b604081526000612dcd6040830185612648565b905060018060a01b03831660208301529392505050565b600060208284031215612df657600080fd5b8151610c2c816125d9565b634e487b7160e01b600052603260045260246000fd5b600060208284031215612e2957600080fd5b5051919050565b606081526000612e436060830186612972565b8281036020840152612e558186612648565b91505060018060a01b0383166040830152949350505050565b601f821115610bcc57600081815260208120601f850160051c81016020861015612e955750805b601f850160051c820191505b81811015612eb457828155600101612ea1565b505050505050565b81516001600160401b03811115612ed557612ed56126fb565b612ee981612ee38454612d80565b84612e6e565b602080601f831160018114612f1e5760008415612f065750858301515b600019600386901b1c1916600185901b178555612eb4565b600085815260208120601f198616915b82811015612f4d57888601518255948401946001909101908401612f2e565b5085821015612f6b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b602081526000610c2c6020830184612674565b634e487b7160e01b600052601160045260246000fd5b600060018201612fb657612fb6612f8e565b5060010190565b808202811582820484141761075557610755612f8e565b600082612ff157634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561075557610755612f8e565b8082018082111561075557610755612f8e565b60006020828403121561302e57600080fd5b81518015158114610c2c57600080fd5b828152604060208201526000611a776040830184612648565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061308a90830184612674565b9695505050505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516130c6816017850160208801612624565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516130f7816028840160208801612624565b01602801949350505050565b602081526000610c2c6020830184612648565b60008161312557613125612f8e565b50600019019056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a26469706673582212207ff237b5031c0a799317c485a2e086d81ae3f6ba1ef3e75863651583e6046a8164736f6c63430008130033","sourceMap":"5076:29047:0:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106101f75760003560e01c806301ffc9a7146101fc578063031e2fa114610231578063068bcd8d14610253578063075c0e9c1461028057806315e812ad146102a05780631a20bd88146102bf5780631a5da6c8146102ec578063248a9ca31461030c57806324ae6a271461032c578063256929621461034c57806329e40d4b146103545780632cf682b0146103745780632ec38188146103945780632f2ff15d146103a757806336568abe146103c75780633a5fbd92146103e75780633b19e84a1461040757806341bba0b4146104255780634edbaadc1461044557806354d1f13d1461045a5780635ab1bd53146104625780635acd6fac146104805780635f9ca13814610493578063715018a6146104b357806377da8caf146104bb5780637f51bb1f146104ce5780637f5a70bd146104ee5780638da5cb5b1461050e5780638e6901861461052757806391d1485414610547578063a0cf0aea14610567578063a217fddf1461058f578063a6b63eb8146105a4578063ab2ec589146105c4578063ab3febc6146105e4578063c6dff1cf14610604578063cfc0cc3414610624578063d547741f1461065d578063e1007d4a1461067d578063f04e283e14610690578063f2fde38b146106a3578063f4e1fc41146106b6578063f54fc4a0146106d1578063fee81cf4146106f1575b600080fd5b34801561020857600080fd5b5061021c6102173660046125af565b610724565b60405190151581526020015b60405180910390f35b34801561023d57600080fd5b5061025161024c3660046125ee565b61075b565b005b34801561025f57600080fd5b5061027361026e36600461260b565b6107be565b6040516102289190612693565b61029361028e3660046127b8565b6108d1565b60405161022891906127fe565b3480156102ac57600080fd5b5060ca545b604051908152602001610228565b3480156102cb57600080fd5b506102df6102da3660046128c4565b61096e565b60405161022891906129b6565b3480156102f857600080fd5b506102516103073660046125ee565b610af4565b34801561031857600080fd5b506102b161032736600461260b565b610b08565b34801561033857600080fd5b506102516103473660046129c9565b610b1d565b610251610bd1565b34801561036057600080fd5b5061021c61036f366004612a02565b610c20565b34801561038057600080fd5b5061025161038f366004612a02565b610c33565b6102516103a23660046127b8565b610c80565b3480156103b357600080fd5b506102516103c2366004612a02565b610ca0565b3480156103d357600080fd5b506102516103e2366004612a02565b610cbc565b3480156103f357600080fd5b50610251610402366004612a8b565b610d3b565b34801561041357600080fd5b5060cc546001600160a01b0316610293565b34801561043157600080fd5b506102516104403660046125ee565b610dc3565b34801561045157600080fd5b5060c9546102b1565b610251610e45565b34801561046e57600080fd5b5060cd546001600160a01b0316610293565b61025161048e366004612af7565b610e81565b34801561049f57600080fd5b506102516104ae366004612b9b565b611018565b610251611095565b6102b16104c9366004612bd7565b6110a9565b3480156104da57600080fd5b506102516104e93660046125ee565b61112c565b3480156104fa57600080fd5b50610251610509366004612a02565b61113d565b34801561051a57600080fd5b50638b78c6d81954610293565b34801561053357600080fd5b5061025161054236600461260b565b611163565b34801561055357600080fd5b5061021c610562366004612a02565b611174565b34801561057357600080fd5b5061029373eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801561059b57600080fd5b506102b1600081565b3480156105b057600080fd5b506102516105bf366004612c99565b61119f565b3480156105d057600080fd5b5061021c6105df3660046125ee565b6112ae565b3480156105f057600080fd5b5061021c6105ff366004612a02565b6112b9565b34801561061057600080fd5b5061025161061f366004612cf4565b6112c5565b34801561063057600080fd5b5061029361063f36600461260b565b600090815260cf60205260409020600101546001600160a01b031690565b34801561066957600080fd5b50610251610678366004612a02565b61134a565b6102b161068b366004612bd7565b611366565b61025161069e3660046125ee565b6113d1565b6102516106b13660046125ee565b61140e565b3480156106c257600080fd5b50670de0b6b3a76400006102b1565b3480156106dd57600080fd5b506102516106ec36600461260b565b611435565b3480156106fd57600080fd5b506102b161070c3660046125ee565b63389a75e1600c908152600091909152602090205490565b60006001600160e01b03198216637965db0b60e01b148061075557506301ffc9a760e01b6001600160e01b03198316145b92915050565b610763611446565b6001600160a01b038116600090815260d0602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4906107b39083906127fe565b60405180910390a150565b6107c6612549565b600082815260cf6020908152604091829020825160c0810184528154815260018201546001600160a01b0390811682850152600283015416818501528351808501909452600382018054855260048301805492959394606087019493908401919061083090612d80565b80601f016020809104026020016040519081016040528092919081815260200182805461085c90612d80565b80156108a95780601f1061087e576101008083540402835291602001916108a9565b820191906000526020600020905b81548152906001019060200180831161088c57829003601f168201915b5050505050815250508152602001600582015481526020016006820154815250509050919050565b60006108db611461565b600083815260cf6020526040908190206001015490516315df065760e11b81526001600160a01b0390911690632bbe0cae90349061091f9086903390600401612dba565b60206040518083038185885af115801561093d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109629190612de4565b90506107556001609755565b6060610978611461565b8251806001600160401b03811115610992576109926126fb565b6040519080825280602002602001820160405280156109bb578160200160208202803683370190505b509150825181146109df5760405163636e39bb60e01b815260040160405180910390fd5b60005b81811015610ae85760cf6000868381518110610a0057610a00612e01565b6020026020010151815260200190815260200160002060010160009054906101000a90046001600160a01b03166001600160a01b0316632bbe0cae858381518110610a4d57610a4d612e01565b6020026020010151336040518363ffffffff1660e01b8152600401610a73929190612dba565b6020604051808303816000875af1158015610a92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab69190612de4565b838281518110610ac857610ac8612e01565b6001600160a01b03909216602092830291909101909101526001016109e2565b50506107556001609755565b610afc611446565b610b05816114ba565b50565b60009081526065602052604090206001015490565b610b25611446565b60006001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14610bbd576040516370a0823160e01b81526001600160a01b038416906370a0823190610b779030906004016127fe565b602060405180830381865afa158015610b94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb89190612e17565b610bbf565b475b9050610bcc83838361152c565b505050565b60006202a3006001600160401b03164201905063389a75e1600c5233600052806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d600080a250565b6000610c2c8383611566565b9392505050565b81610c3d81611592565b6001600160a01b038216610c645760405163538ba4f960e01b815260040160405180910390fd5b600083815260cf6020526040902060050154610bcc90836115b9565b610c88611461565b610c92828261163f565b610c9c6001609755565b5050565b610ca982610b08565b610cb2816116b9565b610bcc83836115b9565b6001600160a01b0381163314610d315760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610c9c82826116c3565b610d43611461565b600083815260cf602052604090819020600101549051630a6f0ee960e01b81526001600160a01b0390911690630a6f0ee990610d8790859085903390600401612e30565b600060405180830381600087803b158015610da157600080fd5b505af1158015610db5573d6000803e3d6000fd5b50505050610bcc6001609755565b610dcb611446565b6001600160a01b038116610df25760405163538ba4f960e01b815260040160405180910390fd5b6001600160a01b038116600090815260d0602052604090819020805460ff19166001179055517f960dd94cbb79169f09a4e445d58b895df2d9bffa5b31055d0932d801724a20d1906107b39083906127fe565b63389a75e1600c523360005260006020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c92600080a2565b610e89611461565b80600003610eaa576040516303e09bb960e31b815260040160405180910390fd5b600082815260cf60209081526040808320815160c0810183528154815260018201546001600160a01b0390811682860152600283015416818401528251808401909352600382018054845260048301805492959394606087019490939084019190610f1490612d80565b80601f0160208091040260200160405190810160405280929190818152602001828054610f4090612d80565b8015610f8d5780601f10610f6257610100808354040283529160200191610f8d565b820191906000526020600020905b815481529060010190602001808311610f7057829003601f168201915b505050919092525050508152600582015460208201526006909101546040918201528101519091506001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015610fe05750348214155b15610ffe576040516303e09bb960e31b815260040160405180910390fd5b61100d8284836020015161172a565b50610c9c6001609755565b81611022816119dc565b600083815260cf60209081526040909120835160038201908155918401519091849160048401906110539082612ebc565b50905050837f14f52b76bda9e4c482842cefda2968d332933577988f224e80aae18fba10edf0846040516110879190612f7b565b60405180910390a250505050565b61109d611446565b6110a760006119e6565b565b60006110b3611461565b6110bc87611a12565b6110d95760405163126d324760e31b815260040160405180910390fd5b33600090815260ce602052604081208054611115928b9261110b928c9290919061110283612fa4565b91905055611a30565b8888888888611a7f565b90506111216001609755565b979650505050505050565b611134611446565b610b0581611f63565b8161114781611592565b600083815260cf6020526040902060050154610bcc90836116c3565b61116b611446565b610b0581611fd6565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054600190610100900460ff161580156111c1575060005460ff8083169116105b6112245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610d28565b6000805461ffff191660ff8316176101001790556112418661200b565b61124a856114ba565b61125384611f63565b61125c83612035565b61126582611fd6565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050505050565b600061075582611a12565b6000610c2c8383612093565b6112cd611461565b8051829081146112f05760405163636e39bb60e01b815260040160405180910390fd5b60005b8181101561133e5761133685858381811061131057611310612e01565b9050602002013584838151811061132957611329612e01565b602002602001015161163f565b6001016112f3565b5050610bcc6001609755565b61135382610b08565b61135c816116b9565b610bcc83836116c3565b60006001600160a01b03871661138f5760405163538ba4f960e01b815260040160405180910390fd5b61139887611a12565b156113b65760405163eeffa72160e01b815260040160405180910390fd5b6113c588888888888888611a7f565b98975050505050505050565b6113d9611446565b63389a75e1600c52806000526020600c20805442111561140157636f5e88186000526004601cfd5b60009055610b05816119e6565b611416611446565b8060601b61142c57637448fbae6000526004601cfd5b610b05816119e6565b61143d611446565b610b0581612035565b638b78c6d8195433146110a7576382b429006000526004601cfd5b6002609754036114b35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610d28565b6002609755565b6001600160a01b0381166114e15760405163538ba4f960e01b815260040160405180910390fd5b60cd80546001600160a01b0319166001600160a01b0383161790556040517fd6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd906107b39083906127fe565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161155b57610bcc82826120af565b610bcc8383836120cb565b600082815260cf60205260408120600501546115829083611174565b80610c2c5750610c2c8383612093565b61159c8133612093565b610b055760405163075fd2b160e01b815260040160405180910390fd5b6115c38282611174565b610c9c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556115fb3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260cf602052604090819020600101549051633bca483f60e21b81526001600160a01b039091169063ef2920fc9034906116839085903390600401612dba565b6000604051808303818588803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b50505050505050565b610b058133612111565b6116cd8282611174565b15610c9c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600082815260cf60205260408120600281015460c9548692916001600160a01b0316901561187b57670de0b6b3a764000060c9546117689089612fbd565b6117729190612fd4565b935061177e8484612ff6565b92508661178b8486613009565b146117a957604051637fcce2a960e01b815260040160405180910390fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03821601611803576040805160608101825233815260cc546001600160a01b031660208201529081018590526117fd90829061216a565b5061187b565b60cc5460009061181d9083906001600160a01b03166121e9565b6040805160608101825233815260cc546001600160a01b0316602082015290810187905290915061184f90839061216a565b5060cc5460009061186a9084906001600160a01b03166121e9565b90506118768282612ff6565b955050505b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038216016118dc576118d6816040518060600160405280336001600160a01b03168152602001886001600160a01b031681526020018681525061216a565b5061193e565b60006118e882876121e9565b9050611920826040518060600160405280336001600160a01b03168152602001896001600160a01b031681526020018781525061216a565b50600061192d83886121e9565b90506119398282612ff6565b945050505b60405163f5b0dfb760e01b8152600481018490526001600160a01b0386169063f5b0dfb790602401600060405180830381600087803b15801561198057600080fd5b505af1158015611994573d6000803e3d6000fd5b505060408051868152602081018890528993507fbf59838198f4ea92f663f5c1fc697f151a1b746b7dff86d564f250a55cbb485192500160405180910390a250505050505050565b61159c8133611566565b638b78c6d81980546001600160a01b0390921691829060008051602061312e833981519152600080a355565b6001600160a01b0316600090815260d0602052604090205460ff1690565b6040516001600160601b03193360601b166020820152603481018290526000908190605401604051602081830303815290604052805190602001209050611a778482612232565b949350505050565b60cd54604051635e8a791560e01b8152600481018990523360248201526000916001600160a01b031690635e8a791590604401602060405180830381865afa158015611acf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611af3919061301c565b611b105760405163075fd2b160e01b815260040160405180910390fd5b60cb60008154611b1f90612fa4565b91829055506040519091508190600090611b4f9083906020019081526430b236b4b760d91b602082015260250190565b60408051601f19818403018152828252805160209182012060c0840183528d84526001600160a01b03808e168584019081528c8216868601908152606087018c8152608088018a905260a0880185905260008b815260cf8752969096208751815591516001830180549185166001600160a01b031992831617905590516002830180549190941691161790915592518051600385019081559281015191955084939290916004840190611c029082612ebc565b5050506080820151600582015560a090910151600690910155611c2582336115b9565b611c2f83836122c9565b604051633b7451b360e21b81526001600160a01b038b169063edd146cc90611c5d9087908d9060040161303e565b600060405180830381600087803b158015611c7757600080fd5b505af1158015611c8b573d6000803e3d6000fd5b50505050838a6001600160a01b03166338fff2d06040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf29190612e17565b141580611d725750306001600160a01b03168a6001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d669190612de4565b6001600160a01b031614155b15611d905760405163636e39bb60e01b815260040160405180910390fd5b845160005b81811015611e01576000878281518110611db157611db1612e01565b6020026020010151905060006001600160a01b0316816001600160a01b031603611dee5760405163538ba4f960e01b815260040160405180910390fd5b611df886826115b9565b50600101611d95565b5060ca5415611f04576001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015611e435750348860ca54611e409190613009565b14155b80611e7857506001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14801590611e7857503460ca5414155b15611e96576040516303e09bb960e31b815260040160405180910390fd5b60cc5460ca54611ec79173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b039091169061152c565b847f02e340b51c6ae66fd22509c9b016f224c47a54063d4259fe3d860958e9eaac7260ca54604051611efb91815260200190565b60405180910390a25b8715611f1557611f1588868d61172a565b8b857f69bcb5a6cf6a3c95185cbb451e77787240c866dd2e8332597e3013ff18a1aba18d8c8c8c604051611f4c9493929190613057565b60405180910390a350505050979650505050505050565b6001600160a01b038116611f8a5760405163538ba4f960e01b815260040160405180910390fd5b60cc80546001600160a01b0319166001600160a01b0383169081179091556040517f7dae230f18360d76a040c81f050aa14eb9d6dc7901b20fc5d855e2a20fe814d1916107b3916127fe565b60ca8190556040518181527f803bee7e92bbc6ae7a1551f9f4ed3e31a8ea8df32e93332f41b0028f1091f9c3906020016107b3565b6001600160a01b0316638b78c6d81981905580600060008051602061312e8339815191528180a350565b670de0b6b3a764000081111561205e57604051632fb15b8760e01b815260040160405180910390fd5b60c98190556040518181527f9e826789de2de708fd9f09edea1182545e543893caa8ff71f8eb3aab50a4b065906020016107b3565b600082815260cf6020526040812060060154610c2c9083611174565b60008060008084865af1610c9c5763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716612107576390b8ec186000526004601cfd5b6000603452505050565b61211b8282611174565b610c9c576121288161231c565b61213383602061232e565b604051602001612144929190613094565b60408051601f198184030181529082905262461bcd60e51b8252610d2891600401613103565b604081015160009073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038516016121cb57803410156121b8576040516374c5672b60e01b815260040160405180910390fd5b6121c68360200151826120af565b6121df565b6121df8484600001518560200151846124c9565b5060019392505050565b600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161222157506001600160a01b03811631610755565b61222b838361251d565b9050610755565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166107555760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610d28565b60006122d483610b08565b600084815260656020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60606107556001600160a01b03831660145b6060600061233d836002612fbd565b612348906002613009565b6001600160401b0381111561235f5761235f6126fb565b6040519080825280601f01601f191660200182016040528015612389576020820181803683370190505b509050600360fc1b816000815181106123a4576123a4612e01565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123d3576123d3612e01565b60200101906001600160f81b031916908160001a90535060006123f7846002612fbd565b612402906001613009565b90505b600181111561247a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061243657612436612e01565b1a60f81b82828151811061244c5761244c612e01565b60200101906001600160f81b031916908160001a90535060049490941c9361247381613116565b9050612405565b508315610c2c5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610d28565b60405181606052826040528360601b602c526323b872dd60601b600c52602060006064601c6000895af13d15600160005114171661250f57637939f4246000526004601cfd5b600060605260405250505050565b6000816014526370a0823160601b60005260208060246010865afa601f3d111660205102905092915050565b6040518060c001604052806000801916815260200160006001600160a01b0316815260200160006001600160a01b0316815260200161259b604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b6000602082840312156125c157600080fd5b81356001600160e01b031981168114610c2c57600080fd5b6001600160a01b0381168114610b0557600080fd5b60006020828403121561260057600080fd5b8135610c2c816125d9565b60006020828403121561261d57600080fd5b5035919050565b60005b8381101561263f578181015183820152602001612627565b50506000910152565b60008151808452612660816020860160208601612624565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152611a776040850182612648565b60208152815160208201526000602083015160018060a01b0380821660408501528060408601511660608501525050606083015160c060808401526126db60e0840182612674565b9050608084015160a084015260a084015160c08401528091505092915050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612739576127396126fb565b604052919050565b60006001600160401b0383111561275a5761275a6126fb565b61276d601f8401601f1916602001612711565b905082815283838301111561278157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126127a957600080fd5b610c2c83833560208501612741565b600080604083850312156127cb57600080fd5b8235915060208301356001600160401b038111156127e857600080fd5b6127f485828601612798565b9150509250929050565b6001600160a01b0391909116815260200190565b60006001600160401b0382111561282b5761282b6126fb565b5060051b60200190565b600082601f83011261284657600080fd5b8135602061285b61285683612812565b612711565b82815260059290921b8401810191818101908684111561287a57600080fd5b8286015b848110156128b95780356001600160401b0381111561289d5760008081fd5b6128ab8986838b0101612798565b84525091830191830161287e565b509695505050505050565b600080604083850312156128d757600080fd5b82356001600160401b03808211156128ee57600080fd5b818501915085601f83011261290257600080fd5b8135602061291261285683612812565b82815260059290921b8401810191818101908984111561293157600080fd5b948201945b8386101561294f57853582529482019490820190612936565b9650508601359250508082111561296557600080fd5b506127f485828601612835565b600081518084526020808501945080840160005b838110156129ab5781516001600160a01b031687529582019590820190600101612986565b509495945050505050565b602081526000610c2c6020830184612972565b600080604083850312156129dc57600080fd5b82356129e7816125d9565b915060208301356129f7816125d9565b809150509250929050565b60008060408385031215612a1557600080fd5b8235915060208301356129f7816125d9565b600082601f830112612a3857600080fd5b81356020612a4861285683612812565b82815260059290921b84018101918181019086841115612a6757600080fd5b8286015b848110156128b9578035612a7e816125d9565b8352918301918301612a6b565b600080600060608486031215612aa057600080fd5b8335925060208401356001600160401b0380821115612abe57600080fd5b612aca87838801612a27565b93506040860135915080821115612ae057600080fd5b50612aed86828701612798565b9150509250925092565b60008060408385031215612b0a57600080fd5b50508035926020909101359150565b600060408284031215612b2b57600080fd5b604080519081016001600160401b038082118383101715612b4e57612b4e6126fb565b81604052829350843583526020850135915080821115612b6d57600080fd5b508301601f81018513612b7f57600080fd5b612b8e85823560208401612741565b6020830152505092915050565b60008060408385031215612bae57600080fd5b8235915060208301356001600160401b03811115612bcb57600080fd5b6127f485828601612b19565b600080600080600080600060e0888a031215612bf257600080fd5b873596506020880135612c04816125d9565b955060408801356001600160401b0380821115612c2057600080fd5b612c2c8b838c01612798565b965060608a01359150612c3e826125d9565b9094506080890135935060a08901359080821115612c5b57600080fd5b612c678b838c01612b19565b935060c08a0135915080821115612c7d57600080fd5b50612c8a8a828b01612a27565b91505092959891949750929550565b600080600080600060a08688031215612cb157600080fd5b8535612cbc816125d9565b94506020860135612ccc816125d9565b93506040860135612cdc816125d9565b94979396509394606081013594506080013592915050565b600080600060408486031215612d0957600080fd5b83356001600160401b0380821115612d2057600080fd5b818601915086601f830112612d3457600080fd5b813581811115612d4357600080fd5b8760208260051b8501011115612d5857600080fd5b602092830195509350908501359080821115612d7357600080fd5b50612aed86828701612835565b600181811c90821680612d9457607f821691505b602082108103612db457634e487b7160e01b600052602260045260246000fd5b50919050565b604081526000612dcd6040830185612648565b905060018060a01b03831660208301529392505050565b600060208284031215612df657600080fd5b8151610c2c816125d9565b634e487b7160e01b600052603260045260246000fd5b600060208284031215612e2957600080fd5b5051919050565b606081526000612e436060830186612972565b8281036020840152612e558186612648565b91505060018060a01b0383166040830152949350505050565b601f821115610bcc57600081815260208120601f850160051c81016020861015612e955750805b601f850160051c820191505b81811015612eb457828155600101612ea1565b505050505050565b81516001600160401b03811115612ed557612ed56126fb565b612ee981612ee38454612d80565b84612e6e565b602080601f831160018114612f1e5760008415612f065750858301515b600019600386901b1c1916600185901b178555612eb4565b600085815260208120601f198616915b82811015612f4d57888601518255948401946001909101908401612f2e565b5085821015612f6b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b602081526000610c2c6020830184612674565b634e487b7160e01b600052601160045260246000fd5b600060018201612fb657612fb6612f8e565b5060010190565b808202811582820484141761075557610755612f8e565b600082612ff157634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561075557610755612f8e565b8082018082111561075557610755612f8e565b60006020828403121561302e57600080fd5b81518015158114610c2c57600080fd5b828152604060208201526000611a776040830184612648565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061308a90830184612674565b9695505050505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516130c6816017850160208801612624565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516130f7816028840160208801612624565b01602801949350505050565b602081526000610c2c6020830184612648565b60008161312557613125612f8e565b50600019019056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a26469706673582212207ff237b5031c0a799317c485a2e086d81ae3f6ba1ef3e75863651583e6046a8164736f6c63430008130033","sourceMap":"5076:29047:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:43;;;;;;;;;;-1:-1:-1;3050:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:142;;463:22;445:41;;433:2;418:18;3050:213:43;;;;;;;;14900:288:0;;;;;;;;;;-1:-1:-1;14900:288:0;;;;;:::i;:::-;;:::i;:::-;;34013:108;;;;;;;;;;-1:-1:-1;34013:108:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;17298:276::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;33140:85::-;;;;;;;;;;-1:-1:-1;33211:7:0;;33140:85;;;4432:25:142;;;4420:2;4405:18;33140:85:0;4286:177:142;18212:747:0;;;;;;;;;;-1:-1:-1;18212:747:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;13330:105::-;;;;;;;;;;-1:-1:-1;13330:105:0;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;16308:430:0:-;;;;;;;;;;-1:-1:-1;16308:430:0;;;;;:::i;:::-;;:::i;7331:617:12:-;;;:::i;32476:144:0:-;;;;;;;;;;-1:-1:-1;32476:144:0;;;;;:::i;:::-;;:::i;15387:358::-;;;;;;;;;;-1:-1:-1;15387:358:0;;;;;:::i;:::-;;:::i;19921:127::-;;;;;;:::i;:::-;;:::i;5280:145:43:-;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;6389:214::-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;21468:196:0:-;;;;;;;;;;-1:-1:-1;21468:196:0;;;;;:::i;:::-;;:::i;33313:95::-;;;;;;;;;;-1:-1:-1;33393:8:0;;-1:-1:-1;;;;;33393:8:0;33313:95;;14481:229;;;;;;;;;;-1:-1:-1;14481:229:0;;;;;:::i;:::-;;:::i;32977:91::-;;;;;;;;;;-1:-1:-1;33051:10:0;;32977:91;;8030:456:12;;;:::i;33488:89:0:-;;;;;;;;;;-1:-1:-1;33562:8:0;;-1:-1:-1;;;;;33562:8:0;33488:89;;19156:439;;;;;;:::i;:::-;;:::i;12894:247::-;;;;;;;;;;-1:-1:-1;12894:247:0;;;;;:::i;:::-;;:::i;7072:100:12:-;;;:::i;11971:701:0:-;;;;;;:::i;:::-;;:::i;13624:113::-;;;;;;;;;;-1:-1:-1;13624:113:0;;;;;:::i;:::-;;:::i;15950:160::-;;;;;;;;;;-1:-1:-1;15950:160:0;;;;;:::i;:::-;;:::i;9718:191:12:-;;;;;;;;;;-1:-1:-1;;;9866:27:12;9718:191;;14188:101:0;;;;;;;;;;-1:-1:-1;14188:101:0;;;;;:::i;:::-;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;4412:75:9:-;;;;;;;;;;;;4445:42;4412:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;7626:593:0;;;;;;;;;;-1:-1:-1;7626:593:0;;;;;:::i;:::-;;:::i;33760:132::-;;;;;;;;;;-1:-1:-1;33760:132:0;;;;;:::i;:::-;;:::i;32112:140::-;;;;;;;;;;-1:-1:-1;32112:140:0;;;;;:::i;:::-;;:::i;20511:559::-;;;;;;;;;;-1:-1:-1;20511:559:0;;;;;:::i;:::-;;:::i;32753:126::-;;;;;;;;;;-1:-1:-1;32753:126:0;;;;;:::i;:::-;32814:7;32848:14;;;:5;:14;;;;;:23;;;-1:-1:-1;;;;;32848:23:0;;32753:126;5705:147:43;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;10281:884:0:-;;;;;;:::i;:::-;;:::i;8673:708:12:-;;;;;;:::i;:::-;;:::i;6658:349::-;;;;;;:::i;:::-;;:::i;31788:103:0:-;;;;;;;;;;-1:-1:-1;31880:4:0;31788:103;;13911:113;;;;;;;;;;-1:-1:-1;13911:113:0;;;;;:::i;:::-;;:::i;10012:435:12:-;;;;;;;;;;-1:-1:-1;10012:435:12;;;;;:::i;:::-;10282:19;10276:4;10269:33;;;10131:14;10315:26;;;;10425:4;10409:21;;10403:28;;10012:435;3050:213:43;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;14900:288:0:-;10836:13:12;:11;:13::i;:::-;-1:-1:-1;;;;;15059:30:0;::::1;15092:5;15059:30:::0;;;:19:::1;:30;::::0;;;;;;:38;;-1:-1:-1;;15059:38:0::1;::::0;;15155:26;::::1;::::0;::::1;::::0;15079:9;;15155:26:::1;:::i;:::-;;;;;;;;14900:288:::0;:::o;34013:108::-;34070:11;;:::i;:::-;34100:14;;;;:5;:14;;;;;;;;;34093:21;;;;;;;;;;;;;;;-1:-1:-1;;;;;34093:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34100:14;;34093:21;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34013:108;;;:::o;17298:276::-;17401:7;2526:21:48;:19;:21::i;:::-;17489:14:0::1;::::0;;;:5:::1;:14;::::0;;;;;;:23:::1;;::::0;:78;;-1:-1:-1;;;17489:78:0;;-1:-1:-1;;;;;17489:23:0;;::::1;::::0;:41:::1;::::0;17538:9:::1;::::0;17489:78:::1;::::0;17549:5;;17556:10:::1;::::0;17489:78:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17482:85;;2568:20:48::0;1808:1;3074:7;:22;2894:209;18212:747:0;18348:29;2526:21:48;:19;:21::i;:::-;18416:15:0;;;-1:-1:-1;;;;;18456:27:0;::::1;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;18456:27:0::1;;18441:42;;18514:5;:12;18498;:28;18494:51;;18535:10;;-1:-1:-1::0;;;18535:10:0::1;;;;;;;;;;;18494:51;18663:9;18658:204;18678:12;18674:1;:16;18658:204;;;18725:5;:18;18731:8;18740:1;18731:11;;;;;;;;:::i;:::-;;;;;;;18725:18;;;;;;;;;;;:27;;;;;;;;;;-1:-1:-1::0;;;;;18725:27:0::1;-1:-1:-1::0;;;;;18725:45:0::1;;18771:5;18777:1;18771:8;;;;;;;;:::i;:::-;;;;;;;18781:10;18725:67;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18707:12;18720:1;18707:15;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18707:85:0;;::::1;:15;::::0;;::::1;::::0;;;;;;;:85;18834:3:::1;;18658:204;;;;18933:19;2568:20:48::0;1808:1;3074:7;:22;2894:209;13330:105:0;10836:13:12;:11;:13::i;:::-;13402:26:0::1;13418:9;13402:15;:26::i;:::-;13330:105:::0;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;16308:430:0:-;10836:13:12;:11;:13::i;:::-;16506:14:0::1;-1:-1:-1::0;;;;;16523:16:0;::::1;4445:42:9;16523:16:0;:93;;16566:50;::::0;-1:-1:-1;;;16566:50:0;;-1:-1:-1;;;;;16566:35:0;::::1;::::0;::::1;::::0;:50:::1;::::0;16610:4:::1;::::0;16566:50:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16523:93;;;16542:21;16523:93;16506:110;;16688:43;16704:6;16712:10;16724:6;16688:15;:43::i;:::-;16385:353;16308:430:::0;;:::o;7331:617:12:-;7424:15;6282:9;-1:-1:-1;;;;;7442:46:12;:15;:46;7424:64;;7656:19;7650:4;7643:33;7706:8;7700:4;7693:22;7762:7;7755:4;7749;7739:21;7732:38;7909:8;7862:45;7859:1;7856;7851:67;7558:374;7331:617::o;32476:144:0:-;32557:4;32580:33;32595:7;32604:8;32580:14;:33::i;:::-;32573:40;32476:144;-1:-1:-1;;;32476:144:0:o;15387:358::-;15469:7;8837:28;8857:7;8837:19;:28::i;:::-;-1:-1:-1;;;;;15568:22:0;::::1;15564:49;;15599:14;;-1:-1:-1::0;;;15599:14:0::1;;;;;;;;;;;15564:49;15701:14;::::0;;;:5:::1;:14;::::0;;;;:26:::1;;::::0;15690:48:::1;::::0;15729:8;15690:10:::1;:48::i;19921:127::-:0;2526:21:48;:19;:21::i;:::-;20016:25:0::1;20026:7;20035:5;20016:9;:25::i;:::-;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;19921:127:0;;:::o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;6389:214::-:0;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;16571:2:142;6476:83:43;;;16553:21:142;16610:2;16590:18;;;16583:30;16649:34;16629:18;;;16622:62;-1:-1:-1;;;16700:18:142;;;16693:45;16755:19;;6476:83:43;;;;;;;;;6570:26;6582:4;6588:7;6570:11;:26::i;21468:196:0:-;2526:21:48;:19;:21::i;:::-;21589:14:0::1;::::0;;;:5:::1;:14;::::0;;;;;;:23:::1;;::::0;:68;;-1:-1:-1;;;21589:68:0;;-1:-1:-1;;;;;21589:23:0;;::::1;::::0;:34:::1;::::0;:68:::1;::::0;21624:13;;21639:5;;21646:10:::1;::::0;21589:68:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;14481:229:0;10836:13:12;:11;:13::i;:::-;-1:-1:-1;;;;;14567:23:0;::::1;14563:50;;14599:14;;-1:-1:-1::0;;;14599:14:0::1;;;;;;;;;;;14563:50;-1:-1:-1::0;;;;;14624:30:0;::::1;;::::0;;;:19:::1;:30;::::0;;;;;;:37;;-1:-1:-1;;14624:37:0::1;14657:4;14624:37;::::0;;14676:27;::::1;::::0;::::1;::::0;14644:9;;14676:27:::1;:::i;8030:456:12:-:0;8232:19;8226:4;8219:33;8278:8;8272:4;8265:22;8330:1;8323:4;8317;8307:21;8300:32;8461:8;8415:44;8412:1;8409;8404:66;8030:456::o;19156:439:0:-;2526:21:48;:19;:21::i;:::-;19318:7:0::1;19329:1;19318:12:::0;19314:43:::1;;19339:18;;-1:-1:-1::0;;;19339:18:0::1;;;;;;;;;;;19314:43;19368:16;19387:14:::0;;;:5:::1;:14;::::0;;;;;;;19368:33;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;::::1;::::0;-1:-1:-1;;;;;19368:33:0;;::::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;;;;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;;;;;;;;;;19387:14;;19368:33;;;;;;;;::::1;::::0;;::::1;::::0;::::1;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;19368:33:0;;;;-1:-1:-1;;;19368:33:0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;;;;;;19415:10;::::1;::::0;19368:33;;-1:-1:-1;;;;;;19415:20:0::1;4445:42:9;19415:20:0;:44:::0;::::1;;;;19450:9;19439:7;:20;;19415:44;19411:75;;;19468:18;;-1:-1:-1::0;;;19468:18:0::1;;;;;;;;;;;19411:75;19546:42;19556:7;19565;19574:4;:13;;;19546:9;:42::i;:::-;19238:357;2568:20:48::0;1808:1;3074:7;:22;2894:209;12894:247:0;12991:7;8625:30;8647:7;8625:21;:30::i;:::-;13010:17:::1;13030:14:::0;;;:5:::1;:14;::::0;;;;;;;13054:25;;:13:::1;::::0;::::1;:25:::0;;;;;::::1;::::0;13030:14;;13070:9;;13054:25;;;;::::1;::::0;;::::1;:::i;:::-;;;;;13115:7;13095:39;13124:9;13095:39;;;;;;:::i;:::-;;;;;;;;13000:141;12894:247:::0;;;:::o;7072:100:12:-;10836:13;:11;:13::i;:::-;7144:21:::1;7162:1;7144:9;:21::i;:::-;7072:100::o:0;11971:701:0:-;12251:14;2526:21:48;:19;:21::i;:::-;12282:31:0::1;12303:9;12282:20;:31::i;:::-;12277:93;;12336:23;;-1:-1:-1::0;;;12336:23:0::1;;;;;;;;;;;12277:93;12522:10;12514:19;::::0;;;:7:::1;:19;::::0;;;;:21;;12426:239:::1;::::0;12451:10;;12485:51:::1;::::0;12503:9;;12514:21;;:19;:21:::1;::::0;::::1;:::i;:::-;;;;;12485:17;:51::i;:::-;12551:17;12582:6;12602:7;12623:9;12646;12426:11;:239::i;:::-;12419:246;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;11971:701:0;;;;;;;;;:::o;13624:113::-;10836:13:12;:11;:13::i;:::-;13704:26:0::1;13720:9;13704:15;:26::i;15950:160::-:0;16035:7;8837:28;8857:7;8837:19;:28::i;:::-;16066:14:::1;::::0;;;:5:::1;:14;::::0;;;;:26:::1;;::::0;16054:49:::1;::::0;16094:8;16054:11:::1;:49::i;14188:101::-:0;10836:13:12;:11;:13::i;:::-;14258:24:0::1;14273:8;14258:14;:24::i;3350:145:43:-:0;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;7626:593:0:-;4882:13:47;;7816:1:0;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;20253:2:142;4873:99:47;;;20235:21:142;20292:2;20272:18;;;20265:30;20331:34;20311:18;;;20304:62;-1:-1:-1;;;20382:18:142;;;20375:44;20436:19;;4873:99:47;20051:410:142;4873:99:47;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;7890:24:0::1;7907:6:::0;7890:16:::1;:24::i;:::-;7968:26;7984:9;7968:15;:26::i;:::-;8048;8064:9;8048:15;:26::i;:::-;8119:30;8137:11;8119:17;:30::i;:::-;8188:24;8203:8;8188:14;:24::i;:::-;5071:5:47::0;5055:21;;-1:-1:-1;;5055:21:47;;;5091:20;;20638:4:142;20626:17;;20608:36;;5091:20:47;;20596:2:142;20581:18;5091:20:47;;;;;;;7626:593:0;;;;;;:::o;33760:132::-;33831:4;33854:31;33875:9;33854:20;:31::i;32112:140::-;32191:4;32214:31;32227:7;32236:8;32214:12;:31::i;20511:559::-;2526:21:48;:19;:21::i;:::-;20784:13:0;;20637:8;;20772:25;::::1;20768:48;;20806:10;;-1:-1:-1::0;;;20806:10:0::1;;;;;;;;;;;20768:48;20921:9;20916:148;20936:8;20932:1;:12;20916:148;;;20961:33;20971:8;;20980:1;20971:11;;;;;;;:::i;:::-;;;;;;;20984:6;20991:1;20984:9;;;;;;;;:::i;:::-;;;;;;;20961;:33::i;:::-;21036:3;;20916:148;;;;20608:462;2568:20:48::0;1808:1;3074:7;:22;2894:209;5705:147:43;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;10281:884:0:-:0;10566:14;-1:-1:-1;;;;;10687:23:0;;10683:50;;10719:14;;-1:-1:-1;;;10719:14:0;;;;;;;;;;;10683:50;10898:31;10919:9;10898:20;:31::i;:::-;10894:66;;;10938:22;;-1:-1:-1;;;10938:22:0;;;;;;;;;;;10894:66;11055:103;11067:10;11089:9;11101:17;11120:6;11128:7;11137:9;11148;11055:11;:103::i;:::-;11048:110;10281:884;-1:-1:-1;;;;;;;;10281:884:0:o;8673:708:12:-;10836:13;:11;:13::i;:::-;8907:19:::1;8901:4;8894:33;8953:12;8947:4;8940:26;9015:4;9009;8999:21;9121:12;9115:19;9102:11;9099:36;9096:157;;;9167:10;9161:4;9154:24;9234:4;9228;9221:18;9096:157;9330:1;9309:23:::0;;9351::::1;9361:12:::0;9351:9:::1;:23::i;6658:349::-:0;10836:13;:11;:13::i;:::-;6830:8:::1;6826:2;6822:17;6812:150;;6872:10;6866:4;6859:24;6943:4;6937;6930:18;6812:150;6981:19;6991:8;6981:9;:19::i;13911:113:0:-:0;10836:13:12;:11;:13::i;:::-;13987:30:0::1;14005:11;13987:17;:30::i;5593:364:12:-:0;-1:-1:-1;;5799:27:12;5789:8;5786:41;5776:165;;5860:10;5854:4;5847:24;5922:4;5916;5909:18;2601:287:48;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;20857:2:142;2725:63:48;;;20839:21:142;20896:2;20876:18;;;20869:30;20935:33;20915:18;;;20908:61;20986:18;;2725:63:48;20655:355:142;2725:63:48;1851:1;2863:7;:18;2601:287::o;30226:203:0:-;-1:-1:-1;;;;;30293:23:0;;30289:50;;30325:14;;-1:-1:-1;;;30325:14:0;;;;;;;;;;;30289:50;30350:8;:31;;-1:-1:-1;;;;;;30350:31:0;-1:-1:-1;;;;;30350:31:0;;;;;30396:26;;;;;;30350:31;;30396:26;:::i;6721:269:10:-;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;29821:192:0:-;29903:4;29934:14;;;:5;:14;;;;;:26;;;29926:45;;29962:8;29926:7;:45::i;:::-;:80;;;;29975:31;29988:7;29997:8;29975:12;:31::i;22160:138::-;22235:33;22248:7;22257:10;22235:12;:33::i;:::-;22230:61;;22277:14;;-1:-1:-1;;;22277:14:0;;;;;;;;;;;7938:233:43;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;26159:151:0:-;26234:14;;;;:5;:14;;;;;;;:23;;;:69;;-1:-1:-1;;;26234:69:0;;-1:-1:-1;;;;;26234:23:0;;;;:32;;26274:9;;26234:69;;26285:5;;26292:10;;26234:69;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26159:151;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;8342:234::-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;26634:1879:0:-;26727:17;26817:14;;;:5;:14;;;;;26858:10;;;;26883;;26779:7;;26817:14;-1:-1:-1;;;;;26858:10:0;;26883:14;26879:808;;31880:4;26936:10;;26926:20;;:7;:20;:::i;:::-;26925:44;;;;:::i;:::-;26913:56;-1:-1:-1;26983:27:0;26913:56;26983:27;;:::i;:::-;;-1:-1:-1;27059:7:0;27029:26;26983:27;27029:9;:26;:::i;:::-;:37;27025:59;;27075:9;;-1:-1:-1;;;27075:9:0;;;;;;;;;;;27025:59;-1:-1:-1;;;;;;;27103:16:0;;;27099:578;;27167:65;;;;;;;;27187:10;27167:65;;27203:8;;-1:-1:-1;;;;;27203:8:0;27167:65;;;;;;;;;;27139:94;;27159:6;;27139:19;:94::i;:::-;;27099:578;;;27319:8;;27272:24;;27299:29;;27311:6;;-1:-1:-1;;;;;27319:8:0;27299:11;:29::i;:::-;27374:65;;;;;;;;27394:10;27374:65;;27410:8;;-1:-1:-1;;;;;27410:8:0;27374:65;;;;;;;;;;27272:56;;-1:-1:-1;27346:94:0;;27366:6;;27346:19;:94::i;:::-;-1:-1:-1;27504:8:0;;27458:23;;27484:29;;27496:6;;-1:-1:-1;;;;;27504:8:0;27484:11;:29::i;:::-;27458:55;-1:-1:-1;27628:34:0;27646:16;27458:55;27628:34;:::i;:::-;27616:46;;27254:423;;27099:578;-1:-1:-1;;;;;;;27701:16:0;;;27697:693;;27733:139;27770:6;27778:80;;;;;;;;27798:10;-1:-1:-1;;;;;27778:80:0;;;;;27822:9;-1:-1:-1;;;;;27778:80:0;;;;;27842:14;27778:80;;;27733:19;:139::i;:::-;;27697:693;;;27903:32;27938:39;27950:6;27966:9;27938:11;:39::i;:::-;27903:74;;27991:139;28028:6;28036:80;;;;;;;;28056:10;-1:-1:-1;;;;;28036:80:0;;;;;28080:9;-1:-1:-1;;;;;28036:80:0;;;;;28100:14;28036:80;;;27991:19;:139::i;:::-;;28144:31;28178:39;28190:6;28206:9;28178:11;:39::i;:::-;28144:73;-1:-1:-1;28329:50:0;28355:24;28144:73;28329:50;:::i;:::-;28312:67;;27889:501;;27697:693;28400:44;;-1:-1:-1;;;28400:44:0;;;;;4432:25:142;;;-1:-1:-1;;;;;28400:28:0;;;;;4405:18:142;;28400:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;28460:46:0;;;21847:25:142;;;21903:2;21888:18;;21881:34;;;28471:7:0;;-1:-1:-1;28460:46:0;;-1:-1:-1;21820:18:142;28460:46:0;;;;;;;26717:1796;;;;26634:1879;;;:::o;21910:142::-;21987:35;22002:7;22011:10;21987:14;:35::i;5040:495:12:-;-1:-1:-1;;5416:16:12;;-1:-1:-1;;;;;5272:26:12;;;;;;-1:-1:-1;;;;;;;;;;;5373:1:12;;5365:78;5492:27;5040:495::o;28898:132:0:-;-1:-1:-1;;;;;28993:30:0;28970:4;28993:30;;;:19;:30;;;;;;;;;28898:132::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;22128:2:142;22099:15;22095:45;4867:36:6;;;22083:58:142;22157:12;;;22150:28;;;4823:7:6;;;;22194:12:142;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;23131:2681:0:-;23424:8;;:57;;-1:-1:-1;;;23424:57:0;;;;;22391:25:142;;;23470:10:0;22432:18:142;;;22425:60;23393:14:0;;-1:-1:-1;;;;;23424:8:0;;:33;;22364:18:142;;23424:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23419:85;;23490:14;;-1:-1:-1;;;23490:14:0;;;;;;;;;;;23419:85;23526:10;;23524:12;;;;;:::i;:::-;;;;;-1:-1:-1;23764:33:0;;23524:12;;-1:-1:-1;23524:12:0;;23675:25;;23764:33;;23524:12;;23764:33;;23008:19:142;;;-1:-1:-1;;;23052:2:142;23043:12;;23036:29;23090:2;23081:12;;22778:321;23764:33:0;;;;-1:-1:-1;;23764:33:0;;;;;;;;;23754:44;;23764:33;23754:44;;;;23864:228;;;;;;;;-1:-1:-1;;;;;23864:228:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23845:16;24159:13;;;:5;:13;;;;;;:20;;;;;;;;;;;;;;-1:-1:-1;;;;;;24159:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23754:44;;-1:-1:-1;23764:33:0;;24159:13;:20;;;;;;;;;;:::i;:::-;-1:-1:-1;;;24159:20:0;;;;;;;;;;;;;;;;;;24239:39;24250:15;24267:10;24239;:39::i;:::-;24337:49;24351:17;24370:15;24337:13;:49::i;:::-;24541:47;;-1:-1:-1;;;24541:47:0;;-1:-1:-1;;;;;24541:20:0;;;;;:47;;24562:6;;24570:17;;24541:47;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24628:6;24603:9;-1:-1:-1;;;;;24603:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:31;;:80;;;;24678:4;-1:-1:-1;;;;;24638:45:0;24646:9;-1:-1:-1;;;;;24646:17:0;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;24638:45:0;;;24603:80;24599:103;;;24692:10;;-1:-1:-1;;;24692:10:0;;;;;;;;;;;24599:103;24775:16;;24750:22;24801:266;24821:14;24817:1;:18;24801:266;;;24852:15;24870:9;24880:1;24870:12;;;;;;;;:::i;:::-;;;;;;;24852:30;;24919:1;-1:-1:-1;;;;;24900:21:0;:7;-1:-1:-1;;;;;24900:21:0;;24896:48;;24930:14;;-1:-1:-1;;;24930:14:0;;;;;;;;;;;24896:48;24959:38;24970:17;24989:7;24959:10;:38::i;:::-;-1:-1:-1;25039:3:0;;24801:266;;;-1:-1:-1;25081:7:0;;:11;25077:554;;-1:-1:-1;;;;;25359:16:0;;4445:42:9;25359:16:0;:52;;;;;25401:9;25390:7;25380;;:17;;;;:::i;:::-;:30;;25359:52;25358:100;;;-1:-1:-1;;;;;;25417:16:0;;4445:42:9;25417:16:0;;;;:40;;;25448:9;25437:7;;:20;;25417:40;25354:164;;;25485:18;;-1:-1:-1;;;25485:18:0;;;;;;;;;;;25354:164;25555:8;;25565:7;;25531:42;;4445::9;;-1:-1:-1;;;;;25555:8:0;;;;25531:15;:42::i;:::-;25604:6;25592:28;25612:7;;25592:28;;;;4432:25:142;;4420:2;4405:18;;4286:177;25592:28:0;;;;;;;;25077:554;25645:11;;25641:79;;25672:37;25682:7;25691:6;25699:9;25672;:37::i;:::-;25755:10;25747:6;25735:70;25767:9;25778:6;25786:7;25795:9;25735:70;;;;;;;;;:::i;:::-;;;;;;;;23409:2403;;;;23131:2681;;;;;;;;;:::o;30642:199::-;-1:-1:-1;;;;;30717:23:0;;30713:50;;30749:14;;-1:-1:-1;;;30749:14:0;;;;;;;;;;;30713:50;30774:8;:20;;-1:-1:-1;;;;;;30774:20:0;-1:-1:-1;;;;;30774:20:0;;;;;;;;30809:25;;;;;;;:::i;31426:125::-;31487:7;:18;;;31521:23;;4432:25:142;;;31521:23:0;;4420:2:142;4405:18;31521:23:0;4286:177:142;4520:448:12;-1:-1:-1;;;;;4709:26:12;-1:-1:-1;;4784:38:12;;;4709:26;4940:1;-1:-1:-1;;;;;;;;;;;4940:1:12;;4889:63;4520:448;:::o;31041:198:0:-;31126:4;31112:11;:18;31108:44;;;31139:13;;-1:-1:-1;;;31139:13:0;;;;;;;;;;;31108:44;31163:10;:24;;;31203:29;;4432:25:142;;;31203:29:0;;4420:2:142;4405:18;31203:29:0;4286:177:142;29346:153:0;29426:4;29457:14;;;:5;:14;;;;;:24;;;29449:43;;29483:8;29449:7;:43::i;2455:490:14:-;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;6019:500:10:-;6150:20;;;;6117:4;;-1:-1:-1;;;;;;;6184:16:10;;;6180:312;;6260:6;6248:9;:18;6244:48;;;6275:17;;-1:-1:-1;;;6275:17:10;;;;;;;;;;;6244:48;6307:57;6339:13;:16;;;6357:6;6307:31;:57::i;:::-;6180:312;;;6395:86;6428:6;6436:13;:18;;;6456:13;:16;;;6474:6;6395:32;:86::i;:::-;-1:-1:-1;6508:4:10;;6019:500;-1:-1:-1;;;6019:500:10:o;7224:263::-;7302:7;-1:-1:-1;;;;;;;7325:16:10;;;7321:160;;-1:-1:-1;;;;;;7364:25:10;;;7357:32;;7321:160;7427:43;7453:6;7461:8;7427:25;:43::i;:::-;7420:50;;;;2118:794:46;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;25683:2:142;2847:58:46;;;25665:21:142;25722:2;25702:18;;;25695:30;-1:-1:-1;;;25741:18:142;;;25734:53;25804:18;;2847:58:46;25481:347:142;7523:247:43;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;26176:2:142;2228:55:52;;;26158:21:142;;;26195:18;;;26188:30;26254:34;26234:18;;;26227:62;26306:18;;2228:55:52;25974:356:142;7671:1379:14;7854:4;7848:11;7920:6;7914:4;7907:20;7985:2;7979:4;7972:16;8050:4;8046:2;8042:13;8036:4;8029:27;-1:-1:-1;;;8193:4:14;8186:48;8657:4;8651;8645;8639;8636:1;8629:5;8622;8617:45;8577:16;8570:24;8566:1;8559:4;8553:11;8550:18;8547:48;8275:405;8248:659;;8800:10;8794:4;8787:24;8888:4;8882;8875:18;8248:659;8934:1;8928:4;8921:15;8990:4;8983:15;-1:-1:-1;;;;7671:1379:14:o;18299:722::-;18373:14;18478:7;18472:4;18465:21;-1:-1:-1;;;18607:4:14;18600:48;18960:4;18954;18948;18942;18935:5;18928;18917:48;18855:4;18837:16;18834:26;18745:242;18718:4;18712:11;18687:318;18661:344;;18299:722;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:286:142:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:142;;209:43;;199:71;;266:1;263;256:12;497:131;-1:-1:-1;;;;;572:31:142;;562:42;;552:70;;618:1;615;608:12;633:247;692:6;745:2;733:9;724:7;720:23;716:32;713:52;;;761:1;758;751:12;713:52;800:9;787:23;819:31;844:5;819:31;:::i;885:180::-;944:6;997:2;985:9;976:7;972:23;968:32;965:52;;;1013:1;1010;1003:12;965:52;-1:-1:-1;1036:23:142;;885:180;-1:-1:-1;885:180:142:o;1070:250::-;1155:1;1165:113;1179:6;1176:1;1173:13;1165:113;;;1255:11;;;1249:18;1236:11;;;1229:39;1201:2;1194:10;1165:113;;;-1:-1:-1;;1312:1:142;1294:16;;1287:27;1070:250::o;1325:271::-;1367:3;1405:5;1399:12;1432:6;1427:3;1420:19;1448:76;1517:6;1510:4;1505:3;1501:14;1494:4;1487:5;1483:16;1448:76;:::i;:::-;1578:2;1557:15;-1:-1:-1;;1553:29:142;1544:39;;;;1585:4;1540:50;;1325:271;-1:-1:-1;;1325:271:142:o;1601:252::-;1688:5;1682:12;1677:3;1670:25;1652:3;1741:4;1734:5;1730:16;1724:23;1779:4;1772;1767:3;1763:14;1756:28;1800:47;1841:4;1836:3;1832:14;1818:12;1800:47;:::i;1858:774::-;2031:2;2020:9;2013:21;2076:6;2070:13;2065:2;2054:9;2050:18;2043:41;1994:4;2131:2;2123:6;2119:15;2113:22;2171:1;2167;2162:3;2158:11;2154:19;2227:2;2213:12;2209:21;2204:2;2193:9;2189:18;2182:49;2295:2;2289;2281:6;2277:15;2271:22;2267:31;2262:2;2251:9;2247:18;2240:59;;;2348:2;2340:6;2336:15;2330:22;2389:4;2383:3;2372:9;2368:19;2361:33;2417:63;2475:3;2464:9;2460:19;2444:14;2417:63;:::i;:::-;2403:77;;2535:3;2527:6;2523:16;2517:23;2511:3;2500:9;2496:19;2489:52;2597:3;2589:6;2585:16;2579:23;2572:4;2561:9;2557:20;2550:53;2620:6;2612:14;;;1858:774;;;;:::o;2637:127::-;2698:10;2693:3;2689:20;2686:1;2679:31;2729:4;2726:1;2719:15;2753:4;2750:1;2743:15;2769:275;2840:2;2834:9;2905:2;2886:13;;-1:-1:-1;;2882:27:142;2870:40;;-1:-1:-1;;;;;2925:34:142;;2961:22;;;2922:62;2919:88;;;2987:18;;:::i;:::-;3023:2;3016:22;2769:275;;-1:-1:-1;2769:275:142:o;3049:406::-;3113:5;-1:-1:-1;;;;;3136:30:142;;3133:56;;;3169:18;;:::i;:::-;3207:57;3252:2;3231:15;;-1:-1:-1;;3227:29:142;3258:4;3223:40;3207:57;:::i;:::-;3198:66;;3287:6;3280:5;3273:21;3327:3;3318:6;3313:3;3309:16;3306:25;3303:45;;;3344:1;3341;3334:12;3303:45;3393:6;3388:3;3381:4;3374:5;3370:16;3357:43;3447:1;3440:4;3431:6;3424:5;3420:18;3416:29;3409:40;3049:406;;;;;:::o;3460:220::-;3502:5;3555:3;3548:4;3540:6;3536:17;3532:27;3522:55;;3573:1;3570;3563:12;3522:55;3595:79;3670:3;3661:6;3648:20;3641:4;3633:6;3629:17;3595:79;:::i;3685:388::-;3762:6;3770;3823:2;3811:9;3802:7;3798:23;3794:32;3791:52;;;3839:1;3836;3829:12;3791:52;3862:23;;;-1:-1:-1;3936:2:142;3921:18;;3908:32;-1:-1:-1;;;;;3952:30:142;;3949:50;;;3995:1;3992;3985:12;3949:50;4018:49;4059:7;4050:6;4039:9;4035:22;4018:49;:::i;:::-;4008:59;;;3685:388;;;;;:::o;4078:203::-;-1:-1:-1;;;;;4242:32:142;;;;4224:51;;4212:2;4197:18;;4078:203::o;4468:183::-;4528:4;-1:-1:-1;;;;;4550:30:142;;4547:56;;;4583:18;;:::i;:::-;-1:-1:-1;4628:1:142;4624:14;4640:4;4620:25;;4468:183::o;4656:886::-;4708:5;4761:3;4754:4;4746:6;4742:17;4738:27;4728:55;;4779:1;4776;4769:12;4728:55;4815:6;4802:20;4841:4;4865:60;4881:43;4921:2;4881:43;:::i;:::-;4865:60;:::i;:::-;4959:15;;;5045:1;5041:10;;;;5029:23;;5025:32;;;4990:12;;;;5069:15;;;5066:35;;;5097:1;5094;5087:12;5066:35;5133:2;5125:6;5121:15;5145:368;5161:6;5156:3;5153:15;5145:368;;;5234:17;;-1:-1:-1;;;;;5267:35:142;;5264:125;;;5343:1;5372:2;5368;5361:14;5264:125;5414:56;5466:3;5461:2;5447:11;5439:6;5435:24;5431:33;5414:56;:::i;:::-;5402:69;;-1:-1:-1;5491:12:142;;;;5178;;5145:368;;;-1:-1:-1;5531:5:142;4656:886;-1:-1:-1;;;;;;4656:886:142:o;5547:1147::-;5674:6;5682;5735:2;5723:9;5714:7;5710:23;5706:32;5703:52;;;5751:1;5748;5741:12;5703:52;5778:23;;-1:-1:-1;;;;;5850:14:142;;;5847:34;;;5877:1;5874;5867:12;5847:34;5915:6;5904:9;5900:22;5890:32;;5960:7;5953:4;5949:2;5945:13;5941:27;5931:55;;5982:1;5979;5972:12;5931:55;6018:2;6005:16;6040:4;6064:60;6080:43;6120:2;6080:43;:::i;6064:60::-;6158:15;;;6240:1;6236:10;;;;6228:19;;6224:28;;;6189:12;;;;6264:19;;;6261:39;;;6296:1;6293;6286:12;6261:39;6320:11;;;;6340:142;6356:6;6351:3;6348:15;6340:142;;;6422:17;;6410:30;;6373:12;;;;6460;;;;6340:142;;;6501:5;-1:-1:-1;;6544:18:142;;6531:32;;-1:-1:-1;;6575:16:142;;;6572:36;;;6604:1;6601;6594:12;6572:36;;6627:61;6680:7;6669:8;6658:9;6654:24;6627:61;:::i;6699:461::-;6752:3;6790:5;6784:12;6817:6;6812:3;6805:19;6843:4;6872:2;6867:3;6863:12;6856:19;;6909:2;6902:5;6898:14;6930:1;6940:195;6954:6;6951:1;6948:13;6940:195;;;7019:13;;-1:-1:-1;;;;;7015:39:142;7003:52;;7075:12;;;;7110:15;;;;7051:1;6969:9;6940:195;;;-1:-1:-1;7151:3:142;;6699:461;-1:-1:-1;;;;;6699:461:142:o;7165:261::-;7344:2;7333:9;7326:21;7307:4;7364:56;7416:2;7405:9;7401:18;7393:6;7364:56;:::i;7798:388::-;7866:6;7874;7927:2;7915:9;7906:7;7902:23;7898:32;7895:52;;;7943:1;7940;7933:12;7895:52;7982:9;7969:23;8001:31;8026:5;8001:31;:::i;:::-;8051:5;-1:-1:-1;8108:2:142;8093:18;;8080:32;8121:33;8080:32;8121:33;:::i;:::-;8173:7;8163:17;;;7798:388;;;;;:::o;8191:315::-;8259:6;8267;8320:2;8308:9;8299:7;8295:23;8291:32;8288:52;;;8336:1;8333;8326:12;8288:52;8372:9;8359:23;8349:33;;8432:2;8421:9;8417:18;8404:32;8445:31;8470:5;8445:31;:::i;8831:737::-;8885:5;8938:3;8931:4;8923:6;8919:17;8915:27;8905:55;;8956:1;8953;8946:12;8905:55;8992:6;8979:20;9018:4;9042:60;9058:43;9098:2;9058:43;:::i;9042:60::-;9136:15;;;9222:1;9218:10;;;;9206:23;;9202:32;;;9167:12;;;;9246:15;;;9243:35;;;9274:1;9271;9264:12;9243:35;9310:2;9302:6;9298:15;9322:217;9338:6;9333:3;9330:15;9322:217;;;9418:3;9405:17;9435:31;9460:5;9435:31;:::i;:::-;9479:18;;9517:12;;;;9355;;9322:217;;9573:635;9684:6;9692;9700;9753:2;9741:9;9732:7;9728:23;9724:32;9721:52;;;9769:1;9766;9759:12;9721:52;9792:23;;;-1:-1:-1;9866:2:142;9851:18;;9838:32;-1:-1:-1;;;;;9919:14:142;;;9916:34;;;9946:1;9943;9936:12;9916:34;9969:61;10022:7;10013:6;10002:9;9998:22;9969:61;:::i;:::-;9959:71;;10083:2;10072:9;10068:18;10055:32;10039:48;;10112:2;10102:8;10099:16;10096:36;;;10128:1;10125;10118:12;10096:36;;10151:51;10194:7;10183:8;10172:9;10168:24;10151:51;:::i;:::-;10141:61;;;9573:635;;;;;:::o;10663:248::-;10731:6;10739;10792:2;10780:9;10771:7;10767:23;10763:32;10760:52;;;10808:1;10805;10798:12;10760:52;-1:-1:-1;;10831:23:142;;;10901:2;10886:18;;;10873:32;;-1:-1:-1;10663:248:142:o;10916:734::-;10971:5;11019:4;11007:9;11002:3;10998:19;10994:30;10991:50;;;11037:1;11034;11027:12;10991:50;11070:4;11064:11;;;11102:17;;-1:-1:-1;;;;;11171:18:142;;;11191:22;;;11168:46;11165:72;;;11217:18;;:::i;:::-;11259:10;11253:4;11246:24;11288:6;11279:15;;11331:9;11318:23;11310:6;11303:39;11393:2;11382:9;11378:18;11365:32;11351:46;;11420:2;11412:6;11409:14;11406:34;;;11436:1;11433;11426:12;11406:34;-1:-1:-1;11459:22:142;;11512:4;11504:13;;11500:23;-1:-1:-1;11490:51:142;;11537:1;11534;11527:12;11490:51;11574:69;11639:3;11634:2;11621:16;11616:2;11612;11608:11;11574:69;:::i;:::-;11569:2;11561:6;11557:15;11550:94;;;10916:734;;;;:::o;11655:415::-;11749:6;11757;11810:2;11798:9;11789:7;11785:23;11781:32;11778:52;;;11826:1;11823;11816:12;11778:52;11849:23;;;-1:-1:-1;11923:2:142;11908:18;;11895:32;-1:-1:-1;;;;;11939:30:142;;11936:50;;;11982:1;11979;11972:12;11936:50;12005:59;12056:7;12047:6;12036:9;12032:22;12005:59;:::i;12075:1208::-;12248:6;12256;12264;12272;12280;12288;12296;12349:3;12337:9;12328:7;12324:23;12320:33;12317:53;;;12366:1;12363;12356:12;12317:53;12402:9;12389:23;12379:33;;12462:2;12451:9;12447:18;12434:32;12475:31;12500:5;12475:31;:::i;:::-;12525:5;-1:-1:-1;12581:2:142;12566:18;;12553:32;-1:-1:-1;;;;;12634:14:142;;;12631:34;;;12661:1;12658;12651:12;12631:34;12684:49;12725:7;12716:6;12705:9;12701:22;12684:49;:::i;:::-;12674:59;;12785:2;12774:9;12770:18;12757:32;12742:47;;12798:33;12823:7;12798:33;:::i;:::-;12850:7;;-1:-1:-1;12904:3:142;12889:19;;12876:33;;-1:-1:-1;12962:3:142;12947:19;;12934:33;;12979:16;;;12976:36;;;13008:1;13005;12998:12;12976:36;13031:61;13084:7;13073:8;13062:9;13058:24;13031:61;:::i;:::-;13021:71;;13145:3;13134:9;13130:19;13117:33;13101:49;;13175:2;13165:8;13162:16;13159:36;;;13191:1;13188;13181:12;13159:36;;13214:63;13269:7;13258:8;13247:9;13243:24;13214:63;:::i;:::-;13204:73;;;12075:1208;;;;;;;;;;:::o;13548:675::-;13651:6;13659;13667;13675;13683;13736:3;13724:9;13715:7;13711:23;13707:33;13704:53;;;13753:1;13750;13743:12;13704:53;13792:9;13779:23;13811:31;13836:5;13811:31;:::i;:::-;13861:5;-1:-1:-1;13918:2:142;13903:18;;13890:32;13931:33;13890:32;13931:33;:::i;:::-;13983:7;-1:-1:-1;14042:2:142;14027:18;;14014:32;14055:33;14014:32;14055:33;:::i;:::-;13548:675;;;;-1:-1:-1;14107:7:142;;14161:2;14146:18;;14133:32;;-1:-1:-1;14212:3:142;14197:19;14184:33;;13548:675;-1:-1:-1;;13548:675:142:o;14228:854::-;14357:6;14365;14373;14426:2;14414:9;14405:7;14401:23;14397:32;14394:52;;;14442:1;14439;14432:12;14394:52;14469:23;;-1:-1:-1;;;;;14541:14:142;;;14538:34;;;14568:1;14565;14558:12;14538:34;14606:6;14595:9;14591:22;14581:32;;14651:7;14644:4;14640:2;14636:13;14632:27;14622:55;;14673:1;14670;14663:12;14622:55;14713:2;14700:16;14739:2;14731:6;14728:14;14725:34;;;14755:1;14752;14745:12;14725:34;14810:7;14803:4;14793:6;14790:1;14786:14;14782:2;14778:23;14774:34;14771:47;14768:67;;;14831:1;14828;14821:12;14768:67;14862:4;14854:13;;;;-1:-1:-1;14886:6:142;-1:-1:-1;14930:20:142;;;14917:34;;14963:16;;;14960:36;;;14992:1;14989;14982:12;14960:36;;15015:61;15068:7;15057:8;15046:9;15042:24;15015:61;:::i;15087:380::-;15166:1;15162:12;;;;15209;;;15230:61;;15284:4;15276:6;15272:17;15262:27;;15230:61;15337:2;15329:6;15326:14;15306:18;15303:38;15300:161;;15383:10;15378:3;15374:20;15371:1;15364:31;15418:4;15415:1;15408:15;15446:4;15443:1;15436:15;15300:161;;15087:380;;;:::o;15472:315::-;15647:2;15636:9;15629:21;15610:4;15667:45;15708:2;15697:9;15693:18;15685:6;15667:45;:::i;:::-;15659:53;;15777:1;15773;15768:3;15764:11;15760:19;15752:6;15748:32;15743:2;15732:9;15728:18;15721:60;15472:315;;;;;:::o;15792:251::-;15862:6;15915:2;15903:9;15894:7;15890:23;15886:32;15883:52;;;15931:1;15928;15921:12;15883:52;15963:9;15957:16;15982:31;16007:5;15982:31;:::i;16048:127::-;16109:10;16104:3;16100:20;16097:1;16090:31;16140:4;16137:1;16130:15;16164:4;16161:1;16154:15;16180:184;16250:6;16303:2;16291:9;16282:7;16278:23;16274:32;16271:52;;;16319:1;16316;16309:12;16271:52;-1:-1:-1;16342:16:142;;16180:184;-1:-1:-1;16180:184:142:o;16785:519::-;17038:2;17027:9;17020:21;17001:4;17064:56;17116:2;17105:9;17101:18;17093:6;17064:56;:::i;:::-;17168:9;17160:6;17156:22;17151:2;17140:9;17136:18;17129:50;17196:33;17222:6;17214;17196:33;:::i;:::-;17188:41;;;17294:1;17290;17285:3;17281:11;17277:19;17269:6;17265:32;17260:2;17249:9;17245:18;17238:60;16785:519;;;;;;:::o;17435:545::-;17537:2;17532:3;17529:11;17526:448;;;17573:1;17598:5;17594:2;17587:17;17643:4;17639:2;17629:19;17713:2;17701:10;17697:19;17694:1;17690:27;17684:4;17680:38;17749:4;17737:10;17734:20;17731:47;;;-1:-1:-1;17772:4:142;17731:47;17827:2;17822:3;17818:12;17815:1;17811:20;17805:4;17801:31;17791:41;;17882:82;17900:2;17893:5;17890:13;17882:82;;;17945:17;;;17926:1;17915:13;17882:82;;;17886:3;;;17435:545;;;:::o;18156:1352::-;18276:10;;-1:-1:-1;;;;;18298:30:142;;18295:56;;;18331:18;;:::i;:::-;18360:97;18450:6;18410:38;18442:4;18436:11;18410:38;:::i;:::-;18404:4;18360:97;:::i;:::-;18512:4;;18576:2;18565:14;;18593:1;18588:663;;;;19295:1;19312:6;19309:89;;;-1:-1:-1;19364:19:142;;;19358:26;19309:89;-1:-1:-1;;18113:1:142;18109:11;;;18105:24;18101:29;18091:40;18137:1;18133:11;;;18088:57;19411:81;;18558:944;;18588:663;17382:1;17375:14;;;17419:4;17406:18;;-1:-1:-1;;18624:20:142;;;18742:236;18756:7;18753:1;18750:14;18742:236;;;18845:19;;;18839:26;18824:42;;18937:27;;;;18905:1;18893:14;;;;18772:19;;18742:236;;;18746:3;19006:6;18997:7;18994:19;18991:201;;;19067:19;;;19061:26;-1:-1:-1;;19150:1:142;19146:14;;;19162:3;19142:24;19138:37;19134:42;19119:58;19104:74;;18991:201;-1:-1:-1;;;;;19238:1:142;19222:14;;;19218:22;19205:36;;-1:-1:-1;18156:1352:142:o;19513:261::-;19694:2;19683:9;19676:21;19657:4;19714:54;19764:2;19753:9;19749:18;19741:6;19714:54;:::i;19779:127::-;19840:10;19835:3;19831:20;19828:1;19821:31;19871:4;19868:1;19861:15;19895:4;19892:1;19885:15;19911:135;19950:3;19971:17;;;19968:43;;19991:18;;:::i;:::-;-1:-1:-1;20038:1:142;20027:13;;19911:135::o;21015:168::-;21088:9;;;21119;;21136:15;;;21130:22;;21116:37;21106:71;;21157:18;;:::i;21188:217::-;21228:1;21254;21244:132;;21298:10;21293:3;21289:20;21286:1;21279:31;21333:4;21330:1;21323:15;21361:4;21358:1;21351:15;21244:132;-1:-1:-1;21390:9:142;;21188:217::o;21410:128::-;21477:9;;;21498:11;;;21495:37;;;21512:18;;:::i;21543:125::-;21608:9;;;21629:10;;;21626:36;;;21642:18;;:::i;22496:277::-;22563:6;22616:2;22604:9;22595:7;22591:23;22587:32;22584:52;;;22632:1;22629;22622:12;22584:52;22664:9;22658:16;22717:5;22710:13;22703:21;22696:5;22693:32;22683:60;;22739:1;22736;22729:12;23104:289;23279:6;23268:9;23261:25;23322:2;23317;23306:9;23302:18;23295:30;23242:4;23342:45;23383:2;23372:9;23368:18;23360:6;23342:45;:::i;23668:550::-;-1:-1:-1;;;;;23989:15:142;;;23971:34;;24041:15;;24036:2;24021:18;;24014:43;24088:2;24073:18;;24066:34;;;24136:3;24131:2;24116:18;;24109:31;;;23914:4;;24157:55;;24192:19;;24184:6;24157:55;:::i;:::-;24149:63;23668:550;-1:-1:-1;;;;;;23668:550:142:o;24439:812::-;-1:-1:-1;;;24845:3:142;24838:38;24820:3;24905:6;24899:13;24921:75;24989:6;24984:2;24979:3;24975:12;24968:4;24960:6;24956:17;24921:75;:::i;:::-;-1:-1:-1;;;25055:2:142;25015:16;;;25047:11;;;25040:40;25105:13;;25127:76;25105:13;25189:2;25181:11;;25174:4;25162:17;;25127:76;:::i;:::-;25223:17;25242:2;25219:26;;24439:812;-1:-1:-1;;;;24439:812:142:o;25256:220::-;25405:2;25394:9;25387:21;25368:4;25425:45;25466:2;25455:9;25451:18;25443:6;25425:45;:::i;25833:136::-;25872:3;25900:5;25890:39;;25909:18;;:::i;:::-;-1:-1:-1;;;25945:18:142;;25833:136::o","linkReferences":{}},"methodIdentifiers":{"DEFAULT_ADMIN_ROLE()":"a217fddf","NATIVE()":"a0cf0aea","addPoolManager(uint256,address)":"2cf682b0","addToCloneableStrategies(address)":"41bba0b4","allocate(uint256,bytes)":"2ec38188","batchAllocate(uint256[],bytes[])":"c6dff1cf","batchRegisterRecipient(uint256[],bytes[])":"1a20bd88","cancelOwnershipHandover()":"54d1f13d","completeOwnershipHandover(address)":"f04e283e","createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])":"77da8caf","createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":"e1007d4a","distribute(uint256,address[],bytes)":"3a5fbd92","fundPool(uint256,uint256)":"5acd6fac","getBaseFee()":"15e812ad","getFeeDenominator()":"f4e1fc41","getPercentFee()":"4edbaadc","getPool(uint256)":"068bcd8d","getRegistry()":"5ab1bd53","getRoleAdmin(bytes32)":"248a9ca3","getStrategy(uint256)":"cfc0cc34","getTreasury()":"3b19e84a","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","initialize(address,address,address,uint256,uint256)":"a6b63eb8","isCloneableStrategy(address)":"ab2ec589","isPoolAdmin(uint256,address)":"ab3febc6","isPoolManager(uint256,address)":"29e40d4b","owner()":"8da5cb5b","ownershipHandoverExpiresAt(address)":"fee81cf4","recoverFunds(address,address)":"24ae6a27","registerRecipient(uint256,bytes)":"075c0e9c","removeFromCloneableStrategies(address)":"031e2fa1","removePoolManager(uint256,address)":"7f5a70bd","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","requestOwnershipHandover()":"25692962","revokeRole(bytes32,address)":"d547741f","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","updateBaseFee(uint256)":"8e690186","updatePercentFee(uint256)":"f54fc4a0","updatePoolMetadata(uint256,(uint256,string))":"5f9ca138","updateRegistry(address)":"1a5da6c8","updateTreasury(address)":"7f51bb1f"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewOwnerIsZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NoHandoverRequest\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Unauthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BaseFeePaid\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"baseFee\",\"type\":\"uint256\"}],\"name\":\"BaseFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"OwnershipHandoverCanceled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"OwnershipHandoverRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"percentFee\",\"type\":\"uint256\"}],\"name\":\"PercentFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"contract IStrategy\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"PoolFunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"name\":\"PoolMetadataUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registry\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyApproved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"treasury\",\"type\":\"address\"}],\"name\":\"TreasuryUpdated\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"addPoolManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"addToCloneableStrategies\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_poolIds\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes[]\",\"name\":\"_datas\",\"type\":\"bytes[]\"}],\"name\":\"batchAllocate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_poolIds\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes[]\",\"name\":\"_data\",\"type\":\"bytes[]\"}],\"name\":\"batchRegisterRecipient\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"recipientIds\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cancelOwnershipHandover\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"completeOwnershipHandover\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_initStrategyData\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_managers\",\"type\":\"address[]\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_initStrategyData\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_managers\",\"type\":\"address[]\"}],\"name\":\"createPoolWithCustomStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fundPool\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBaseFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeeDenominator\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"FEE_DENOMINATOR\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPercentFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"}],\"name\":\"getPool\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStrategy\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"managerRole\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"adminRole\",\"type\":\"bytes32\"}],\"internalType\":\"struct IAllo.Pool\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"}],\"name\":\"getStrategy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTreasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registry\",\"type\":\"address\"},{\"internalType\":\"address payable\",\"name\":\"_treasury\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_percentFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_baseFee\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"isCloneableStrategy\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_address\",\"type\":\"address\"}],\"name\":\"isPoolAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_address\",\"type\":\"address\"}],\"name\":\"isPoolManager\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"result\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"ownershipHandoverExpiresAt\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"recoverFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeFromCloneableStrategies\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"removePoolManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"requestOwnershipHandover\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_baseFee\",\"type\":\"uint256\"}],\"name\":\"updateBaseFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_percentFee\",\"type\":\"uint256\"}],\"name\":\"updatePercentFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"updatePoolMetadata\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_registry\",\"type\":\"address\"}],\"name\":\"updateRegistry\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_treasury\",\"type\":\"address\"}],\"name\":\"updateTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"@thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \",\"details\":\"The contract must be initialized with the 'initialize()' function.\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}],\"NewOwnerIsZeroAddress()\":[{\"details\":\"The `newOwner` cannot be the zero address.\"}],\"NoHandoverRequest()\":[{\"details\":\"The `pendingOwner` does not have a valid handover request.\"}],\"Unauthorized()\":[{\"details\":\"The caller is not authorized to call the function.\"}]},\"events\":{\"BaseFeePaid(uint256,uint256)\":{\"params\":{\"amount\":\"Amount of the base fee paid\",\"poolId\":\"ID of the pool the base fee was paid for\"}},\"BaseFeeUpdated(uint256)\":{\"params\":{\"baseFee\":\"New base fee amount\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"OwnershipHandoverCanceled(address)\":{\"details\":\"The ownership handover to `pendingOwner` has been canceled.\"},\"OwnershipHandoverRequested(address)\":{\"details\":\"An ownership handover to `pendingOwner` has been requested.\"},\"OwnershipTransferred(address,address)\":{\"details\":\"The ownership is transferred from `oldOwner` to `newOwner`. This event is intentionally kept the same as OpenZeppelin's Ownable to be compatible with indexers and [EIP-173](https://eips.ethereum.org/EIPS/eip-173), despite it not being as lightweight as a single argument event.\"},\"PercentFeeUpdated(uint256)\":{\"params\":{\"percentFee\":\"New percentage for the fee\"}},\"PoolCreated(uint256,bytes32,address,address,uint256,(uint256,string))\":{\"params\":{\"amount\":\"Amount pool was funded with when created\",\"metadata\":\"Pool metadata\",\"poolId\":\"ID of the pool created\",\"profileId\":\"ID of the profile the pool is associated with\",\"strategy\":\"Address of the strategy contract\",\"token\":\"Address of the token pool was funded with when created\"}},\"PoolFunded(uint256,uint256,uint256)\":{\"params\":{\"amount\":\"Amount funded to the pool\",\"fee\":\"Amount of the fee paid to the treasury\",\"poolId\":\"ID of the pool funded\"}},\"PoolMetadataUpdated(uint256,(uint256,string))\":{\"params\":{\"metadata\":\"Pool metadata that was updated\",\"poolId\":\"ID of the pool updated\"}},\"RegistryUpdated(address)\":{\"params\":{\"registry\":\"Address of the new registry\"}},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"StrategyApproved(address)\":{\"params\":{\"strategy\":\"Address of the strategy approved\"}},\"StrategyRemoved(address)\":{\"params\":{\"strategy\":\"Address of the strategy removed\"}},\"TreasuryUpdated(address)\":{\"params\":{\"treasury\":\"Address of the new treasury\"}}},\"kind\":\"dev\",\"methods\":{\"addPoolManager(uint256,address)\":{\"details\":\"Emits 'RoleGranted()' event. 'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address to add\",\"_poolId\":\"ID of the pool\"}},\"addToCloneableStrategies(address)\":{\"details\":\"Emits the 'StrategyApproved()' event. 'msg.sender' must be Allo owner.\",\"params\":{\"_strategy\":\"The address of the strategy\"}},\"allocate(uint256,bytes)\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate().\",\"params\":{\"_data\":\"Encoded data unique to the strategy for that pool\",\"_poolId\":\"ID of the pool\"}},\"batchAllocate(uint256[],bytes[])\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate(). Please note that this is not a 'payable' function, so if you want to send funds to the strategy, you must send the funds using 'fundPool()'.\",\"params\":{\"_datas\":\"encoded data unique to the strategy for that pool\",\"_poolIds\":\"IDs of the pools\"}},\"batchRegisterRecipient(uint256[],bytes[])\":{\"details\":\"Returns the 'recipientIds' from the strategy that have been registered from calling this function. Encoded data unique to a strategy that registerRecipient() requires. Encoded '_data' length must match '_poolIds' length or this will revert with MISMATCH(). Other requirements will be determined by the strategy.\",\"params\":{\"_data\":\"An array of encoded data unique to a strategy that registerRecipient() requires.\",\"_poolIds\":\"ID's of the pools\"},\"returns\":{\"recipientIds\":\"The recipient IDs that have been registered\"}},\"cancelOwnershipHandover()\":{\"details\":\"Cancels the two-step ownership handover to the caller, if any.\"},\"completeOwnershipHandover(address)\":{\"details\":\"Allows the owner to complete the two-step ownership handover to `pendingOwner`. Reverts if there is no existing ownership handover requested by `pendingOwner`.\"},\"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"custom:initstrategydata\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'\",\"details\":\"'msg.sender' must be owner or member of the profile id passed as '_profileId'.\",\"params\":{\"_amount\":\"The amount of the token\",\"_initStrategyData\":\"The data to initialize the strategy\",\"_managers\":\"The managers of the pool\",\"_metadata\":\"The metadata of the pool\",\"_profileId\":\"The ID of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\",\"_strategy\":\"The address of the strategy contract the pool will use.\",\"_token\":\"The address of the token\"}},\"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"details\":\"'msg.sender' must be a member or owner of a profile to create a pool with or without a custom strategy, The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'. The strategy address passed must not be a cloneable strategy. The strategy address passed must not be the zero address. 'msg.sender' must be a member or owner of the profile id passed as '_profileId'.\",\"params\":{\"_amount\":\"The amount of the token you want to deposit into the pool on initialization\",\"_initStrategyData\":\"The data to initialize the strategy\",\"_managers\":\"The managers of the pool, and can be added/removed later by the pool admin\",\"_metadata\":\"The 'Metadata' of the pool, this uses our 'Meatdata.sol' struct (consistent throughout the protocol)\",\"_profileId\":\"The 'profileId' of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\",\"_strategy\":\"The address of the deployed custom strategy\",\"_token\":\"The address of the token you want to use in your pool\"},\"returns\":{\"poolId\":\"The ID of the pool\"}},\"distribute(uint256,address[],bytes)\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'strategy.distribute()'.\",\"params\":{\"_data\":\"Encoded data unique to the strategy\",\"_poolId\":\"ID of the pool\",\"_recipientIds\":\"Ids of the recipients of the distribution\"}},\"fundPool(uint256,uint256)\":{\"details\":\"Anyone can fund a pool and call this function.\",\"params\":{\"_amount\":\"The amount to be deposited into the pool\",\"_poolId\":\"ID of the pool\"}},\"getBaseFee()\":{\"returns\":{\"_0\":\"The base fee\"}},\"getFeeDenominator()\":{\"returns\":{\"FEE_DENOMINATOR\":\"The fee denominator is (1e18) which represents 100%\"}},\"getPercentFee()\":{\"returns\":{\"_0\":\"The fee percentage (1e18 = 100%)\"}},\"getPool(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"The 'Pool' struct\"}},\"getRegistry()\":{\"returns\":{\"_0\":\"The registry address\"}},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"getStrategy(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"The address of the strategy\"}},\"getTreasury()\":{\"returns\":{\"_0\":\"The treasury address\"}},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"initialize(address,address,address,uint256,uint256)\":{\"details\":\"During upgrade -> a higher version should be passed to reinitializer\",\"params\":{\"_baseFee\":\"The base fee\",\"_owner\":\"The owner of allo\",\"_percentFee\":\"The percentage fee\",\"_registry\":\"The address of the registry\",\"_treasury\":\"The address of the treasury\"}},\"isCloneableStrategy(address)\":{\"params\":{\"_strategy\":\"The address of the strategy\"},\"returns\":{\"_0\":\"'true' if the strategy is cloneable, otherwise 'false'\"}},\"isPoolAdmin(uint256,address)\":{\"params\":{\"_address\":\"The address to check\",\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"'true' if the address is a pool admin, otherwise 'false'\"}},\"isPoolManager(uint256,address)\":{\"params\":{\"_address\":\"The address to check\",\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"'true' if the address is a pool manager, otherwise 'false'\"}},\"owner()\":{\"details\":\"Returns the owner of the contract.\"},\"ownershipHandoverExpiresAt(address)\":{\"details\":\"Returns the expiry timestamp for the two-step ownership handover to `pendingOwner`.\"},\"recoverFunds(address,address)\":{\"details\":\"'msg.sender' must be Allo owner\",\"params\":{\"_recipient\":\"The recipient\",\"_token\":\"The token to transfer\"}},\"registerRecipient(uint256,bytes)\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of registerRecipient().\",\"params\":{\"_data\":\"Encoded data unique to a strategy that registerRecipient() requires\",\"_poolId\":\"ID of the pool\"},\"returns\":{\"_0\":\"recipientId The recipient ID that has been registered\"}},\"removeFromCloneableStrategies(address)\":{\"details\":\"Emits 'StrategyRemoved()' event. 'msg.sender must be Allo owner.\",\"params\":{\"_strategy\":\"The address of the strategy\"}},\"removePoolManager(uint256,address)\":{\"details\":\"Emits 'RoleRevoked()' event. 'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address to remove\",\"_poolId\":\"ID of the pool\"}},\"renounceOwnership()\":{\"details\":\"Allows the owner to renounce their ownership.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"requestOwnershipHandover()\":{\"details\":\"Request a two-step ownership handover to the caller. The request will automatically expire in 48 hours (172800 seconds) by default.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Allows the owner to transfer the ownership to `newOwner`.\"},\"updateBaseFee(uint256)\":{\"details\":\"Use this to update the base fee. 'msg.sender' must be Allo owner.\",\"params\":{\"_baseFee\":\"The new base fee\"}},\"updatePercentFee(uint256)\":{\"details\":\"Use this to update the fee percentage. 'msg.sender' must be Allo owner.\",\"params\":{\"_percentFee\":\"The new fee\"}},\"updatePoolMetadata(uint256,(uint256,string))\":{\"details\":\"'msg.sender' must be a pool manager. Emits 'PoolMetadataUpdated()' event.\",\"params\":{\"_metadata\":\"The new metadata of the pool\",\"_poolId\":\"ID of the pool\"}},\"updateRegistry(address)\":{\"details\":\"Use this to update the registry address. 'msg.sender' must be Allo owner.\",\"params\":{\"_registry\":\"The new registry address\"}},\"updateTreasury(address)\":{\"details\":\"Use this to update the treasury address. 'msg.sender' must be Allo owner.\",\"params\":{\"_treasury\":\"The new treasury address\"}}},\"stateVariables\":{\"_nonces\":{\"details\":\"'msg.sender' -> 'nonce' for cloning strategies\"},\"baseFee\":{\"details\":\"This is different from the 'percentFee' in that this is a flat fee and not a percentage. So if you want to create a pool with a base fee of 100 DAI, then you would pass 100 DAI to the 'createPool()' function and the pool would be created with 100 DAI less than the amount you passed to the function. The base fee is sent to the treasury address.\"},\"cloneableStrategies\":{\"details\":\"Strategy.address -> bool\"},\"percentFee\":{\"details\":\"How the percentage is represented in our contracts: 1e18 = 100%, 1e17 = 10%, 1e16 = 1%, 1e15 = 0.1%\"},\"pools\":{\"details\":\"'Pool.id' -> 'Pool'\"}},\"title\":\"Allo\",\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"BaseFeePaid(uint256,uint256)\":{\"notice\":\"Emitted when the base fee is paid\"},\"BaseFeeUpdated(uint256)\":{\"notice\":\"Emitted when the base fee is updated\"},\"PercentFeeUpdated(uint256)\":{\"notice\":\"Emitted when the percent fee is updated\"},\"PoolCreated(uint256,bytes32,address,address,uint256,(uint256,string))\":{\"notice\":\"Event emitted when a new pool is created\"},\"PoolFunded(uint256,uint256,uint256)\":{\"notice\":\"Emitted when a pool is funded\"},\"PoolMetadataUpdated(uint256,(uint256,string))\":{\"notice\":\"Emitted when a pools metadata is updated\"},\"RegistryUpdated(address)\":{\"notice\":\"Emitted when the registry address is updated\"},\"StrategyApproved(address)\":{\"notice\":\"Emitted when a strategy is approved and added to the cloneable strategies\"},\"StrategyRemoved(address)\":{\"notice\":\"Emitted when a strategy is removed from the cloneable strategies\"},\"TreasuryUpdated(address)\":{\"notice\":\"Emitted when the treasury address is updated\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"addPoolManager(uint256,address)\":{\"notice\":\"Add a pool manager\"},\"addToCloneableStrategies(address)\":{\"notice\":\"Add a strategy to the allowlist.\"},\"allocate(uint256,bytes)\":{\"notice\":\"Allocate to a recipient or multiple recipients.\"},\"batchAllocate(uint256[],bytes[])\":{\"notice\":\"Allocate to multiple pools\"},\"batchRegisterRecipient(uint256[],bytes[])\":{\"notice\":\"Register multiple recipients to multiple pools.\"},\"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"notice\":\"Creates a new pool (by cloning a cloneable strategies).\"},\"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"notice\":\"Creates a new pool (with a custom strategy)\"},\"distribute(uint256,address[],bytes)\":{\"notice\":\"Distribute to a recipient or multiple recipients.\"},\"fundPool(uint256,uint256)\":{\"notice\":\"Fund a pool.\"},\"getBaseFee()\":{\"notice\":\"Getter for base fee.\"},\"getFeeDenominator()\":{\"notice\":\"Getter for the fee denominator\"},\"getPercentFee()\":{\"notice\":\"Getter for fee percentage.\"},\"getPool(uint256)\":{\"notice\":\"Getter for the 'Pool'.\"},\"getRegistry()\":{\"notice\":\"Getter for registry.\"},\"getStrategy(uint256)\":{\"notice\":\"Getter for the strategy.\"},\"getTreasury()\":{\"notice\":\"Getter for treasury address.\"},\"initialize(address,address,address,uint256,uint256)\":{\"notice\":\"Initializes the contract after an upgrade\"},\"isCloneableStrategy(address)\":{\"notice\":\"Getter for if strategy is cloneable.\"},\"isPoolAdmin(uint256,address)\":{\"notice\":\"Checks if the address is a pool admin.\"},\"isPoolManager(uint256,address)\":{\"notice\":\"Checks if the address is a pool manager\"},\"recoverFunds(address,address)\":{\"notice\":\"Transfer the funds recovered to the recipient\"},\"registerRecipient(uint256,bytes)\":{\"notice\":\"Passes _data through to the strategy for that pool.\"},\"removeFromCloneableStrategies(address)\":{\"notice\":\"Remove a strategy from the allowlist\"},\"removePoolManager(uint256,address)\":{\"notice\":\"Remove a pool manager\"},\"updateBaseFee(uint256)\":{\"notice\":\"Updates the base fee.\"},\"updatePercentFee(uint256)\":{\"notice\":\"Updates the fee percentage.\"},\"updatePoolMetadata(uint256,(uint256,string))\":{\"notice\":\"Update pool metadata\"},\"updateRegistry(address)\":{\"notice\":\"Updates the registry address.\"},\"updateTreasury(address)\":{\"notice\":\"Updates the treasury address.\"}},\"notice\":\"This contract is used to create & manage pools as well as manage the protocol.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/Allo.sol\":\"Allo\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Allo.sol\":{\"keccak256\":\"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c\",\"dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd\"]},\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/auth/Ownable.sol\":{\"keccak256\":\"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30\",\"dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol\":{\"keccak256\":\"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f\",\"dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[],"type":"error","name":"NewOwnerIsZeroAddress"},{"inputs":[],"type":"error","name":"NoHandoverRequest"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"Unauthorized"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"BaseFeePaid","anonymous":false},{"inputs":[{"internalType":"uint256","name":"baseFee","type":"uint256","indexed":false}],"type":"event","name":"BaseFeeUpdated","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipHandoverCanceled","anonymous":false},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipHandoverRequested","anonymous":false},{"inputs":[{"internalType":"address","name":"oldOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"percentFee","type":"uint256","indexed":false}],"type":"event","name":"PercentFeeUpdated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"contract IStrategy","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"fee","type":"uint256","indexed":false}],"type":"event","name":"PoolFunded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolMetadataUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"registry","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false}],"type":"event","name":"StrategyApproved","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"treasury","type":"address","indexed":false}],"type":"event","name":"TreasuryUpdated","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_manager","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addPoolManager"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addToCloneableStrategies"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256[]","name":"_poolIds","type":"uint256[]"},{"internalType":"bytes[]","name":"_datas","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function","name":"batchAllocate"},{"inputs":[{"internalType":"uint256[]","name":"_poolIds","type":"uint256[]"},{"internalType":"bytes[]","name":"_data","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function","name":"batchRegisterRecipient","outputs":[{"internalType":"address[]","name":"recipientIds","type":"address[]"}]},{"inputs":[],"stateMutability":"payable","type":"function","name":"cancelOwnershipHandover"},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"stateMutability":"payable","type":"function","name":"completeOwnershipHandover"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"bytes","name":"_initStrategyData","type":"bytes"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address[]","name":"_managers","type":"address[]"}],"stateMutability":"payable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"bytes","name":"_initStrategyData","type":"bytes"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address[]","name":"_managers","type":"address[]"}],"stateMutability":"payable","type":"function","name":"createPoolWithCustomStrategy","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"payable","type":"function","name":"fundPool"},{"inputs":[],"stateMutability":"view","type":"function","name":"getBaseFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"getFeeDenominator","outputs":[{"internalType":"uint256","name":"FEE_DENOMINATOR","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPercentFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPool","outputs":[{"internalType":"struct IAllo.Pool","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"profileId","type":"bytes32"},{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"bytes32","name":"managerRole","type":"bytes32"},{"internalType":"bytes32","name":"adminRole","type":"bytes32"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getStrategy","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTreasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_registry","type":"address"},{"internalType":"address payable","name":"_treasury","type":"address"},{"internalType":"uint256","name":"_percentFee","type":"uint256"},{"internalType":"uint256","name":"_baseFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"isCloneableStrategy","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_address","type":"address"}],"stateMutability":"view","type":"function","name":"isPoolAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_address","type":"address"}],"stateMutability":"view","type":"function","name":"isPoolManager","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"result","type":"address"}]},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"stateMutability":"view","type":"function","name":"ownershipHandoverExpiresAt","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"recoverFunds"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeFromCloneableStrategies"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_manager","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removePoolManager"},{"inputs":[],"stateMutability":"payable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[],"stateMutability":"payable","type":"function","name":"requestOwnershipHandover"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"payable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"_baseFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateBaseFee"},{"inputs":[{"internalType":"uint256","name":"_percentFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updatePercentFee"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"updatePoolMetadata"},{"inputs":[{"internalType":"address","name":"_registry","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateRegistry"},{"inputs":[{"internalType":"address payable","name":"_treasury","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateTreasury"}],"devdoc":{"kind":"dev","methods":{"addPoolManager(uint256,address)":{"details":"Emits 'RoleGranted()' event. 'msg.sender' must be a pool admin.","params":{"_manager":"The address to add","_poolId":"ID of the pool"}},"addToCloneableStrategies(address)":{"details":"Emits the 'StrategyApproved()' event. 'msg.sender' must be Allo owner.","params":{"_strategy":"The address of the strategy"}},"allocate(uint256,bytes)":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate().","params":{"_data":"Encoded data unique to the strategy for that pool","_poolId":"ID of the pool"}},"batchAllocate(uint256[],bytes[])":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate(). Please note that this is not a 'payable' function, so if you want to send funds to the strategy, you must send the funds using 'fundPool()'.","params":{"_datas":"encoded data unique to the strategy for that pool","_poolIds":"IDs of the pools"}},"batchRegisterRecipient(uint256[],bytes[])":{"details":"Returns the 'recipientIds' from the strategy that have been registered from calling this function. Encoded data unique to a strategy that registerRecipient() requires. Encoded '_data' length must match '_poolIds' length or this will revert with MISMATCH(). Other requirements will be determined by the strategy.","params":{"_data":"An array of encoded data unique to a strategy that registerRecipient() requires.","_poolIds":"ID's of the pools"},"returns":{"recipientIds":"The recipient IDs that have been registered"}},"cancelOwnershipHandover()":{"details":"Cancels the two-step ownership handover to the caller, if any."},"completeOwnershipHandover(address)":{"details":"Allows the owner to complete the two-step ownership handover to `pendingOwner`. Reverts if there is no existing ownership handover requested by `pendingOwner`."},"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"custom:initstrategydata":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'","details":"'msg.sender' must be owner or member of the profile id passed as '_profileId'.","params":{"_amount":"The amount of the token","_initStrategyData":"The data to initialize the strategy","_managers":"The managers of the pool","_metadata":"The metadata of the pool","_profileId":"The ID of the registry profile, used to check if 'msg.sender' is a member or owner of the profile","_strategy":"The address of the strategy contract the pool will use.","_token":"The address of the token"}},"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"details":"'msg.sender' must be a member or owner of a profile to create a pool with or without a custom strategy, The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'. The strategy address passed must not be a cloneable strategy. The strategy address passed must not be the zero address. 'msg.sender' must be a member or owner of the profile id passed as '_profileId'.","params":{"_amount":"The amount of the token you want to deposit into the pool on initialization","_initStrategyData":"The data to initialize the strategy","_managers":"The managers of the pool, and can be added/removed later by the pool admin","_metadata":"The 'Metadata' of the pool, this uses our 'Meatdata.sol' struct (consistent throughout the protocol)","_profileId":"The 'profileId' of the registry profile, used to check if 'msg.sender' is a member or owner of the profile","_strategy":"The address of the deployed custom strategy","_token":"The address of the token you want to use in your pool"},"returns":{"poolId":"The ID of the pool"}},"distribute(uint256,address[],bytes)":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'strategy.distribute()'.","params":{"_data":"Encoded data unique to the strategy","_poolId":"ID of the pool","_recipientIds":"Ids of the recipients of the distribution"}},"fundPool(uint256,uint256)":{"details":"Anyone can fund a pool and call this function.","params":{"_amount":"The amount to be deposited into the pool","_poolId":"ID of the pool"}},"getBaseFee()":{"returns":{"_0":"The base fee"}},"getFeeDenominator()":{"returns":{"FEE_DENOMINATOR":"The fee denominator is (1e18) which represents 100%"}},"getPercentFee()":{"returns":{"_0":"The fee percentage (1e18 = 100%)"}},"getPool(uint256)":{"params":{"_poolId":"The ID of the pool"},"returns":{"_0":"The 'Pool' struct"}},"getRegistry()":{"returns":{"_0":"The registry address"}},"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"getStrategy(uint256)":{"params":{"_poolId":"The ID of the pool"},"returns":{"_0":"The address of the strategy"}},"getTreasury()":{"returns":{"_0":"The treasury address"}},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"initialize(address,address,address,uint256,uint256)":{"details":"During upgrade -> a higher version should be passed to reinitializer","params":{"_baseFee":"The base fee","_owner":"The owner of allo","_percentFee":"The percentage fee","_registry":"The address of the registry","_treasury":"The address of the treasury"}},"isCloneableStrategy(address)":{"params":{"_strategy":"The address of the strategy"},"returns":{"_0":"'true' if the strategy is cloneable, otherwise 'false'"}},"isPoolAdmin(uint256,address)":{"params":{"_address":"The address to check","_poolId":"The ID of the pool"},"returns":{"_0":"'true' if the address is a pool admin, otherwise 'false'"}},"isPoolManager(uint256,address)":{"params":{"_address":"The address to check","_poolId":"The ID of the pool"},"returns":{"_0":"'true' if the address is a pool manager, otherwise 'false'"}},"owner()":{"details":"Returns the owner of the contract."},"ownershipHandoverExpiresAt(address)":{"details":"Returns the expiry timestamp for the two-step ownership handover to `pendingOwner`."},"recoverFunds(address,address)":{"details":"'msg.sender' must be Allo owner","params":{"_recipient":"The recipient","_token":"The token to transfer"}},"registerRecipient(uint256,bytes)":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of registerRecipient().","params":{"_data":"Encoded data unique to a strategy that registerRecipient() requires","_poolId":"ID of the pool"},"returns":{"_0":"recipientId The recipient ID that has been registered"}},"removeFromCloneableStrategies(address)":{"details":"Emits 'StrategyRemoved()' event. 'msg.sender must be Allo owner.","params":{"_strategy":"The address of the strategy"}},"removePoolManager(uint256,address)":{"details":"Emits 'RoleRevoked()' event. 'msg.sender' must be a pool admin.","params":{"_manager":"The address to remove","_poolId":"ID of the pool"}},"renounceOwnership()":{"details":"Allows the owner to renounce their ownership."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"requestOwnershipHandover()":{"details":"Request a two-step ownership handover to the caller. The request will automatically expire in 48 hours (172800 seconds) by default."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Allows the owner to transfer the ownership to `newOwner`."},"updateBaseFee(uint256)":{"details":"Use this to update the base fee. 'msg.sender' must be Allo owner.","params":{"_baseFee":"The new base fee"}},"updatePercentFee(uint256)":{"details":"Use this to update the fee percentage. 'msg.sender' must be Allo owner.","params":{"_percentFee":"The new fee"}},"updatePoolMetadata(uint256,(uint256,string))":{"details":"'msg.sender' must be a pool manager. Emits 'PoolMetadataUpdated()' event.","params":{"_metadata":"The new metadata of the pool","_poolId":"ID of the pool"}},"updateRegistry(address)":{"details":"Use this to update the registry address. 'msg.sender' must be Allo owner.","params":{"_registry":"The new registry address"}},"updateTreasury(address)":{"details":"Use this to update the treasury address. 'msg.sender' must be Allo owner.","params":{"_treasury":"The new treasury address"}}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"addPoolManager(uint256,address)":{"notice":"Add a pool manager"},"addToCloneableStrategies(address)":{"notice":"Add a strategy to the allowlist."},"allocate(uint256,bytes)":{"notice":"Allocate to a recipient or multiple recipients."},"batchAllocate(uint256[],bytes[])":{"notice":"Allocate to multiple pools"},"batchRegisterRecipient(uint256[],bytes[])":{"notice":"Register multiple recipients to multiple pools."},"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"notice":"Creates a new pool (by cloning a cloneable strategies)."},"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"notice":"Creates a new pool (with a custom strategy)"},"distribute(uint256,address[],bytes)":{"notice":"Distribute to a recipient or multiple recipients."},"fundPool(uint256,uint256)":{"notice":"Fund a pool."},"getBaseFee()":{"notice":"Getter for base fee."},"getFeeDenominator()":{"notice":"Getter for the fee denominator"},"getPercentFee()":{"notice":"Getter for fee percentage."},"getPool(uint256)":{"notice":"Getter for the 'Pool'."},"getRegistry()":{"notice":"Getter for registry."},"getStrategy(uint256)":{"notice":"Getter for the strategy."},"getTreasury()":{"notice":"Getter for treasury address."},"initialize(address,address,address,uint256,uint256)":{"notice":"Initializes the contract after an upgrade"},"isCloneableStrategy(address)":{"notice":"Getter for if strategy is cloneable."},"isPoolAdmin(uint256,address)":{"notice":"Checks if the address is a pool admin."},"isPoolManager(uint256,address)":{"notice":"Checks if the address is a pool manager"},"recoverFunds(address,address)":{"notice":"Transfer the funds recovered to the recipient"},"registerRecipient(uint256,bytes)":{"notice":"Passes _data through to the strategy for that pool."},"removeFromCloneableStrategies(address)":{"notice":"Remove a strategy from the allowlist"},"removePoolManager(uint256,address)":{"notice":"Remove a pool manager"},"updateBaseFee(uint256)":{"notice":"Updates the base fee."},"updatePercentFee(uint256)":{"notice":"Updates the fee percentage."},"updatePoolMetadata(uint256,(uint256,string))":{"notice":"Update pool metadata"},"updateRegistry(address)":{"notice":"Updates the registry address."},"updateTreasury(address)":{"notice":"Updates the treasury address."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/contracts/core/Allo.sol":"Allo"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Allo.sol":{"keccak256":"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a","urls":["bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c","dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/auth/Ownable.sol":{"keccak256":"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b","urls":["bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30","dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol":{"keccak256":"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f","urls":["bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f","dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":53969,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"51","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_roles","offset":0,"slot":"101","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_status","offset":0,"slot":"151","type":"t_uint256"},{"astId":53236,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"152","type":"t_array(t_uint256)49_storage"},{"astId":34,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"percentFee","offset":0,"slot":"201","type":"t_uint256"},{"astId":37,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"baseFee","offset":0,"slot":"202","type":"t_uint256"},{"astId":40,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_poolIndex","offset":0,"slot":"203","type":"t_uint256"},{"astId":43,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"treasury","offset":0,"slot":"204","type":"t_address_payable"},{"astId":47,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"registry","offset":0,"slot":"205","type":"t_contract(IRegistry)2802"},{"astId":52,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_nonces","offset":0,"slot":"206","type":"t_mapping(t_address,t_uint256)"},{"astId":58,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"pools","offset":0,"slot":"207","type":"t_mapping(t_uint256,t_struct(Pool)2319_storage)"},{"astId":63,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"cloneableStrategies","offset":0,"slot":"208","type":"t_mapping(t_address,t_bool)"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(IStrategy)2969":{"encoding":"inplace","label":"contract IStrategy","numberOfBytes":"20"},"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_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_mapping(t_uint256,t_struct(Pool)2319_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct IAllo.Pool)","numberOfBytes":"32","value":"t_struct(Pool)2319_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(Pool)2319_storage":{"encoding":"inplace","label":"struct IAllo.Pool","numberOfBytes":"224","members":[{"astId":2306,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"profileId","offset":0,"slot":"0","type":"t_bytes32"},{"astId":2309,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"strategy","offset":0,"slot":"1","type":"t_contract(IStrategy)2969"},{"astId":2311,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"token","offset":0,"slot":"2","type":"t_address"},{"astId":2314,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"metadata","offset":0,"slot":"3","type":"t_struct(Metadata)3098_storage"},{"astId":2316,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"managerRole","offset":0,"slot":"5","type":"t_bytes32"},{"astId":2318,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"adminRole","offset":0,"slot":"6","type":"t_bytes32"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","id":1391,"exportedSymbols":{"AccessControlUpgradeable":[52697],"AddressUpgradeable":[53645],"Allo":[1390],"Clone":[3002],"ContextUpgradeable":[53696],"ERC165Upgradeable":[53970],"Errors":[3089],"IAccessControlUpgradeable":[52770],"IAllo":[2610],"IERC165Upgradeable":[53982],"IERC20Upgradeable":[53315],"IRegistry":[2802],"IStrategy":[2969],"Initializable":[53152],"MathUpgradeable":[54848],"Metadata":[3098],"Native":[3106],"Ownable":[4095],"ReentrancyGuardUpgradeable":[53237],"SignedMathUpgradeable":[54953],"StringsUpgradeable":[53925],"Transfer":[3317]},"nodeType":"SourceUnit","src":"42:34082:0","nodes":[{"id":1,"nodeType":"PragmaDirective","src":"42:23:0","nodes":[],"literals":["solidity","0.8",".19"]},{"id":2,"nodeType":"ImportDirective","src":"89:37:0","nodes":[],"absolutePath":"lib/allo-v2/lib/solady/src/auth/Ownable.sol","file":"solady/src/auth/Ownable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":4096,"symbolAliases":[],"unitAlias":""},{"id":3,"nodeType":"ImportDirective","src":"127:84:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","file":"openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":53153,"symbolAliases":[],"unitAlias":""},{"id":4,"nodeType":"ImportDirective","src":"212:88:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":53316,"symbolAliases":[],"unitAlias":""},{"id":5,"nodeType":"ImportDirective","src":"301:90:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":52698,"symbolAliases":[],"unitAlias":""},{"id":6,"nodeType":"ImportDirective","src":"392:94:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":53238,"symbolAliases":[],"unitAlias":""},{"id":7,"nodeType":"ImportDirective","src":"501:32:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"./interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":2611,"symbolAliases":[],"unitAlias":""},{"id":9,"nodeType":"ImportDirective","src":"557:44:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"./libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":8,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"565:5:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":11,"nodeType":"ImportDirective","src":"602:46:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Errors.sol","file":"./libraries/Errors.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3090,"symbolAliases":[{"foreign":{"id":10,"name":"Errors","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3089,"src":"610:6:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":12,"nodeType":"ImportDirective","src":"649:32:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"./libraries/Native.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3107,"symbolAliases":[],"unitAlias":""},{"id":14,"nodeType":"ImportDirective","src":"682:50:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Transfer.sol","file":"./libraries/Transfer.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3318,"symbolAliases":[{"foreign":{"id":13,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3317,"src":"690:8:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1390,"nodeType":"ContractDefinition","src":"5076:29047:0","nodes":[{"id":34,"nodeType":"VariableDeclaration","src":"5862:26:0","nodes":[],"constant":false,"documentation":{"id":32,"nodeType":"StructuredDocumentation","src":"5344:513:0","text":"@notice Percentage that is used to calculate the fee Allo takes from each pool when funded\n and is deducted when a pool is funded. So if you want to fund a round with 1000 DAI and the fee\n percentage is 1e17 (10%), then 100 DAI will be deducted from the 1000 DAI and the pool will be\n funded with 900 DAI. The fee is then sent to the treasury address.\n @dev How the percentage is represented in our contracts: 1e18 = 100%, 1e17 = 10%, 1e16 = 1%, 1e15 = 0.1%"},"mutability":"mutable","name":"percentFee","nameLocation":"5878:10:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33,"name":"uint256","nodeType":"ElementaryTypeName","src":"5862:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":37,"nodeType":"VariableDeclaration","src":"6339:24:0","nodes":[],"constant":false,"documentation":{"id":35,"nodeType":"StructuredDocumentation","src":"5895:439:0","text":"@notice Fee Allo charges for all pools on creation\n @dev This is different from the 'percentFee' in that this is a flat fee and not a percentage. So if you want to create a pool\n with a base fee of 100 DAI, then you would pass 100 DAI to the 'createPool()' function and the pool would be created\n with 100 DAI less than the amount you passed to the function. The base fee is sent to the treasury address."},"mutability":"mutable","name":"baseFee","nameLocation":"6356:7:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36,"name":"uint256","nodeType":"ElementaryTypeName","src":"6339:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":40,"nodeType":"VariableDeclaration","src":"6431:26:0","nodes":[],"constant":false,"documentation":{"id":38,"nodeType":"StructuredDocumentation","src":"6370:56:0","text":"@notice Incremental index to track the pools created"},"mutability":"mutable","name":"_poolIndex","nameLocation":"6447:10:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":39,"name":"uint256","nodeType":"ElementaryTypeName","src":"6431:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":43,"nodeType":"VariableDeclaration","src":"6494:32:0","nodes":[],"constant":false,"documentation":{"id":41,"nodeType":"StructuredDocumentation","src":"6464:25:0","text":"@notice Allo treasury"},"mutability":"mutable","name":"treasury","nameLocation":"6518:8:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":42,"name":"address","nodeType":"ElementaryTypeName","src":"6494:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"private"},{"id":47,"nodeType":"VariableDeclaration","src":"6567:26:0","nodes":[],"constant":false,"documentation":{"id":44,"nodeType":"StructuredDocumentation","src":"6533:29:0","text":"@notice Registry contract"},"mutability":"mutable","name":"registry","nameLocation":"6585:8:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":46,"nodeType":"UserDefinedTypeName","pathNode":{"id":45,"name":"IRegistry","nameLocations":["6567:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"6567:9:0"},"referencedDeclaration":2802,"src":"6567:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"private"},{"id":52,"nodeType":"VariableDeclaration","src":"6733:43:0","nodes":[],"constant":false,"documentation":{"id":48,"nodeType":"StructuredDocumentation","src":"6600:128:0","text":"@notice Maps the `msg.sender` to a `nonce` to prevent duplicates\n @dev 'msg.sender' -> 'nonce' for cloning strategies"},"mutability":"mutable","name":"_nonces","nameLocation":"6769:7:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":51,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":49,"name":"address","nodeType":"ElementaryTypeName","src":"6741:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"6733:27:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":50,"name":"uint256","nodeType":"ElementaryTypeName","src":"6752:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"private"},{"id":58,"nodeType":"VariableDeclaration","src":"6869:38:0","nodes":[],"constant":false,"documentation":{"id":53,"nodeType":"StructuredDocumentation","src":"6783:81:0","text":"@notice Maps the pool ID to the pool details\n @dev 'Pool.id' -> 'Pool'"},"mutability":"mutable","name":"pools","nameLocation":"6902:5:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool)"},"typeName":{"id":57,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":54,"name":"uint256","nodeType":"ElementaryTypeName","src":"6877:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"6869:24:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":56,"nodeType":"UserDefinedTypeName","pathNode":{"id":55,"name":"Pool","nameLocations":["6888:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"6888:4:0"},"referencedDeclaration":2319,"src":"6888:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}}},"visibility":"private"},{"id":63,"nodeType":"VariableDeclaration","src":"7064:52:0","nodes":[],"constant":false,"documentation":{"id":59,"nodeType":"StructuredDocumentation","src":"6914:145:0","text":"@notice Returns a bool for whether a strategy is cloneable or not using the strategy address as the key\n @dev Strategy.address -> bool"},"mutability":"mutable","name":"cloneableStrategies","nameLocation":"7097:19:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":62,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":60,"name":"address","nodeType":"ElementaryTypeName","src":"7072:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7064:24:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":61,"name":"bool","nodeType":"ElementaryTypeName","src":"7083:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"private"},{"id":101,"nodeType":"FunctionDefinition","src":"7626:593:0","nodes":[],"body":{"id":100,"nodeType":"Block","src":"7819:400:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":81,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66,"src":"7907:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":80,"name":"_initializeOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3980,"src":"7890:16:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":82,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7890:24:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":83,"nodeType":"ExpressionStatement","src":"7890:24:0"},{"expression":{"arguments":[{"id":85,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68,"src":"7984:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":84,"name":"_updateRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1205,"src":"7968:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":86,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7968:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":87,"nodeType":"ExpressionStatement","src":"7968:26:0"},{"expression":{"arguments":[{"id":89,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70,"src":"8064:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":88,"name":"_updateTreasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1230,"src":"8048:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$returns$__$","typeString":"function (address payable)"}},"id":90,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8048:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":91,"nodeType":"ExpressionStatement","src":"8048:26:0"},{"expression":{"arguments":[{"id":93,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72,"src":"8137:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":92,"name":"_updatePercentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1252,"src":"8119:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":94,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8119:30:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":95,"nodeType":"ExpressionStatement","src":"8119:30:0"},{"expression":{"arguments":[{"id":97,"name":"_baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74,"src":"8203:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":96,"name":"_updateBaseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1267,"src":"8188:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":98,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8188:24:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99,"nodeType":"ExpressionStatement","src":"8188:24:0"}]},"baseFunctions":[2404],"documentation":{"id":64,"nodeType":"StructuredDocumentation","src":"7257:364:0","text":"@notice Initializes the contract after an upgrade\n @dev During upgrade -> a higher version should be passed to reinitializer\n @param _owner The owner of allo\n @param _registry The address of the registry\n @param _treasury The address of the treasury\n @param _percentFee The percentage fee\n @param _baseFee The base fee"},"functionSelector":"a6b63eb8","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"31","id":77,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7816:1:0","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"id":78,"kind":"modifierInvocation","modifierName":{"id":76,"name":"reinitializer","nameLocations":["7802:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"7802:13:0"},"nodeType":"ModifierInvocation","src":"7802:16:0"}],"name":"initialize","nameLocation":"7635:10:0","parameters":{"id":75,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66,"mutability":"mutable","name":"_owner","nameLocation":"7663:6:0","nodeType":"VariableDeclaration","scope":101,"src":"7655:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65,"name":"address","nodeType":"ElementaryTypeName","src":"7655:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68,"mutability":"mutable","name":"_registry","nameLocation":"7687:9:0","nodeType":"VariableDeclaration","scope":101,"src":"7679:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67,"name":"address","nodeType":"ElementaryTypeName","src":"7679:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70,"mutability":"mutable","name":"_treasury","nameLocation":"7722:9:0","nodeType":"VariableDeclaration","scope":101,"src":"7706:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":69,"name":"address","nodeType":"ElementaryTypeName","src":"7706:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":72,"mutability":"mutable","name":"_percentFee","nameLocation":"7749:11:0","nodeType":"VariableDeclaration","scope":101,"src":"7741:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71,"name":"uint256","nodeType":"ElementaryTypeName","src":"7741:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74,"mutability":"mutable","name":"_baseFee","nameLocation":"7778:8:0","nodeType":"VariableDeclaration","scope":101,"src":"7770:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73,"name":"uint256","nodeType":"ElementaryTypeName","src":"7770:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7645:147:0"},"returnParameters":{"id":79,"nodeType":"ParameterList","parameters":[],"src":"7819:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":112,"nodeType":"ModifierDefinition","src":"8573:100:0","nodes":[],"body":{"id":111,"nodeType":"Block","src":"8615:58:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":107,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":104,"src":"8647:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":106,"name":"_checkOnlyPoolManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":693,"src":"8625:21:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8625:30:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":109,"nodeType":"ExpressionStatement","src":"8625:30:0"},{"id":110,"nodeType":"PlaceholderStatement","src":"8665:1:0"}]},"documentation":{"id":102,"nodeType":"StructuredDocumentation","src":"8463:105:0","text":"@notice Reverts UNAUTHORIZED() if the caller is not a pool manager\n @param _poolId The pool id"},"name":"onlyPoolManager","nameLocation":"8582:15:0","parameters":{"id":105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":104,"mutability":"mutable","name":"_poolId","nameLocation":"8606:7:0","nodeType":"VariableDeclaration","scope":112,"src":"8598:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":103,"name":"uint256","nodeType":"ElementaryTypeName","src":"8598:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8597:17:0"},"virtual":false,"visibility":"internal"},{"id":123,"nodeType":"ModifierDefinition","src":"8787:96:0","nodes":[],"body":{"id":122,"nodeType":"Block","src":"8827:56:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":118,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":115,"src":"8857:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":117,"name":"_checkOnlyPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":710,"src":"8837:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8837:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":120,"nodeType":"ExpressionStatement","src":"8837:28:0"},{"id":121,"nodeType":"PlaceholderStatement","src":"8875:1:0"}]},"documentation":{"id":113,"nodeType":"StructuredDocumentation","src":"8679:103:0","text":"@notice Reverts UNAUTHORIZED() if the caller is not a pool admin\n @param _poolId The pool id"},"name":"onlyPoolAdmin","nameLocation":"8796:13:0","parameters":{"id":116,"nodeType":"ParameterList","parameters":[{"constant":false,"id":115,"mutability":"mutable","name":"_poolId","nameLocation":"8818:7:0","nodeType":"VariableDeclaration","scope":123,"src":"8810:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":114,"name":"uint256","nodeType":"ElementaryTypeName","src":"8810:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8809:17:0"},"virtual":false,"visibility":"internal"},{"id":175,"nodeType":"FunctionDefinition","src":"10281:884:0","nodes":[],"body":{"id":174,"nodeType":"Block","src":"10582:583:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":145,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":128,"src":"10687:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":148,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10708:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":147,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10700:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":146,"name":"address","nodeType":"ElementaryTypeName","src":"10700:7:0","typeDescriptions":{}}},"id":149,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10700:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10687:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":154,"nodeType":"IfStatement","src":"10683:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":151,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"10719:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":152,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10719:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":153,"nodeType":"RevertStatement","src":"10712:21:0"}},{"condition":{"arguments":[{"id":156,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":128,"src":"10919:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":155,"name":"_isCloneableStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1135,"src":"10898:20:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10898:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":161,"nodeType":"IfStatement","src":"10894:66:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":158,"name":"IS_APPROVED_STRATEGY","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3038,"src":"10938:20:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10938:22:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":160,"nodeType":"RevertStatement","src":"10931:29:0"}},{"expression":{"arguments":[{"id":163,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":126,"src":"11067:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":165,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":128,"src":"11089:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":164,"name":"IStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2969,"src":"11079:9:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IStrategy_$2969_$","typeString":"type(contract IStrategy)"}},"id":166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11079:20:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":167,"name":"_initStrategyData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":130,"src":"11101:17:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":168,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":132,"src":"11120:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":169,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":134,"src":"11128:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":170,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":137,"src":"11137:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":171,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":140,"src":"11148:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":162,"name":"_createPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":925,"src":"11055:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_contract$_IStrategy_$2969_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,contract IStrategy,bytes memory,address,uint256,struct Metadata memory,address[] memory) returns (uint256)"}},"id":172,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11055:103:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":144,"id":173,"nodeType":"Return","src":"11048:110:0"}]},"documentation":{"id":124,"nodeType":"StructuredDocumentation","src":"9025:1251:0","text":"@notice Creates a new pool (with a custom strategy)\n @dev 'msg.sender' must be a member or owner of a profile to create a pool with or without a custom strategy, The encoded data\n will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'. The strategy\n address passed must not be a cloneable strategy. The strategy address passed must not be the zero address. 'msg.sender' must\n be a member or owner of the profile id passed as '_profileId'.\n @param _profileId The 'profileId' of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\n @param _strategy The address of the deployed custom strategy\n @param _initStrategyData The data to initialize the strategy\n @param _token The address of the token you want to use in your pool\n @param _amount The amount of the token you want to deposit into the pool on initialization\n @param _metadata The 'Metadata' of the pool, this uses our 'Meatdata.sol' struct (consistent throughout the protocol)\n @param _managers The managers of the pool, and can be added/removed later by the pool admin\n @return poolId The ID of the pool"},"functionSelector":"e1007d4a","implemented":true,"kind":"function","modifiers":[],"name":"createPoolWithCustomStrategy","nameLocation":"10290:28:0","parameters":{"id":141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":126,"mutability":"mutable","name":"_profileId","nameLocation":"10336:10:0","nodeType":"VariableDeclaration","scope":175,"src":"10328:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":125,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10328:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":128,"mutability":"mutable","name":"_strategy","nameLocation":"10364:9:0","nodeType":"VariableDeclaration","scope":175,"src":"10356:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":127,"name":"address","nodeType":"ElementaryTypeName","src":"10356:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":130,"mutability":"mutable","name":"_initStrategyData","nameLocation":"10396:17:0","nodeType":"VariableDeclaration","scope":175,"src":"10383:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":129,"name":"bytes","nodeType":"ElementaryTypeName","src":"10383:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":132,"mutability":"mutable","name":"_token","nameLocation":"10431:6:0","nodeType":"VariableDeclaration","scope":175,"src":"10423:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":131,"name":"address","nodeType":"ElementaryTypeName","src":"10423:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":134,"mutability":"mutable","name":"_amount","nameLocation":"10455:7:0","nodeType":"VariableDeclaration","scope":175,"src":"10447:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":133,"name":"uint256","nodeType":"ElementaryTypeName","src":"10447:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":137,"mutability":"mutable","name":"_metadata","nameLocation":"10488:9:0","nodeType":"VariableDeclaration","scope":175,"src":"10472:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":136,"nodeType":"UserDefinedTypeName","pathNode":{"id":135,"name":"Metadata","nameLocations":["10472:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"10472:8:0"},"referencedDeclaration":3098,"src":"10472:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":140,"mutability":"mutable","name":"_managers","nameLocation":"10524:9:0","nodeType":"VariableDeclaration","scope":175,"src":"10507:26:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":138,"name":"address","nodeType":"ElementaryTypeName","src":"10507:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":139,"nodeType":"ArrayTypeName","src":"10507:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"10318:221:0"},"returnParameters":{"id":144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":143,"mutability":"mutable","name":"poolId","nameLocation":"10574:6:0","nodeType":"VariableDeclaration","scope":175,"src":"10566:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":142,"name":"uint256","nodeType":"ElementaryTypeName","src":"10566:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10565:16:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":229,"nodeType":"FunctionDefinition","src":"11971:701:0","nodes":[],"body":{"id":228,"nodeType":"Block","src":"12267:405:0","nodes":[],"statements":[{"condition":{"id":202,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12281:32:0","subExpression":{"arguments":[{"id":200,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":180,"src":"12303:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":199,"name":"_isCloneableStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1135,"src":"12282:20:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12282:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":207,"nodeType":"IfStatement","src":"12277:93:0","trueBody":{"id":206,"nodeType":"Block","src":"12315:55:0","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":203,"name":"NOT_APPROVED_STRATEGY","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3035,"src":"12336:21:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12336:23:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":205,"nodeType":"RevertStatement","src":"12329:30:0"}]}},{"expression":{"arguments":[{"id":209,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":178,"src":"12451:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"id":213,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":180,"src":"12503:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":218,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"12514:21:0","subExpression":{"baseExpression":{"id":214,"name":"_nonces","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52,"src":"12514:7:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":217,"indexExpression":{"expression":{"id":215,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12522:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12526:6:0","memberName":"sender","nodeType":"MemberAccess","src":"12522:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12514:19:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":211,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"12485:5:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":212,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12491:11:0","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"12485:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12485:51:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":210,"name":"IStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2969,"src":"12475:9:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IStrategy_$2969_$","typeString":"type(contract IStrategy)"}},"id":220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12475:62:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":221,"name":"_initStrategyData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":182,"src":"12551:17:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":222,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":184,"src":"12582:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":223,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":186,"src":"12602:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":224,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":189,"src":"12623:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":225,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":192,"src":"12646:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":208,"name":"_createPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":925,"src":"12426:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_contract$_IStrategy_$2969_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,contract IStrategy,bytes memory,address,uint256,struct Metadata memory,address[] memory) returns (uint256)"}},"id":226,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12426:239:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":198,"id":227,"nodeType":"Return","src":"12419:246:0"}]},"documentation":{"id":176,"nodeType":"StructuredDocumentation","src":"11171:795:0","text":"@notice Creates a new pool (by cloning a cloneable strategies).\n @dev 'msg.sender' must be owner or member of the profile id passed as '_profileId'.\n @param _profileId The ID of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\n @param _strategy The address of the strategy contract the pool will use.\n @param _initStrategyData The data to initialize the strategy\n @param _token The address of the token\n @param _amount The amount of the token\n @param _metadata The metadata of the pool\n @param _managers The managers of the pool\n @custom:initstrategydata The encoded data will be specific to a given strategy requirements,\n reference the strategy implementation of 'initialize()'"},"functionSelector":"77da8caf","implemented":true,"kind":"function","modifiers":[{"id":195,"kind":"modifierInvocation","modifierName":{"id":194,"name":"nonReentrant","nameLocations":["12229:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"12229:12:0"},"nodeType":"ModifierInvocation","src":"12229:12:0"}],"name":"createPool","nameLocation":"11980:10:0","parameters":{"id":193,"nodeType":"ParameterList","parameters":[{"constant":false,"id":178,"mutability":"mutable","name":"_profileId","nameLocation":"12008:10:0","nodeType":"VariableDeclaration","scope":229,"src":"12000:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":177,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12000:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":180,"mutability":"mutable","name":"_strategy","nameLocation":"12036:9:0","nodeType":"VariableDeclaration","scope":229,"src":"12028:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":179,"name":"address","nodeType":"ElementaryTypeName","src":"12028:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":182,"mutability":"mutable","name":"_initStrategyData","nameLocation":"12068:17:0","nodeType":"VariableDeclaration","scope":229,"src":"12055:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":181,"name":"bytes","nodeType":"ElementaryTypeName","src":"12055:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":184,"mutability":"mutable","name":"_token","nameLocation":"12103:6:0","nodeType":"VariableDeclaration","scope":229,"src":"12095:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":183,"name":"address","nodeType":"ElementaryTypeName","src":"12095:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":186,"mutability":"mutable","name":"_amount","nameLocation":"12127:7:0","nodeType":"VariableDeclaration","scope":229,"src":"12119:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":185,"name":"uint256","nodeType":"ElementaryTypeName","src":"12119:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":189,"mutability":"mutable","name":"_metadata","nameLocation":"12160:9:0","nodeType":"VariableDeclaration","scope":229,"src":"12144:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":188,"nodeType":"UserDefinedTypeName","pathNode":{"id":187,"name":"Metadata","nameLocations":["12144:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12144:8:0"},"referencedDeclaration":3098,"src":"12144:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":192,"mutability":"mutable","name":"_managers","nameLocation":"12196:9:0","nodeType":"VariableDeclaration","scope":229,"src":"12179:26:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":190,"name":"address","nodeType":"ElementaryTypeName","src":"12179:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":191,"nodeType":"ArrayTypeName","src":"12179:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"11990:221:0"},"returnParameters":{"id":198,"nodeType":"ParameterList","parameters":[{"constant":false,"id":197,"mutability":"mutable","name":"poolId","nameLocation":"12259:6:0","nodeType":"VariableDeclaration","scope":229,"src":"12251:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":196,"name":"uint256","nodeType":"ElementaryTypeName","src":"12251:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12250:16:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":260,"nodeType":"FunctionDefinition","src":"12894:247:0","nodes":[],"body":{"id":259,"nodeType":"Block","src":"13000:141:0","nodes":[],"statements":[{"assignments":[243],"declarations":[{"constant":false,"id":243,"mutability":"mutable","name":"pool","nameLocation":"13023:4:0","nodeType":"VariableDeclaration","scope":259,"src":"13010:17:0","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":242,"nodeType":"UserDefinedTypeName","pathNode":{"id":241,"name":"Pool","nameLocations":["13010:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"13010:4:0"},"referencedDeclaration":2319,"src":"13010:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":247,"initialValue":{"baseExpression":{"id":244,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"13030:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":246,"indexExpression":{"id":245,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":232,"src":"13036:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"13030:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"VariableDeclarationStatement","src":"13010:34:0"},{"expression":{"id":252,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":248,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":243,"src":"13054:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool storage pointer"}},"id":250,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"13059:8:0","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":2314,"src":"13054:13:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":251,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":235,"src":"13070:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"13054:25:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":253,"nodeType":"ExpressionStatement","src":"13054:25:0"},{"eventCall":{"arguments":[{"id":255,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":232,"src":"13115:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":256,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":235,"src":"13124:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":254,"name":"PoolMetadataUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2344,"src":"13095:19:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,struct Metadata memory)"}},"id":257,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13095:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":258,"nodeType":"EmitStatement","src":"13090:44:0"}]},"baseFunctions":[2413],"documentation":{"id":230,"nodeType":"StructuredDocumentation","src":"12678:211:0","text":"@notice Update pool metadata\n @dev 'msg.sender' must be a pool manager. Emits 'PoolMetadataUpdated()' event.\n @param _poolId ID of the pool\n @param _metadata The new metadata of the pool"},"functionSelector":"5f9ca138","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":238,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":232,"src":"12991:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":239,"kind":"modifierInvocation","modifierName":{"id":237,"name":"onlyPoolManager","nameLocations":["12975:15:0"],"nodeType":"IdentifierPath","referencedDeclaration":112,"src":"12975:15:0"},"nodeType":"ModifierInvocation","src":"12975:24:0"}],"name":"updatePoolMetadata","nameLocation":"12903:18:0","parameters":{"id":236,"nodeType":"ParameterList","parameters":[{"constant":false,"id":232,"mutability":"mutable","name":"_poolId","nameLocation":"12930:7:0","nodeType":"VariableDeclaration","scope":260,"src":"12922:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":231,"name":"uint256","nodeType":"ElementaryTypeName","src":"12922:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":235,"mutability":"mutable","name":"_metadata","nameLocation":"12955:9:0","nodeType":"VariableDeclaration","scope":260,"src":"12939:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":234,"nodeType":"UserDefinedTypeName","pathNode":{"id":233,"name":"Metadata","nameLocations":["12939:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12939:8:0"},"referencedDeclaration":3098,"src":"12939:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12921:44:0"},"returnParameters":{"id":240,"nodeType":"ParameterList","parameters":[],"src":"13000:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":273,"nodeType":"FunctionDefinition","src":"13330:105:0","nodes":[],"body":{"id":272,"nodeType":"Block","src":"13392:43:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":269,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":263,"src":"13418:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":268,"name":"_updateRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1205,"src":"13402:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13402:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":271,"nodeType":"ExpressionStatement","src":"13402:26:0"}]},"baseFunctions":[2419],"documentation":{"id":261,"nodeType":"StructuredDocumentation","src":"13147:178:0","text":"@notice Updates the registry address.\n @dev Use this to update the registry address. 'msg.sender' must be Allo owner.\n @param _registry The new registry address"},"functionSelector":"1a5da6c8","implemented":true,"kind":"function","modifiers":[{"id":266,"kind":"modifierInvocation","modifierName":{"id":265,"name":"onlyOwner","nameLocations":["13382:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"13382:9:0"},"nodeType":"ModifierInvocation","src":"13382:9:0"}],"name":"updateRegistry","nameLocation":"13339:14:0","parameters":{"id":264,"nodeType":"ParameterList","parameters":[{"constant":false,"id":263,"mutability":"mutable","name":"_registry","nameLocation":"13362:9:0","nodeType":"VariableDeclaration","scope":273,"src":"13354:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":262,"name":"address","nodeType":"ElementaryTypeName","src":"13354:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13353:19:0"},"returnParameters":{"id":267,"nodeType":"ParameterList","parameters":[],"src":"13392:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":286,"nodeType":"FunctionDefinition","src":"13624:113:0","nodes":[],"body":{"id":285,"nodeType":"Block","src":"13694:43:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":282,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":276,"src":"13720:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":281,"name":"_updateTreasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1230,"src":"13704:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$returns$__$","typeString":"function (address payable)"}},"id":283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13704:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":284,"nodeType":"ExpressionStatement","src":"13704:26:0"}]},"baseFunctions":[2425],"documentation":{"id":274,"nodeType":"StructuredDocumentation","src":"13441:178:0","text":"@notice Updates the treasury address.\n @dev Use this to update the treasury address. 'msg.sender' must be Allo owner.\n @param _treasury The new treasury address"},"functionSelector":"7f51bb1f","implemented":true,"kind":"function","modifiers":[{"id":279,"kind":"modifierInvocation","modifierName":{"id":278,"name":"onlyOwner","nameLocations":["13684:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"13684:9:0"},"nodeType":"ModifierInvocation","src":"13684:9:0"}],"name":"updateTreasury","nameLocation":"13633:14:0","parameters":{"id":277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":276,"mutability":"mutable","name":"_treasury","nameLocation":"13664:9:0","nodeType":"VariableDeclaration","scope":286,"src":"13648:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":275,"name":"address","nodeType":"ElementaryTypeName","src":"13648:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"13647:27:0"},"returnParameters":{"id":280,"nodeType":"ParameterList","parameters":[],"src":"13694:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":299,"nodeType":"FunctionDefinition","src":"13911:113:0","nodes":[],"body":{"id":298,"nodeType":"Block","src":"13977:47:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":295,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":289,"src":"14005:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":294,"name":"_updatePercentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1252,"src":"13987:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":296,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13987:30:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":297,"nodeType":"ExpressionStatement","src":"13987:30:0"}]},"baseFunctions":[2431],"documentation":{"id":287,"nodeType":"StructuredDocumentation","src":"13743:163:0","text":"@notice Updates the fee percentage.\n @dev Use this to update the fee percentage. 'msg.sender' must be Allo owner.\n @param _percentFee The new fee"},"functionSelector":"f54fc4a0","implemented":true,"kind":"function","modifiers":[{"id":292,"kind":"modifierInvocation","modifierName":{"id":291,"name":"onlyOwner","nameLocations":["13967:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"13967:9:0"},"nodeType":"ModifierInvocation","src":"13967:9:0"}],"name":"updatePercentFee","nameLocation":"13920:16:0","parameters":{"id":290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":289,"mutability":"mutable","name":"_percentFee","nameLocation":"13945:11:0","nodeType":"VariableDeclaration","scope":299,"src":"13937:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":288,"name":"uint256","nodeType":"ElementaryTypeName","src":"13937:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"13936:21:0"},"returnParameters":{"id":293,"nodeType":"ParameterList","parameters":[],"src":"13977:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":312,"nodeType":"FunctionDefinition","src":"14188:101:0","nodes":[],"body":{"id":311,"nodeType":"Block","src":"14248:41:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":308,"name":"_baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":302,"src":"14273:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":307,"name":"_updateBaseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1267,"src":"14258:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":309,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14258:24:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":310,"nodeType":"ExpressionStatement","src":"14258:24:0"}]},"baseFunctions":[2437],"documentation":{"id":300,"nodeType":"StructuredDocumentation","src":"14030:153:0","text":"@notice Updates the base fee.\n @dev Use this to update the base fee. 'msg.sender' must be Allo owner.\n @param _baseFee The new base fee"},"functionSelector":"8e690186","implemented":true,"kind":"function","modifiers":[{"id":305,"kind":"modifierInvocation","modifierName":{"id":304,"name":"onlyOwner","nameLocations":["14238:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"14238:9:0"},"nodeType":"ModifierInvocation","src":"14238:9:0"}],"name":"updateBaseFee","nameLocation":"14197:13:0","parameters":{"id":303,"nodeType":"ParameterList","parameters":[{"constant":false,"id":302,"mutability":"mutable","name":"_baseFee","nameLocation":"14219:8:0","nodeType":"VariableDeclaration","scope":312,"src":"14211:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":301,"name":"uint256","nodeType":"ElementaryTypeName","src":"14211:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14210:18:0"},"returnParameters":{"id":306,"nodeType":"ParameterList","parameters":[],"src":"14248:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":341,"nodeType":"FunctionDefinition","src":"14481:229:0","nodes":[],"body":{"id":340,"nodeType":"Block","src":"14553:157:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":320,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":315,"src":"14567:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":323,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14588:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":322,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14580:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":321,"name":"address","nodeType":"ElementaryTypeName","src":"14580:7:0","typeDescriptions":{}}},"id":324,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14580:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14567:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":329,"nodeType":"IfStatement","src":"14563:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":326,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"14599:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14599:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":328,"nodeType":"RevertStatement","src":"14592:21:0"}},{"expression":{"id":334,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":330,"name":"cloneableStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":63,"src":"14624:19:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":332,"indexExpression":{"id":331,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":315,"src":"14644:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14624:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":333,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14657:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"14624:37:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":335,"nodeType":"ExpressionStatement","src":"14624:37:0"},{"eventCall":{"arguments":[{"id":337,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":315,"src":"14693:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":336,"name":"StrategyApproved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2385,"src":"14676:16:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":338,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14676:27:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":339,"nodeType":"EmitStatement","src":"14671:32:0"}]},"baseFunctions":[2443],"documentation":{"id":313,"nodeType":"StructuredDocumentation","src":"14295:181:0","text":"@notice Add a strategy to the allowlist.\n @dev Emits the 'StrategyApproved()' event. 'msg.sender' must be Allo owner.\n @param _strategy The address of the strategy"},"functionSelector":"41bba0b4","implemented":true,"kind":"function","modifiers":[{"id":318,"kind":"modifierInvocation","modifierName":{"id":317,"name":"onlyOwner","nameLocations":["14543:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"14543:9:0"},"nodeType":"ModifierInvocation","src":"14543:9:0"}],"name":"addToCloneableStrategies","nameLocation":"14490:24:0","parameters":{"id":316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":315,"mutability":"mutable","name":"_strategy","nameLocation":"14523:9:0","nodeType":"VariableDeclaration","scope":341,"src":"14515:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":314,"name":"address","nodeType":"ElementaryTypeName","src":"14515:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14514:19:0"},"returnParameters":{"id":319,"nodeType":"ParameterList","parameters":[],"src":"14553:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":360,"nodeType":"FunctionDefinition","src":"14900:288:0","nodes":[],"body":{"id":359,"nodeType":"Block","src":"14977:211:0","nodes":[],"statements":[{"expression":{"id":353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":349,"name":"cloneableStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":63,"src":"15059:19:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":351,"indexExpression":{"id":350,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":344,"src":"15079:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15059:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":352,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15092:5:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15059:38:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":354,"nodeType":"ExpressionStatement","src":"15059:38:0"},{"eventCall":{"arguments":[{"id":356,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":344,"src":"15171:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":355,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2390,"src":"15155:15:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15155:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":358,"nodeType":"EmitStatement","src":"15150:31:0"}]},"baseFunctions":[2449],"documentation":{"id":342,"nodeType":"StructuredDocumentation","src":"14716:179:0","text":"@notice Remove a strategy from the allowlist\n @dev Emits 'StrategyRemoved()' event. 'msg.sender must be Allo owner.\n @param _strategy The address of the strategy"},"functionSelector":"031e2fa1","implemented":true,"kind":"function","modifiers":[{"id":347,"kind":"modifierInvocation","modifierName":{"id":346,"name":"onlyOwner","nameLocations":["14967:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"14967:9:0"},"nodeType":"ModifierInvocation","src":"14967:9:0"}],"name":"removeFromCloneableStrategies","nameLocation":"14909:29:0","parameters":{"id":345,"nodeType":"ParameterList","parameters":[{"constant":false,"id":344,"mutability":"mutable","name":"_strategy","nameLocation":"14947:9:0","nodeType":"VariableDeclaration","scope":360,"src":"14939:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":343,"name":"address","nodeType":"ElementaryTypeName","src":"14939:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14938:19:0"},"returnParameters":{"id":348,"nodeType":"ParameterList","parameters":[],"src":"14977:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":390,"nodeType":"FunctionDefinition","src":"15387:358:0","nodes":[],"body":{"id":389,"nodeType":"Block","src":"15478:267:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":371,"name":"_manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":365,"src":"15568:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":374,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15588:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":373,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15580:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":372,"name":"address","nodeType":"ElementaryTypeName","src":"15580:7:0","typeDescriptions":{}}},"id":375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15580:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15568:22:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":380,"nodeType":"IfStatement","src":"15564:49:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":377,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"15599:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":378,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15599:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":379,"nodeType":"RevertStatement","src":"15592:21:0"}},{"expression":{"arguments":[{"expression":{"baseExpression":{"id":382,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"15701:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":384,"indexExpression":{"id":383,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":363,"src":"15707:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15701:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15716:11:0","memberName":"managerRole","nodeType":"MemberAccess","referencedDeclaration":2316,"src":"15701:26:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":386,"name":"_manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":365,"src":"15729:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":381,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"15690:10:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15690:48:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":388,"nodeType":"ExpressionStatement","src":"15690:48:0"}]},"baseFunctions":[2457],"documentation":{"id":361,"nodeType":"StructuredDocumentation","src":"15194:188:0","text":"@notice Add a pool manager\n @dev Emits 'RoleGranted()' event. 'msg.sender' must be a pool admin.\n @param _poolId ID of the pool\n @param _manager The address to add"},"functionSelector":"2cf682b0","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":368,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":363,"src":"15469:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":369,"kind":"modifierInvocation","modifierName":{"id":367,"name":"onlyPoolAdmin","nameLocations":["15455:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":123,"src":"15455:13:0"},"nodeType":"ModifierInvocation","src":"15455:22:0"}],"name":"addPoolManager","nameLocation":"15396:14:0","parameters":{"id":366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":363,"mutability":"mutable","name":"_poolId","nameLocation":"15419:7:0","nodeType":"VariableDeclaration","scope":390,"src":"15411:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":362,"name":"uint256","nodeType":"ElementaryTypeName","src":"15411:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":365,"mutability":"mutable","name":"_manager","nameLocation":"15436:8:0","nodeType":"VariableDeclaration","scope":390,"src":"15428:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":364,"name":"address","nodeType":"ElementaryTypeName","src":"15428:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15410:35:0"},"returnParameters":{"id":370,"nodeType":"ParameterList","parameters":[],"src":"15478:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":410,"nodeType":"FunctionDefinition","src":"15950:160:0","nodes":[],"body":{"id":409,"nodeType":"Block","src":"16044:66:0","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":402,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"16066:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":404,"indexExpression":{"id":403,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":393,"src":"16072:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16066:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":405,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16081:11:0","memberName":"managerRole","nodeType":"MemberAccess","referencedDeclaration":2316,"src":"16066:26:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":406,"name":"_manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":395,"src":"16094:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":401,"name":"_revokeRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52691,"src":"16054:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16054:49:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":408,"nodeType":"ExpressionStatement","src":"16054:49:0"}]},"baseFunctions":[2465],"documentation":{"id":391,"nodeType":"StructuredDocumentation","src":"15751:194:0","text":"@notice Remove a pool manager\n @dev Emits 'RoleRevoked()' event. 'msg.sender' must be a pool admin.\n @param _poolId ID of the pool\n @param _manager The address to remove"},"functionSelector":"7f5a70bd","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":398,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":393,"src":"16035:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":399,"kind":"modifierInvocation","modifierName":{"id":397,"name":"onlyPoolAdmin","nameLocations":["16021:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":123,"src":"16021:13:0"},"nodeType":"ModifierInvocation","src":"16021:22:0"}],"name":"removePoolManager","nameLocation":"15959:17:0","parameters":{"id":396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":393,"mutability":"mutable","name":"_poolId","nameLocation":"15985:7:0","nodeType":"VariableDeclaration","scope":410,"src":"15977:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":392,"name":"uint256","nodeType":"ElementaryTypeName","src":"15977:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":395,"mutability":"mutable","name":"_manager","nameLocation":"16002:8:0","nodeType":"VariableDeclaration","scope":410,"src":"15994:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":394,"name":"address","nodeType":"ElementaryTypeName","src":"15994:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15976:35:0"},"returnParameters":{"id":400,"nodeType":"ParameterList","parameters":[],"src":"16044:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":448,"nodeType":"FunctionDefinition","src":"16308:430:0","nodes":[],"body":{"id":447,"nodeType":"Block","src":"16385:353:0","nodes":[],"statements":[{"assignments":[421],"declarations":[{"constant":false,"id":421,"mutability":"mutable","name":"amount","nameLocation":"16514:6:0","nodeType":"VariableDeclaration","scope":447,"src":"16506:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":420,"name":"uint256","nodeType":"ElementaryTypeName","src":"16506:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":440,"initialValue":{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":422,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":413,"src":"16523:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":423,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"16533:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16523:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"arguments":[{"id":436,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16610:4:0","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}],"id":435,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16602:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":434,"name":"address","nodeType":"ElementaryTypeName","src":"16602:7:0","typeDescriptions":{}}},"id":437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16602:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":431,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":413,"src":"16584:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":430,"name":"IERC20Upgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53315,"src":"16566:17:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IERC20Upgradeable_$53315_$","typeString":"type(contract IERC20Upgradeable)"}},"id":432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16566:25:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Upgradeable_$53315","typeString":"contract IERC20Upgradeable"}},"id":433,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16592:9:0","memberName":"balanceOf","nodeType":"MemberAccess","referencedDeclaration":53272,"src":"16566:35:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":438,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16566:50:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"16523:93:0","trueExpression":{"expression":{"arguments":[{"id":427,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16550:4:0","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}],"id":426,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16542:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":425,"name":"address","nodeType":"ElementaryTypeName","src":"16542:7:0","typeDescriptions":{}}},"id":428,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16542:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16556:7:0","memberName":"balance","nodeType":"MemberAccess","src":"16542:21:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"16506:110:0"},{"expression":{"arguments":[{"id":442,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":413,"src":"16704:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":443,"name":"_recipient","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":415,"src":"16712:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":444,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":421,"src":"16724:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":441,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"16688:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16688:43:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":446,"nodeType":"ExpressionStatement","src":"16688:43:0"}]},"baseFunctions":[2473],"documentation":{"id":411,"nodeType":"StructuredDocumentation","src":"16116:187:0","text":"@notice Transfer the funds recovered to the recipient\n @dev 'msg.sender' must be Allo owner\n @param _token The token to transfer\n @param _recipient The recipient"},"functionSelector":"24ae6a27","implemented":true,"kind":"function","modifiers":[{"id":418,"kind":"modifierInvocation","modifierName":{"id":417,"name":"onlyOwner","nameLocations":["16375:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"16375:9:0"},"nodeType":"ModifierInvocation","src":"16375:9:0"}],"name":"recoverFunds","nameLocation":"16317:12:0","parameters":{"id":416,"nodeType":"ParameterList","parameters":[{"constant":false,"id":413,"mutability":"mutable","name":"_token","nameLocation":"16338:6:0","nodeType":"VariableDeclaration","scope":448,"src":"16330:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":412,"name":"address","nodeType":"ElementaryTypeName","src":"16330:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":415,"mutability":"mutable","name":"_recipient","nameLocation":"16354:10:0","nodeType":"VariableDeclaration","scope":448,"src":"16346:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":414,"name":"address","nodeType":"ElementaryTypeName","src":"16346:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16329:36:0"},"returnParameters":{"id":419,"nodeType":"ParameterList","parameters":[],"src":"16385:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":474,"nodeType":"FunctionDefinition","src":"17298:276:0","nodes":[],"body":{"id":473,"nodeType":"Block","src":"17410:164:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":468,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":453,"src":"17549:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":469,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17556:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17560:6:0","memberName":"sender","nodeType":"MemberAccess","src":"17556:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":460,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"17489:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":462,"indexExpression":{"id":461,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":451,"src":"17495:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17489:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17504:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"17489:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":464,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17513:17:0","memberName":"registerRecipient","nodeType":"MemberAccess","referencedDeclaration":2949,"src":"17489:41:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$_t_address_$","typeString":"function (bytes memory,address) payable external returns (address)"}},"id":467,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":465,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17538:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17542:5:0","memberName":"value","nodeType":"MemberAccess","src":"17538:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"17489:59:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$_t_address_$value","typeString":"function (bytes memory,address) payable external returns (address)"}},"id":471,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17489:78:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":459,"id":472,"nodeType":"Return","src":"17482:85:0"}]},"baseFunctions":[2483],"documentation":{"id":449,"nodeType":"StructuredDocumentation","src":"16877:416:0","text":"@notice Passes _data through to the strategy for that pool.\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of registerRecipient().\n @param _poolId ID of the pool\n @param _data Encoded data unique to a strategy that registerRecipient() requires\n @return recipientId The recipient ID that has been registered"},"functionSelector":"075c0e9c","implemented":true,"kind":"function","modifiers":[{"id":456,"kind":"modifierInvocation","modifierName":{"id":455,"name":"nonReentrant","nameLocations":["17379:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"17379:12:0"},"nodeType":"ModifierInvocation","src":"17379:12:0"}],"name":"registerRecipient","nameLocation":"17307:17:0","parameters":{"id":454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":451,"mutability":"mutable","name":"_poolId","nameLocation":"17333:7:0","nodeType":"VariableDeclaration","scope":474,"src":"17325:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":450,"name":"uint256","nodeType":"ElementaryTypeName","src":"17325:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":453,"mutability":"mutable","name":"_data","nameLocation":"17355:5:0","nodeType":"VariableDeclaration","scope":474,"src":"17342:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":452,"name":"bytes","nodeType":"ElementaryTypeName","src":"17342:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"17324:37:0"},"returnParameters":{"id":459,"nodeType":"ParameterList","parameters":[{"constant":false,"id":458,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":474,"src":"17401:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":457,"name":"address","nodeType":"ElementaryTypeName","src":"17401:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"17400:9:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":543,"nodeType":"FunctionDefinition","src":"18212:747:0","nodes":[],"body":{"id":542,"nodeType":"Block","src":"18383:576:0","nodes":[],"statements":[{"assignments":[490],"declarations":[{"constant":false,"id":490,"mutability":"mutable","name":"poolIdLength","nameLocation":"18401:12:0","nodeType":"VariableDeclaration","scope":542,"src":"18393:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":489,"name":"uint256","nodeType":"ElementaryTypeName","src":"18393:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":493,"initialValue":{"expression":{"id":491,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":478,"src":"18416:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18425:6:0","memberName":"length","nodeType":"MemberAccess","src":"18416:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"18393:38:0"},{"expression":{"id":500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":494,"name":"recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":487,"src":"18441:12:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":498,"name":"poolIdLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":490,"src":"18470:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":497,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"18456:13:0","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":495,"name":"address","nodeType":"ElementaryTypeName","src":"18460:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":496,"nodeType":"ArrayTypeName","src":"18460:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18456:27:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"18441:42:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":501,"nodeType":"ExpressionStatement","src":"18441:42:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":505,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":502,"name":"poolIdLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":490,"src":"18498:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":503,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":481,"src":"18514:5:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":504,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18520:6:0","memberName":"length","nodeType":"MemberAccess","src":"18514:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18498:28:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":509,"nodeType":"IfStatement","src":"18494:51:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":506,"name":"MISMATCH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3011,"src":"18535:8:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18535:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":508,"nodeType":"RevertStatement","src":"18528:17:0"}},{"body":{"id":538,"nodeType":"Block","src":"18693:169:0","statements":[{"expression":{"id":532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":516,"name":"recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":487,"src":"18707:12:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":518,"indexExpression":{"id":517,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18720:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18707:15:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"baseExpression":{"id":526,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":481,"src":"18771:5:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":528,"indexExpression":{"id":527,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18777:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18771:8:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":529,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"18781:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18785:6:0","memberName":"sender","nodeType":"MemberAccess","src":"18781:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":519,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"18725:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":523,"indexExpression":{"baseExpression":{"id":520,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":478,"src":"18731:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":522,"indexExpression":{"id":521,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18740:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18731:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18725:18:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":524,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18744:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"18725:27:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":525,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18753:17:0","memberName":"registerRecipient","nodeType":"MemberAccess","referencedDeclaration":2949,"src":"18725:45:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$_t_address_$","typeString":"function (bytes memory,address) payable external returns (address)"}},"id":531,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18725:67:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18707:85:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":533,"nodeType":"ExpressionStatement","src":"18707:85:0"},{"id":537,"nodeType":"UncheckedBlock","src":"18806:46:0","statements":[{"expression":{"id":535,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"18834:3:0","subExpression":{"id":534,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18836:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":536,"nodeType":"ExpressionStatement","src":"18834:3:0"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":513,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18674:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":514,"name":"poolIdLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":490,"src":"18678:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18674:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":539,"initializationExpression":{"assignments":[511],"declarations":[{"constant":false,"id":511,"mutability":"mutable","name":"i","nameLocation":"18671:1:0","nodeType":"VariableDeclaration","scope":539,"src":"18663:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":510,"name":"uint256","nodeType":"ElementaryTypeName","src":"18663:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":512,"nodeType":"VariableDeclarationStatement","src":"18663:9:0"},"nodeType":"ForStatement","src":"18658:204:0"},{"expression":{"id":540,"name":"recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":487,"src":"18940:12:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"functionReturnParameters":488,"id":541,"nodeType":"Return","src":"18933:19:0"}]},"baseFunctions":[2496],"documentation":{"id":475,"nodeType":"StructuredDocumentation","src":"17580:627:0","text":"@notice Register multiple recipients to multiple pools.\n @dev Returns the 'recipientIds' from the strategy that have been registered from calling this function.\n Encoded data unique to a strategy that registerRecipient() requires. Encoded '_data' length must match\n '_poolIds' length or this will revert with MISMATCH(). Other requirements will be determined by the strategy.\n @param _poolIds ID's of the pools\n @param _data An array of encoded data unique to a strategy that registerRecipient() requires.\n @return recipientIds The recipient IDs that have been registered"},"functionSelector":"1a20bd88","implemented":true,"kind":"function","modifiers":[{"id":484,"kind":"modifierInvocation","modifierName":{"id":483,"name":"nonReentrant","nameLocations":["18318:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"18318:12:0"},"nodeType":"ModifierInvocation","src":"18318:12:0"}],"name":"batchRegisterRecipient","nameLocation":"18221:22:0","parameters":{"id":482,"nodeType":"ParameterList","parameters":[{"constant":false,"id":478,"mutability":"mutable","name":"_poolIds","nameLocation":"18261:8:0","nodeType":"VariableDeclaration","scope":543,"src":"18244:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":476,"name":"uint256","nodeType":"ElementaryTypeName","src":"18244:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":477,"nodeType":"ArrayTypeName","src":"18244:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":481,"mutability":"mutable","name":"_data","nameLocation":"18286:5:0","nodeType":"VariableDeclaration","scope":543,"src":"18271:20:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":479,"name":"bytes","nodeType":"ElementaryTypeName","src":"18271:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":480,"nodeType":"ArrayTypeName","src":"18271:7:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"18243:49:0"},"returnParameters":{"id":488,"nodeType":"ParameterList","parameters":[{"constant":false,"id":487,"mutability":"mutable","name":"recipientIds","nameLocation":"18365:12:0","nodeType":"VariableDeclaration","scope":543,"src":"18348:29:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":485,"name":"address","nodeType":"ElementaryTypeName","src":"18348:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":486,"nodeType":"ArrayTypeName","src":"18348:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"18347:31:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":588,"nodeType":"FunctionDefinition","src":"19156:439:0","nodes":[],"body":{"id":587,"nodeType":"Block","src":"19238:357:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":553,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":548,"src":"19318:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":554,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19329:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"19318:12:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":559,"nodeType":"IfStatement","src":"19314:43:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":556,"name":"NOT_ENOUGH_FUNDS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3014,"src":"19339:16:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19339:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":558,"nodeType":"RevertStatement","src":"19332:25:0"}},{"assignments":[562],"declarations":[{"constant":false,"id":562,"mutability":"mutable","name":"pool","nameLocation":"19380:4:0","nodeType":"VariableDeclaration","scope":587,"src":"19368:16:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":561,"nodeType":"UserDefinedTypeName","pathNode":{"id":560,"name":"Pool","nameLocations":["19368:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"19368:4:0"},"referencedDeclaration":2319,"src":"19368:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":566,"initialValue":{"baseExpression":{"id":563,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"19387:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":565,"indexExpression":{"id":564,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":546,"src":"19393:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19387:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"VariableDeclarationStatement","src":"19368:33:0"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":575,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":567,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":562,"src":"19415:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":568,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19420:5:0","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"19415:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":569,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"19429:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"19415:20:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":571,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":548,"src":"19439:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":572,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19450:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19454:5:0","memberName":"value","nodeType":"MemberAccess","src":"19450:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19439:20:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"19415:44:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":579,"nodeType":"IfStatement","src":"19411:75:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":576,"name":"NOT_ENOUGH_FUNDS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3014,"src":"19468:16:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":577,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19468:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":578,"nodeType":"RevertStatement","src":"19461:25:0"}},{"expression":{"arguments":[{"id":581,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":548,"src":"19556:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":582,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":546,"src":"19565:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":583,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":562,"src":"19574:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19579:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"19574:13:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":580,"name":"_fundPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1122,"src":"19546:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_contract$_IStrategy_$2969_$returns$__$","typeString":"function (uint256,uint256,contract IStrategy)"}},"id":585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19546:42:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":586,"nodeType":"ExpressionStatement","src":"19546:42:0"}]},"baseFunctions":[2504],"documentation":{"id":544,"nodeType":"StructuredDocumentation","src":"18965:186:0","text":"@notice Fund a pool.\n @dev Anyone can fund a pool and call this function.\n @param _poolId ID of the pool\n @param _amount The amount to be deposited into the pool"},"functionSelector":"5acd6fac","implemented":true,"kind":"function","modifiers":[{"id":551,"kind":"modifierInvocation","modifierName":{"id":550,"name":"nonReentrant","nameLocations":["19225:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"19225:12:0"},"nodeType":"ModifierInvocation","src":"19225:12:0"}],"name":"fundPool","nameLocation":"19165:8:0","parameters":{"id":549,"nodeType":"ParameterList","parameters":[{"constant":false,"id":546,"mutability":"mutable","name":"_poolId","nameLocation":"19182:7:0","nodeType":"VariableDeclaration","scope":588,"src":"19174:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":545,"name":"uint256","nodeType":"ElementaryTypeName","src":"19174:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":548,"mutability":"mutable","name":"_amount","nameLocation":"19199:7:0","nodeType":"VariableDeclaration","scope":588,"src":"19191:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":547,"name":"uint256","nodeType":"ElementaryTypeName","src":"19191:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19173:34:0"},"returnParameters":{"id":552,"nodeType":"ParameterList","parameters":[],"src":"19238:0:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":604,"nodeType":"FunctionDefinition","src":"19921:127:0","nodes":[],"body":{"id":603,"nodeType":"Block","src":"20006:42:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":599,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":591,"src":"20026:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":600,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":593,"src":"20035:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":598,"name":"_allocate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":947,"src":"20016:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (uint256,bytes memory)"}},"id":601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20016:25:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":602,"nodeType":"ExpressionStatement","src":"20016:25:0"}]},"baseFunctions":[2512],"documentation":{"id":589,"nodeType":"StructuredDocumentation","src":"19601:315:0","text":"@notice Allocate to a recipient or multiple recipients.\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of allocate().\n @param _poolId ID of the pool\n @param _data Encoded data unique to the strategy for that pool"},"functionSelector":"2ec38188","implemented":true,"kind":"function","modifiers":[{"id":596,"kind":"modifierInvocation","modifierName":{"id":595,"name":"nonReentrant","nameLocations":["19993:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"19993:12:0"},"nodeType":"ModifierInvocation","src":"19993:12:0"}],"name":"allocate","nameLocation":"19930:8:0","parameters":{"id":594,"nodeType":"ParameterList","parameters":[{"constant":false,"id":591,"mutability":"mutable","name":"_poolId","nameLocation":"19947:7:0","nodeType":"VariableDeclaration","scope":604,"src":"19939:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":590,"name":"uint256","nodeType":"ElementaryTypeName","src":"19939:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":593,"mutability":"mutable","name":"_data","nameLocation":"19969:5:0","nodeType":"VariableDeclaration","scope":604,"src":"19956:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":592,"name":"bytes","nodeType":"ElementaryTypeName","src":"19956:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"19938:37:0"},"returnParameters":{"id":597,"nodeType":"ParameterList","parameters":[],"src":"20006:0:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":651,"nodeType":"FunctionDefinition","src":"20511:559:0","nodes":[],"body":{"id":650,"nodeType":"Block","src":"20608:462:0","nodes":[],"statements":[{"assignments":[617],"declarations":[{"constant":false,"id":617,"mutability":"mutable","name":"numPools","nameLocation":"20626:8:0","nodeType":"VariableDeclaration","scope":650,"src":"20618:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":616,"name":"uint256","nodeType":"ElementaryTypeName","src":"20618:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":620,"initialValue":{"expression":{"id":618,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":608,"src":"20637:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[] calldata"}},"id":619,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20646:6:0","memberName":"length","nodeType":"MemberAccess","src":"20637:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20618:34:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":621,"name":"numPools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":617,"src":"20772:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":622,"name":"_datas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":611,"src":"20784:6:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20791:6:0","memberName":"length","nodeType":"MemberAccess","src":"20784:13:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20772:25:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":628,"nodeType":"IfStatement","src":"20768:48:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":625,"name":"MISMATCH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3011,"src":"20806:8:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20806:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":627,"nodeType":"RevertStatement","src":"20799:17:0"}},{"body":{"id":648,"nodeType":"Block","src":"20947:117:0","statements":[{"expression":{"arguments":[{"baseExpression":{"id":636,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":608,"src":"20971:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[] calldata"}},"id":638,"indexExpression":{"id":637,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"20980:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20971:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"id":639,"name":"_datas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":611,"src":"20984:6:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":641,"indexExpression":{"id":640,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"20991:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20984:9:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":635,"name":"_allocate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":947,"src":"20961:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (uint256,bytes memory)"}},"id":642,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20961:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":643,"nodeType":"ExpressionStatement","src":"20961:33:0"},{"id":647,"nodeType":"UncheckedBlock","src":"21008:46:0","statements":[{"expression":{"id":645,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"21036:3:0","subExpression":{"id":644,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"21038:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":646,"nodeType":"ExpressionStatement","src":"21036:3:0"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":634,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":632,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"20932:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":633,"name":"numPools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":617,"src":"20936:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20932:12:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":649,"initializationExpression":{"assignments":[630],"declarations":[{"constant":false,"id":630,"mutability":"mutable","name":"i","nameLocation":"20929:1:0","nodeType":"VariableDeclaration","scope":649,"src":"20921:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":629,"name":"uint256","nodeType":"ElementaryTypeName","src":"20921:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":631,"nodeType":"VariableDeclarationStatement","src":"20921:9:0"},"nodeType":"ForStatement","src":"20916:148:0"}]},"baseFunctions":[2522],"documentation":{"id":605,"nodeType":"StructuredDocumentation","src":"20054:452:0","text":"@notice Allocate to multiple pools\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of allocate(). Please note that this is not a 'payable' function, so if you\n want to send funds to the strategy, you must send the funds using 'fundPool()'.\n @param _poolIds IDs of the pools\n @param _datas encoded data unique to the strategy for that pool"},"functionSelector":"c6dff1cf","implemented":true,"kind":"function","modifiers":[{"id":614,"kind":"modifierInvocation","modifierName":{"id":613,"name":"nonReentrant","nameLocations":["20595:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"20595:12:0"},"nodeType":"ModifierInvocation","src":"20595:12:0"}],"name":"batchAllocate","nameLocation":"20520:13:0","parameters":{"id":612,"nodeType":"ParameterList","parameters":[{"constant":false,"id":608,"mutability":"mutable","name":"_poolIds","nameLocation":"20553:8:0","nodeType":"VariableDeclaration","scope":651,"src":"20534:27:0","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":606,"name":"uint256","nodeType":"ElementaryTypeName","src":"20534:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":607,"nodeType":"ArrayTypeName","src":"20534:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":611,"mutability":"mutable","name":"_datas","nameLocation":"20578:6:0","nodeType":"VariableDeclaration","scope":651,"src":"20563:21:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":609,"name":"bytes","nodeType":"ElementaryTypeName","src":"20563:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":610,"nodeType":"ArrayTypeName","src":"20563:7:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"20533:52:0"},"returnParameters":{"id":615,"nodeType":"ParameterList","parameters":[],"src":"20608:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":676,"nodeType":"FunctionDefinition","src":"21468:196:0","nodes":[],"body":{"id":675,"nodeType":"Block","src":"21579:85:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":669,"name":"_recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":657,"src":"21624:13:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":670,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":659,"src":"21639:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":671,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21646:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21650:6:0","memberName":"sender","nodeType":"MemberAccess","src":"21646:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":664,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"21589:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":666,"indexExpression":{"id":665,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":654,"src":"21595:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21589:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":667,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21604:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"21589:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21613:10:0","memberName":"distribute","nodeType":"MemberAccess","referencedDeclaration":2968,"src":"21589:34:0","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$","typeString":"function (address[] memory,bytes memory,address) external"}},"id":673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21589:68:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":674,"nodeType":"ExpressionStatement","src":"21589:68:0"}]},"baseFunctions":[2533],"documentation":{"id":652,"nodeType":"StructuredDocumentation","src":"21076:387:0","text":"@notice Distribute to a recipient or multiple recipients.\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of 'strategy.distribute()'.\n @param _poolId ID of the pool\n @param _recipientIds Ids of the recipients of the distribution\n @param _data Encoded data unique to the strategy"},"functionSelector":"3a5fbd92","implemented":true,"kind":"function","modifiers":[{"id":662,"kind":"modifierInvocation","modifierName":{"id":661,"name":"nonReentrant","nameLocations":["21566:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"21566:12:0"},"nodeType":"ModifierInvocation","src":"21566:12:0"}],"name":"distribute","nameLocation":"21477:10:0","parameters":{"id":660,"nodeType":"ParameterList","parameters":[{"constant":false,"id":654,"mutability":"mutable","name":"_poolId","nameLocation":"21496:7:0","nodeType":"VariableDeclaration","scope":676,"src":"21488:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":653,"name":"uint256","nodeType":"ElementaryTypeName","src":"21488:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":657,"mutability":"mutable","name":"_recipientIds","nameLocation":"21522:13:0","nodeType":"VariableDeclaration","scope":676,"src":"21505:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":655,"name":"address","nodeType":"ElementaryTypeName","src":"21505:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":656,"nodeType":"ArrayTypeName","src":"21505:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":659,"mutability":"mutable","name":"_data","nameLocation":"21550:5:0","nodeType":"VariableDeclaration","scope":676,"src":"21537:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":658,"name":"bytes","nodeType":"ElementaryTypeName","src":"21537:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"21487:69:0"},"returnParameters":{"id":663,"nodeType":"ParameterList","parameters":[],"src":"21579:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":693,"nodeType":"FunctionDefinition","src":"21910:142:0","nodes":[],"body":{"id":692,"nodeType":"Block","src":"21972:80:0","nodes":[],"statements":[{"condition":{"id":687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"21986:36:0","subExpression":{"arguments":[{"id":683,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":679,"src":"22002:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":684,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"22011:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":685,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22015:6:0","memberName":"sender","nodeType":"MemberAccess","src":"22011:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":682,"name":"_isPoolManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1178,"src":"21987:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":686,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21987:35:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":691,"nodeType":"IfStatement","src":"21982:63:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":688,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"22031:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22031:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":690,"nodeType":"RevertStatement","src":"22024:21:0"}}]},"documentation":{"id":677,"nodeType":"StructuredDocumentation","src":"21806:99:0","text":"@notice Internal function to check is caller is pool manager\n @param _poolId The pool id"},"implemented":true,"kind":"function","modifiers":[],"name":"_checkOnlyPoolManager","nameLocation":"21919:21:0","parameters":{"id":680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":679,"mutability":"mutable","name":"_poolId","nameLocation":"21949:7:0","nodeType":"VariableDeclaration","scope":693,"src":"21941:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":678,"name":"uint256","nodeType":"ElementaryTypeName","src":"21941:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21940:17:0"},"returnParameters":{"id":681,"nodeType":"ParameterList","parameters":[],"src":"21972:0:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":710,"nodeType":"FunctionDefinition","src":"22160:138:0","nodes":[],"body":{"id":709,"nodeType":"Block","src":"22220:78:0","nodes":[],"statements":[{"condition":{"id":704,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22234:34:0","subExpression":{"arguments":[{"id":700,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":696,"src":"22248:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":701,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"22257:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22261:6:0","memberName":"sender","nodeType":"MemberAccess","src":"22257:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":699,"name":"_isPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1154,"src":"22235:12:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":703,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22235:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":708,"nodeType":"IfStatement","src":"22230:61:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":705,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"22277:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":706,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22277:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":707,"nodeType":"RevertStatement","src":"22270:21:0"}}]},"documentation":{"id":694,"nodeType":"StructuredDocumentation","src":"22058:97:0","text":"@notice Internal function to check is caller is pool admin\n @param _poolId The pool id"},"implemented":true,"kind":"function","modifiers":[],"name":"_checkOnlyPoolAdmin","nameLocation":"22169:19:0","parameters":{"id":697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":696,"mutability":"mutable","name":"_poolId","nameLocation":"22197:7:0","nodeType":"VariableDeclaration","scope":710,"src":"22189:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":695,"name":"uint256","nodeType":"ElementaryTypeName","src":"22189:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22188:17:0"},"returnParameters":{"id":698,"nodeType":"ParameterList","parameters":[],"src":"22220:0:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":925,"nodeType":"FunctionDefinition","src":"23131:2681:0","nodes":[],"body":{"id":924,"nodeType":"Block","src":"23409:2403:0","nodes":[],"statements":[{"condition":{"id":739,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"23423:58:0","subExpression":{"arguments":[{"id":735,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":713,"src":"23458:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":736,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23470:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23474:6:0","memberName":"sender","nodeType":"MemberAccess","src":"23470:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":733,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47,"src":"23424:8:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":734,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23433:24:0","memberName":"isOwnerOrMemberOfProfile","nodeType":"MemberAccess","referencedDeclaration":2704,"src":"23424:33:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":738,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23424:57:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":743,"nodeType":"IfStatement","src":"23419:85:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":740,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"23490:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":741,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23490:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":742,"nodeType":"RevertStatement","src":"23483:21:0"}},{"expression":{"id":747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":744,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"23515:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":746,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"23524:12:0","subExpression":{"id":745,"name":"_poolIndex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":40,"src":"23526:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23515:21:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":748,"nodeType":"ExpressionStatement","src":"23515:21:0"},{"assignments":[750],"declarations":[{"constant":false,"id":750,"mutability":"mutable","name":"POOL_MANAGER_ROLE","nameLocation":"23683:17:0","nodeType":"VariableDeclaration","scope":924,"src":"23675:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":749,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23675:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":755,"initialValue":{"arguments":[{"id":753,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"23711:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":752,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23703:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":751,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23703:7:0","typeDescriptions":{}}},"id":754,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23703:15:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"23675:43:0"},{"assignments":[757],"declarations":[{"constant":false,"id":757,"mutability":"mutable","name":"POOL_ADMIN_ROLE","nameLocation":"23736:15:0","nodeType":"VariableDeclaration","scope":924,"src":"23728:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":756,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23728:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":765,"initialValue":{"arguments":[{"arguments":[{"id":761,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"23781:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"61646d696e","id":762,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"23789:7:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_f23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d8","typeString":"literal_string \"admin\""},"value":"admin"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_stringliteral_f23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d8","typeString":"literal_string \"admin\""}],"expression":{"id":759,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23764:3:0","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":760,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23768:12:0","memberName":"encodePacked","nodeType":"MemberAccess","src":"23764:16:0","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23764:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":758,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"23754:9:0","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":764,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23754:44:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"23728:70:0"},{"assignments":[768],"declarations":[{"constant":false,"id":768,"mutability":"mutable","name":"pool","nameLocation":"23857:4:0","nodeType":"VariableDeclaration","scope":924,"src":"23845:16:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":767,"nodeType":"UserDefinedTypeName","pathNode":{"id":766,"name":"Pool","nameLocations":["23845:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"23845:4:0"},"referencedDeclaration":2319,"src":"23845:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":777,"initialValue":{"arguments":[{"id":770,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":713,"src":"23894:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":771,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"23928:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":772,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":725,"src":"23961:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":773,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"23991:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":774,"name":"POOL_MANAGER_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":750,"src":"24024:17:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":775,"name":"POOL_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":757,"src":"24066:15:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":769,"name":"Pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2319,"src":"23864:4:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Pool_$2319_storage_ptr_$","typeString":"type(struct IAllo.Pool storage pointer)"}},"id":776,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["23883:9:0","23918:8:0","23951:8:0","23984:5:0","24011:11:0","24055:9:0"],"names":["profileId","strategy","metadata","token","managerRole","adminRole"],"nodeType":"FunctionCall","src":"23864:228:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"23845:247:0"},{"expression":{"id":782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":778,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"24159:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":780,"indexExpression":{"id":779,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"24165:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24159:13:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":781,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":768,"src":"24175:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"src":"24159:20:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":783,"nodeType":"ExpressionStatement","src":"24159:20:0"},{"expression":{"arguments":[{"id":785,"name":"POOL_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":757,"src":"24250:15:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":786,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24267:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":787,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24271:6:0","memberName":"sender","nodeType":"MemberAccess","src":"24267:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":784,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"24239:10:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24239:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":789,"nodeType":"ExpressionStatement","src":"24239:39:0"},{"expression":{"arguments":[{"id":791,"name":"POOL_MANAGER_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":750,"src":"24351:17:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":792,"name":"POOL_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":757,"src":"24370:15:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":790,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"24337:13:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":793,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24337:49:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":794,"nodeType":"ExpressionStatement","src":"24337:49:0"},{"expression":{"arguments":[{"id":798,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"24562:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":799,"name":"_initStrategyData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":718,"src":"24570:17:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":795,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"24541:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24551:10:0","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":2939,"src":"24541:20:0","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (uint256,bytes memory) external"}},"id":800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24541:47:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":801,"nodeType":"ExpressionStatement","src":"24541:47:0"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":818,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":806,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":802,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"24603:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24613:9:0","memberName":"getPoolId","nodeType":"MemberAccess","referencedDeclaration":2876,"src":"24603:19:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":804,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24603:21:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":805,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"24628:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24603:31:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":809,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"24646:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24656:7:0","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":2870,"src":"24646:17:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":811,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24646:19:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}],"id":808,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24638:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":807,"name":"address","nodeType":"ElementaryTypeName","src":"24638:7:0","typeDescriptions":{}}},"id":812,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24638:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":815,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"24678:4:0","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}],"id":814,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24670:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":813,"name":"address","nodeType":"ElementaryTypeName","src":"24670:7:0","typeDescriptions":{}}},"id":816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24670:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"24638:45:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24603:80:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":822,"nodeType":"IfStatement","src":"24599:103:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":819,"name":"MISMATCH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3011,"src":"24692:8:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24692:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":821,"nodeType":"RevertStatement","src":"24685:17:0"}},{"assignments":[824],"declarations":[{"constant":false,"id":824,"mutability":"mutable","name":"managersLength","nameLocation":"24758:14:0","nodeType":"VariableDeclaration","scope":924,"src":"24750:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":823,"name":"uint256","nodeType":"ElementaryTypeName","src":"24750:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":827,"initialValue":{"expression":{"id":825,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":728,"src":"24775:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24785:6:0","memberName":"length","nodeType":"MemberAccess","src":"24775:16:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24750:41:0"},{"body":{"id":859,"nodeType":"Block","src":"24838:229:0","statements":[{"assignments":[835],"declarations":[{"constant":false,"id":835,"mutability":"mutable","name":"manager","nameLocation":"24860:7:0","nodeType":"VariableDeclaration","scope":859,"src":"24852:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":834,"name":"address","nodeType":"ElementaryTypeName","src":"24852:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":839,"initialValue":{"baseExpression":{"id":836,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":728,"src":"24870:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":838,"indexExpression":{"id":837,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":829,"src":"24880:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24870:12:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"24852:30:0"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":840,"name":"manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":835,"src":"24900:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":843,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24919:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":842,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24911:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":841,"name":"address","nodeType":"ElementaryTypeName","src":"24911:7:0","typeDescriptions":{}}},"id":844,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24911:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"24900:21:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":849,"nodeType":"IfStatement","src":"24896:48:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":846,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"24930:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24930:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":848,"nodeType":"RevertStatement","src":"24923:21:0"}},{"expression":{"arguments":[{"id":851,"name":"POOL_MANAGER_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":750,"src":"24970:17:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":852,"name":"manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":835,"src":"24989:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":850,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"24959:10:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":853,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24959:38:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":854,"nodeType":"ExpressionStatement","src":"24959:38:0"},{"id":858,"nodeType":"UncheckedBlock","src":"25011:46:0","statements":[{"expression":{"id":856,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"25039:3:0","subExpression":{"id":855,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":829,"src":"25041:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":857,"nodeType":"ExpressionStatement","src":"25039:3:0"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":833,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":831,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":829,"src":"24817:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":832,"name":"managersLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":824,"src":"24821:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24817:18:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":860,"initializationExpression":{"assignments":[829],"declarations":[{"constant":false,"id":829,"mutability":"mutable","name":"i","nameLocation":"24814:1:0","nodeType":"VariableDeclaration","scope":860,"src":"24806:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":828,"name":"uint256","nodeType":"ElementaryTypeName","src":"24806:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":830,"nodeType":"VariableDeclarationStatement","src":"24806:9:0"},"nodeType":"ForStatement","src":"24801:266:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":861,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25081:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":862,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25091:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25081:11:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":903,"nodeType":"IfStatement","src":"25077:554:0","trueBody":{"id":902,"nodeType":"Block","src":"25094:537:0","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":864,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"25359:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":865,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"25369:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"25359:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":867,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25380:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":868,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25390:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25380:17:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":870,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"25401:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25405:5:0","memberName":"value","nodeType":"MemberAccess","src":"25401:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25380:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":873,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25379:32:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25359:52:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":875,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25358:54:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":876,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"25417:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":877,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"25427:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"25417:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":879,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25437:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":880,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"25448:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25452:5:0","memberName":"value","nodeType":"MemberAccess","src":"25448:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25437:20:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25417:40:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":884,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25416:42:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25358:100:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":890,"nodeType":"IfStatement","src":"25354:164:0","trueBody":{"id":889,"nodeType":"Block","src":"25460:58:0","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":886,"name":"NOT_ENOUGH_FUNDS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3014,"src":"25485:16:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":887,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25485:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":888,"nodeType":"RevertStatement","src":"25478:25:0"}]}},{"expression":{"arguments":[{"id":892,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"25547:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":893,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"25555:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"id":894,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25565:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":891,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"25531:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":895,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25531:42:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":896,"nodeType":"ExpressionStatement","src":"25531:42:0"},{"eventCall":{"arguments":[{"id":898,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"25604:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":899,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25612:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":897,"name":"BaseFeePaid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2360,"src":"25592:11:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":900,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25592:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":901,"nodeType":"EmitStatement","src":"25587:33:0"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":904,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25645:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":905,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25655:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25645:11:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":914,"nodeType":"IfStatement","src":"25641:79:0","trueBody":{"id":913,"nodeType":"Block","src":"25658:62:0","statements":[{"expression":{"arguments":[{"id":908,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25682:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":909,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"25691:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":910,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"25699:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":907,"name":"_fundPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1122,"src":"25672:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_contract$_IStrategy_$2969_$returns$__$","typeString":"function (uint256,uint256,contract IStrategy)"}},"id":911,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25672:37:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":912,"nodeType":"ExpressionStatement","src":"25672:37:0"}]}},{"eventCall":{"arguments":[{"id":916,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"25747:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":917,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":713,"src":"25755:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":918,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"25767:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":919,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"25778:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":920,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25786:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":921,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":725,"src":"25795:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":915,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2336,"src":"25735:11:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_bytes32_$_t_contract$_IStrategy_$2969_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,bytes32,contract IStrategy,address,uint256,struct Metadata memory)"}},"id":922,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25735:70:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":923,"nodeType":"EmitStatement","src":"25730:75:0"}]},"documentation":{"id":711,"nodeType":"StructuredDocumentation","src":"22304:822:0","text":"@notice Creates a new pool.\n @dev This is an internal function that is called by the 'createPool()' & 'createPoolWithCustomStrategy()' functions\n It is used to create a new pool and is called by both functions. The 'msg.sender' must be a member or owner of\n a profile to create a pool.\n @param _profileId The ID of the profile of for pool creator in the registry\n @param _strategy The address of strategy\n @param _initStrategyData The data to initialize the strategy\n @param _token The address of the token that the pool is denominated in\n @param _amount The amount of the token to be deposited into the pool\n @param _metadata The 'Metadata' of the pool\n @param _managers The managers of the pool\n @return poolId The ID of the pool"},"implemented":true,"kind":"function","modifiers":[],"name":"_createPool","nameLocation":"23140:11:0","parameters":{"id":729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":713,"mutability":"mutable","name":"_profileId","nameLocation":"23169:10:0","nodeType":"VariableDeclaration","scope":925,"src":"23161:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":712,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23161:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":716,"mutability":"mutable","name":"_strategy","nameLocation":"23199:9:0","nodeType":"VariableDeclaration","scope":925,"src":"23189:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},"typeName":{"id":715,"nodeType":"UserDefinedTypeName","pathNode":{"id":714,"name":"IStrategy","nameLocations":["23189:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2969,"src":"23189:9:0"},"referencedDeclaration":2969,"src":"23189:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"visibility":"internal"},{"constant":false,"id":718,"mutability":"mutable","name":"_initStrategyData","nameLocation":"23231:17:0","nodeType":"VariableDeclaration","scope":925,"src":"23218:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":717,"name":"bytes","nodeType":"ElementaryTypeName","src":"23218:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":720,"mutability":"mutable","name":"_token","nameLocation":"23266:6:0","nodeType":"VariableDeclaration","scope":925,"src":"23258:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":719,"name":"address","nodeType":"ElementaryTypeName","src":"23258:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":722,"mutability":"mutable","name":"_amount","nameLocation":"23290:7:0","nodeType":"VariableDeclaration","scope":925,"src":"23282:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":721,"name":"uint256","nodeType":"ElementaryTypeName","src":"23282:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":725,"mutability":"mutable","name":"_metadata","nameLocation":"23323:9:0","nodeType":"VariableDeclaration","scope":925,"src":"23307:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":724,"nodeType":"UserDefinedTypeName","pathNode":{"id":723,"name":"Metadata","nameLocations":["23307:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"23307:8:0"},"referencedDeclaration":3098,"src":"23307:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":728,"mutability":"mutable","name":"_managers","nameLocation":"23359:9:0","nodeType":"VariableDeclaration","scope":925,"src":"23342:26:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":726,"name":"address","nodeType":"ElementaryTypeName","src":"23342:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":727,"nodeType":"ArrayTypeName","src":"23342:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"23151:223:0"},"returnParameters":{"id":732,"nodeType":"ParameterList","parameters":[{"constant":false,"id":731,"mutability":"mutable","name":"poolId","nameLocation":"23401:6:0","nodeType":"VariableDeclaration","scope":925,"src":"23393:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":730,"name":"uint256","nodeType":"ElementaryTypeName","src":"23393:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23392:16:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":947,"nodeType":"FunctionDefinition","src":"26159:151:0","nodes":[],"body":{"id":946,"nodeType":"Block","src":"26224:86:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":941,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":930,"src":"26285:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":942,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"26292:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26296:6:0","memberName":"sender","nodeType":"MemberAccess","src":"26292:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":933,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"26234:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":935,"indexExpression":{"id":934,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":928,"src":"26240:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26234:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":936,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26249:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"26234:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26258:8:0","memberName":"allocate","nodeType":"MemberAccess","referencedDeclaration":2957,"src":"26234:32:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$__$","typeString":"function (bytes memory,address) payable external"}},"id":940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":938,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"26274:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":939,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26278:5:0","memberName":"value","nodeType":"MemberAccess","src":"26274:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"26234:50:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$__$value","typeString":"function (bytes memory,address) payable external"}},"id":944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26234:69:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":945,"nodeType":"ExpressionStatement","src":"26234:69:0"}]},"documentation":{"id":926,"nodeType":"StructuredDocumentation","src":"25818:336:0","text":"@notice Allocate to recipient(s).\n @dev Passes '_data' & 'msg.sender' through to the strategy for that pool.\n This is an internal function that is called by the 'allocate()' & 'batchAllocate()' functions.\n @param _poolId ID of the pool\n @param _data Encoded data unique to the strategy for that pool"},"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"26168:9:0","parameters":{"id":931,"nodeType":"ParameterList","parameters":[{"constant":false,"id":928,"mutability":"mutable","name":"_poolId","nameLocation":"26186:7:0","nodeType":"VariableDeclaration","scope":947,"src":"26178:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":927,"name":"uint256","nodeType":"ElementaryTypeName","src":"26178:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":930,"mutability":"mutable","name":"_data","nameLocation":"26208:5:0","nodeType":"VariableDeclaration","scope":947,"src":"26195:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":929,"name":"bytes","nodeType":"ElementaryTypeName","src":"26195:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26177:37:0"},"returnParameters":{"id":932,"nodeType":"ParameterList","parameters":[],"src":"26224:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1122,"nodeType":"FunctionDefinition","src":"26634:1879:0","nodes":[],"body":{"id":1121,"nodeType":"Block","src":"26717:1796:0","nodes":[],"statements":[{"assignments":[959],"declarations":[{"constant":false,"id":959,"mutability":"mutable","name":"feeAmount","nameLocation":"26735:9:0","nodeType":"VariableDeclaration","scope":1121,"src":"26727:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":958,"name":"uint256","nodeType":"ElementaryTypeName","src":"26727:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":960,"nodeType":"VariableDeclarationStatement","src":"26727:17:0"},{"assignments":[962],"declarations":[{"constant":false,"id":962,"mutability":"mutable","name":"amountAfterFee","nameLocation":"26762:14:0","nodeType":"VariableDeclaration","scope":1121,"src":"26754:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":961,"name":"uint256","nodeType":"ElementaryTypeName","src":"26754:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":964,"initialValue":{"id":963,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":950,"src":"26779:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26754:32:0"},{"assignments":[967],"declarations":[{"constant":false,"id":967,"mutability":"mutable","name":"pool","nameLocation":"26810:4:0","nodeType":"VariableDeclaration","scope":1121,"src":"26797:17:0","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":966,"nodeType":"UserDefinedTypeName","pathNode":{"id":965,"name":"Pool","nameLocations":["26797:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"26797:4:0"},"referencedDeclaration":2319,"src":"26797:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":971,"initialValue":{"baseExpression":{"id":968,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"26817:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":970,"indexExpression":{"id":969,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":952,"src":"26823:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26817:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"VariableDeclarationStatement","src":"26797:34:0"},{"assignments":[973],"declarations":[{"constant":false,"id":973,"mutability":"mutable","name":"_token","nameLocation":"26849:6:0","nodeType":"VariableDeclaration","scope":1121,"src":"26841:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":972,"name":"address","nodeType":"ElementaryTypeName","src":"26841:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":976,"initialValue":{"expression":{"id":974,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":967,"src":"26858:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool storage pointer"}},"id":975,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26863:5:0","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"26858:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"26841:27:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":979,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":977,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"26883:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":978,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26896:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"26883:14:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1050,"nodeType":"IfStatement","src":"26879:808:0","trueBody":{"id":1049,"nodeType":"Block","src":"26899:788:0","statements":[{"expression":{"id":988,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":980,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"26913:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":981,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":950,"src":"26926:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":982,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"26936:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26926:20:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":984,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"26925:22:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":985,"name":"getFeeDenominator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1276,"src":"26950:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_uint256_$","typeString":"function () pure returns (uint256)"}},"id":986,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26950:19:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26925:44:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26913:56:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":989,"nodeType":"ExpressionStatement","src":"26913:56:0"},{"expression":{"id":992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":990,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"26983:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":991,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27001:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26983:27:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":993,"nodeType":"ExpressionStatement","src":"26983:27:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":994,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27029:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":995,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"27041:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27029:26:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":997,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":950,"src":"27059:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27029:37:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1002,"nodeType":"IfStatement","src":"27025:59:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":999,"name":"INVALID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3008,"src":"27075:7:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27075:9:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1001,"nodeType":"RevertStatement","src":"27068:16:0"}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1005,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1003,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27103:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":1004,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"27113:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27103:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1047,"nodeType":"Block","src":"27254:423:0","statements":[{"assignments":[1018],"declarations":[{"constant":false,"id":1018,"mutability":"mutable","name":"balanceBeforeFee","nameLocation":"27280:16:0","nodeType":"VariableDeclaration","scope":1047,"src":"27272:24:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1017,"name":"uint256","nodeType":"ElementaryTypeName","src":"27272:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1023,"initialValue":{"arguments":[{"id":1020,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27311:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1021,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27319:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":1019,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"27299:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27299:29:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27272:56:0"},{"expression":{"arguments":[{"id":1025,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27366:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1027,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"27394:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27398:6:0","memberName":"sender","nodeType":"MemberAccess","src":"27394:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1029,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27410:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"id":1030,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27428:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1026,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"27374:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1031,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["27388:4:0","27406:2:0","27420:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"27374:65:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1024,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27346:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1032,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27346:94:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1033,"nodeType":"ExpressionStatement","src":"27346:94:0"},{"assignments":[1035],"declarations":[{"constant":false,"id":1035,"mutability":"mutable","name":"balanceAfterFee","nameLocation":"27466:15:0","nodeType":"VariableDeclaration","scope":1047,"src":"27458:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1034,"name":"uint256","nodeType":"ElementaryTypeName","src":"27458:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1040,"initialValue":{"arguments":[{"id":1037,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27496:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1038,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27504:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":1036,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"27484:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27484:29:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27458:55:0"},{"expression":{"id":1045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1041,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27616:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1042,"name":"balanceAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1035,"src":"27628:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":1043,"name":"balanceBeforeFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1018,"src":"27646:16:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27628:34:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27616:46:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1046,"nodeType":"ExpressionStatement","src":"27616:46:0"}]},"id":1048,"nodeType":"IfStatement","src":"27099:578:0","trueBody":{"id":1016,"nodeType":"Block","src":"27121:127:0","statements":[{"expression":{"arguments":[{"id":1007,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27159:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1009,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"27187:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27191:6:0","memberName":"sender","nodeType":"MemberAccess","src":"27187:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1011,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27203:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"id":1012,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27221:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1008,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"27167:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["27181:4:0","27199:2:0","27213:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"27167:65:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1006,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27139:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1014,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27139:94:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1015,"nodeType":"ExpressionStatement","src":"27139:94:0"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1053,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1051,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27701:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":1052,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"27711:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27701:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1107,"nodeType":"Block","src":"27889:501:0","statements":[{"assignments":[1069],"declarations":[{"constant":false,"id":1069,"mutability":"mutable","name":"balanceBeforeFundingPool","nameLocation":"27911:24:0","nodeType":"VariableDeclaration","scope":1107,"src":"27903:32:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1068,"name":"uint256","nodeType":"ElementaryTypeName","src":"27903:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1077,"initialValue":{"arguments":[{"id":1071,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27950:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1074,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"27966:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1073,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27958:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1072,"name":"address","nodeType":"ElementaryTypeName","src":"27958:7:0","typeDescriptions":{}}},"id":1075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27958:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1070,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"27938:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27938:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27903:74:0"},{"expression":{"arguments":[{"id":1079,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"28028:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1081,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"28056:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28060:6:0","memberName":"sender","nodeType":"MemberAccess","src":"28056:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1085,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"28080:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1084,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"28072:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1083,"name":"address","nodeType":"ElementaryTypeName","src":"28072:7:0","typeDescriptions":{}}},"id":1086,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28072:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1087,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28100:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1080,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"28036:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1088,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["28050:4:0","28068:2:0","28092:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"28036:80:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1078,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27991:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1089,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27991:139:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1090,"nodeType":"ExpressionStatement","src":"27991:139:0"},{"assignments":[1092],"declarations":[{"constant":false,"id":1092,"mutability":"mutable","name":"balanceAfterFundingPool","nameLocation":"28152:23:0","nodeType":"VariableDeclaration","scope":1107,"src":"28144:31:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1091,"name":"uint256","nodeType":"ElementaryTypeName","src":"28144:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1100,"initialValue":{"arguments":[{"id":1094,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"28190:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1097,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"28206:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1096,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"28198:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1095,"name":"address","nodeType":"ElementaryTypeName","src":"28198:7:0","typeDescriptions":{}}},"id":1098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28198:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1093,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"28178:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28178:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"28144:73:0"},{"expression":{"id":1105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1101,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28312:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1102,"name":"balanceAfterFundingPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1092,"src":"28329:23:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":1103,"name":"balanceBeforeFundingPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1069,"src":"28355:24:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28329:50:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28312:67:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1106,"nodeType":"ExpressionStatement","src":"28312:67:0"}]},"id":1108,"nodeType":"IfStatement","src":"27697:693:0","trueBody":{"id":1067,"nodeType":"Block","src":"27719:164:0","statements":[{"expression":{"arguments":[{"id":1055,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27770:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1057,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"27798:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27802:6:0","memberName":"sender","nodeType":"MemberAccess","src":"27798:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1061,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"27822:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1060,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27814:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1059,"name":"address","nodeType":"ElementaryTypeName","src":"27814:7:0","typeDescriptions":{}}},"id":1062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27814:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1063,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"27842:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1056,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"27778:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["27792:4:0","27810:2:0","27834:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"27778:80:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1054,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27733:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27733:139:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1066,"nodeType":"ExpressionStatement","src":"27733:139:0"}]}},{"expression":{"arguments":[{"id":1112,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28429:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":1109,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"28400:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":1111,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28410:18:0","memberName":"increasePoolAmount","nodeType":"MemberAccess","referencedDeclaration":2908,"src":"28400:28:0","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256) external"}},"id":1113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28400:44:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1114,"nodeType":"ExpressionStatement","src":"28400:44:0"},{"eventCall":{"arguments":[{"id":1116,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":952,"src":"28471:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1117,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28480:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1118,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"28496:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1115,"name":"PoolFunded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2353,"src":"28460:10:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256)"}},"id":1119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28460:46:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1120,"nodeType":"EmitStatement","src":"28455:51:0"}]},"documentation":{"id":948,"nodeType":"StructuredDocumentation","src":"26316:313:0","text":"@notice Fund a pool.\n @dev Deducts the fee and transfers the amount to the distribution strategy.\n Emits a 'PoolFunded' event.\n @param _amount The amount to transfer\n @param _poolId The 'poolId' for the pool you are funding\n @param _strategy The address of the strategy"},"implemented":true,"kind":"function","modifiers":[],"name":"_fundPool","nameLocation":"26643:9:0","parameters":{"id":956,"nodeType":"ParameterList","parameters":[{"constant":false,"id":950,"mutability":"mutable","name":"_amount","nameLocation":"26661:7:0","nodeType":"VariableDeclaration","scope":1122,"src":"26653:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":949,"name":"uint256","nodeType":"ElementaryTypeName","src":"26653:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":952,"mutability":"mutable","name":"_poolId","nameLocation":"26678:7:0","nodeType":"VariableDeclaration","scope":1122,"src":"26670:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":951,"name":"uint256","nodeType":"ElementaryTypeName","src":"26670:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":955,"mutability":"mutable","name":"_strategy","nameLocation":"26697:9:0","nodeType":"VariableDeclaration","scope":1122,"src":"26687:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},"typeName":{"id":954,"nodeType":"UserDefinedTypeName","pathNode":{"id":953,"name":"IStrategy","nameLocations":["26687:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2969,"src":"26687:9:0"},"referencedDeclaration":2969,"src":"26687:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"visibility":"internal"}],"src":"26652:55:0"},"returnParameters":{"id":957,"nodeType":"ParameterList","parameters":[],"src":"26717:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1135,"nodeType":"FunctionDefinition","src":"28898:132:0","nodes":[],"body":{"id":1134,"nodeType":"Block","src":"28976:54:0","nodes":[],"statements":[{"expression":{"baseExpression":{"id":1130,"name":"cloneableStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":63,"src":"28993:19:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":1132,"indexExpression":{"id":1131,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"29013:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28993:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1129,"id":1133,"nodeType":"Return","src":"28986:37:0"}]},"documentation":{"id":1123,"nodeType":"StructuredDocumentation","src":"28519:374:0","text":"@notice Checks if the strategy is an approved cloneable strategy.\n @dev Internal function used by createPoolwithCustomStrategy and createPool to\n determine if a strategy is in the cloneable strategy allow list.\n @param _strategy The address of the strategy\n @return This will return 'true' if the strategy is cloneable, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isCloneableStrategy","nameLocation":"28907:20:0","parameters":{"id":1126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1125,"mutability":"mutable","name":"_strategy","nameLocation":"28936:9:0","nodeType":"VariableDeclaration","scope":1135,"src":"28928:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1124,"name":"address","nodeType":"ElementaryTypeName","src":"28928:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"28927:19:0"},"returnParameters":{"id":1129,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1128,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1135,"src":"28970:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1127,"name":"bool","nodeType":"ElementaryTypeName","src":"28970:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28969:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":1154,"nodeType":"FunctionDefinition","src":"29346:153:0","nodes":[],"body":{"id":1153,"nodeType":"Block","src":"29432:67:0","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":1146,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"29457:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1148,"indexExpression":{"id":1147,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1138,"src":"29463:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29457:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":1149,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29472:9:0","memberName":"adminRole","nodeType":"MemberAccess","referencedDeclaration":2318,"src":"29457:24:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1150,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1140,"src":"29483:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1145,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"29449:7:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29449:43:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1144,"id":1152,"nodeType":"Return","src":"29442:50:0"}]},"documentation":{"id":1136,"nodeType":"StructuredDocumentation","src":"29036:305:0","text":"@notice Checks if the address is a pool admin\n @dev Internal function used to determine if an address is a pool admin\n @param _poolId The ID of the pool\n @param _address The address to check\n @return This will return 'true' if the address is a pool admin, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isPoolAdmin","nameLocation":"29355:12:0","parameters":{"id":1141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1138,"mutability":"mutable","name":"_poolId","nameLocation":"29376:7:0","nodeType":"VariableDeclaration","scope":1154,"src":"29368:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1137,"name":"uint256","nodeType":"ElementaryTypeName","src":"29368:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1140,"mutability":"mutable","name":"_address","nameLocation":"29393:8:0","nodeType":"VariableDeclaration","scope":1154,"src":"29385:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1139,"name":"address","nodeType":"ElementaryTypeName","src":"29385:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29367:35:0"},"returnParameters":{"id":1144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1143,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1154,"src":"29426:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1142,"name":"bool","nodeType":"ElementaryTypeName","src":"29426:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"29425:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":1178,"nodeType":"FunctionDefinition","src":"29821:192:0","nodes":[],"body":{"id":1177,"nodeType":"Block","src":"29909:104:0","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1175,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":1165,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"29934:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1167,"indexExpression":{"id":1166,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1157,"src":"29940:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29934:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":1168,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29949:11:0","memberName":"managerRole","nodeType":"MemberAccess","referencedDeclaration":2316,"src":"29934:26:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1169,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1159,"src":"29962:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1164,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"29926:7:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1170,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29926:45:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":1172,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1157,"src":"29988:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1173,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1159,"src":"29997:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1171,"name":"_isPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1154,"src":"29975:12:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":1174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29975:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"29926:80:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1163,"id":1176,"nodeType":"Return","src":"29919:87:0"}]},"documentation":{"id":1155,"nodeType":"StructuredDocumentation","src":"29505:311:0","text":"@notice Checks if the address is a pool manager\n @dev Internal function used to determine if an address is a pool manager\n @param _poolId The ID of the pool\n @param _address The address to check\n @return This will return 'true' if the address is a pool manager, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isPoolManager","nameLocation":"29830:14:0","parameters":{"id":1160,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1157,"mutability":"mutable","name":"_poolId","nameLocation":"29853:7:0","nodeType":"VariableDeclaration","scope":1178,"src":"29845:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1156,"name":"uint256","nodeType":"ElementaryTypeName","src":"29845:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1159,"mutability":"mutable","name":"_address","nameLocation":"29870:8:0","nodeType":"VariableDeclaration","scope":1178,"src":"29862:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1158,"name":"address","nodeType":"ElementaryTypeName","src":"29862:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29844:35:0"},"returnParameters":{"id":1163,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1162,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1178,"src":"29903:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1161,"name":"bool","nodeType":"ElementaryTypeName","src":"29903:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"29902:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":1205,"nodeType":"FunctionDefinition","src":"30226:203:0","nodes":[],"body":{"id":1204,"nodeType":"Block","src":"30279:150:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1184,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1181,"src":"30293:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1187,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30314:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1186,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"30306:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1185,"name":"address","nodeType":"ElementaryTypeName","src":"30306:7:0","typeDescriptions":{}}},"id":1188,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30306:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"30293:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1193,"nodeType":"IfStatement","src":"30289:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1190,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"30325:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30325:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1192,"nodeType":"RevertStatement","src":"30318:21:0"}},{"expression":{"id":1198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1194,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47,"src":"30350:8:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1196,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1181,"src":"30371:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1195,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"30361:9:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$2802_$","typeString":"type(contract IRegistry)"}},"id":1197,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30361:20:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"src":"30350:31:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":1199,"nodeType":"ExpressionStatement","src":"30350:31:0"},{"eventCall":{"arguments":[{"id":1201,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1181,"src":"30412:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1200,"name":"RegistryUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2380,"src":"30396:15:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":1202,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30396:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1203,"nodeType":"EmitStatement","src":"30391:31:0"}]},"documentation":{"id":1179,"nodeType":"StructuredDocumentation","src":"30019:202:0","text":"@notice Updates the registry address\n @dev Internal function used to update the registry address.\n Emits a RegistryUpdated event.\n @param _registry The new registry address"},"implemented":true,"kind":"function","modifiers":[],"name":"_updateRegistry","nameLocation":"30235:15:0","parameters":{"id":1182,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1181,"mutability":"mutable","name":"_registry","nameLocation":"30259:9:0","nodeType":"VariableDeclaration","scope":1205,"src":"30251:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1180,"name":"address","nodeType":"ElementaryTypeName","src":"30251:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30250:19:0"},"returnParameters":{"id":1183,"nodeType":"ParameterList","parameters":[],"src":"30279:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1230,"nodeType":"FunctionDefinition","src":"30642:199:0","nodes":[],"body":{"id":1229,"nodeType":"Block","src":"30703:138:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1211,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1208,"src":"30717:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1214,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30738:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1213,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"30730:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1212,"name":"address","nodeType":"ElementaryTypeName","src":"30730:7:0","typeDescriptions":{}}},"id":1215,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30730:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"30717:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1220,"nodeType":"IfStatement","src":"30713:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1217,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"30749:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1218,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30749:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1219,"nodeType":"RevertStatement","src":"30742:21:0"}},{"expression":{"id":1223,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1221,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"30774:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1222,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1208,"src":"30785:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"30774:20:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":1224,"nodeType":"ExpressionStatement","src":"30774:20:0"},{"eventCall":{"arguments":[{"id":1226,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"30825:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":1225,"name":"TreasuryUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2365,"src":"30809:15:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":1227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30809:25:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1228,"nodeType":"EmitStatement","src":"30804:30:0"}]},"documentation":{"id":1206,"nodeType":"StructuredDocumentation","src":"30435:202:0","text":"@notice Updates the treasury address\n @dev Internal function used to update the treasury address.\n Emits a TreasuryUpdated event.\n @param _treasury The new treasury address"},"implemented":true,"kind":"function","modifiers":[],"name":"_updateTreasury","nameLocation":"30651:15:0","parameters":{"id":1209,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1208,"mutability":"mutable","name":"_treasury","nameLocation":"30683:9:0","nodeType":"VariableDeclaration","scope":1230,"src":"30667:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":1207,"name":"address","nodeType":"ElementaryTypeName","src":"30667:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"30666:27:0"},"returnParameters":{"id":1210,"nodeType":"ParameterList","parameters":[],"src":"30703:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1252,"nodeType":"FunctionDefinition","src":"31041:198:0","nodes":[],"body":{"id":1251,"nodeType":"Block","src":"31098:141:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1238,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1236,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1233,"src":"31112:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"31653138","id":1237,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31126:4:0","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"value":"1e18"},"src":"31112:18:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1242,"nodeType":"IfStatement","src":"31108:44:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1239,"name":"INVALID_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3041,"src":"31139:11:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1240,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31139:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1241,"nodeType":"RevertStatement","src":"31132:20:0"}},{"expression":{"id":1245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1243,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"31163:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1244,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1233,"src":"31176:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"31163:24:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1246,"nodeType":"ExpressionStatement","src":"31163:24:0"},{"eventCall":{"arguments":[{"id":1248,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"31221:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1247,"name":"PercentFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2370,"src":"31203:17:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":1249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31203:29:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1250,"nodeType":"EmitStatement","src":"31198:34:0"}]},"documentation":{"id":1231,"nodeType":"StructuredDocumentation","src":"30847:189:0","text":"@notice Updates the fee percentage\n @dev Internal function used to update the percentage fee.\n Emits a PercentFeeUpdated event.\n @param _percentFee The new fee"},"implemented":true,"kind":"function","modifiers":[],"name":"_updatePercentFee","nameLocation":"31050:17:0","parameters":{"id":1234,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1233,"mutability":"mutable","name":"_percentFee","nameLocation":"31076:11:0","nodeType":"VariableDeclaration","scope":1252,"src":"31068:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1232,"name":"uint256","nodeType":"ElementaryTypeName","src":"31068:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31067:21:0"},"returnParameters":{"id":1235,"nodeType":"ParameterList","parameters":[],"src":"31098:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1267,"nodeType":"FunctionDefinition","src":"31426:125:0","nodes":[],"body":{"id":1266,"nodeType":"Block","src":"31477:74:0","nodes":[],"statements":[{"expression":{"id":1260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1258,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"31487:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1259,"name":"_baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1255,"src":"31497:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"31487:18:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1261,"nodeType":"ExpressionStatement","src":"31487:18:0"},{"eventCall":{"arguments":[{"id":1263,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"31536:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1262,"name":"BaseFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2375,"src":"31521:14:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":1264,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31521:23:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1265,"nodeType":"EmitStatement","src":"31516:28:0"}]},"documentation":{"id":1253,"nodeType":"StructuredDocumentation","src":"31245:176:0","text":"@notice Updates the base fee\n @dev Internal function used to update the base fee.\n Emits a BaseFeeUpdated event.\n @param _baseFee The new base fee"},"implemented":true,"kind":"function","modifiers":[],"name":"_updateBaseFee","nameLocation":"31435:14:0","parameters":{"id":1256,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1255,"mutability":"mutable","name":"_baseFee","nameLocation":"31458:8:0","nodeType":"VariableDeclaration","scope":1267,"src":"31450:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1254,"name":"uint256","nodeType":"ElementaryTypeName","src":"31450:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31449:18:0"},"returnParameters":{"id":1257,"nodeType":"ParameterList","parameters":[],"src":"31477:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1276,"nodeType":"FunctionDefinition","src":"31788:103:0","nodes":[],"body":{"id":1275,"nodeType":"Block","src":"31863:28:0","nodes":[],"statements":[{"expression":{"hexValue":"31653138","id":1273,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31880:4:0","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"value":"1e18"},"functionReturnParameters":1272,"id":1274,"nodeType":"Return","src":"31873:11:0"}]},"baseFunctions":[2609],"documentation":{"id":1268,"nodeType":"StructuredDocumentation","src":"31657:126:0","text":"@notice Getter for the fee denominator\n @return FEE_DENOMINATOR The fee denominator is (1e18) which represents 100%"},"functionSelector":"f4e1fc41","implemented":true,"kind":"function","modifiers":[],"name":"getFeeDenominator","nameLocation":"31797:17:0","parameters":{"id":1269,"nodeType":"ParameterList","parameters":[],"src":"31814:2:0"},"returnParameters":{"id":1272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1271,"mutability":"mutable","name":"FEE_DENOMINATOR","nameLocation":"31846:15:0","nodeType":"VariableDeclaration","scope":1276,"src":"31838:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1270,"name":"uint256","nodeType":"ElementaryTypeName","src":"31838:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31837:25:0"},"scope":1390,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":1292,"nodeType":"FunctionDefinition","src":"32112:140:0","nodes":[],"body":{"id":1291,"nodeType":"Block","src":"32197:55:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":1287,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1279,"src":"32227:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1288,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1281,"src":"32236:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1286,"name":"_isPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1154,"src":"32214:12:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":1289,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32214:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1285,"id":1290,"nodeType":"Return","src":"32207:38:0"}]},"baseFunctions":[2543],"documentation":{"id":1277,"nodeType":"StructuredDocumentation","src":"31897:210:0","text":"@notice Checks if the address is a pool admin.\n @param _poolId The ID of the pool\n @param _address The address to check\n @return 'true' if the address is a pool admin, otherwise 'false'"},"functionSelector":"ab3febc6","implemented":true,"kind":"function","modifiers":[],"name":"isPoolAdmin","nameLocation":"32121:11:0","parameters":{"id":1282,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1279,"mutability":"mutable","name":"_poolId","nameLocation":"32141:7:0","nodeType":"VariableDeclaration","scope":1292,"src":"32133:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1278,"name":"uint256","nodeType":"ElementaryTypeName","src":"32133:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1281,"mutability":"mutable","name":"_address","nameLocation":"32158:8:0","nodeType":"VariableDeclaration","scope":1292,"src":"32150:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1280,"name":"address","nodeType":"ElementaryTypeName","src":"32150:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"32132:35:0"},"returnParameters":{"id":1285,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1284,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1292,"src":"32191:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1283,"name":"bool","nodeType":"ElementaryTypeName","src":"32191:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32190:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1308,"nodeType":"FunctionDefinition","src":"32476:144:0","nodes":[],"body":{"id":1307,"nodeType":"Block","src":"32563:57:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":1303,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1295,"src":"32595:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1304,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1297,"src":"32604:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1302,"name":"_isPoolManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1178,"src":"32580:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":1305,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32580:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1301,"id":1306,"nodeType":"Return","src":"32573:40:0"}]},"baseFunctions":[2553],"documentation":{"id":1293,"nodeType":"StructuredDocumentation","src":"32258:213:0","text":"@notice Checks if the address is a pool manager\n @param _poolId The ID of the pool\n @param _address The address to check\n @return 'true' if the address is a pool manager, otherwise 'false'"},"functionSelector":"29e40d4b","implemented":true,"kind":"function","modifiers":[],"name":"isPoolManager","nameLocation":"32485:13:0","parameters":{"id":1298,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1295,"mutability":"mutable","name":"_poolId","nameLocation":"32507:7:0","nodeType":"VariableDeclaration","scope":1308,"src":"32499:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1294,"name":"uint256","nodeType":"ElementaryTypeName","src":"32499:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1297,"mutability":"mutable","name":"_address","nameLocation":"32524:8:0","nodeType":"VariableDeclaration","scope":1308,"src":"32516:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1296,"name":"address","nodeType":"ElementaryTypeName","src":"32516:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"32498:35:0"},"returnParameters":{"id":1301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1300,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1308,"src":"32557:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1299,"name":"bool","nodeType":"ElementaryTypeName","src":"32557:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32556:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1325,"nodeType":"FunctionDefinition","src":"32753:126:0","nodes":[],"body":{"id":1324,"nodeType":"Block","src":"32823:56:0","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":1318,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"32848:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1320,"indexExpression":{"id":1319,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1311,"src":"32854:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32848:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":1321,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32863:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"32848:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1317,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32840:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1316,"name":"address","nodeType":"ElementaryTypeName","src":"32840:7:0","typeDescriptions":{}}},"id":1322,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32840:32:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":1315,"id":1323,"nodeType":"Return","src":"32833:39:0"}]},"baseFunctions":[2569],"documentation":{"id":1309,"nodeType":"StructuredDocumentation","src":"32626:122:0","text":"@notice Getter for the strategy.\n @param _poolId The ID of the pool\n @return The address of the strategy"},"functionSelector":"cfc0cc34","implemented":true,"kind":"function","modifiers":[],"name":"getStrategy","nameLocation":"32762:11:0","parameters":{"id":1312,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1311,"mutability":"mutable","name":"_poolId","nameLocation":"32782:7:0","nodeType":"VariableDeclaration","scope":1325,"src":"32774:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1310,"name":"uint256","nodeType":"ElementaryTypeName","src":"32774:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32773:17:0"},"returnParameters":{"id":1315,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1314,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1325,"src":"32814:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1313,"name":"address","nodeType":"ElementaryTypeName","src":"32814:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"32813:9:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1334,"nodeType":"FunctionDefinition","src":"32977:91:0","nodes":[],"body":{"id":1333,"nodeType":"Block","src":"33034:34:0","nodes":[],"statements":[{"expression":{"id":1331,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"33051:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":1330,"id":1332,"nodeType":"Return","src":"33044:17:0"}]},"baseFunctions":[2575],"documentation":{"id":1326,"nodeType":"StructuredDocumentation","src":"32885:87:0","text":"@notice Getter for fee percentage.\n @return The fee percentage (1e18 = 100%)"},"functionSelector":"4edbaadc","implemented":true,"kind":"function","modifiers":[],"name":"getPercentFee","nameLocation":"32986:13:0","parameters":{"id":1327,"nodeType":"ParameterList","parameters":[],"src":"32999:2:0"},"returnParameters":{"id":1330,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1329,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1334,"src":"33025:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1328,"name":"uint256","nodeType":"ElementaryTypeName","src":"33025:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33024:9:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1343,"nodeType":"FunctionDefinition","src":"33140:85:0","nodes":[],"body":{"id":1342,"nodeType":"Block","src":"33194:31:0","nodes":[],"statements":[{"expression":{"id":1340,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"33211:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":1339,"id":1341,"nodeType":"Return","src":"33204:14:0"}]},"baseFunctions":[2581],"documentation":{"id":1335,"nodeType":"StructuredDocumentation","src":"33074:61:0","text":"@notice Getter for base fee.\n @return The base fee"},"functionSelector":"15e812ad","implemented":true,"kind":"function","modifiers":[],"name":"getBaseFee","nameLocation":"33149:10:0","parameters":{"id":1336,"nodeType":"ParameterList","parameters":[],"src":"33159:2:0"},"returnParameters":{"id":1339,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1338,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1343,"src":"33185:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1337,"name":"uint256","nodeType":"ElementaryTypeName","src":"33185:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33184:9:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1352,"nodeType":"FunctionDefinition","src":"33313:95:0","nodes":[],"body":{"id":1351,"nodeType":"Block","src":"33376:32:0","nodes":[],"statements":[{"expression":{"id":1349,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"33393:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"functionReturnParameters":1348,"id":1350,"nodeType":"Return","src":"33386:15:0"}]},"baseFunctions":[2587],"documentation":{"id":1344,"nodeType":"StructuredDocumentation","src":"33231:77:0","text":"@notice Getter for treasury address.\n @return The treasury address"},"functionSelector":"3b19e84a","implemented":true,"kind":"function","modifiers":[],"name":"getTreasury","nameLocation":"33322:11:0","parameters":{"id":1345,"nodeType":"ParameterList","parameters":[],"src":"33333:2:0"},"returnParameters":{"id":1348,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1347,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1352,"src":"33359:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":1346,"name":"address","nodeType":"ElementaryTypeName","src":"33359:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"33358:17:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1362,"nodeType":"FunctionDefinition","src":"33488:89:0","nodes":[],"body":{"id":1361,"nodeType":"Block","src":"33545:32:0","nodes":[],"statements":[{"expression":{"id":1359,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47,"src":"33562:8:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"functionReturnParameters":1358,"id":1360,"nodeType":"Return","src":"33555:15:0"}]},"baseFunctions":[2594],"documentation":{"id":1353,"nodeType":"StructuredDocumentation","src":"33414:69:0","text":"@notice Getter for registry.\n @return The registry address"},"functionSelector":"5ab1bd53","implemented":true,"kind":"function","modifiers":[],"name":"getRegistry","nameLocation":"33497:11:0","parameters":{"id":1354,"nodeType":"ParameterList","parameters":[],"src":"33508:2:0"},"returnParameters":{"id":1358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1357,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1362,"src":"33534:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":1356,"nodeType":"UserDefinedTypeName","pathNode":{"id":1355,"name":"IRegistry","nameLocations":["33534:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"33534:9:0"},"referencedDeclaration":2802,"src":"33534:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"}],"src":"33533:11:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1375,"nodeType":"FunctionDefinition","src":"33760:132:0","nodes":[],"body":{"id":1374,"nodeType":"Block","src":"33837:55:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":1371,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1365,"src":"33875:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1370,"name":"_isCloneableStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1135,"src":"33854:20:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":1372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33854:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1369,"id":1373,"nodeType":"Return","src":"33847:38:0"}]},"baseFunctions":[2561],"documentation":{"id":1363,"nodeType":"StructuredDocumentation","src":"33583:172:0","text":"@notice Getter for if strategy is cloneable.\n @param _strategy The address of the strategy\n @return 'true' if the strategy is cloneable, otherwise 'false'"},"functionSelector":"ab2ec589","implemented":true,"kind":"function","modifiers":[],"name":"isCloneableStrategy","nameLocation":"33769:19:0","parameters":{"id":1366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1365,"mutability":"mutable","name":"_strategy","nameLocation":"33797:9:0","nodeType":"VariableDeclaration","scope":1375,"src":"33789:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1364,"name":"address","nodeType":"ElementaryTypeName","src":"33789:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"33788:19:0"},"returnParameters":{"id":1369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1368,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1375,"src":"33831:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1367,"name":"bool","nodeType":"ElementaryTypeName","src":"33831:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"33830:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1389,"nodeType":"FunctionDefinition","src":"34013:108:0","nodes":[],"body":{"id":1388,"nodeType":"Block","src":"34083:38:0","nodes":[],"statements":[{"expression":{"baseExpression":{"id":1384,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"34100:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1386,"indexExpression":{"id":1385,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1378,"src":"34106:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34100:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"functionReturnParameters":1383,"id":1387,"nodeType":"Return","src":"34093:21:0"}]},"baseFunctions":[2603],"documentation":{"id":1376,"nodeType":"StructuredDocumentation","src":"33898:110:0","text":"@notice Getter for the 'Pool'.\n @param _poolId The ID of the pool\n @return The 'Pool' struct"},"functionSelector":"068bcd8d","implemented":true,"kind":"function","modifiers":[],"name":"getPool","nameLocation":"34022:7:0","parameters":{"id":1379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1378,"mutability":"mutable","name":"_poolId","nameLocation":"34038:7:0","nodeType":"VariableDeclaration","scope":1389,"src":"34030:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1377,"name":"uint256","nodeType":"ElementaryTypeName","src":"34030:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"34029:17:0"},"returnParameters":{"id":1383,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1382,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1389,"src":"34070:11:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":1381,"nodeType":"UserDefinedTypeName","pathNode":{"id":1380,"name":"Pool","nameLocations":["34070:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"34070:4:0"},"referencedDeclaration":2319,"src":"34070:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"src":"34069:13:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":16,"name":"IAllo","nameLocations":["5097:5:0"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"5097:5:0"},"id":17,"nodeType":"InheritanceSpecifier","src":"5097:5:0"},{"baseName":{"id":18,"name":"Native","nameLocations":["5108:6:0"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"5108:6:0"},"id":19,"nodeType":"InheritanceSpecifier","src":"5108:6:0"},{"baseName":{"id":20,"name":"Transfer","nameLocations":["5120:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3317,"src":"5120:8:0"},"id":21,"nodeType":"InheritanceSpecifier","src":"5120:8:0"},{"baseName":{"id":22,"name":"Initializable","nameLocations":["5134:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":53152,"src":"5134:13:0"},"id":23,"nodeType":"InheritanceSpecifier","src":"5134:13:0"},{"baseName":{"id":24,"name":"Ownable","nameLocations":["5153:7:0"],"nodeType":"IdentifierPath","referencedDeclaration":4095,"src":"5153:7:0"},"id":25,"nodeType":"InheritanceSpecifier","src":"5153:7:0"},{"baseName":{"id":26,"name":"AccessControlUpgradeable","nameLocations":["5166:24:0"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"5166:24:0"},"id":27,"nodeType":"InheritanceSpecifier","src":"5166:24:0"},{"baseName":{"id":28,"name":"ReentrancyGuardUpgradeable","nameLocations":["5196:26:0"],"nodeType":"IdentifierPath","referencedDeclaration":53237,"src":"5196:26:0"},"id":29,"nodeType":"InheritanceSpecifier","src":"5196:26:0"},{"baseName":{"id":30,"name":"Errors","nameLocations":["5228:6:0"],"nodeType":"IdentifierPath","referencedDeclaration":3089,"src":"5228:6:0"},"id":31,"nodeType":"InheritanceSpecifier","src":"5228:6:0"}],"canonicalName":"Allo","contractDependencies":[],"contractKind":"contract","documentation":{"id":15,"nodeType":"StructuredDocumentation","src":"4725:351:0","text":"@title Allo\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice This contract is used to create & manage pools as well as manage the protocol.\n @dev The contract must be initialized with the 'initialize()' function."},"fullyImplemented":true,"linearizedBaseContracts":[1390,3089,53237,52697,53970,53982,52770,53696,4095,53152,3317,3106,2610],"name":"Allo","nameLocation":"5085:4:0","scope":1391,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,3929,3932,3935]}],"license":"AGPL-3.0-only"},"id":0} \ No newline at end of file +{"abi":[{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"addPoolManager","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_manager","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addToCloneableStrategies","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"batchAllocate","inputs":[{"name":"_poolIds","type":"uint256[]","internalType":"uint256[]"},{"name":"_datas","type":"bytes[]","internalType":"bytes[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"batchRegisterRecipient","inputs":[{"name":"_poolIds","type":"uint256[]","internalType":"uint256[]"},{"name":"_data","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"recipientIds","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"cancelOwnershipHandover","inputs":[],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"completeOwnershipHandover","inputs":[{"name":"pendingOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"createPool","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_strategy","type":"address","internalType":"address"},{"name":"_initStrategyData","type":"bytes","internalType":"bytes"},{"name":"_token","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"createPoolWithCustomStrategy","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_strategy","type":"address","internalType":"address"},{"name":"_initStrategyData","type":"bytes","internalType":"bytes"},{"name":"_token","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"fundPool","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"getBaseFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getFeeDenominator","inputs":[],"outputs":[{"name":"FEE_DENOMINATOR","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"getPercentFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPool","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IAllo.Pool","components":[{"name":"profileId","type":"bytes32","internalType":"bytes32"},{"name":"strategy","type":"address","internalType":"contract IStrategy"},{"name":"token","type":"address","internalType":"address"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"managerRole","type":"bytes32","internalType":"bytes32"},{"name":"adminRole","type":"bytes32","internalType":"bytes32"}]}],"stateMutability":"view"},{"type":"function","name":"getRegistry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStrategy","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getTreasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_registry","type":"address","internalType":"address"},{"name":"_treasury","type":"address","internalType":"address payable"},{"name":"_percentFee","type":"uint256","internalType":"uint256"},{"name":"_baseFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCloneableStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isPoolAdmin","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_address","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isPoolManager","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_address","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"result","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"ownershipHandoverExpiresAt","inputs":[{"name":"pendingOwner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"recoverFunds","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"removeFromCloneableStrategies","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removePoolManager","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_manager","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"requestOwnershipHandover","inputs":[],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"updateBaseFee","inputs":[{"name":"_baseFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updatePercentFee","inputs":[{"name":"_percentFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updatePoolMetadata","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateRegistry","inputs":[{"name":"_registry","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateTreasury","inputs":[{"name":"_treasury","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"BaseFeePaid","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BaseFeeUpdated","inputs":[{"name":"baseFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipHandoverCanceled","inputs":[{"name":"pendingOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnershipHandoverRequested","inputs":[{"name":"pendingOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"oldOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PercentFeeUpdated","inputs":[{"name":"percentFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"strategy","type":"address","indexed":false,"internalType":"contract IStrategy"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"PoolFunded","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"fee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PoolMetadataUpdated","inputs":[{"name":"poolId","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registry","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyApproved","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"TreasuryUpdated","inputs":[{"name":"treasury","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NewOwnerIsZeroAddress","inputs":[]},{"type":"error","name":"NoHandoverRequest","inputs":[]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"Unauthorized","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50613183806100206000396000f3fe6080604052600436106101f75760003560e01c806301ffc9a7146101fc578063031e2fa114610231578063068bcd8d14610253578063075c0e9c1461028057806315e812ad146102a05780631a20bd88146102bf5780631a5da6c8146102ec578063248a9ca31461030c57806324ae6a271461032c578063256929621461034c57806329e40d4b146103545780632cf682b0146103745780632ec38188146103945780632f2ff15d146103a757806336568abe146103c75780633a5fbd92146103e75780633b19e84a1461040757806341bba0b4146104255780634edbaadc1461044557806354d1f13d1461045a5780635ab1bd53146104625780635acd6fac146104805780635f9ca13814610493578063715018a6146104b357806377da8caf146104bb5780637f51bb1f146104ce5780637f5a70bd146104ee5780638da5cb5b1461050e5780638e6901861461052757806391d1485414610547578063a0cf0aea14610567578063a217fddf1461058f578063a6b63eb8146105a4578063ab2ec589146105c4578063ab3febc6146105e4578063c6dff1cf14610604578063cfc0cc3414610624578063d547741f1461065d578063e1007d4a1461067d578063f04e283e14610690578063f2fde38b146106a3578063f4e1fc41146106b6578063f54fc4a0146106d1578063fee81cf4146106f1575b600080fd5b34801561020857600080fd5b5061021c6102173660046125af565b610724565b60405190151581526020015b60405180910390f35b34801561023d57600080fd5b5061025161024c3660046125ee565b61075b565b005b34801561025f57600080fd5b5061027361026e36600461260b565b6107be565b6040516102289190612693565b61029361028e3660046127b8565b6108d1565b60405161022891906127fe565b3480156102ac57600080fd5b5060ca545b604051908152602001610228565b3480156102cb57600080fd5b506102df6102da3660046128c4565b61096e565b60405161022891906129b6565b3480156102f857600080fd5b506102516103073660046125ee565b610af4565b34801561031857600080fd5b506102b161032736600461260b565b610b08565b34801561033857600080fd5b506102516103473660046129c9565b610b1d565b610251610bd1565b34801561036057600080fd5b5061021c61036f366004612a02565b610c20565b34801561038057600080fd5b5061025161038f366004612a02565b610c33565b6102516103a23660046127b8565b610c80565b3480156103b357600080fd5b506102516103c2366004612a02565b610ca0565b3480156103d357600080fd5b506102516103e2366004612a02565b610cbc565b3480156103f357600080fd5b50610251610402366004612a8b565b610d3b565b34801561041357600080fd5b5060cc546001600160a01b0316610293565b34801561043157600080fd5b506102516104403660046125ee565b610dc3565b34801561045157600080fd5b5060c9546102b1565b610251610e45565b34801561046e57600080fd5b5060cd546001600160a01b0316610293565b61025161048e366004612af7565b610e81565b34801561049f57600080fd5b506102516104ae366004612b9b565b611018565b610251611095565b6102b16104c9366004612bd7565b6110a9565b3480156104da57600080fd5b506102516104e93660046125ee565b61112c565b3480156104fa57600080fd5b50610251610509366004612a02565b61113d565b34801561051a57600080fd5b50638b78c6d81954610293565b34801561053357600080fd5b5061025161054236600461260b565b611163565b34801561055357600080fd5b5061021c610562366004612a02565b611174565b34801561057357600080fd5b5061029373eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801561059b57600080fd5b506102b1600081565b3480156105b057600080fd5b506102516105bf366004612c99565b61119f565b3480156105d057600080fd5b5061021c6105df3660046125ee565b6112ae565b3480156105f057600080fd5b5061021c6105ff366004612a02565b6112b9565b34801561061057600080fd5b5061025161061f366004612cf4565b6112c5565b34801561063057600080fd5b5061029361063f36600461260b565b600090815260cf60205260409020600101546001600160a01b031690565b34801561066957600080fd5b50610251610678366004612a02565b61134a565b6102b161068b366004612bd7565b611366565b61025161069e3660046125ee565b6113d1565b6102516106b13660046125ee565b61140e565b3480156106c257600080fd5b50670de0b6b3a76400006102b1565b3480156106dd57600080fd5b506102516106ec36600461260b565b611435565b3480156106fd57600080fd5b506102b161070c3660046125ee565b63389a75e1600c908152600091909152602090205490565b60006001600160e01b03198216637965db0b60e01b148061075557506301ffc9a760e01b6001600160e01b03198316145b92915050565b610763611446565b6001600160a01b038116600090815260d0602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4906107b39083906127fe565b60405180910390a150565b6107c6612549565b600082815260cf6020908152604091829020825160c0810184528154815260018201546001600160a01b0390811682850152600283015416818501528351808501909452600382018054855260048301805492959394606087019493908401919061083090612d80565b80601f016020809104026020016040519081016040528092919081815260200182805461085c90612d80565b80156108a95780601f1061087e576101008083540402835291602001916108a9565b820191906000526020600020905b81548152906001019060200180831161088c57829003601f168201915b5050505050815250508152602001600582015481526020016006820154815250509050919050565b60006108db611461565b600083815260cf6020526040908190206001015490516315df065760e11b81526001600160a01b0390911690632bbe0cae90349061091f9086903390600401612dba565b60206040518083038185885af115801561093d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109629190612de4565b90506107556001609755565b6060610978611461565b8251806001600160401b03811115610992576109926126fb565b6040519080825280602002602001820160405280156109bb578160200160208202803683370190505b509150825181146109df5760405163636e39bb60e01b815260040160405180910390fd5b60005b81811015610ae85760cf6000868381518110610a0057610a00612e01565b6020026020010151815260200190815260200160002060010160009054906101000a90046001600160a01b03166001600160a01b0316632bbe0cae858381518110610a4d57610a4d612e01565b6020026020010151336040518363ffffffff1660e01b8152600401610a73929190612dba565b6020604051808303816000875af1158015610a92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab69190612de4565b838281518110610ac857610ac8612e01565b6001600160a01b03909216602092830291909101909101526001016109e2565b50506107556001609755565b610afc611446565b610b05816114ba565b50565b60009081526065602052604090206001015490565b610b25611446565b60006001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14610bbd576040516370a0823160e01b81526001600160a01b038416906370a0823190610b779030906004016127fe565b602060405180830381865afa158015610b94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb89190612e17565b610bbf565b475b9050610bcc83838361152c565b505050565b60006202a3006001600160401b03164201905063389a75e1600c5233600052806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d600080a250565b6000610c2c8383611566565b9392505050565b81610c3d81611592565b6001600160a01b038216610c645760405163538ba4f960e01b815260040160405180910390fd5b600083815260cf6020526040902060050154610bcc90836115b9565b610c88611461565b610c92828261163f565b610c9c6001609755565b5050565b610ca982610b08565b610cb2816116b9565b610bcc83836115b9565b6001600160a01b0381163314610d315760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610c9c82826116c3565b610d43611461565b600083815260cf602052604090819020600101549051630a6f0ee960e01b81526001600160a01b0390911690630a6f0ee990610d8790859085903390600401612e30565b600060405180830381600087803b158015610da157600080fd5b505af1158015610db5573d6000803e3d6000fd5b50505050610bcc6001609755565b610dcb611446565b6001600160a01b038116610df25760405163538ba4f960e01b815260040160405180910390fd5b6001600160a01b038116600090815260d0602052604090819020805460ff19166001179055517f960dd94cbb79169f09a4e445d58b895df2d9bffa5b31055d0932d801724a20d1906107b39083906127fe565b63389a75e1600c523360005260006020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c92600080a2565b610e89611461565b80600003610eaa576040516303e09bb960e31b815260040160405180910390fd5b600082815260cf60209081526040808320815160c0810183528154815260018201546001600160a01b0390811682860152600283015416818401528251808401909352600382018054845260048301805492959394606087019490939084019190610f1490612d80565b80601f0160208091040260200160405190810160405280929190818152602001828054610f4090612d80565b8015610f8d5780601f10610f6257610100808354040283529160200191610f8d565b820191906000526020600020905b815481529060010190602001808311610f7057829003601f168201915b505050919092525050508152600582015460208201526006909101546040918201528101519091506001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015610fe05750348214155b15610ffe576040516303e09bb960e31b815260040160405180910390fd5b61100d8284836020015161172a565b50610c9c6001609755565b81611022816119dc565b600083815260cf60209081526040909120835160038201908155918401519091849160048401906110539082612ebc565b50905050837f14f52b76bda9e4c482842cefda2968d332933577988f224e80aae18fba10edf0846040516110879190612f7b565b60405180910390a250505050565b61109d611446565b6110a760006119e6565b565b60006110b3611461565b6110bc87611a12565b6110d95760405163126d324760e31b815260040160405180910390fd5b33600090815260ce602052604081208054611115928b9261110b928c9290919061110283612fa4565b91905055611a30565b8888888888611a7f565b90506111216001609755565b979650505050505050565b611134611446565b610b0581611f63565b8161114781611592565b600083815260cf6020526040902060050154610bcc90836116c3565b61116b611446565b610b0581611fd6565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054600190610100900460ff161580156111c1575060005460ff8083169116105b6112245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610d28565b6000805461ffff191660ff8316176101001790556112418661200b565b61124a856114ba565b61125384611f63565b61125c83612035565b61126582611fd6565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050505050565b600061075582611a12565b6000610c2c8383612093565b6112cd611461565b8051829081146112f05760405163636e39bb60e01b815260040160405180910390fd5b60005b8181101561133e5761133685858381811061131057611310612e01565b9050602002013584838151811061132957611329612e01565b602002602001015161163f565b6001016112f3565b5050610bcc6001609755565b61135382610b08565b61135c816116b9565b610bcc83836116c3565b60006001600160a01b03871661138f5760405163538ba4f960e01b815260040160405180910390fd5b61139887611a12565b156113b65760405163eeffa72160e01b815260040160405180910390fd5b6113c588888888888888611a7f565b98975050505050505050565b6113d9611446565b63389a75e1600c52806000526020600c20805442111561140157636f5e88186000526004601cfd5b60009055610b05816119e6565b611416611446565b8060601b61142c57637448fbae6000526004601cfd5b610b05816119e6565b61143d611446565b610b0581612035565b638b78c6d8195433146110a7576382b429006000526004601cfd5b6002609754036114b35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610d28565b6002609755565b6001600160a01b0381166114e15760405163538ba4f960e01b815260040160405180910390fd5b60cd80546001600160a01b0319166001600160a01b0383161790556040517fd6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd906107b39083906127fe565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161155b57610bcc82826120af565b610bcc8383836120cb565b600082815260cf60205260408120600501546115829083611174565b80610c2c5750610c2c8383612093565b61159c8133612093565b610b055760405163075fd2b160e01b815260040160405180910390fd5b6115c38282611174565b610c9c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556115fb3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260cf602052604090819020600101549051633bca483f60e21b81526001600160a01b039091169063ef2920fc9034906116839085903390600401612dba565b6000604051808303818588803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b50505050505050565b610b058133612111565b6116cd8282611174565b15610c9c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600082815260cf60205260408120600281015460c9548692916001600160a01b0316901561187b57670de0b6b3a764000060c9546117689089612fbd565b6117729190612fd4565b935061177e8484612ff6565b92508661178b8486613009565b146117a957604051637fcce2a960e01b815260040160405180910390fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03821601611803576040805160608101825233815260cc546001600160a01b031660208201529081018590526117fd90829061216a565b5061187b565b60cc5460009061181d9083906001600160a01b03166121e9565b6040805160608101825233815260cc546001600160a01b0316602082015290810187905290915061184f90839061216a565b5060cc5460009061186a9084906001600160a01b03166121e9565b90506118768282612ff6565b955050505b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038216016118dc576118d6816040518060600160405280336001600160a01b03168152602001886001600160a01b031681526020018681525061216a565b5061193e565b60006118e882876121e9565b9050611920826040518060600160405280336001600160a01b03168152602001896001600160a01b031681526020018781525061216a565b50600061192d83886121e9565b90506119398282612ff6565b945050505b60405163f5b0dfb760e01b8152600481018490526001600160a01b0386169063f5b0dfb790602401600060405180830381600087803b15801561198057600080fd5b505af1158015611994573d6000803e3d6000fd5b505060408051868152602081018890528993507fbf59838198f4ea92f663f5c1fc697f151a1b746b7dff86d564f250a55cbb485192500160405180910390a250505050505050565b61159c8133611566565b638b78c6d81980546001600160a01b0390921691829060008051602061312e833981519152600080a355565b6001600160a01b0316600090815260d0602052604090205460ff1690565b6040516001600160601b03193360601b166020820152603481018290526000908190605401604051602081830303815290604052805190602001209050611a778482612232565b949350505050565b60cd54604051635e8a791560e01b8152600481018990523360248201526000916001600160a01b031690635e8a791590604401602060405180830381865afa158015611acf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611af3919061301c565b611b105760405163075fd2b160e01b815260040160405180910390fd5b60cb60008154611b1f90612fa4565b91829055506040519091508190600090611b4f9083906020019081526430b236b4b760d91b602082015260250190565b60408051601f19818403018152828252805160209182012060c0840183528d84526001600160a01b03808e168584019081528c8216868601908152606087018c8152608088018a905260a0880185905260008b815260cf8752969096208751815591516001830180549185166001600160a01b031992831617905590516002830180549190941691161790915592518051600385019081559281015191955084939290916004840190611c029082612ebc565b5050506080820151600582015560a090910151600690910155611c2582336115b9565b611c2f83836122c9565b604051633b7451b360e21b81526001600160a01b038b169063edd146cc90611c5d9087908d9060040161303e565b600060405180830381600087803b158015611c7757600080fd5b505af1158015611c8b573d6000803e3d6000fd5b50505050838a6001600160a01b03166338fff2d06040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf29190612e17565b141580611d725750306001600160a01b03168a6001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d669190612de4565b6001600160a01b031614155b15611d905760405163636e39bb60e01b815260040160405180910390fd5b845160005b81811015611e01576000878281518110611db157611db1612e01565b6020026020010151905060006001600160a01b0316816001600160a01b031603611dee5760405163538ba4f960e01b815260040160405180910390fd5b611df886826115b9565b50600101611d95565b5060ca5415611f04576001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015611e435750348860ca54611e409190613009565b14155b80611e7857506001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14801590611e7857503460ca5414155b15611e96576040516303e09bb960e31b815260040160405180910390fd5b60cc5460ca54611ec79173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b039091169061152c565b847f02e340b51c6ae66fd22509c9b016f224c47a54063d4259fe3d860958e9eaac7260ca54604051611efb91815260200190565b60405180910390a25b8715611f1557611f1588868d61172a565b8b857f69bcb5a6cf6a3c95185cbb451e77787240c866dd2e8332597e3013ff18a1aba18d8c8c8c604051611f4c9493929190613057565b60405180910390a350505050979650505050505050565b6001600160a01b038116611f8a5760405163538ba4f960e01b815260040160405180910390fd5b60cc80546001600160a01b0319166001600160a01b0383169081179091556040517f7dae230f18360d76a040c81f050aa14eb9d6dc7901b20fc5d855e2a20fe814d1916107b3916127fe565b60ca8190556040518181527f803bee7e92bbc6ae7a1551f9f4ed3e31a8ea8df32e93332f41b0028f1091f9c3906020016107b3565b6001600160a01b0316638b78c6d81981905580600060008051602061312e8339815191528180a350565b670de0b6b3a764000081111561205e57604051632fb15b8760e01b815260040160405180910390fd5b60c98190556040518181527f9e826789de2de708fd9f09edea1182545e543893caa8ff71f8eb3aab50a4b065906020016107b3565b600082815260cf6020526040812060060154610c2c9083611174565b60008060008084865af1610c9c5763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716612107576390b8ec186000526004601cfd5b6000603452505050565b61211b8282611174565b610c9c576121288161231c565b61213383602061232e565b604051602001612144929190613094565b60408051601f198184030181529082905262461bcd60e51b8252610d2891600401613103565b604081015160009073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038516016121cb57803410156121b8576040516374c5672b60e01b815260040160405180910390fd5b6121c68360200151826120af565b6121df565b6121df8484600001518560200151846124c9565b5060019392505050565b600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161222157506001600160a01b03811631610755565b61222b838361251d565b9050610755565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166107555760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610d28565b60006122d483610b08565b600084815260656020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60606107556001600160a01b03831660145b6060600061233d836002612fbd565b612348906002613009565b6001600160401b0381111561235f5761235f6126fb565b6040519080825280601f01601f191660200182016040528015612389576020820181803683370190505b509050600360fc1b816000815181106123a4576123a4612e01565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123d3576123d3612e01565b60200101906001600160f81b031916908160001a90535060006123f7846002612fbd565b612402906001613009565b90505b600181111561247a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061243657612436612e01565b1a60f81b82828151811061244c5761244c612e01565b60200101906001600160f81b031916908160001a90535060049490941c9361247381613116565b9050612405565b508315610c2c5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610d28565b60405181606052826040528360601b602c526323b872dd60601b600c52602060006064601c6000895af13d15600160005114171661250f57637939f4246000526004601cfd5b600060605260405250505050565b6000816014526370a0823160601b60005260208060246010865afa601f3d111660205102905092915050565b6040518060c001604052806000801916815260200160006001600160a01b0316815260200160006001600160a01b0316815260200161259b604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b6000602082840312156125c157600080fd5b81356001600160e01b031981168114610c2c57600080fd5b6001600160a01b0381168114610b0557600080fd5b60006020828403121561260057600080fd5b8135610c2c816125d9565b60006020828403121561261d57600080fd5b5035919050565b60005b8381101561263f578181015183820152602001612627565b50506000910152565b60008151808452612660816020860160208601612624565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152611a776040850182612648565b60208152815160208201526000602083015160018060a01b0380821660408501528060408601511660608501525050606083015160c060808401526126db60e0840182612674565b9050608084015160a084015260a084015160c08401528091505092915050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612739576127396126fb565b604052919050565b60006001600160401b0383111561275a5761275a6126fb565b61276d601f8401601f1916602001612711565b905082815283838301111561278157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126127a957600080fd5b610c2c83833560208501612741565b600080604083850312156127cb57600080fd5b8235915060208301356001600160401b038111156127e857600080fd5b6127f485828601612798565b9150509250929050565b6001600160a01b0391909116815260200190565b60006001600160401b0382111561282b5761282b6126fb565b5060051b60200190565b600082601f83011261284657600080fd5b8135602061285b61285683612812565b612711565b82815260059290921b8401810191818101908684111561287a57600080fd5b8286015b848110156128b95780356001600160401b0381111561289d5760008081fd5b6128ab8986838b0101612798565b84525091830191830161287e565b509695505050505050565b600080604083850312156128d757600080fd5b82356001600160401b03808211156128ee57600080fd5b818501915085601f83011261290257600080fd5b8135602061291261285683612812565b82815260059290921b8401810191818101908984111561293157600080fd5b948201945b8386101561294f57853582529482019490820190612936565b9650508601359250508082111561296557600080fd5b506127f485828601612835565b600081518084526020808501945080840160005b838110156129ab5781516001600160a01b031687529582019590820190600101612986565b509495945050505050565b602081526000610c2c6020830184612972565b600080604083850312156129dc57600080fd5b82356129e7816125d9565b915060208301356129f7816125d9565b809150509250929050565b60008060408385031215612a1557600080fd5b8235915060208301356129f7816125d9565b600082601f830112612a3857600080fd5b81356020612a4861285683612812565b82815260059290921b84018101918181019086841115612a6757600080fd5b8286015b848110156128b9578035612a7e816125d9565b8352918301918301612a6b565b600080600060608486031215612aa057600080fd5b8335925060208401356001600160401b0380821115612abe57600080fd5b612aca87838801612a27565b93506040860135915080821115612ae057600080fd5b50612aed86828701612798565b9150509250925092565b60008060408385031215612b0a57600080fd5b50508035926020909101359150565b600060408284031215612b2b57600080fd5b604080519081016001600160401b038082118383101715612b4e57612b4e6126fb565b81604052829350843583526020850135915080821115612b6d57600080fd5b508301601f81018513612b7f57600080fd5b612b8e85823560208401612741565b6020830152505092915050565b60008060408385031215612bae57600080fd5b8235915060208301356001600160401b03811115612bcb57600080fd5b6127f485828601612b19565b600080600080600080600060e0888a031215612bf257600080fd5b873596506020880135612c04816125d9565b955060408801356001600160401b0380821115612c2057600080fd5b612c2c8b838c01612798565b965060608a01359150612c3e826125d9565b9094506080890135935060a08901359080821115612c5b57600080fd5b612c678b838c01612b19565b935060c08a0135915080821115612c7d57600080fd5b50612c8a8a828b01612a27565b91505092959891949750929550565b600080600080600060a08688031215612cb157600080fd5b8535612cbc816125d9565b94506020860135612ccc816125d9565b93506040860135612cdc816125d9565b94979396509394606081013594506080013592915050565b600080600060408486031215612d0957600080fd5b83356001600160401b0380821115612d2057600080fd5b818601915086601f830112612d3457600080fd5b813581811115612d4357600080fd5b8760208260051b8501011115612d5857600080fd5b602092830195509350908501359080821115612d7357600080fd5b50612aed86828701612835565b600181811c90821680612d9457607f821691505b602082108103612db457634e487b7160e01b600052602260045260246000fd5b50919050565b604081526000612dcd6040830185612648565b905060018060a01b03831660208301529392505050565b600060208284031215612df657600080fd5b8151610c2c816125d9565b634e487b7160e01b600052603260045260246000fd5b600060208284031215612e2957600080fd5b5051919050565b606081526000612e436060830186612972565b8281036020840152612e558186612648565b91505060018060a01b0383166040830152949350505050565b601f821115610bcc57600081815260208120601f850160051c81016020861015612e955750805b601f850160051c820191505b81811015612eb457828155600101612ea1565b505050505050565b81516001600160401b03811115612ed557612ed56126fb565b612ee981612ee38454612d80565b84612e6e565b602080601f831160018114612f1e5760008415612f065750858301515b600019600386901b1c1916600185901b178555612eb4565b600085815260208120601f198616915b82811015612f4d57888601518255948401946001909101908401612f2e565b5085821015612f6b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b602081526000610c2c6020830184612674565b634e487b7160e01b600052601160045260246000fd5b600060018201612fb657612fb6612f8e565b5060010190565b808202811582820484141761075557610755612f8e565b600082612ff157634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561075557610755612f8e565b8082018082111561075557610755612f8e565b60006020828403121561302e57600080fd5b81518015158114610c2c57600080fd5b828152604060208201526000611a776040830184612648565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061308a90830184612674565b9695505050505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516130c6816017850160208801612624565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516130f7816028840160208801612624565b01602801949350505050565b602081526000610c2c6020830184612648565b60008161312557613125612f8e565b50600019019056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a26469706673582212208d315d18d6e977ed190967ea8cf1e3de7e4c6e85dfd9af3140208a33a9e7423364736f6c63430008130033","sourceMap":"5076:29047:0:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106101f75760003560e01c806301ffc9a7146101fc578063031e2fa114610231578063068bcd8d14610253578063075c0e9c1461028057806315e812ad146102a05780631a20bd88146102bf5780631a5da6c8146102ec578063248a9ca31461030c57806324ae6a271461032c578063256929621461034c57806329e40d4b146103545780632cf682b0146103745780632ec38188146103945780632f2ff15d146103a757806336568abe146103c75780633a5fbd92146103e75780633b19e84a1461040757806341bba0b4146104255780634edbaadc1461044557806354d1f13d1461045a5780635ab1bd53146104625780635acd6fac146104805780635f9ca13814610493578063715018a6146104b357806377da8caf146104bb5780637f51bb1f146104ce5780637f5a70bd146104ee5780638da5cb5b1461050e5780638e6901861461052757806391d1485414610547578063a0cf0aea14610567578063a217fddf1461058f578063a6b63eb8146105a4578063ab2ec589146105c4578063ab3febc6146105e4578063c6dff1cf14610604578063cfc0cc3414610624578063d547741f1461065d578063e1007d4a1461067d578063f04e283e14610690578063f2fde38b146106a3578063f4e1fc41146106b6578063f54fc4a0146106d1578063fee81cf4146106f1575b600080fd5b34801561020857600080fd5b5061021c6102173660046125af565b610724565b60405190151581526020015b60405180910390f35b34801561023d57600080fd5b5061025161024c3660046125ee565b61075b565b005b34801561025f57600080fd5b5061027361026e36600461260b565b6107be565b6040516102289190612693565b61029361028e3660046127b8565b6108d1565b60405161022891906127fe565b3480156102ac57600080fd5b5060ca545b604051908152602001610228565b3480156102cb57600080fd5b506102df6102da3660046128c4565b61096e565b60405161022891906129b6565b3480156102f857600080fd5b506102516103073660046125ee565b610af4565b34801561031857600080fd5b506102b161032736600461260b565b610b08565b34801561033857600080fd5b506102516103473660046129c9565b610b1d565b610251610bd1565b34801561036057600080fd5b5061021c61036f366004612a02565b610c20565b34801561038057600080fd5b5061025161038f366004612a02565b610c33565b6102516103a23660046127b8565b610c80565b3480156103b357600080fd5b506102516103c2366004612a02565b610ca0565b3480156103d357600080fd5b506102516103e2366004612a02565b610cbc565b3480156103f357600080fd5b50610251610402366004612a8b565b610d3b565b34801561041357600080fd5b5060cc546001600160a01b0316610293565b34801561043157600080fd5b506102516104403660046125ee565b610dc3565b34801561045157600080fd5b5060c9546102b1565b610251610e45565b34801561046e57600080fd5b5060cd546001600160a01b0316610293565b61025161048e366004612af7565b610e81565b34801561049f57600080fd5b506102516104ae366004612b9b565b611018565b610251611095565b6102b16104c9366004612bd7565b6110a9565b3480156104da57600080fd5b506102516104e93660046125ee565b61112c565b3480156104fa57600080fd5b50610251610509366004612a02565b61113d565b34801561051a57600080fd5b50638b78c6d81954610293565b34801561053357600080fd5b5061025161054236600461260b565b611163565b34801561055357600080fd5b5061021c610562366004612a02565b611174565b34801561057357600080fd5b5061029373eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801561059b57600080fd5b506102b1600081565b3480156105b057600080fd5b506102516105bf366004612c99565b61119f565b3480156105d057600080fd5b5061021c6105df3660046125ee565b6112ae565b3480156105f057600080fd5b5061021c6105ff366004612a02565b6112b9565b34801561061057600080fd5b5061025161061f366004612cf4565b6112c5565b34801561063057600080fd5b5061029361063f36600461260b565b600090815260cf60205260409020600101546001600160a01b031690565b34801561066957600080fd5b50610251610678366004612a02565b61134a565b6102b161068b366004612bd7565b611366565b61025161069e3660046125ee565b6113d1565b6102516106b13660046125ee565b61140e565b3480156106c257600080fd5b50670de0b6b3a76400006102b1565b3480156106dd57600080fd5b506102516106ec36600461260b565b611435565b3480156106fd57600080fd5b506102b161070c3660046125ee565b63389a75e1600c908152600091909152602090205490565b60006001600160e01b03198216637965db0b60e01b148061075557506301ffc9a760e01b6001600160e01b03198316145b92915050565b610763611446565b6001600160a01b038116600090815260d0602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4906107b39083906127fe565b60405180910390a150565b6107c6612549565b600082815260cf6020908152604091829020825160c0810184528154815260018201546001600160a01b0390811682850152600283015416818501528351808501909452600382018054855260048301805492959394606087019493908401919061083090612d80565b80601f016020809104026020016040519081016040528092919081815260200182805461085c90612d80565b80156108a95780601f1061087e576101008083540402835291602001916108a9565b820191906000526020600020905b81548152906001019060200180831161088c57829003601f168201915b5050505050815250508152602001600582015481526020016006820154815250509050919050565b60006108db611461565b600083815260cf6020526040908190206001015490516315df065760e11b81526001600160a01b0390911690632bbe0cae90349061091f9086903390600401612dba565b60206040518083038185885af115801561093d573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906109629190612de4565b90506107556001609755565b6060610978611461565b8251806001600160401b03811115610992576109926126fb565b6040519080825280602002602001820160405280156109bb578160200160208202803683370190505b509150825181146109df5760405163636e39bb60e01b815260040160405180910390fd5b60005b81811015610ae85760cf6000868381518110610a0057610a00612e01565b6020026020010151815260200190815260200160002060010160009054906101000a90046001600160a01b03166001600160a01b0316632bbe0cae858381518110610a4d57610a4d612e01565b6020026020010151336040518363ffffffff1660e01b8152600401610a73929190612dba565b6020604051808303816000875af1158015610a92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab69190612de4565b838281518110610ac857610ac8612e01565b6001600160a01b03909216602092830291909101909101526001016109e2565b50506107556001609755565b610afc611446565b610b05816114ba565b50565b60009081526065602052604090206001015490565b610b25611446565b60006001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14610bbd576040516370a0823160e01b81526001600160a01b038416906370a0823190610b779030906004016127fe565b602060405180830381865afa158015610b94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bb89190612e17565b610bbf565b475b9050610bcc83838361152c565b505050565b60006202a3006001600160401b03164201905063389a75e1600c5233600052806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d600080a250565b6000610c2c8383611566565b9392505050565b81610c3d81611592565b6001600160a01b038216610c645760405163538ba4f960e01b815260040160405180910390fd5b600083815260cf6020526040902060050154610bcc90836115b9565b610c88611461565b610c92828261163f565b610c9c6001609755565b5050565b610ca982610b08565b610cb2816116b9565b610bcc83836115b9565b6001600160a01b0381163314610d315760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610c9c82826116c3565b610d43611461565b600083815260cf602052604090819020600101549051630a6f0ee960e01b81526001600160a01b0390911690630a6f0ee990610d8790859085903390600401612e30565b600060405180830381600087803b158015610da157600080fd5b505af1158015610db5573d6000803e3d6000fd5b50505050610bcc6001609755565b610dcb611446565b6001600160a01b038116610df25760405163538ba4f960e01b815260040160405180910390fd5b6001600160a01b038116600090815260d0602052604090819020805460ff19166001179055517f960dd94cbb79169f09a4e445d58b895df2d9bffa5b31055d0932d801724a20d1906107b39083906127fe565b63389a75e1600c523360005260006020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c92600080a2565b610e89611461565b80600003610eaa576040516303e09bb960e31b815260040160405180910390fd5b600082815260cf60209081526040808320815160c0810183528154815260018201546001600160a01b0390811682860152600283015416818401528251808401909352600382018054845260048301805492959394606087019490939084019190610f1490612d80565b80601f0160208091040260200160405190810160405280929190818152602001828054610f4090612d80565b8015610f8d5780601f10610f6257610100808354040283529160200191610f8d565b820191906000526020600020905b815481529060010190602001808311610f7057829003601f168201915b505050919092525050508152600582015460208201526006909101546040918201528101519091506001600160a01b031673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015610fe05750348214155b15610ffe576040516303e09bb960e31b815260040160405180910390fd5b61100d8284836020015161172a565b50610c9c6001609755565b81611022816119dc565b600083815260cf60209081526040909120835160038201908155918401519091849160048401906110539082612ebc565b50905050837f14f52b76bda9e4c482842cefda2968d332933577988f224e80aae18fba10edf0846040516110879190612f7b565b60405180910390a250505050565b61109d611446565b6110a760006119e6565b565b60006110b3611461565b6110bc87611a12565b6110d95760405163126d324760e31b815260040160405180910390fd5b33600090815260ce602052604081208054611115928b9261110b928c9290919061110283612fa4565b91905055611a30565b8888888888611a7f565b90506111216001609755565b979650505050505050565b611134611446565b610b0581611f63565b8161114781611592565b600083815260cf6020526040902060050154610bcc90836116c3565b61116b611446565b610b0581611fd6565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600054600190610100900460ff161580156111c1575060005460ff8083169116105b6112245760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610d28565b6000805461ffff191660ff8316176101001790556112418661200b565b61124a856114ba565b61125384611f63565b61125c83612035565b61126582611fd6565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050505050565b600061075582611a12565b6000610c2c8383612093565b6112cd611461565b8051829081146112f05760405163636e39bb60e01b815260040160405180910390fd5b60005b8181101561133e5761133685858381811061131057611310612e01565b9050602002013584838151811061132957611329612e01565b602002602001015161163f565b6001016112f3565b5050610bcc6001609755565b61135382610b08565b61135c816116b9565b610bcc83836116c3565b60006001600160a01b03871661138f5760405163538ba4f960e01b815260040160405180910390fd5b61139887611a12565b156113b65760405163eeffa72160e01b815260040160405180910390fd5b6113c588888888888888611a7f565b98975050505050505050565b6113d9611446565b63389a75e1600c52806000526020600c20805442111561140157636f5e88186000526004601cfd5b60009055610b05816119e6565b611416611446565b8060601b61142c57637448fbae6000526004601cfd5b610b05816119e6565b61143d611446565b610b0581612035565b638b78c6d8195433146110a7576382b429006000526004601cfd5b6002609754036114b35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610d28565b6002609755565b6001600160a01b0381166114e15760405163538ba4f960e01b815260040160405180910390fd5b60cd80546001600160a01b0319166001600160a01b0383161790556040517fd6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd906107b39083906127fe565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161155b57610bcc82826120af565b610bcc8383836120cb565b600082815260cf60205260408120600501546115829083611174565b80610c2c5750610c2c8383612093565b61159c8133612093565b610b055760405163075fd2b160e01b815260040160405180910390fd5b6115c38282611174565b610c9c5760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556115fb3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600082815260cf602052604090819020600101549051633bca483f60e21b81526001600160a01b039091169063ef2920fc9034906116839085903390600401612dba565b6000604051808303818588803b15801561169c57600080fd5b505af11580156116b0573d6000803e3d6000fd5b50505050505050565b610b058133612111565b6116cd8282611174565b15610c9c5760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600082815260cf60205260408120600281015460c9548692916001600160a01b0316901561187b57670de0b6b3a764000060c9546117689089612fbd565b6117729190612fd4565b935061177e8484612ff6565b92508661178b8486613009565b146117a957604051637fcce2a960e01b815260040160405180910390fd5b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03821601611803576040805160608101825233815260cc546001600160a01b031660208201529081018590526117fd90829061216a565b5061187b565b60cc5460009061181d9083906001600160a01b03166121e9565b6040805160608101825233815260cc546001600160a01b0316602082015290810187905290915061184f90839061216a565b5060cc5460009061186a9084906001600160a01b03166121e9565b90506118768282612ff6565b955050505b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038216016118dc576118d6816040518060600160405280336001600160a01b03168152602001886001600160a01b031681526020018681525061216a565b5061193e565b60006118e882876121e9565b9050611920826040518060600160405280336001600160a01b03168152602001896001600160a01b031681526020018781525061216a565b50600061192d83886121e9565b90506119398282612ff6565b945050505b60405163f5b0dfb760e01b8152600481018490526001600160a01b0386169063f5b0dfb790602401600060405180830381600087803b15801561198057600080fd5b505af1158015611994573d6000803e3d6000fd5b505060408051868152602081018890528993507fbf59838198f4ea92f663f5c1fc697f151a1b746b7dff86d564f250a55cbb485192500160405180910390a250505050505050565b61159c8133611566565b638b78c6d81980546001600160a01b0390921691829060008051602061312e833981519152600080a355565b6001600160a01b0316600090815260d0602052604090205460ff1690565b6040516001600160601b03193360601b166020820152603481018290526000908190605401604051602081830303815290604052805190602001209050611a778482612232565b949350505050565b60cd54604051635e8a791560e01b8152600481018990523360248201526000916001600160a01b031690635e8a791590604401602060405180830381865afa158015611acf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611af3919061301c565b611b105760405163075fd2b160e01b815260040160405180910390fd5b60cb60008154611b1f90612fa4565b91829055506040519091508190600090611b4f9083906020019081526430b236b4b760d91b602082015260250190565b60408051601f19818403018152828252805160209182012060c0840183528d84526001600160a01b03808e168584019081528c8216868601908152606087018c8152608088018a905260a0880185905260008b815260cf8752969096208751815591516001830180549185166001600160a01b031992831617905590516002830180549190941691161790915592518051600385019081559281015191955084939290916004840190611c029082612ebc565b5050506080820151600582015560a090910151600690910155611c2582336115b9565b611c2f83836122c9565b604051633b7451b360e21b81526001600160a01b038b169063edd146cc90611c5d9087908d9060040161303e565b600060405180830381600087803b158015611c7757600080fd5b505af1158015611c8b573d6000803e3d6000fd5b50505050838a6001600160a01b03166338fff2d06040518163ffffffff1660e01b8152600401602060405180830381865afa158015611cce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf29190612e17565b141580611d725750306001600160a01b03168a6001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d669190612de4565b6001600160a01b031614155b15611d905760405163636e39bb60e01b815260040160405180910390fd5b845160005b81811015611e01576000878281518110611db157611db1612e01565b6020026020010151905060006001600160a01b0316816001600160a01b031603611dee5760405163538ba4f960e01b815260040160405180910390fd5b611df886826115b9565b50600101611d95565b5060ca5415611f04576001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee148015611e435750348860ca54611e409190613009565b14155b80611e7857506001600160a01b03891673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14801590611e7857503460ca5414155b15611e96576040516303e09bb960e31b815260040160405180910390fd5b60cc5460ca54611ec79173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b039091169061152c565b847f02e340b51c6ae66fd22509c9b016f224c47a54063d4259fe3d860958e9eaac7260ca54604051611efb91815260200190565b60405180910390a25b8715611f1557611f1588868d61172a565b8b857f69bcb5a6cf6a3c95185cbb451e77787240c866dd2e8332597e3013ff18a1aba18d8c8c8c604051611f4c9493929190613057565b60405180910390a350505050979650505050505050565b6001600160a01b038116611f8a5760405163538ba4f960e01b815260040160405180910390fd5b60cc80546001600160a01b0319166001600160a01b0383169081179091556040517f7dae230f18360d76a040c81f050aa14eb9d6dc7901b20fc5d855e2a20fe814d1916107b3916127fe565b60ca8190556040518181527f803bee7e92bbc6ae7a1551f9f4ed3e31a8ea8df32e93332f41b0028f1091f9c3906020016107b3565b6001600160a01b0316638b78c6d81981905580600060008051602061312e8339815191528180a350565b670de0b6b3a764000081111561205e57604051632fb15b8760e01b815260040160405180910390fd5b60c98190556040518181527f9e826789de2de708fd9f09edea1182545e543893caa8ff71f8eb3aab50a4b065906020016107b3565b600082815260cf6020526040812060060154610c2c9083611174565b60008060008084865af1610c9c5763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716612107576390b8ec186000526004601cfd5b6000603452505050565b61211b8282611174565b610c9c576121288161231c565b61213383602061232e565b604051602001612144929190613094565b60408051601f198184030181529082905262461bcd60e51b8252610d2891600401613103565b604081015160009073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038516016121cb57803410156121b8576040516374c5672b60e01b815260040160405180910390fd5b6121c68360200151826120af565b6121df565b6121df8484600001518560200151846124c9565b5060019392505050565b600073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161222157506001600160a01b03811631610755565b61222b838361251d565b9050610755565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b0381166107555760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610d28565b60006122d483610b08565b600084815260656020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60606107556001600160a01b03831660145b6060600061233d836002612fbd565b612348906002613009565b6001600160401b0381111561235f5761235f6126fb565b6040519080825280601f01601f191660200182016040528015612389576020820181803683370190505b509050600360fc1b816000815181106123a4576123a4612e01565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106123d3576123d3612e01565b60200101906001600160f81b031916908160001a90535060006123f7846002612fbd565b612402906001613009565b90505b600181111561247a576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061243657612436612e01565b1a60f81b82828151811061244c5761244c612e01565b60200101906001600160f81b031916908160001a90535060049490941c9361247381613116565b9050612405565b508315610c2c5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610d28565b60405181606052826040528360601b602c526323b872dd60601b600c52602060006064601c6000895af13d15600160005114171661250f57637939f4246000526004601cfd5b600060605260405250505050565b6000816014526370a0823160601b60005260208060246010865afa601f3d111660205102905092915050565b6040518060c001604052806000801916815260200160006001600160a01b0316815260200160006001600160a01b0316815260200161259b604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b6000602082840312156125c157600080fd5b81356001600160e01b031981168114610c2c57600080fd5b6001600160a01b0381168114610b0557600080fd5b60006020828403121561260057600080fd5b8135610c2c816125d9565b60006020828403121561261d57600080fd5b5035919050565b60005b8381101561263f578181015183820152602001612627565b50506000910152565b60008151808452612660816020860160208601612624565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152611a776040850182612648565b60208152815160208201526000602083015160018060a01b0380821660408501528060408601511660608501525050606083015160c060808401526126db60e0840182612674565b9050608084015160a084015260a084015160c08401528091505092915050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612739576127396126fb565b604052919050565b60006001600160401b0383111561275a5761275a6126fb565b61276d601f8401601f1916602001612711565b905082815283838301111561278157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126127a957600080fd5b610c2c83833560208501612741565b600080604083850312156127cb57600080fd5b8235915060208301356001600160401b038111156127e857600080fd5b6127f485828601612798565b9150509250929050565b6001600160a01b0391909116815260200190565b60006001600160401b0382111561282b5761282b6126fb565b5060051b60200190565b600082601f83011261284657600080fd5b8135602061285b61285683612812565b612711565b82815260059290921b8401810191818101908684111561287a57600080fd5b8286015b848110156128b95780356001600160401b0381111561289d5760008081fd5b6128ab8986838b0101612798565b84525091830191830161287e565b509695505050505050565b600080604083850312156128d757600080fd5b82356001600160401b03808211156128ee57600080fd5b818501915085601f83011261290257600080fd5b8135602061291261285683612812565b82815260059290921b8401810191818101908984111561293157600080fd5b948201945b8386101561294f57853582529482019490820190612936565b9650508601359250508082111561296557600080fd5b506127f485828601612835565b600081518084526020808501945080840160005b838110156129ab5781516001600160a01b031687529582019590820190600101612986565b509495945050505050565b602081526000610c2c6020830184612972565b600080604083850312156129dc57600080fd5b82356129e7816125d9565b915060208301356129f7816125d9565b809150509250929050565b60008060408385031215612a1557600080fd5b8235915060208301356129f7816125d9565b600082601f830112612a3857600080fd5b81356020612a4861285683612812565b82815260059290921b84018101918181019086841115612a6757600080fd5b8286015b848110156128b9578035612a7e816125d9565b8352918301918301612a6b565b600080600060608486031215612aa057600080fd5b8335925060208401356001600160401b0380821115612abe57600080fd5b612aca87838801612a27565b93506040860135915080821115612ae057600080fd5b50612aed86828701612798565b9150509250925092565b60008060408385031215612b0a57600080fd5b50508035926020909101359150565b600060408284031215612b2b57600080fd5b604080519081016001600160401b038082118383101715612b4e57612b4e6126fb565b81604052829350843583526020850135915080821115612b6d57600080fd5b508301601f81018513612b7f57600080fd5b612b8e85823560208401612741565b6020830152505092915050565b60008060408385031215612bae57600080fd5b8235915060208301356001600160401b03811115612bcb57600080fd5b6127f485828601612b19565b600080600080600080600060e0888a031215612bf257600080fd5b873596506020880135612c04816125d9565b955060408801356001600160401b0380821115612c2057600080fd5b612c2c8b838c01612798565b965060608a01359150612c3e826125d9565b9094506080890135935060a08901359080821115612c5b57600080fd5b612c678b838c01612b19565b935060c08a0135915080821115612c7d57600080fd5b50612c8a8a828b01612a27565b91505092959891949750929550565b600080600080600060a08688031215612cb157600080fd5b8535612cbc816125d9565b94506020860135612ccc816125d9565b93506040860135612cdc816125d9565b94979396509394606081013594506080013592915050565b600080600060408486031215612d0957600080fd5b83356001600160401b0380821115612d2057600080fd5b818601915086601f830112612d3457600080fd5b813581811115612d4357600080fd5b8760208260051b8501011115612d5857600080fd5b602092830195509350908501359080821115612d7357600080fd5b50612aed86828701612835565b600181811c90821680612d9457607f821691505b602082108103612db457634e487b7160e01b600052602260045260246000fd5b50919050565b604081526000612dcd6040830185612648565b905060018060a01b03831660208301529392505050565b600060208284031215612df657600080fd5b8151610c2c816125d9565b634e487b7160e01b600052603260045260246000fd5b600060208284031215612e2957600080fd5b5051919050565b606081526000612e436060830186612972565b8281036020840152612e558186612648565b91505060018060a01b0383166040830152949350505050565b601f821115610bcc57600081815260208120601f850160051c81016020861015612e955750805b601f850160051c820191505b81811015612eb457828155600101612ea1565b505050505050565b81516001600160401b03811115612ed557612ed56126fb565b612ee981612ee38454612d80565b84612e6e565b602080601f831160018114612f1e5760008415612f065750858301515b600019600386901b1c1916600185901b178555612eb4565b600085815260208120601f198616915b82811015612f4d57888601518255948401946001909101908401612f2e565b5085821015612f6b5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b602081526000610c2c6020830184612674565b634e487b7160e01b600052601160045260246000fd5b600060018201612fb657612fb6612f8e565b5060010190565b808202811582820484141761075557610755612f8e565b600082612ff157634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561075557610755612f8e565b8082018082111561075557610755612f8e565b60006020828403121561302e57600080fd5b81518015158114610c2c57600080fd5b828152604060208201526000611a776040830184612648565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061308a90830184612674565b9695505050505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516130c6816017850160208801612624565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516130f7816028840160208801612624565b01602801949350505050565b602081526000610c2c6020830184612648565b60008161312557613125612f8e565b50600019019056fe8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0a26469706673582212208d315d18d6e977ed190967ea8cf1e3de7e4c6e85dfd9af3140208a33a9e7423364736f6c63430008130033","sourceMap":"5076:29047:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3057:213:43;;;;;;;;;;-1:-1:-1;3057:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:136;;463:22;445:41;;433:2;418:18;3057:213:43;;;;;;;;14900:288:0;;;;;;;;;;-1:-1:-1;14900:288:0;;;;;:::i;:::-;;:::i;:::-;;34013:108;;;;;;;;;;-1:-1:-1;34013:108:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;17298:276::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;33140:85::-;;;;;;;;;;-1:-1:-1;33211:7:0;;33140:85;;;4432:25:136;;;4420:2;4405:18;33140:85:0;4286:177:136;18212:747:0;;;;;;;;;;-1:-1:-1;18212:747:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;13330:105::-;;;;;;;;;;-1:-1:-1;13330:105:0;;;;;:::i;:::-;;:::i;4862:129:43:-;;;;;;;;;;-1:-1:-1;4862:129:43;;;;;:::i;:::-;;:::i;16308:430:0:-;;;;;;;;;;-1:-1:-1;16308:430:0;;;;;:::i;:::-;;:::i;7331:617:12:-;;;:::i;32476:144:0:-;;;;;;;;;;-1:-1:-1;32476:144:0;;;;;:::i;:::-;;:::i;15387:358::-;;;;;;;;;;-1:-1:-1;15387:358:0;;;;;:::i;:::-;;:::i;19921:127::-;;;;;;:::i;:::-;;:::i;5287:145:43:-;;;;;;;;;;-1:-1:-1;5287:145:43;;;;;:::i;:::-;;:::i;6396:214::-;;;;;;;;;;-1:-1:-1;6396:214:43;;;;;:::i;:::-;;:::i;21468:196:0:-;;;;;;;;;;-1:-1:-1;21468:196:0;;;;;:::i;:::-;;:::i;33313:95::-;;;;;;;;;;-1:-1:-1;33393:8:0;;-1:-1:-1;;;;;33393:8:0;33313:95;;14481:229;;;;;;;;;;-1:-1:-1;14481:229:0;;;;;:::i;:::-;;:::i;32977:91::-;;;;;;;;;;-1:-1:-1;33051:10:0;;32977:91;;8030:456:12;;;:::i;33488:89:0:-;;;;;;;;;;-1:-1:-1;33562:8:0;;-1:-1:-1;;;;;33562:8:0;33488:89;;19156:439;;;;;;:::i;:::-;;:::i;12894:247::-;;;;;;;;;;-1:-1:-1;12894:247:0;;;;;:::i;:::-;;:::i;7072:100:12:-;;;:::i;11971:701:0:-;;;;;;:::i;:::-;;:::i;13624:113::-;;;;;;;;;;-1:-1:-1;13624:113:0;;;;;:::i;:::-;;:::i;15950:160::-;;;;;;;;;;-1:-1:-1;15950:160:0;;;;;:::i;:::-;;:::i;9718:191:12:-;;;;;;;;;;-1:-1:-1;;;9866:27:12;9718:191;;14188:101:0;;;;;;;;;;-1:-1:-1;14188:101:0;;;;;:::i;:::-;;:::i;3357:145:43:-;;;;;;;;;;-1:-1:-1;3357:145:43;;;;;:::i;:::-;;:::i;4412:75:9:-;;;;;;;;;;;;4445:42;4412:75;;2336:49:43;;;;;;;;;;-1:-1:-1;2336:49:43;2381:4;2336:49;;7626:593:0;;;;;;;;;;-1:-1:-1;7626:593:0;;;;;:::i;:::-;;:::i;33760:132::-;;;;;;;;;;-1:-1:-1;33760:132:0;;;;;:::i;:::-;;:::i;32112:140::-;;;;;;;;;;-1:-1:-1;32112:140:0;;;;;:::i;:::-;;:::i;20511:559::-;;;;;;;;;;-1:-1:-1;20511:559:0;;;;;:::i;:::-;;:::i;32753:126::-;;;;;;;;;;-1:-1:-1;32753:126:0;;;;;:::i;:::-;32814:7;32848:14;;;:5;:14;;;;;:23;;;-1:-1:-1;;;;;32848:23:0;;32753:126;5712:147:43;;;;;;;;;;-1:-1:-1;5712:147:43;;;;;:::i;:::-;;:::i;10281:884:0:-;;;;;;:::i;:::-;;:::i;8673:708:12:-;;;;;;:::i;:::-;;:::i;6658:349::-;;;;;;:::i;:::-;;:::i;31788:103:0:-;;;;;;;;;;-1:-1:-1;31880:4:0;31788:103;;13911:113;;;;;;;;;;-1:-1:-1;13911:113:0;;;;;:::i;:::-;;:::i;10012:435:12:-;;;;;;;;;;-1:-1:-1;10012:435:12;;;;;:::i;:::-;10282:19;10276:4;10269:33;;;10131:14;10315:26;;;;10425:4;10409:21;;10403:28;;10012:435;3057:213:43;3142:4;-1:-1:-1;;;;;;3165:58:43;;-1:-1:-1;;;3165:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3227:36:43;3158:105;3057:213;-1:-1:-1;;3057:213:43:o;14900:288:0:-;10836:13:12;:11;:13::i;:::-;-1:-1:-1;;;;;15059:30:0;::::1;15092:5;15059:30:::0;;;:19:::1;:30;::::0;;;;;;:38;;-1:-1:-1;;15059:38:0::1;::::0;;15155:26;::::1;::::0;::::1;::::0;15079:9;;15155:26:::1;:::i;:::-;;;;;;;;14900:288:::0;:::o;34013:108::-;34070:11;;:::i;:::-;34100:14;;;;:5;:14;;;;;;;;;34093:21;;;;;;;;;;;;;;;-1:-1:-1;;;;;34093:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34100:14;;34093:21;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;34013:108;;;:::o;17298:276::-;17401:7;2526:21:48;:19;:21::i;:::-;17489:14:0::1;::::0;;;:5:::1;:14;::::0;;;;;;:23:::1;;::::0;:78;;-1:-1:-1;;;17489:78:0;;-1:-1:-1;;;;;17489:23:0;;::::1;::::0;:41:::1;::::0;17538:9:::1;::::0;17489:78:::1;::::0;17549:5;;17556:10:::1;::::0;17489:78:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17482:85;;2568:20:48::0;1808:1;3074:7;:22;2894:209;18212:747:0;18348:29;2526:21:48;:19;:21::i;:::-;18416:15:0;;;-1:-1:-1;;;;;18456:27:0;::::1;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;18456:27:0::1;;18441:42;;18514:5;:12;18498;:28;18494:51;;18535:10;;-1:-1:-1::0;;;18535:10:0::1;;;;;;;;;;;18494:51;18663:9;18658:204;18678:12;18674:1;:16;18658:204;;;18725:5;:18;18731:8;18740:1;18731:11;;;;;;;;:::i;:::-;;;;;;;18725:18;;;;;;;;;;;:27;;;;;;;;;;-1:-1:-1::0;;;;;18725:27:0::1;-1:-1:-1::0;;;;;18725:45:0::1;;18771:5;18777:1;18771:8;;;;;;;;:::i;:::-;;;;;;;18781:10;18725:67;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18707:12;18720:1;18707:15;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18707:85:0;;::::1;:15;::::0;;::::1;::::0;;;;;;;:85;18834:3:::1;;18658:204;;;;18933:19;2568:20:48::0;1808:1;3074:7;:22;2894:209;13330:105:0;10836:13:12;:11;:13::i;:::-;13402:26:0::1;13418:9;13402:15;:26::i;:::-;13330:105:::0;:::o;4862:129:43:-;4936:7;4962:12;;;:6;:12;;;;;:22;;;;4862:129::o;16308:430:0:-;10836:13:12;:11;:13::i;:::-;16506:14:0::1;-1:-1:-1::0;;;;;16523:16:0;::::1;4445:42:9;16523:16:0;:93;;16566:50;::::0;-1:-1:-1;;;16566:50:0;;-1:-1:-1;;;;;16566:35:0;::::1;::::0;::::1;::::0;:50:::1;::::0;16610:4:::1;::::0;16566:50:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16523:93;;;16542:21;16523:93;16506:110;;16688:43;16704:6;16712:10;16724:6;16688:15;:43::i;:::-;16385:353;16308:430:::0;;:::o;7331:617:12:-;7424:15;6282:9;-1:-1:-1;;;;;7442:46:12;:15;:46;7424:64;;7656:19;7650:4;7643:33;7706:8;7700:4;7693:22;7762:7;7755:4;7749;7739:21;7732:38;7909:8;7862:45;7859:1;7856;7851:67;7558:374;7331:617::o;32476:144:0:-;32557:4;32580:33;32595:7;32604:8;32580:14;:33::i;:::-;32573:40;32476:144;-1:-1:-1;;;32476:144:0:o;15387:358::-;15469:7;8837:28;8857:7;8837:19;:28::i;:::-;-1:-1:-1;;;;;15568:22:0;::::1;15564:49;;15599:14;;-1:-1:-1::0;;;15599:14:0::1;;;;;;;;;;;15564:49;15701:14;::::0;;;:5:::1;:14;::::0;;;;:26:::1;;::::0;15690:48:::1;::::0;15729:8;15690:10:::1;:48::i;19921:127::-:0;2526:21:48;:19;:21::i;:::-;20016:25:0::1;20026:7;20035:5;20016:9;:25::i;:::-;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;19921:127:0;;:::o;5287:145:43:-;5370:18;5383:4;5370:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5400:25:::1;5411:4;5417:7;5400:10;:25::i;6396:214::-:0;-1:-1:-1;;;;;6491:23:43;;965:10:51;6491:23:43;6483:83;;;;-1:-1:-1;;;6483:83:43;;16571:2:136;6483:83:43;;;16553:21:136;16610:2;16590:18;;;16583:30;16649:34;16629:18;;;16622:62;-1:-1:-1;;;16700:18:136;;;16693:45;16755:19;;6483:83:43;;;;;;;;;6577:26;6589:4;6595:7;6577:11;:26::i;21468:196:0:-;2526:21:48;:19;:21::i;:::-;21589:14:0::1;::::0;;;:5:::1;:14;::::0;;;;;;:23:::1;;::::0;:68;;-1:-1:-1;;;21589:68:0;;-1:-1:-1;;;;;21589:23:0;;::::1;::::0;:34:::1;::::0;:68:::1;::::0;21624:13;;21639:5;;21646:10:::1;::::0;21589:68:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;14481:229:0;10836:13:12;:11;:13::i;:::-;-1:-1:-1;;;;;14567:23:0;::::1;14563:50;;14599:14;;-1:-1:-1::0;;;14599:14:0::1;;;;;;;;;;;14563:50;-1:-1:-1::0;;;;;14624:30:0;::::1;;::::0;;;:19:::1;:30;::::0;;;;;;:37;;-1:-1:-1;;14624:37:0::1;14657:4;14624:37;::::0;;14676:27;::::1;::::0;::::1;::::0;14644:9;;14676:27:::1;:::i;8030:456:12:-:0;8232:19;8226:4;8219:33;8278:8;8272:4;8265:22;8330:1;8323:4;8317;8307:21;8300:32;8461:8;8415:44;8412:1;8409;8404:66;8030:456::o;19156:439:0:-;2526:21:48;:19;:21::i;:::-;19318:7:0::1;19329:1;19318:12:::0;19314:43:::1;;19339:18;;-1:-1:-1::0;;;19339:18:0::1;;;;;;;;;;;19314:43;19368:16;19387:14:::0;;;:5:::1;:14;::::0;;;;;;;19368:33;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;::::1;::::0;-1:-1:-1;;;;;19368:33:0;;::::1;::::0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;;;;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;;;;;;;;;;19387:14;;19368:33;;;;;;;;::::1;::::0;;::::1;::::0;::::1;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;19368:33:0;;;;-1:-1:-1;;;19368:33:0;;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;;;;;;19415:10;::::1;::::0;19368:33;;-1:-1:-1;;;;;;19415:20:0::1;4445:42:9;19415:20:0;:44:::0;::::1;;;;19450:9;19439:7;:20;;19415:44;19411:75;;;19468:18;;-1:-1:-1::0;;;19468:18:0::1;;;;;;;;;;;19411:75;19546:42;19556:7;19565;19574:4;:13;;;19546:9;:42::i;:::-;19238:357;2568:20:48::0;1808:1;3074:7;:22;2894:209;12894:247:0;12991:7;8625:30;8647:7;8625:21;:30::i;:::-;13010:17:::1;13030:14:::0;;;:5:::1;:14;::::0;;;;;;;13054:25;;:13:::1;::::0;::::1;:25:::0;;;;;::::1;::::0;13030:14;;13070:9;;13054:25;;;;::::1;::::0;;::::1;:::i;:::-;;;;;13115:7;13095:39;13124:9;13095:39;;;;;;:::i;:::-;;;;;;;;13000:141;12894:247:::0;;;:::o;7072:100:12:-;10836:13;:11;:13::i;:::-;7144:21:::1;7162:1;7144:9;:21::i;:::-;7072:100::o:0;11971:701:0:-;12251:14;2526:21:48;:19;:21::i;:::-;12282:31:0::1;12303:9;12282:20;:31::i;:::-;12277:93;;12336:23;;-1:-1:-1::0;;;12336:23:0::1;;;;;;;;;;;12277:93;12522:10;12514:19;::::0;;;:7:::1;:19;::::0;;;;:21;;12426:239:::1;::::0;12451:10;;12485:51:::1;::::0;12503:9;;12514:21;;:19;:21:::1;::::0;::::1;:::i;:::-;;;;;12485:17;:51::i;:::-;12551:17;12582:6;12602:7;12623:9;12646;12426:11;:239::i;:::-;12419:246;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;11971:701:0;;;;;;;;;:::o;13624:113::-;10836:13:12;:11;:13::i;:::-;13704:26:0::1;13720:9;13704:15;:26::i;15950:160::-:0;16035:7;8837:28;8857:7;8837:19;:28::i;:::-;16066:14:::1;::::0;;;:5:::1;:14;::::0;;;;:26:::1;;::::0;16054:49:::1;::::0;16094:8;16054:11:::1;:49::i;14188:101::-:0;10836:13:12;:11;:13::i;:::-;14258:24:0::1;14273:8;14258:14;:24::i;3357:145:43:-:0;3443:4;3466:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3466:29:43;;;;;;;;;;;;;;;3357:145::o;7626:593:0:-;4882:13:47;;7816:1:0;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;20253:2:136;4873:99:47;;;20235:21:136;20292:2;20272:18;;;20265:30;20331:34;20311:18;;;20304:62;-1:-1:-1;;;20382:18:136;;;20375:44;20436:19;;4873:99:47;20051:410:136;4873:99:47;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;7890:24:0::1;7907:6:::0;7890:16:::1;:24::i;:::-;7968:26;7984:9;7968:15;:26::i;:::-;8048;8064:9;8048:15;:26::i;:::-;8119:30;8137:11;8119:17;:30::i;:::-;8188:24;8203:8;8188:14;:24::i;:::-;5071:5:47::0;5055:21;;-1:-1:-1;;5055:21:47;;;5091:20;;20638:4:136;20626:17;;20608:36;;5091:20:47;;20596:2:136;20581:18;5091:20:47;;;;;;;7626:593:0;;;;;;:::o;33760:132::-;33831:4;33854:31;33875:9;33854:20;:31::i;32112:140::-;32191:4;32214:31;32227:7;32236:8;32214:12;:31::i;20511:559::-;2526:21:48;:19;:21::i;:::-;20784:13:0;;20637:8;;20772:25;::::1;20768:48;;20806:10;;-1:-1:-1::0;;;20806:10:0::1;;;;;;;;;;;20768:48;20921:9;20916:148;20936:8;20932:1;:12;20916:148;;;20961:33;20971:8;;20980:1;20971:11;;;;;;;:::i;:::-;;;;;;;20984:6;20991:1;20984:9;;;;;;;;:::i;:::-;;;;;;;20961;:33::i;:::-;21036:3;;20916:148;;;;20608:462;2568:20:48::0;1808:1;3074:7;:22;2894:209;5712:147:43;5796:18;5809:4;5796:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5826:26:::1;5838:4;5844:7;5826:11;:26::i;10281:884:0:-:0;10566:14;-1:-1:-1;;;;;10687:23:0;;10683:50;;10719:14;;-1:-1:-1;;;10719:14:0;;;;;;;;;;;10683:50;10898:31;10919:9;10898:20;:31::i;:::-;10894:66;;;10938:22;;-1:-1:-1;;;10938:22:0;;;;;;;;;;;10894:66;11055:103;11067:10;11089:9;11101:17;11120:6;11128:7;11137:9;11148;11055:11;:103::i;:::-;11048:110;10281:884;-1:-1:-1;;;;;;;;10281:884:0:o;8673:708:12:-;10836:13;:11;:13::i;:::-;8907:19:::1;8901:4;8894:33;8953:12;8947:4;8940:26;9015:4;9009;8999:21;9121:12;9115:19;9102:11;9099:36;9096:157;;;9167:10;9161:4;9154:24;9234:4;9228;9221:18;9096:157;9330:1;9309:23:::0;;9351::::1;9361:12:::0;9351:9:::1;:23::i;6658:349::-:0;10836:13;:11;:13::i;:::-;6830:8:::1;6826:2;6822:17;6812:150;;6872:10;6866:4;6859:24;6943:4;6937;6930:18;6812:150;6981:19;6991:8;6981:9;:19::i;13911:113:0:-:0;10836:13:12;:11;:13::i;:::-;13987:30:0::1;14005:11;13987:17;:30::i;5593:364:12:-:0;-1:-1:-1;;5799:27:12;5789:8;5786:41;5776:165;;5860:10;5854:4;5847:24;5922:4;5916;5909:18;2601:287:48;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;20857:2:136;2725:63:48;;;20839:21:136;20896:2;20876:18;;;20869:30;20935:33;20915:18;;;20908:61;20986:18;;2725:63:48;20655:355:136;2725:63:48;1851:1;2863:7;:18;2601:287::o;30226:203:0:-;-1:-1:-1;;;;;30293:23:0;;30289:50;;30325:14;;-1:-1:-1;;;30325:14:0;;;;;;;;;;;30289:50;30350:8;:31;;-1:-1:-1;;;;;;30350:31:0;-1:-1:-1;;;;;30350:31:0;;;;;30396:26;;;;;;30350:31;;30396:26;:::i;6721:269:10:-;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;29821:192:0:-;29903:4;29934:14;;;:5;:14;;;;;:26;;;29926:45;;29962:8;29926:7;:45::i;:::-;:80;;;;29975:31;29988:7;29997:8;29975:12;:31::i;22160:138::-;22235:33;22248:7;22257:10;22235:12;:33::i;:::-;22230:61;;22277:14;;-1:-1:-1;;;22277:14:0;;;;;;;;;;;7945:233:43;8028:22;8036:4;8042:7;8028;:22::i;:::-;8023:149;;8066:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8066:29:43;;;;;;;;;:36;;-1:-1:-1;;8066:36:43;8098:4;8066:36;;;8148:12;965:10:51;;886:96;8148:12:43;-1:-1:-1;;;;;8121:40:43;8139:7;-1:-1:-1;;;;;8121:40:43;8133:4;8121:40;;;;;;;;;;7945:233;;:::o;26159:151:0:-;26234:14;;;;:5;:14;;;;;;;:23;;;:69;;-1:-1:-1;;;26234:69:0;;-1:-1:-1;;;;;26234:23:0;;;;:32;;26274:9;;26234:69;;26285:5;;26292:10;;26234:69;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26159:151;;:::o;3796:103:43:-;3862:30;3873:4;965:10:51;3862::43;:30::i;8349:234::-;8432:22;8440:4;8446:7;8432;:22::i;:::-;8428:149;;;8502:5;8470:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8470:29:43;;;;;;;;;;:37;;-1:-1:-1;;8470:37:43;;;8526:40;965:10:51;;8470:12:43;;8526:40;;8502:5;8526:40;8349:234;;:::o;26634:1879:0:-;26727:17;26817:14;;;:5;:14;;;;;26858:10;;;;26883;;26779:7;;26817:14;-1:-1:-1;;;;;26858:10:0;;26883:14;26879:808;;31880:4;26936:10;;26926:20;;:7;:20;:::i;:::-;26925:44;;;;:::i;:::-;26913:56;-1:-1:-1;26983:27:0;26913:56;26983:27;;:::i;:::-;;-1:-1:-1;27059:7:0;27029:26;26983:27;27029:9;:26;:::i;:::-;:37;27025:59;;27075:9;;-1:-1:-1;;;27075:9:0;;;;;;;;;;;27025:59;-1:-1:-1;;;;;;;27103:16:0;;;27099:578;;27167:65;;;;;;;;27187:10;27167:65;;27203:8;;-1:-1:-1;;;;;27203:8:0;27167:65;;;;;;;;;;27139:94;;27159:6;;27139:19;:94::i;:::-;;27099:578;;;27319:8;;27272:24;;27299:29;;27311:6;;-1:-1:-1;;;;;27319:8:0;27299:11;:29::i;:::-;27374:65;;;;;;;;27394:10;27374:65;;27410:8;;-1:-1:-1;;;;;27410:8:0;27374:65;;;;;;;;;;27272:56;;-1:-1:-1;27346:94:0;;27366:6;;27346:19;:94::i;:::-;-1:-1:-1;27504:8:0;;27458:23;;27484:29;;27496:6;;-1:-1:-1;;;;;27504:8:0;27484:11;:29::i;:::-;27458:55;-1:-1:-1;27628:34:0;27646:16;27458:55;27628:34;:::i;:::-;27616:46;;27254:423;;27099:578;-1:-1:-1;;;;;;;27701:16:0;;;27697:693;;27733:139;27770:6;27778:80;;;;;;;;27798:10;-1:-1:-1;;;;;27778:80:0;;;;;27822:9;-1:-1:-1;;;;;27778:80:0;;;;;27842:14;27778:80;;;27733:19;:139::i;:::-;;27697:693;;;27903:32;27938:39;27950:6;27966:9;27938:11;:39::i;:::-;27903:74;;27991:139;28028:6;28036:80;;;;;;;;28056:10;-1:-1:-1;;;;;28036:80:0;;;;;28080:9;-1:-1:-1;;;;;28036:80:0;;;;;28100:14;28036:80;;;27991:19;:139::i;:::-;;28144:31;28178:39;28190:6;28206:9;28178:11;:39::i;:::-;28144:73;-1:-1:-1;28329:50:0;28355:24;28144:73;28329:50;:::i;:::-;28312:67;;27889:501;;27697:693;28400:44;;-1:-1:-1;;;28400:44:0;;;;;4432:25:136;;;-1:-1:-1;;;;;28400:28:0;;;;;4405:18:136;;28400:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;28460:46:0;;;21847:25:136;;;21903:2;21888:18;;21881:34;;;28471:7:0;;-1:-1:-1;28460:46:0;;-1:-1:-1;21820:18:136;28460:46:0;;;;;;;26717:1796;;;;26634:1879;;;:::o;21910:142::-;21987:35;22002:7;22011:10;21987:14;:35::i;5040:495:12:-;-1:-1:-1;;5416:16:12;;-1:-1:-1;;;;;5272:26:12;;;;;;-1:-1:-1;;;;;;;;;;;5373:1:12;;5365:78;5492:27;5040:495::o;28898:132:0:-;-1:-1:-1;;;;;28993:30:0;28970:4;28993:30;;;:19;:30;;;;;;;;;28898:132::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;22128:2:136;22099:15;22095:45;4867:36:6;;;22083:58:136;22157:12;;;22150:28;;;4823:7:6;;;;22194:12:136;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;23131:2681:0:-;23424:8;;:57;;-1:-1:-1;;;23424:57:0;;;;;22391:25:136;;;23470:10:0;22432:18:136;;;22425:60;23393:14:0;;-1:-1:-1;;;;;23424:8:0;;:33;;22364:18:136;;23424:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23419:85;;23490:14;;-1:-1:-1;;;23490:14:0;;;;;;;;;;;23419:85;23526:10;;23524:12;;;;;:::i;:::-;;;;;-1:-1:-1;23764:33:0;;23524:12;;-1:-1:-1;23524:12:0;;23675:25;;23764:33;;23524:12;;23764:33;;23008:19:136;;;-1:-1:-1;;;23052:2:136;23043:12;;23036:29;23090:2;23081:12;;22778:321;23764:33:0;;;;-1:-1:-1;;23764:33:0;;;;;;;;;23754:44;;23764:33;23754:44;;;;23864:228;;;;;;;;-1:-1:-1;;;;;23864:228:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23845:16;24159:13;;;:5;:13;;;;;;:20;;;;;;;;;;;;;;-1:-1:-1;;;;;;24159:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23754:44;;-1:-1:-1;23764:33:0;;24159:13;:20;;;;;;;;;;:::i;:::-;-1:-1:-1;;;24159:20:0;;;;;;;;;;;;;;;;;;24239:39;24250:15;24267:10;24239;:39::i;:::-;24337:49;24351:17;24370:15;24337:13;:49::i;:::-;24541:47;;-1:-1:-1;;;24541:47:0;;-1:-1:-1;;;;;24541:20:0;;;;;:47;;24562:6;;24570:17;;24541:47;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24628:6;24603:9;-1:-1:-1;;;;;24603:19:0;;:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:31;;:80;;;;24678:4;-1:-1:-1;;;;;24638:45:0;24646:9;-1:-1:-1;;;;;24646:17:0;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;24638:45:0;;;24603:80;24599:103;;;24692:10;;-1:-1:-1;;;24692:10:0;;;;;;;;;;;24599:103;24775:16;;24750:22;24801:266;24821:14;24817:1;:18;24801:266;;;24852:15;24870:9;24880:1;24870:12;;;;;;;;:::i;:::-;;;;;;;24852:30;;24919:1;-1:-1:-1;;;;;24900:21:0;:7;-1:-1:-1;;;;;24900:21:0;;24896:48;;24930:14;;-1:-1:-1;;;24930:14:0;;;;;;;;;;;24896:48;24959:38;24970:17;24989:7;24959:10;:38::i;:::-;-1:-1:-1;25039:3:0;;24801:266;;;-1:-1:-1;25081:7:0;;:11;25077:554;;-1:-1:-1;;;;;25359:16:0;;4445:42:9;25359:16:0;:52;;;;;25401:9;25390:7;25380;;:17;;;;:::i;:::-;:30;;25359:52;25358:100;;;-1:-1:-1;;;;;;25417:16:0;;4445:42:9;25417:16:0;;;;:40;;;25448:9;25437:7;;:20;;25417:40;25354:164;;;25485:18;;-1:-1:-1;;;25485:18:0;;;;;;;;;;;25354:164;25555:8;;25565:7;;25531:42;;4445::9;;-1:-1:-1;;;;;25555:8:0;;;;25531:15;:42::i;:::-;25604:6;25592:28;25612:7;;25592:28;;;;4432:25:136;;4420:2;4405:18;;4286:177;25592:28:0;;;;;;;;25077:554;25645:11;;25641:79;;25672:37;25682:7;25691:6;25699:9;25672;:37::i;:::-;25755:10;25747:6;25735:70;25767:9;25778:6;25786:7;25795:9;25735:70;;;;;;;;;:::i;:::-;;;;;;;;23409:2403;;;;23131:2681;;;;;;;;;:::o;30642:199::-;-1:-1:-1;;;;;30717:23:0;;30713:50;;30749:14;;-1:-1:-1;;;30749:14:0;;;;;;;;;;;30713:50;30774:8;:20;;-1:-1:-1;;;;;;30774:20:0;-1:-1:-1;;;;;30774:20:0;;;;;;;;30809:25;;;;;;;:::i;31426:125::-;31487:7;:18;;;31521:23;;4432:25:136;;;31521:23:0;;4420:2:136;4405:18;31521:23:0;4286:177:136;4520:448:12;-1:-1:-1;;;;;4709:26:12;-1:-1:-1;;4784:38:12;;;4709:26;4940:1;-1:-1:-1;;;;;;;;;;;4940:1:12;;4889:63;4520:448;:::o;31041:198:0:-;31126:4;31112:11;:18;31108:44;;;31139:13;;-1:-1:-1;;;31139:13:0;;;;;;;;;;;31108:44;31163:10;:24;;;31203:29;;4432:25:136;;;31203:29:0;;4420:2:136;4405:18;31203:29:0;4286:177:136;29346:153:0;29426:4;29457:14;;;:5;:14;;;;;:24;;;29449:43;;29483:8;29449:7;:43::i;2455:490:14:-;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;4180:501:43:-;4268:22;4276:4;4282:7;4268;:22::i;:::-;4263:412;;4451:39;4482:7;4451:30;:39::i;:::-;4561:49;4600:4;4607:2;4561:30;:49::i;:::-;4358:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4358:274:43;;;;;;;;;;-1:-1:-1;;;4306:358:43;;;;;;;:::i;6019:500:10:-;6150:20;;;;6117:4;;-1:-1:-1;;;;;;;6184:16:10;;;6180:312;;6260:6;6248:9;:18;6244:48;;;6275:17;;-1:-1:-1;;;6275:17:10;;;;;;;;;;;6244:48;6307:57;6339:13;:16;;;6357:6;6307:31;:57::i;:::-;6180:312;;;6395:86;6428:6;6436:13;:18;;;6456:13;:16;;;6474:6;6395:32;:86::i;:::-;-1:-1:-1;6508:4:10;;6019:500;-1:-1:-1;;;6019:500:10:o;7224:263::-;7302:7;-1:-1:-1;;;;;;;7325:16:10;;;7321:160;;-1:-1:-1;;;;;;7364:25:10;;;7357:32;;7321:160;7427:43;7453:6;7461:8;7427:25;:43::i;:::-;7420:50;;;;2118:794:46;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;25683:2:136;2847:58:46;;;25665:21:136;25722:2;25702:18;;;25695:30;-1:-1:-1;;;25741:18:136;;;25734:53;25804:18;;2847:58:46;25481:347:136;7530:247:43;7613:25;7641:18;7654:4;7641:12;:18::i;:::-;7669:12;;;;:6;:12;;;;;;:22;;:34;;;7718:52;7613:46;;-1:-1:-1;7694:9:43;;7613:46;;7676:4;;7718:52;;7669:12;7718:52;7603:174;7530:247;;:::o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;26176:2:136;2228:55:52;;;26158:21:136;;;26195:18;;;26188:30;26254:34;26234:18;;;26227:62;26306:18;;2228:55:52;25974:356:136;7671:1379:14;7854:4;7848:11;7920:6;7914:4;7907:20;7985:2;7979:4;7972:16;8050:4;8046:2;8042:13;8036:4;8029:27;-1:-1:-1;;;8193:4:14;8186:48;8657:4;8651;8645;8639;8636:1;8629:5;8622;8617:45;8577:16;8570:24;8566:1;8559:4;8553:11;8550:18;8547:48;8275:405;8248:659;;8800:10;8794:4;8787:24;8888:4;8882;8875:18;8248:659;8934:1;8928:4;8921:15;8990:4;8983:15;-1:-1:-1;;;;7671:1379:14:o;18299:722::-;18373:14;18478:7;18472:4;18465:21;-1:-1:-1;;;18607:4:14;18600:48;18960:4;18954;18948;18942;18935:5;18928;18917:48;18855:4;18837:16;18834:26;18745:242;18718:4;18712:11;18687:318;18661:344;;18299:722;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:286:136:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:136;;209:43;;199:71;;266:1;263;256:12;497:131;-1:-1:-1;;;;;572:31:136;;562:42;;552:70;;618:1;615;608:12;633:247;692:6;745:2;733:9;724:7;720:23;716:32;713:52;;;761:1;758;751:12;713:52;800:9;787:23;819:31;844:5;819:31;:::i;885:180::-;944:6;997:2;985:9;976:7;972:23;968:32;965:52;;;1013:1;1010;1003:12;965:52;-1:-1:-1;1036:23:136;;885:180;-1:-1:-1;885:180:136:o;1070:250::-;1155:1;1165:113;1179:6;1176:1;1173:13;1165:113;;;1255:11;;;1249:18;1236:11;;;1229:39;1201:2;1194:10;1165:113;;;-1:-1:-1;;1312:1:136;1294:16;;1287:27;1070:250::o;1325:271::-;1367:3;1405:5;1399:12;1432:6;1427:3;1420:19;1448:76;1517:6;1510:4;1505:3;1501:14;1494:4;1487:5;1483:16;1448:76;:::i;:::-;1578:2;1557:15;-1:-1:-1;;1553:29:136;1544:39;;;;1585:4;1540:50;;1325:271;-1:-1:-1;;1325:271:136:o;1601:252::-;1688:5;1682:12;1677:3;1670:25;1652:3;1741:4;1734:5;1730:16;1724:23;1779:4;1772;1767:3;1763:14;1756:28;1800:47;1841:4;1836:3;1832:14;1818:12;1800:47;:::i;1858:774::-;2031:2;2020:9;2013:21;2076:6;2070:13;2065:2;2054:9;2050:18;2043:41;1994:4;2131:2;2123:6;2119:15;2113:22;2171:1;2167;2162:3;2158:11;2154:19;2227:2;2213:12;2209:21;2204:2;2193:9;2189:18;2182:49;2295:2;2289;2281:6;2277:15;2271:22;2267:31;2262:2;2251:9;2247:18;2240:59;;;2348:2;2340:6;2336:15;2330:22;2389:4;2383:3;2372:9;2368:19;2361:33;2417:63;2475:3;2464:9;2460:19;2444:14;2417:63;:::i;:::-;2403:77;;2535:3;2527:6;2523:16;2517:23;2511:3;2500:9;2496:19;2489:52;2597:3;2589:6;2585:16;2579:23;2572:4;2561:9;2557:20;2550:53;2620:6;2612:14;;;1858:774;;;;:::o;2637:127::-;2698:10;2693:3;2689:20;2686:1;2679:31;2729:4;2726:1;2719:15;2753:4;2750:1;2743:15;2769:275;2840:2;2834:9;2905:2;2886:13;;-1:-1:-1;;2882:27:136;2870:40;;-1:-1:-1;;;;;2925:34:136;;2961:22;;;2922:62;2919:88;;;2987:18;;:::i;:::-;3023:2;3016:22;2769:275;;-1:-1:-1;2769:275:136:o;3049:406::-;3113:5;-1:-1:-1;;;;;3136:30:136;;3133:56;;;3169:18;;:::i;:::-;3207:57;3252:2;3231:15;;-1:-1:-1;;3227:29:136;3258:4;3223:40;3207:57;:::i;:::-;3198:66;;3287:6;3280:5;3273:21;3327:3;3318:6;3313:3;3309:16;3306:25;3303:45;;;3344:1;3341;3334:12;3303:45;3393:6;3388:3;3381:4;3374:5;3370:16;3357:43;3447:1;3440:4;3431:6;3424:5;3420:18;3416:29;3409:40;3049:406;;;;;:::o;3460:220::-;3502:5;3555:3;3548:4;3540:6;3536:17;3532:27;3522:55;;3573:1;3570;3563:12;3522:55;3595:79;3670:3;3661:6;3648:20;3641:4;3633:6;3629:17;3595:79;:::i;3685:388::-;3762:6;3770;3823:2;3811:9;3802:7;3798:23;3794:32;3791:52;;;3839:1;3836;3829:12;3791:52;3862:23;;;-1:-1:-1;3936:2:136;3921:18;;3908:32;-1:-1:-1;;;;;3952:30:136;;3949:50;;;3995:1;3992;3985:12;3949:50;4018:49;4059:7;4050:6;4039:9;4035:22;4018:49;:::i;:::-;4008:59;;;3685:388;;;;;:::o;4078:203::-;-1:-1:-1;;;;;4242:32:136;;;;4224:51;;4212:2;4197:18;;4078:203::o;4468:183::-;4528:4;-1:-1:-1;;;;;4550:30:136;;4547:56;;;4583:18;;:::i;:::-;-1:-1:-1;4628:1:136;4624:14;4640:4;4620:25;;4468:183::o;4656:886::-;4708:5;4761:3;4754:4;4746:6;4742:17;4738:27;4728:55;;4779:1;4776;4769:12;4728:55;4815:6;4802:20;4841:4;4865:60;4881:43;4921:2;4881:43;:::i;:::-;4865:60;:::i;:::-;4959:15;;;5045:1;5041:10;;;;5029:23;;5025:32;;;4990:12;;;;5069:15;;;5066:35;;;5097:1;5094;5087:12;5066:35;5133:2;5125:6;5121:15;5145:368;5161:6;5156:3;5153:15;5145:368;;;5234:17;;-1:-1:-1;;;;;5267:35:136;;5264:125;;;5343:1;5372:2;5368;5361:14;5264:125;5414:56;5466:3;5461:2;5447:11;5439:6;5435:24;5431:33;5414:56;:::i;:::-;5402:69;;-1:-1:-1;5491:12:136;;;;5178;;5145:368;;;-1:-1:-1;5531:5:136;4656:886;-1:-1:-1;;;;;;4656:886:136:o;5547:1147::-;5674:6;5682;5735:2;5723:9;5714:7;5710:23;5706:32;5703:52;;;5751:1;5748;5741:12;5703:52;5778:23;;-1:-1:-1;;;;;5850:14:136;;;5847:34;;;5877:1;5874;5867:12;5847:34;5915:6;5904:9;5900:22;5890:32;;5960:7;5953:4;5949:2;5945:13;5941:27;5931:55;;5982:1;5979;5972:12;5931:55;6018:2;6005:16;6040:4;6064:60;6080:43;6120:2;6080:43;:::i;6064:60::-;6158:15;;;6240:1;6236:10;;;;6228:19;;6224:28;;;6189:12;;;;6264:19;;;6261:39;;;6296:1;6293;6286:12;6261:39;6320:11;;;;6340:142;6356:6;6351:3;6348:15;6340:142;;;6422:17;;6410:30;;6373:12;;;;6460;;;;6340:142;;;6501:5;-1:-1:-1;;6544:18:136;;6531:32;;-1:-1:-1;;6575:16:136;;;6572:36;;;6604:1;6601;6594:12;6572:36;;6627:61;6680:7;6669:8;6658:9;6654:24;6627:61;:::i;6699:461::-;6752:3;6790:5;6784:12;6817:6;6812:3;6805:19;6843:4;6872:2;6867:3;6863:12;6856:19;;6909:2;6902:5;6898:14;6930:1;6940:195;6954:6;6951:1;6948:13;6940:195;;;7019:13;;-1:-1:-1;;;;;7015:39:136;7003:52;;7075:12;;;;7110:15;;;;7051:1;6969:9;6940:195;;;-1:-1:-1;7151:3:136;;6699:461;-1:-1:-1;;;;;6699:461:136:o;7165:261::-;7344:2;7333:9;7326:21;7307:4;7364:56;7416:2;7405:9;7401:18;7393:6;7364:56;:::i;7798:388::-;7866:6;7874;7927:2;7915:9;7906:7;7902:23;7898:32;7895:52;;;7943:1;7940;7933:12;7895:52;7982:9;7969:23;8001:31;8026:5;8001:31;:::i;:::-;8051:5;-1:-1:-1;8108:2:136;8093:18;;8080:32;8121:33;8080:32;8121:33;:::i;:::-;8173:7;8163:17;;;7798:388;;;;;:::o;8191:315::-;8259:6;8267;8320:2;8308:9;8299:7;8295:23;8291:32;8288:52;;;8336:1;8333;8326:12;8288:52;8372:9;8359:23;8349:33;;8432:2;8421:9;8417:18;8404:32;8445:31;8470:5;8445:31;:::i;8831:737::-;8885:5;8938:3;8931:4;8923:6;8919:17;8915:27;8905:55;;8956:1;8953;8946:12;8905:55;8992:6;8979:20;9018:4;9042:60;9058:43;9098:2;9058:43;:::i;9042:60::-;9136:15;;;9222:1;9218:10;;;;9206:23;;9202:32;;;9167:12;;;;9246:15;;;9243:35;;;9274:1;9271;9264:12;9243:35;9310:2;9302:6;9298:15;9322:217;9338:6;9333:3;9330:15;9322:217;;;9418:3;9405:17;9435:31;9460:5;9435:31;:::i;:::-;9479:18;;9517:12;;;;9355;;9322:217;;9573:635;9684:6;9692;9700;9753:2;9741:9;9732:7;9728:23;9724:32;9721:52;;;9769:1;9766;9759:12;9721:52;9792:23;;;-1:-1:-1;9866:2:136;9851:18;;9838:32;-1:-1:-1;;;;;9919:14:136;;;9916:34;;;9946:1;9943;9936:12;9916:34;9969:61;10022:7;10013:6;10002:9;9998:22;9969:61;:::i;:::-;9959:71;;10083:2;10072:9;10068:18;10055:32;10039:48;;10112:2;10102:8;10099:16;10096:36;;;10128:1;10125;10118:12;10096:36;;10151:51;10194:7;10183:8;10172:9;10168:24;10151:51;:::i;:::-;10141:61;;;9573:635;;;;;:::o;10663:248::-;10731:6;10739;10792:2;10780:9;10771:7;10767:23;10763:32;10760:52;;;10808:1;10805;10798:12;10760:52;-1:-1:-1;;10831:23:136;;;10901:2;10886:18;;;10873:32;;-1:-1:-1;10663:248:136:o;10916:734::-;10971:5;11019:4;11007:9;11002:3;10998:19;10994:30;10991:50;;;11037:1;11034;11027:12;10991:50;11070:4;11064:11;;;11102:17;;-1:-1:-1;;;;;11171:18:136;;;11191:22;;;11168:46;11165:72;;;11217:18;;:::i;:::-;11259:10;11253:4;11246:24;11288:6;11279:15;;11331:9;11318:23;11310:6;11303:39;11393:2;11382:9;11378:18;11365:32;11351:46;;11420:2;11412:6;11409:14;11406:34;;;11436:1;11433;11426:12;11406:34;-1:-1:-1;11459:22:136;;11512:4;11504:13;;11500:23;-1:-1:-1;11490:51:136;;11537:1;11534;11527:12;11490:51;11574:69;11639:3;11634:2;11621:16;11616:2;11612;11608:11;11574:69;:::i;:::-;11569:2;11561:6;11557:15;11550:94;;;10916:734;;;;:::o;11655:415::-;11749:6;11757;11810:2;11798:9;11789:7;11785:23;11781:32;11778:52;;;11826:1;11823;11816:12;11778:52;11849:23;;;-1:-1:-1;11923:2:136;11908:18;;11895:32;-1:-1:-1;;;;;11939:30:136;;11936:50;;;11982:1;11979;11972:12;11936:50;12005:59;12056:7;12047:6;12036:9;12032:22;12005:59;:::i;12075:1208::-;12248:6;12256;12264;12272;12280;12288;12296;12349:3;12337:9;12328:7;12324:23;12320:33;12317:53;;;12366:1;12363;12356:12;12317:53;12402:9;12389:23;12379:33;;12462:2;12451:9;12447:18;12434:32;12475:31;12500:5;12475:31;:::i;:::-;12525:5;-1:-1:-1;12581:2:136;12566:18;;12553:32;-1:-1:-1;;;;;12634:14:136;;;12631:34;;;12661:1;12658;12651:12;12631:34;12684:49;12725:7;12716:6;12705:9;12701:22;12684:49;:::i;:::-;12674:59;;12785:2;12774:9;12770:18;12757:32;12742:47;;12798:33;12823:7;12798:33;:::i;:::-;12850:7;;-1:-1:-1;12904:3:136;12889:19;;12876:33;;-1:-1:-1;12962:3:136;12947:19;;12934:33;;12979:16;;;12976:36;;;13008:1;13005;12998:12;12976:36;13031:61;13084:7;13073:8;13062:9;13058:24;13031:61;:::i;:::-;13021:71;;13145:3;13134:9;13130:19;13117:33;13101:49;;13175:2;13165:8;13162:16;13159:36;;;13191:1;13188;13181:12;13159:36;;13214:63;13269:7;13258:8;13247:9;13243:24;13214:63;:::i;:::-;13204:73;;;12075:1208;;;;;;;;;;:::o;13548:675::-;13651:6;13659;13667;13675;13683;13736:3;13724:9;13715:7;13711:23;13707:33;13704:53;;;13753:1;13750;13743:12;13704:53;13792:9;13779:23;13811:31;13836:5;13811:31;:::i;:::-;13861:5;-1:-1:-1;13918:2:136;13903:18;;13890:32;13931:33;13890:32;13931:33;:::i;:::-;13983:7;-1:-1:-1;14042:2:136;14027:18;;14014:32;14055:33;14014:32;14055:33;:::i;:::-;13548:675;;;;-1:-1:-1;14107:7:136;;14161:2;14146:18;;14133:32;;-1:-1:-1;14212:3:136;14197:19;14184:33;;13548:675;-1:-1:-1;;13548:675:136:o;14228:854::-;14357:6;14365;14373;14426:2;14414:9;14405:7;14401:23;14397:32;14394:52;;;14442:1;14439;14432:12;14394:52;14469:23;;-1:-1:-1;;;;;14541:14:136;;;14538:34;;;14568:1;14565;14558:12;14538:34;14606:6;14595:9;14591:22;14581:32;;14651:7;14644:4;14640:2;14636:13;14632:27;14622:55;;14673:1;14670;14663:12;14622:55;14713:2;14700:16;14739:2;14731:6;14728:14;14725:34;;;14755:1;14752;14745:12;14725:34;14810:7;14803:4;14793:6;14790:1;14786:14;14782:2;14778:23;14774:34;14771:47;14768:67;;;14831:1;14828;14821:12;14768:67;14862:4;14854:13;;;;-1:-1:-1;14886:6:136;-1:-1:-1;14930:20:136;;;14917:34;;14963:16;;;14960:36;;;14992:1;14989;14982:12;14960:36;;15015:61;15068:7;15057:8;15046:9;15042:24;15015:61;:::i;15087:380::-;15166:1;15162:12;;;;15209;;;15230:61;;15284:4;15276:6;15272:17;15262:27;;15230:61;15337:2;15329:6;15326:14;15306:18;15303:38;15300:161;;15383:10;15378:3;15374:20;15371:1;15364:31;15418:4;15415:1;15408:15;15446:4;15443:1;15436:15;15300:161;;15087:380;;;:::o;15472:315::-;15647:2;15636:9;15629:21;15610:4;15667:45;15708:2;15697:9;15693:18;15685:6;15667:45;:::i;:::-;15659:53;;15777:1;15773;15768:3;15764:11;15760:19;15752:6;15748:32;15743:2;15732:9;15728:18;15721:60;15472:315;;;;;:::o;15792:251::-;15862:6;15915:2;15903:9;15894:7;15890:23;15886:32;15883:52;;;15931:1;15928;15921:12;15883:52;15963:9;15957:16;15982:31;16007:5;15982:31;:::i;16048:127::-;16109:10;16104:3;16100:20;16097:1;16090:31;16140:4;16137:1;16130:15;16164:4;16161:1;16154:15;16180:184;16250:6;16303:2;16291:9;16282:7;16278:23;16274:32;16271:52;;;16319:1;16316;16309:12;16271:52;-1:-1:-1;16342:16:136;;16180:184;-1:-1:-1;16180:184:136:o;16785:519::-;17038:2;17027:9;17020:21;17001:4;17064:56;17116:2;17105:9;17101:18;17093:6;17064:56;:::i;:::-;17168:9;17160:6;17156:22;17151:2;17140:9;17136:18;17129:50;17196:33;17222:6;17214;17196:33;:::i;:::-;17188:41;;;17294:1;17290;17285:3;17281:11;17277:19;17269:6;17265:32;17260:2;17249:9;17245:18;17238:60;16785:519;;;;;;:::o;17435:545::-;17537:2;17532:3;17529:11;17526:448;;;17573:1;17598:5;17594:2;17587:17;17643:4;17639:2;17629:19;17713:2;17701:10;17697:19;17694:1;17690:27;17684:4;17680:38;17749:4;17737:10;17734:20;17731:47;;;-1:-1:-1;17772:4:136;17731:47;17827:2;17822:3;17818:12;17815:1;17811:20;17805:4;17801:31;17791:41;;17882:82;17900:2;17893:5;17890:13;17882:82;;;17945:17;;;17926:1;17915:13;17882:82;;;17886:3;;;17435:545;;;:::o;18156:1352::-;18276:10;;-1:-1:-1;;;;;18298:30:136;;18295:56;;;18331:18;;:::i;:::-;18360:97;18450:6;18410:38;18442:4;18436:11;18410:38;:::i;:::-;18404:4;18360:97;:::i;:::-;18512:4;;18576:2;18565:14;;18593:1;18588:663;;;;19295:1;19312:6;19309:89;;;-1:-1:-1;19364:19:136;;;19358:26;19309:89;-1:-1:-1;;18113:1:136;18109:11;;;18105:24;18101:29;18091:40;18137:1;18133:11;;;18088:57;19411:81;;18558:944;;18588:663;17382:1;17375:14;;;17419:4;17406:18;;-1:-1:-1;;18624:20:136;;;18742:236;18756:7;18753:1;18750:14;18742:236;;;18845:19;;;18839:26;18824:42;;18937:27;;;;18905:1;18893:14;;;;18772:19;;18742:236;;;18746:3;19006:6;18997:7;18994:19;18991:201;;;19067:19;;;19061:26;-1:-1:-1;;19150:1:136;19146:14;;;19162:3;19142:24;19138:37;19134:42;19119:58;19104:74;;18991:201;-1:-1:-1;;;;;19238:1:136;19222:14;;;19218:22;19205:36;;-1:-1:-1;18156:1352:136:o;19513:261::-;19694:2;19683:9;19676:21;19657:4;19714:54;19764:2;19753:9;19749:18;19741:6;19714:54;:::i;19779:127::-;19840:10;19835:3;19831:20;19828:1;19821:31;19871:4;19868:1;19861:15;19895:4;19892:1;19885:15;19911:135;19950:3;19971:17;;;19968:43;;19991:18;;:::i;:::-;-1:-1:-1;20038:1:136;20027:13;;19911:135::o;21015:168::-;21088:9;;;21119;;21136:15;;;21130:22;;21116:37;21106:71;;21157:18;;:::i;21188:217::-;21228:1;21254;21244:132;;21298:10;21293:3;21289:20;21286:1;21279:31;21333:4;21330:1;21323:15;21361:4;21358:1;21351:15;21244:132;-1:-1:-1;21390:9:136;;21188:217::o;21410:128::-;21477:9;;;21498:11;;;21495:37;;;21512:18;;:::i;21543:125::-;21608:9;;;21629:10;;;21626:36;;;21642:18;;:::i;22496:277::-;22563:6;22616:2;22604:9;22595:7;22591:23;22587:32;22584:52;;;22632:1;22629;22622:12;22584:52;22664:9;22658:16;22717:5;22710:13;22703:21;22696:5;22693:32;22683:60;;22739:1;22736;22729:12;23104:289;23279:6;23268:9;23261:25;23322:2;23317;23306:9;23302:18;23295:30;23242:4;23342:45;23383:2;23372:9;23368:18;23360:6;23342:45;:::i;23668:550::-;-1:-1:-1;;;;;23989:15:136;;;23971:34;;24041:15;;24036:2;24021:18;;24014:43;24088:2;24073:18;;24066:34;;;24136:3;24131:2;24116:18;;24109:31;;;23914:4;;24157:55;;24192:19;;24184:6;24157:55;:::i;:::-;24149:63;23668:550;-1:-1:-1;;;;;;23668:550:136:o;24439:812::-;-1:-1:-1;;;24845:3:136;24838:38;24820:3;24905:6;24899:13;24921:75;24989:6;24984:2;24979:3;24975:12;24968:4;24960:6;24956:17;24921:75;:::i;:::-;-1:-1:-1;;;25055:2:136;25015:16;;;25047:11;;;25040:40;25105:13;;25127:76;25105:13;25189:2;25181:11;;25174:4;25162:17;;25127:76;:::i;:::-;25223:17;25242:2;25219:26;;24439:812;-1:-1:-1;;;;24439:812:136:o;25256:220::-;25405:2;25394:9;25387:21;25368:4;25425:45;25466:2;25455:9;25451:18;25443:6;25425:45;:::i;25833:136::-;25872:3;25900:5;25890:39;;25909:18;;:::i;:::-;-1:-1:-1;;;25945:18:136;;25833:136::o","linkReferences":{}},"methodIdentifiers":{"DEFAULT_ADMIN_ROLE()":"a217fddf","NATIVE()":"a0cf0aea","addPoolManager(uint256,address)":"2cf682b0","addToCloneableStrategies(address)":"41bba0b4","allocate(uint256,bytes)":"2ec38188","batchAllocate(uint256[],bytes[])":"c6dff1cf","batchRegisterRecipient(uint256[],bytes[])":"1a20bd88","cancelOwnershipHandover()":"54d1f13d","completeOwnershipHandover(address)":"f04e283e","createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])":"77da8caf","createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":"e1007d4a","distribute(uint256,address[],bytes)":"3a5fbd92","fundPool(uint256,uint256)":"5acd6fac","getBaseFee()":"15e812ad","getFeeDenominator()":"f4e1fc41","getPercentFee()":"4edbaadc","getPool(uint256)":"068bcd8d","getRegistry()":"5ab1bd53","getRoleAdmin(bytes32)":"248a9ca3","getStrategy(uint256)":"cfc0cc34","getTreasury()":"3b19e84a","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","initialize(address,address,address,uint256,uint256)":"a6b63eb8","isCloneableStrategy(address)":"ab2ec589","isPoolAdmin(uint256,address)":"ab3febc6","isPoolManager(uint256,address)":"29e40d4b","owner()":"8da5cb5b","ownershipHandoverExpiresAt(address)":"fee81cf4","recoverFunds(address,address)":"24ae6a27","registerRecipient(uint256,bytes)":"075c0e9c","removeFromCloneableStrategies(address)":"031e2fa1","removePoolManager(uint256,address)":"7f5a70bd","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","requestOwnershipHandover()":"25692962","revokeRole(bytes32,address)":"d547741f","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","updateBaseFee(uint256)":"8e690186","updatePercentFee(uint256)":"f54fc4a0","updatePoolMetadata(uint256,(uint256,string))":"5f9ca138","updateRegistry(address)":"1a5da6c8","updateTreasury(address)":"7f51bb1f"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewOwnerIsZeroAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NoHandoverRequest\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Unauthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"BaseFeePaid\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"baseFee\",\"type\":\"uint256\"}],\"name\":\"BaseFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"OwnershipHandoverCanceled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"OwnershipHandoverRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"percentFee\",\"type\":\"uint256\"}],\"name\":\"PercentFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"contract IStrategy\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"PoolFunded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"name\":\"PoolMetadataUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registry\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyApproved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"treasury\",\"type\":\"address\"}],\"name\":\"TreasuryUpdated\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"addPoolManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"addToCloneableStrategies\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_poolIds\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes[]\",\"name\":\"_datas\",\"type\":\"bytes[]\"}],\"name\":\"batchAllocate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"_poolIds\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes[]\",\"name\":\"_data\",\"type\":\"bytes[]\"}],\"name\":\"batchRegisterRecipient\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"recipientIds\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cancelOwnershipHandover\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"completeOwnershipHandover\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_initStrategyData\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_managers\",\"type\":\"address[]\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_initStrategyData\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"_managers\",\"type\":\"address[]\"}],\"name\":\"createPoolWithCustomStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"fundPool\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBaseFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getFeeDenominator\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"FEE_DENOMINATOR\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPercentFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"}],\"name\":\"getPool\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStrategy\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"bytes32\",\"name\":\"managerRole\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"adminRole\",\"type\":\"bytes32\"}],\"internalType\":\"struct IAllo.Pool\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"}],\"name\":\"getStrategy\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getTreasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registry\",\"type\":\"address\"},{\"internalType\":\"address payable\",\"name\":\"_treasury\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_percentFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_baseFee\",\"type\":\"uint256\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"isCloneableStrategy\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_address\",\"type\":\"address\"}],\"name\":\"isPoolAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_address\",\"type\":\"address\"}],\"name\":\"isPoolManager\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"result\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"ownershipHandoverExpiresAt\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"recoverFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeFromCloneableStrategies\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_manager\",\"type\":\"address\"}],\"name\":\"removePoolManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"requestOwnershipHandover\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_baseFee\",\"type\":\"uint256\"}],\"name\":\"updateBaseFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_percentFee\",\"type\":\"uint256\"}],\"name\":\"updatePercentFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"updatePoolMetadata\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_registry\",\"type\":\"address\"}],\"name\":\"updateRegistry\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_treasury\",\"type\":\"address\"}],\"name\":\"updateTreasury\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"@thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \",\"details\":\"The contract must be initialized with the 'initialize()' function.\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}],\"NewOwnerIsZeroAddress()\":[{\"details\":\"The `newOwner` cannot be the zero address.\"}],\"NoHandoverRequest()\":[{\"details\":\"The `pendingOwner` does not have a valid handover request.\"}],\"Unauthorized()\":[{\"details\":\"The caller is not authorized to call the function.\"}]},\"events\":{\"BaseFeePaid(uint256,uint256)\":{\"params\":{\"amount\":\"Amount of the base fee paid\",\"poolId\":\"ID of the pool the base fee was paid for\"}},\"BaseFeeUpdated(uint256)\":{\"params\":{\"baseFee\":\"New base fee amount\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"OwnershipHandoverCanceled(address)\":{\"details\":\"The ownership handover to `pendingOwner` has been canceled.\"},\"OwnershipHandoverRequested(address)\":{\"details\":\"An ownership handover to `pendingOwner` has been requested.\"},\"OwnershipTransferred(address,address)\":{\"details\":\"The ownership is transferred from `oldOwner` to `newOwner`. This event is intentionally kept the same as OpenZeppelin's Ownable to be compatible with indexers and [EIP-173](https://eips.ethereum.org/EIPS/eip-173), despite it not being as lightweight as a single argument event.\"},\"PercentFeeUpdated(uint256)\":{\"params\":{\"percentFee\":\"New percentage for the fee\"}},\"PoolCreated(uint256,bytes32,address,address,uint256,(uint256,string))\":{\"params\":{\"amount\":\"Amount pool was funded with when created\",\"metadata\":\"Pool metadata\",\"poolId\":\"ID of the pool created\",\"profileId\":\"ID of the profile the pool is associated with\",\"strategy\":\"Address of the strategy contract\",\"token\":\"Address of the token pool was funded with when created\"}},\"PoolFunded(uint256,uint256,uint256)\":{\"params\":{\"amount\":\"Amount funded to the pool\",\"fee\":\"Amount of the fee paid to the treasury\",\"poolId\":\"ID of the pool funded\"}},\"PoolMetadataUpdated(uint256,(uint256,string))\":{\"params\":{\"metadata\":\"Pool metadata that was updated\",\"poolId\":\"ID of the pool updated\"}},\"RegistryUpdated(address)\":{\"params\":{\"registry\":\"Address of the new registry\"}},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"StrategyApproved(address)\":{\"params\":{\"strategy\":\"Address of the strategy approved\"}},\"StrategyRemoved(address)\":{\"params\":{\"strategy\":\"Address of the strategy removed\"}},\"TreasuryUpdated(address)\":{\"params\":{\"treasury\":\"Address of the new treasury\"}}},\"kind\":\"dev\",\"methods\":{\"addPoolManager(uint256,address)\":{\"details\":\"Emits 'RoleGranted()' event. 'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address to add\",\"_poolId\":\"ID of the pool\"}},\"addToCloneableStrategies(address)\":{\"details\":\"Emits the 'StrategyApproved()' event. 'msg.sender' must be Allo owner.\",\"params\":{\"_strategy\":\"The address of the strategy\"}},\"allocate(uint256,bytes)\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate().\",\"params\":{\"_data\":\"Encoded data unique to the strategy for that pool\",\"_poolId\":\"ID of the pool\"}},\"batchAllocate(uint256[],bytes[])\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate(). Please note that this is not a 'payable' function, so if you want to send funds to the strategy, you must send the funds using 'fundPool()'.\",\"params\":{\"_datas\":\"encoded data unique to the strategy for that pool\",\"_poolIds\":\"IDs of the pools\"}},\"batchRegisterRecipient(uint256[],bytes[])\":{\"details\":\"Returns the 'recipientIds' from the strategy that have been registered from calling this function. Encoded data unique to a strategy that registerRecipient() requires. Encoded '_data' length must match '_poolIds' length or this will revert with MISMATCH(). Other requirements will be determined by the strategy.\",\"params\":{\"_data\":\"An array of encoded data unique to a strategy that registerRecipient() requires.\",\"_poolIds\":\"ID's of the pools\"},\"returns\":{\"recipientIds\":\"The recipient IDs that have been registered\"}},\"cancelOwnershipHandover()\":{\"details\":\"Cancels the two-step ownership handover to the caller, if any.\"},\"completeOwnershipHandover(address)\":{\"details\":\"Allows the owner to complete the two-step ownership handover to `pendingOwner`. Reverts if there is no existing ownership handover requested by `pendingOwner`.\"},\"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"custom:initstrategydata\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'\",\"details\":\"'msg.sender' must be owner or member of the profile id passed as '_profileId'.\",\"params\":{\"_amount\":\"The amount of the token\",\"_initStrategyData\":\"The data to initialize the strategy\",\"_managers\":\"The managers of the pool\",\"_metadata\":\"The metadata of the pool\",\"_profileId\":\"The ID of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\",\"_strategy\":\"The address of the strategy contract the pool will use.\",\"_token\":\"The address of the token\"}},\"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"details\":\"'msg.sender' must be a member or owner of a profile to create a pool with or without a custom strategy, The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'. The strategy address passed must not be a cloneable strategy. The strategy address passed must not be the zero address. 'msg.sender' must be a member or owner of the profile id passed as '_profileId'.\",\"params\":{\"_amount\":\"The amount of the token you want to deposit into the pool on initialization\",\"_initStrategyData\":\"The data to initialize the strategy\",\"_managers\":\"The managers of the pool, and can be added/removed later by the pool admin\",\"_metadata\":\"The 'Metadata' of the pool, this uses our 'Meatdata.sol' struct (consistent throughout the protocol)\",\"_profileId\":\"The 'profileId' of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\",\"_strategy\":\"The address of the deployed custom strategy\",\"_token\":\"The address of the token you want to use in your pool\"},\"returns\":{\"poolId\":\"The ID of the pool\"}},\"distribute(uint256,address[],bytes)\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'strategy.distribute()'.\",\"params\":{\"_data\":\"Encoded data unique to the strategy\",\"_poolId\":\"ID of the pool\",\"_recipientIds\":\"Ids of the recipients of the distribution\"}},\"fundPool(uint256,uint256)\":{\"details\":\"Anyone can fund a pool and call this function.\",\"params\":{\"_amount\":\"The amount to be deposited into the pool\",\"_poolId\":\"ID of the pool\"}},\"getBaseFee()\":{\"returns\":{\"_0\":\"The base fee\"}},\"getFeeDenominator()\":{\"returns\":{\"FEE_DENOMINATOR\":\"The fee denominator is (1e18) which represents 100%\"}},\"getPercentFee()\":{\"returns\":{\"_0\":\"The fee percentage (1e18 = 100%)\"}},\"getPool(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"The 'Pool' struct\"}},\"getRegistry()\":{\"returns\":{\"_0\":\"The registry address\"}},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"getStrategy(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"The address of the strategy\"}},\"getTreasury()\":{\"returns\":{\"_0\":\"The treasury address\"}},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"initialize(address,address,address,uint256,uint256)\":{\"details\":\"During upgrade -> a higher version should be passed to reinitializer\",\"params\":{\"_baseFee\":\"The base fee\",\"_owner\":\"The owner of allo\",\"_percentFee\":\"The percentage fee\",\"_registry\":\"The address of the registry\",\"_treasury\":\"The address of the treasury\"}},\"isCloneableStrategy(address)\":{\"params\":{\"_strategy\":\"The address of the strategy\"},\"returns\":{\"_0\":\"'true' if the strategy is cloneable, otherwise 'false'\"}},\"isPoolAdmin(uint256,address)\":{\"params\":{\"_address\":\"The address to check\",\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"'true' if the address is a pool admin, otherwise 'false'\"}},\"isPoolManager(uint256,address)\":{\"params\":{\"_address\":\"The address to check\",\"_poolId\":\"The ID of the pool\"},\"returns\":{\"_0\":\"'true' if the address is a pool manager, otherwise 'false'\"}},\"owner()\":{\"details\":\"Returns the owner of the contract.\"},\"ownershipHandoverExpiresAt(address)\":{\"details\":\"Returns the expiry timestamp for the two-step ownership handover to `pendingOwner`.\"},\"recoverFunds(address,address)\":{\"details\":\"'msg.sender' must be Allo owner\",\"params\":{\"_recipient\":\"The recipient\",\"_token\":\"The token to transfer\"}},\"registerRecipient(uint256,bytes)\":{\"details\":\"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of registerRecipient().\",\"params\":{\"_data\":\"Encoded data unique to a strategy that registerRecipient() requires\",\"_poolId\":\"ID of the pool\"},\"returns\":{\"_0\":\"recipientId The recipient ID that has been registered\"}},\"removeFromCloneableStrategies(address)\":{\"details\":\"Emits 'StrategyRemoved()' event. 'msg.sender must be Allo owner.\",\"params\":{\"_strategy\":\"The address of the strategy\"}},\"removePoolManager(uint256,address)\":{\"details\":\"Emits 'RoleRevoked()' event. 'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address to remove\",\"_poolId\":\"ID of the pool\"}},\"renounceOwnership()\":{\"details\":\"Allows the owner to renounce their ownership.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"requestOwnershipHandover()\":{\"details\":\"Request a two-step ownership handover to the caller. The request will automatically expire in 48 hours (172800 seconds) by default.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Allows the owner to transfer the ownership to `newOwner`.\"},\"updateBaseFee(uint256)\":{\"details\":\"Use this to update the base fee. 'msg.sender' must be Allo owner.\",\"params\":{\"_baseFee\":\"The new base fee\"}},\"updatePercentFee(uint256)\":{\"details\":\"Use this to update the fee percentage. 'msg.sender' must be Allo owner.\",\"params\":{\"_percentFee\":\"The new fee\"}},\"updatePoolMetadata(uint256,(uint256,string))\":{\"details\":\"'msg.sender' must be a pool manager. Emits 'PoolMetadataUpdated()' event.\",\"params\":{\"_metadata\":\"The new metadata of the pool\",\"_poolId\":\"ID of the pool\"}},\"updateRegistry(address)\":{\"details\":\"Use this to update the registry address. 'msg.sender' must be Allo owner.\",\"params\":{\"_registry\":\"The new registry address\"}},\"updateTreasury(address)\":{\"details\":\"Use this to update the treasury address. 'msg.sender' must be Allo owner.\",\"params\":{\"_treasury\":\"The new treasury address\"}}},\"stateVariables\":{\"_nonces\":{\"details\":\"'msg.sender' -> 'nonce' for cloning strategies\"},\"baseFee\":{\"details\":\"This is different from the 'percentFee' in that this is a flat fee and not a percentage. So if you want to create a pool with a base fee of 100 DAI, then you would pass 100 DAI to the 'createPool()' function and the pool would be created with 100 DAI less than the amount you passed to the function. The base fee is sent to the treasury address.\"},\"cloneableStrategies\":{\"details\":\"Strategy.address -> bool\"},\"percentFee\":{\"details\":\"How the percentage is represented in our contracts: 1e18 = 100%, 1e17 = 10%, 1e16 = 1%, 1e15 = 0.1%\"},\"pools\":{\"details\":\"'Pool.id' -> 'Pool'\"}},\"title\":\"Allo\",\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"BaseFeePaid(uint256,uint256)\":{\"notice\":\"Emitted when the base fee is paid\"},\"BaseFeeUpdated(uint256)\":{\"notice\":\"Emitted when the base fee is updated\"},\"PercentFeeUpdated(uint256)\":{\"notice\":\"Emitted when the percent fee is updated\"},\"PoolCreated(uint256,bytes32,address,address,uint256,(uint256,string))\":{\"notice\":\"Event emitted when a new pool is created\"},\"PoolFunded(uint256,uint256,uint256)\":{\"notice\":\"Emitted when a pool is funded\"},\"PoolMetadataUpdated(uint256,(uint256,string))\":{\"notice\":\"Emitted when a pools metadata is updated\"},\"RegistryUpdated(address)\":{\"notice\":\"Emitted when the registry address is updated\"},\"StrategyApproved(address)\":{\"notice\":\"Emitted when a strategy is approved and added to the cloneable strategies\"},\"StrategyRemoved(address)\":{\"notice\":\"Emitted when a strategy is removed from the cloneable strategies\"},\"TreasuryUpdated(address)\":{\"notice\":\"Emitted when the treasury address is updated\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"addPoolManager(uint256,address)\":{\"notice\":\"Add a pool manager\"},\"addToCloneableStrategies(address)\":{\"notice\":\"Add a strategy to the allowlist.\"},\"allocate(uint256,bytes)\":{\"notice\":\"Allocate to a recipient or multiple recipients.\"},\"batchAllocate(uint256[],bytes[])\":{\"notice\":\"Allocate to multiple pools\"},\"batchRegisterRecipient(uint256[],bytes[])\":{\"notice\":\"Register multiple recipients to multiple pools.\"},\"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"notice\":\"Creates a new pool (by cloning a cloneable strategies).\"},\"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])\":{\"notice\":\"Creates a new pool (with a custom strategy)\"},\"distribute(uint256,address[],bytes)\":{\"notice\":\"Distribute to a recipient or multiple recipients.\"},\"fundPool(uint256,uint256)\":{\"notice\":\"Fund a pool.\"},\"getBaseFee()\":{\"notice\":\"Getter for base fee.\"},\"getFeeDenominator()\":{\"notice\":\"Getter for the fee denominator\"},\"getPercentFee()\":{\"notice\":\"Getter for fee percentage.\"},\"getPool(uint256)\":{\"notice\":\"Getter for the 'Pool'.\"},\"getRegistry()\":{\"notice\":\"Getter for registry.\"},\"getStrategy(uint256)\":{\"notice\":\"Getter for the strategy.\"},\"getTreasury()\":{\"notice\":\"Getter for treasury address.\"},\"initialize(address,address,address,uint256,uint256)\":{\"notice\":\"Initializes the contract after an upgrade\"},\"isCloneableStrategy(address)\":{\"notice\":\"Getter for if strategy is cloneable.\"},\"isPoolAdmin(uint256,address)\":{\"notice\":\"Checks if the address is a pool admin.\"},\"isPoolManager(uint256,address)\":{\"notice\":\"Checks if the address is a pool manager\"},\"recoverFunds(address,address)\":{\"notice\":\"Transfer the funds recovered to the recipient\"},\"registerRecipient(uint256,bytes)\":{\"notice\":\"Passes _data through to the strategy for that pool.\"},\"removeFromCloneableStrategies(address)\":{\"notice\":\"Remove a strategy from the allowlist\"},\"removePoolManager(uint256,address)\":{\"notice\":\"Remove a pool manager\"},\"updateBaseFee(uint256)\":{\"notice\":\"Updates the base fee.\"},\"updatePercentFee(uint256)\":{\"notice\":\"Updates the fee percentage.\"},\"updatePoolMetadata(uint256,(uint256,string))\":{\"notice\":\"Update pool metadata\"},\"updateRegistry(address)\":{\"notice\":\"Updates the registry address.\"},\"updateTreasury(address)\":{\"notice\":\"Updates the treasury address.\"}},\"notice\":\"This contract is used to create & manage pools as well as manage the protocol.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/Allo.sol\":\"Allo\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Allo.sol\":{\"keccak256\":\"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c\",\"dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd\"]},\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/auth/Ownable.sol\":{\"keccak256\":\"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30\",\"dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol\":{\"keccak256\":\"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f\",\"dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[],"type":"error","name":"NewOwnerIsZeroAddress"},{"inputs":[],"type":"error","name":"NoHandoverRequest"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"Unauthorized"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"BaseFeePaid","anonymous":false},{"inputs":[{"internalType":"uint256","name":"baseFee","type":"uint256","indexed":false}],"type":"event","name":"BaseFeeUpdated","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipHandoverCanceled","anonymous":false},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipHandoverRequested","anonymous":false},{"inputs":[{"internalType":"address","name":"oldOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"percentFee","type":"uint256","indexed":false}],"type":"event","name":"PercentFeeUpdated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"contract IStrategy","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"fee","type":"uint256","indexed":false}],"type":"event","name":"PoolFunded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":true},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolMetadataUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"registry","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false}],"type":"event","name":"StrategyApproved","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"treasury","type":"address","indexed":false}],"type":"event","name":"TreasuryUpdated","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_manager","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addPoolManager"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addToCloneableStrategies"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256[]","name":"_poolIds","type":"uint256[]"},{"internalType":"bytes[]","name":"_datas","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function","name":"batchAllocate"},{"inputs":[{"internalType":"uint256[]","name":"_poolIds","type":"uint256[]"},{"internalType":"bytes[]","name":"_data","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function","name":"batchRegisterRecipient","outputs":[{"internalType":"address[]","name":"recipientIds","type":"address[]"}]},{"inputs":[],"stateMutability":"payable","type":"function","name":"cancelOwnershipHandover"},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"stateMutability":"payable","type":"function","name":"completeOwnershipHandover"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"bytes","name":"_initStrategyData","type":"bytes"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address[]","name":"_managers","type":"address[]"}],"stateMutability":"payable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"bytes","name":"_initStrategyData","type":"bytes"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address[]","name":"_managers","type":"address[]"}],"stateMutability":"payable","type":"function","name":"createPoolWithCustomStrategy","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"payable","type":"function","name":"fundPool"},{"inputs":[],"stateMutability":"view","type":"function","name":"getBaseFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"getFeeDenominator","outputs":[{"internalType":"uint256","name":"FEE_DENOMINATOR","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPercentFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getPool","outputs":[{"internalType":"struct IAllo.Pool","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"profileId","type":"bytes32"},{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"bytes32","name":"managerRole","type":"bytes32"},{"internalType":"bytes32","name":"adminRole","type":"bytes32"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getStrategy","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getTreasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_registry","type":"address"},{"internalType":"address payable","name":"_treasury","type":"address"},{"internalType":"uint256","name":"_percentFee","type":"uint256"},{"internalType":"uint256","name":"_baseFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"isCloneableStrategy","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_address","type":"address"}],"stateMutability":"view","type":"function","name":"isPoolAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_address","type":"address"}],"stateMutability":"view","type":"function","name":"isPoolManager","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"result","type":"address"}]},{"inputs":[{"internalType":"address","name":"pendingOwner","type":"address"}],"stateMutability":"view","type":"function","name":"ownershipHandoverExpiresAt","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"recoverFunds"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeFromCloneableStrategies"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"address","name":"_manager","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removePoolManager"},{"inputs":[],"stateMutability":"payable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[],"stateMutability":"payable","type":"function","name":"requestOwnershipHandover"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"payable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"_baseFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateBaseFee"},{"inputs":[{"internalType":"uint256","name":"_percentFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updatePercentFee"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"updatePoolMetadata"},{"inputs":[{"internalType":"address","name":"_registry","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateRegistry"},{"inputs":[{"internalType":"address payable","name":"_treasury","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateTreasury"}],"devdoc":{"kind":"dev","methods":{"addPoolManager(uint256,address)":{"details":"Emits 'RoleGranted()' event. 'msg.sender' must be a pool admin.","params":{"_manager":"The address to add","_poolId":"ID of the pool"}},"addToCloneableStrategies(address)":{"details":"Emits the 'StrategyApproved()' event. 'msg.sender' must be Allo owner.","params":{"_strategy":"The address of the strategy"}},"allocate(uint256,bytes)":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate().","params":{"_data":"Encoded data unique to the strategy for that pool","_poolId":"ID of the pool"}},"batchAllocate(uint256[],bytes[])":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of allocate(). Please note that this is not a 'payable' function, so if you want to send funds to the strategy, you must send the funds using 'fundPool()'.","params":{"_datas":"encoded data unique to the strategy for that pool","_poolIds":"IDs of the pools"}},"batchRegisterRecipient(uint256[],bytes[])":{"details":"Returns the 'recipientIds' from the strategy that have been registered from calling this function. Encoded data unique to a strategy that registerRecipient() requires. Encoded '_data' length must match '_poolIds' length or this will revert with MISMATCH(). Other requirements will be determined by the strategy.","params":{"_data":"An array of encoded data unique to a strategy that registerRecipient() requires.","_poolIds":"ID's of the pools"},"returns":{"recipientIds":"The recipient IDs that have been registered"}},"cancelOwnershipHandover()":{"details":"Cancels the two-step ownership handover to the caller, if any."},"completeOwnershipHandover(address)":{"details":"Allows the owner to complete the two-step ownership handover to `pendingOwner`. Reverts if there is no existing ownership handover requested by `pendingOwner`."},"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"custom:initstrategydata":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'","details":"'msg.sender' must be owner or member of the profile id passed as '_profileId'.","params":{"_amount":"The amount of the token","_initStrategyData":"The data to initialize the strategy","_managers":"The managers of the pool","_metadata":"The metadata of the pool","_profileId":"The ID of the registry profile, used to check if 'msg.sender' is a member or owner of the profile","_strategy":"The address of the strategy contract the pool will use.","_token":"The address of the token"}},"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"details":"'msg.sender' must be a member or owner of a profile to create a pool with or without a custom strategy, The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'. The strategy address passed must not be a cloneable strategy. The strategy address passed must not be the zero address. 'msg.sender' must be a member or owner of the profile id passed as '_profileId'.","params":{"_amount":"The amount of the token you want to deposit into the pool on initialization","_initStrategyData":"The data to initialize the strategy","_managers":"The managers of the pool, and can be added/removed later by the pool admin","_metadata":"The 'Metadata' of the pool, this uses our 'Meatdata.sol' struct (consistent throughout the protocol)","_profileId":"The 'profileId' of the registry profile, used to check if 'msg.sender' is a member or owner of the profile","_strategy":"The address of the deployed custom strategy","_token":"The address of the token you want to use in your pool"},"returns":{"poolId":"The ID of the pool"}},"distribute(uint256,address[],bytes)":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of 'strategy.distribute()'.","params":{"_data":"Encoded data unique to the strategy","_poolId":"ID of the pool","_recipientIds":"Ids of the recipients of the distribution"}},"fundPool(uint256,uint256)":{"details":"Anyone can fund a pool and call this function.","params":{"_amount":"The amount to be deposited into the pool","_poolId":"ID of the pool"}},"getBaseFee()":{"returns":{"_0":"The base fee"}},"getFeeDenominator()":{"returns":{"FEE_DENOMINATOR":"The fee denominator is (1e18) which represents 100%"}},"getPercentFee()":{"returns":{"_0":"The fee percentage (1e18 = 100%)"}},"getPool(uint256)":{"params":{"_poolId":"The ID of the pool"},"returns":{"_0":"The 'Pool' struct"}},"getRegistry()":{"returns":{"_0":"The registry address"}},"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"getStrategy(uint256)":{"params":{"_poolId":"The ID of the pool"},"returns":{"_0":"The address of the strategy"}},"getTreasury()":{"returns":{"_0":"The treasury address"}},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"initialize(address,address,address,uint256,uint256)":{"details":"During upgrade -> a higher version should be passed to reinitializer","params":{"_baseFee":"The base fee","_owner":"The owner of allo","_percentFee":"The percentage fee","_registry":"The address of the registry","_treasury":"The address of the treasury"}},"isCloneableStrategy(address)":{"params":{"_strategy":"The address of the strategy"},"returns":{"_0":"'true' if the strategy is cloneable, otherwise 'false'"}},"isPoolAdmin(uint256,address)":{"params":{"_address":"The address to check","_poolId":"The ID of the pool"},"returns":{"_0":"'true' if the address is a pool admin, otherwise 'false'"}},"isPoolManager(uint256,address)":{"params":{"_address":"The address to check","_poolId":"The ID of the pool"},"returns":{"_0":"'true' if the address is a pool manager, otherwise 'false'"}},"owner()":{"details":"Returns the owner of the contract."},"ownershipHandoverExpiresAt(address)":{"details":"Returns the expiry timestamp for the two-step ownership handover to `pendingOwner`."},"recoverFunds(address,address)":{"details":"'msg.sender' must be Allo owner","params":{"_recipient":"The recipient","_token":"The token to transfer"}},"registerRecipient(uint256,bytes)":{"details":"The encoded data will be specific to a given strategy requirements, reference the strategy implementation of registerRecipient().","params":{"_data":"Encoded data unique to a strategy that registerRecipient() requires","_poolId":"ID of the pool"},"returns":{"_0":"recipientId The recipient ID that has been registered"}},"removeFromCloneableStrategies(address)":{"details":"Emits 'StrategyRemoved()' event. 'msg.sender must be Allo owner.","params":{"_strategy":"The address of the strategy"}},"removePoolManager(uint256,address)":{"details":"Emits 'RoleRevoked()' event. 'msg.sender' must be a pool admin.","params":{"_manager":"The address to remove","_poolId":"ID of the pool"}},"renounceOwnership()":{"details":"Allows the owner to renounce their ownership."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"requestOwnershipHandover()":{"details":"Request a two-step ownership handover to the caller. The request will automatically expire in 48 hours (172800 seconds) by default."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Allows the owner to transfer the ownership to `newOwner`."},"updateBaseFee(uint256)":{"details":"Use this to update the base fee. 'msg.sender' must be Allo owner.","params":{"_baseFee":"The new base fee"}},"updatePercentFee(uint256)":{"details":"Use this to update the fee percentage. 'msg.sender' must be Allo owner.","params":{"_percentFee":"The new fee"}},"updatePoolMetadata(uint256,(uint256,string))":{"details":"'msg.sender' must be a pool manager. Emits 'PoolMetadataUpdated()' event.","params":{"_metadata":"The new metadata of the pool","_poolId":"ID of the pool"}},"updateRegistry(address)":{"details":"Use this to update the registry address. 'msg.sender' must be Allo owner.","params":{"_registry":"The new registry address"}},"updateTreasury(address)":{"details":"Use this to update the treasury address. 'msg.sender' must be Allo owner.","params":{"_treasury":"The new treasury address"}}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"addPoolManager(uint256,address)":{"notice":"Add a pool manager"},"addToCloneableStrategies(address)":{"notice":"Add a strategy to the allowlist."},"allocate(uint256,bytes)":{"notice":"Allocate to a recipient or multiple recipients."},"batchAllocate(uint256[],bytes[])":{"notice":"Allocate to multiple pools"},"batchRegisterRecipient(uint256[],bytes[])":{"notice":"Register multiple recipients to multiple pools."},"createPool(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"notice":"Creates a new pool (by cloning a cloneable strategies)."},"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":{"notice":"Creates a new pool (with a custom strategy)"},"distribute(uint256,address[],bytes)":{"notice":"Distribute to a recipient or multiple recipients."},"fundPool(uint256,uint256)":{"notice":"Fund a pool."},"getBaseFee()":{"notice":"Getter for base fee."},"getFeeDenominator()":{"notice":"Getter for the fee denominator"},"getPercentFee()":{"notice":"Getter for fee percentage."},"getPool(uint256)":{"notice":"Getter for the 'Pool'."},"getRegistry()":{"notice":"Getter for registry."},"getStrategy(uint256)":{"notice":"Getter for the strategy."},"getTreasury()":{"notice":"Getter for treasury address."},"initialize(address,address,address,uint256,uint256)":{"notice":"Initializes the contract after an upgrade"},"isCloneableStrategy(address)":{"notice":"Getter for if strategy is cloneable."},"isPoolAdmin(uint256,address)":{"notice":"Checks if the address is a pool admin."},"isPoolManager(uint256,address)":{"notice":"Checks if the address is a pool manager"},"recoverFunds(address,address)":{"notice":"Transfer the funds recovered to the recipient"},"registerRecipient(uint256,bytes)":{"notice":"Passes _data through to the strategy for that pool."},"removeFromCloneableStrategies(address)":{"notice":"Remove a strategy from the allowlist"},"removePoolManager(uint256,address)":{"notice":"Remove a pool manager"},"updateBaseFee(uint256)":{"notice":"Updates the base fee."},"updatePercentFee(uint256)":{"notice":"Updates the fee percentage."},"updatePoolMetadata(uint256,(uint256,string))":{"notice":"Update pool metadata"},"updateRegistry(address)":{"notice":"Updates the registry address."},"updateTreasury(address)":{"notice":"Updates the treasury address."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/contracts/core/Allo.sol":"Allo"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Allo.sol":{"keccak256":"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a","urls":["bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c","dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/auth/Ownable.sol":{"keccak256":"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b","urls":["bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30","dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol":{"keccak256":"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f","urls":["bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f","dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":53969,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"51","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_roles","offset":0,"slot":"101","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_status","offset":0,"slot":"151","type":"t_uint256"},{"astId":53236,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"__gap","offset":0,"slot":"152","type":"t_array(t_uint256)49_storage"},{"astId":34,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"percentFee","offset":0,"slot":"201","type":"t_uint256"},{"astId":37,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"baseFee","offset":0,"slot":"202","type":"t_uint256"},{"astId":40,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_poolIndex","offset":0,"slot":"203","type":"t_uint256"},{"astId":43,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"treasury","offset":0,"slot":"204","type":"t_address_payable"},{"astId":47,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"registry","offset":0,"slot":"205","type":"t_contract(IRegistry)2802"},{"astId":52,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"_nonces","offset":0,"slot":"206","type":"t_mapping(t_address,t_uint256)"},{"astId":58,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"pools","offset":0,"slot":"207","type":"t_mapping(t_uint256,t_struct(Pool)2319_storage)"},{"astId":63,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"cloneableStrategies","offset":0,"slot":"208","type":"t_mapping(t_address,t_bool)"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(IStrategy)2969":{"encoding":"inplace","label":"contract IStrategy","numberOfBytes":"20"},"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_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_mapping(t_uint256,t_struct(Pool)2319_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct IAllo.Pool)","numberOfBytes":"32","value":"t_struct(Pool)2319_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(Pool)2319_storage":{"encoding":"inplace","label":"struct IAllo.Pool","numberOfBytes":"224","members":[{"astId":2306,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"profileId","offset":0,"slot":"0","type":"t_bytes32"},{"astId":2309,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"strategy","offset":0,"slot":"1","type":"t_contract(IStrategy)2969"},{"astId":2311,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"token","offset":0,"slot":"2","type":"t_address"},{"astId":2314,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"metadata","offset":0,"slot":"3","type":"t_struct(Metadata)3098_storage"},{"astId":2316,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"managerRole","offset":0,"slot":"5","type":"t_bytes32"},{"astId":2318,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"adminRole","offset":0,"slot":"6","type":"t_bytes32"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"lib/allo-v2/contracts/core/Allo.sol:Allo","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","id":1391,"exportedSymbols":{"AccessControlUpgradeable":[52697],"AddressUpgradeable":[53645],"Allo":[1390],"Clone":[3002],"ContextUpgradeable":[53696],"ERC165Upgradeable":[53970],"Errors":[3089],"IAccessControlUpgradeable":[52770],"IAllo":[2610],"IERC165Upgradeable":[53982],"IERC20Upgradeable":[53315],"IRegistry":[2802],"IStrategy":[2969],"Initializable":[53152],"MathUpgradeable":[54848],"Metadata":[3098],"Native":[3106],"Ownable":[4095],"ReentrancyGuardUpgradeable":[53237],"SignedMathUpgradeable":[54953],"StringsUpgradeable":[53925],"Transfer":[3317]},"nodeType":"SourceUnit","src":"42:34082:0","nodes":[{"id":1,"nodeType":"PragmaDirective","src":"42:23:0","nodes":[],"literals":["solidity","0.8",".19"]},{"id":2,"nodeType":"ImportDirective","src":"89:37:0","nodes":[],"absolutePath":"lib/allo-v2/lib/solady/src/auth/Ownable.sol","file":"solady/src/auth/Ownable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":4096,"symbolAliases":[],"unitAlias":""},{"id":3,"nodeType":"ImportDirective","src":"127:84:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","file":"openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":53153,"symbolAliases":[],"unitAlias":""},{"id":4,"nodeType":"ImportDirective","src":"212:88:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":53316,"symbolAliases":[],"unitAlias":""},{"id":5,"nodeType":"ImportDirective","src":"301:90:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":52698,"symbolAliases":[],"unitAlias":""},{"id":6,"nodeType":"ImportDirective","src":"392:94:0","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":53238,"symbolAliases":[],"unitAlias":""},{"id":7,"nodeType":"ImportDirective","src":"501:32:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"./interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":2611,"symbolAliases":[],"unitAlias":""},{"id":9,"nodeType":"ImportDirective","src":"557:44:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"./libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":8,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"565:5:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":11,"nodeType":"ImportDirective","src":"602:46:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Errors.sol","file":"./libraries/Errors.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3090,"symbolAliases":[{"foreign":{"id":10,"name":"Errors","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3089,"src":"610:6:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":12,"nodeType":"ImportDirective","src":"649:32:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"./libraries/Native.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3107,"symbolAliases":[],"unitAlias":""},{"id":14,"nodeType":"ImportDirective","src":"682:50:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Transfer.sol","file":"./libraries/Transfer.sol","nameLocation":"-1:-1:-1","scope":1391,"sourceUnit":3318,"symbolAliases":[{"foreign":{"id":13,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3317,"src":"690:8:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1390,"nodeType":"ContractDefinition","src":"5076:29047:0","nodes":[{"id":34,"nodeType":"VariableDeclaration","src":"5862:26:0","nodes":[],"constant":false,"documentation":{"id":32,"nodeType":"StructuredDocumentation","src":"5344:513:0","text":"@notice Percentage that is used to calculate the fee Allo takes from each pool when funded\n and is deducted when a pool is funded. So if you want to fund a round with 1000 DAI and the fee\n percentage is 1e17 (10%), then 100 DAI will be deducted from the 1000 DAI and the pool will be\n funded with 900 DAI. The fee is then sent to the treasury address.\n @dev How the percentage is represented in our contracts: 1e18 = 100%, 1e17 = 10%, 1e16 = 1%, 1e15 = 0.1%"},"mutability":"mutable","name":"percentFee","nameLocation":"5878:10:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33,"name":"uint256","nodeType":"ElementaryTypeName","src":"5862:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":37,"nodeType":"VariableDeclaration","src":"6339:24:0","nodes":[],"constant":false,"documentation":{"id":35,"nodeType":"StructuredDocumentation","src":"5895:439:0","text":"@notice Fee Allo charges for all pools on creation\n @dev This is different from the 'percentFee' in that this is a flat fee and not a percentage. So if you want to create a pool\n with a base fee of 100 DAI, then you would pass 100 DAI to the 'createPool()' function and the pool would be created\n with 100 DAI less than the amount you passed to the function. The base fee is sent to the treasury address."},"mutability":"mutable","name":"baseFee","nameLocation":"6356:7:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36,"name":"uint256","nodeType":"ElementaryTypeName","src":"6339:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":40,"nodeType":"VariableDeclaration","src":"6431:26:0","nodes":[],"constant":false,"documentation":{"id":38,"nodeType":"StructuredDocumentation","src":"6370:56:0","text":"@notice Incremental index to track the pools created"},"mutability":"mutable","name":"_poolIndex","nameLocation":"6447:10:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":39,"name":"uint256","nodeType":"ElementaryTypeName","src":"6431:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":43,"nodeType":"VariableDeclaration","src":"6494:32:0","nodes":[],"constant":false,"documentation":{"id":41,"nodeType":"StructuredDocumentation","src":"6464:25:0","text":"@notice Allo treasury"},"mutability":"mutable","name":"treasury","nameLocation":"6518:8:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":42,"name":"address","nodeType":"ElementaryTypeName","src":"6494:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"private"},{"id":47,"nodeType":"VariableDeclaration","src":"6567:26:0","nodes":[],"constant":false,"documentation":{"id":44,"nodeType":"StructuredDocumentation","src":"6533:29:0","text":"@notice Registry contract"},"mutability":"mutable","name":"registry","nameLocation":"6585:8:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":46,"nodeType":"UserDefinedTypeName","pathNode":{"id":45,"name":"IRegistry","nameLocations":["6567:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"6567:9:0"},"referencedDeclaration":2802,"src":"6567:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"private"},{"id":52,"nodeType":"VariableDeclaration","src":"6733:43:0","nodes":[],"constant":false,"documentation":{"id":48,"nodeType":"StructuredDocumentation","src":"6600:128:0","text":"@notice Maps the `msg.sender` to a `nonce` to prevent duplicates\n @dev 'msg.sender' -> 'nonce' for cloning strategies"},"mutability":"mutable","name":"_nonces","nameLocation":"6769:7:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":51,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":49,"name":"address","nodeType":"ElementaryTypeName","src":"6741:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"6733:27:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":50,"name":"uint256","nodeType":"ElementaryTypeName","src":"6752:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"private"},{"id":58,"nodeType":"VariableDeclaration","src":"6869:38:0","nodes":[],"constant":false,"documentation":{"id":53,"nodeType":"StructuredDocumentation","src":"6783:81:0","text":"@notice Maps the pool ID to the pool details\n @dev 'Pool.id' -> 'Pool'"},"mutability":"mutable","name":"pools","nameLocation":"6902:5:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool)"},"typeName":{"id":57,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":54,"name":"uint256","nodeType":"ElementaryTypeName","src":"6877:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"6869:24:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":56,"nodeType":"UserDefinedTypeName","pathNode":{"id":55,"name":"Pool","nameLocations":["6888:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"6888:4:0"},"referencedDeclaration":2319,"src":"6888:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}}},"visibility":"private"},{"id":63,"nodeType":"VariableDeclaration","src":"7064:52:0","nodes":[],"constant":false,"documentation":{"id":59,"nodeType":"StructuredDocumentation","src":"6914:145:0","text":"@notice Returns a bool for whether a strategy is cloneable or not using the strategy address as the key\n @dev Strategy.address -> bool"},"mutability":"mutable","name":"cloneableStrategies","nameLocation":"7097:19:0","scope":1390,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":62,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":60,"name":"address","nodeType":"ElementaryTypeName","src":"7072:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7064:24:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":61,"name":"bool","nodeType":"ElementaryTypeName","src":"7083:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"private"},{"id":101,"nodeType":"FunctionDefinition","src":"7626:593:0","nodes":[],"body":{"id":100,"nodeType":"Block","src":"7819:400:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":81,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66,"src":"7907:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":80,"name":"_initializeOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3980,"src":"7890:16:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":82,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7890:24:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":83,"nodeType":"ExpressionStatement","src":"7890:24:0"},{"expression":{"arguments":[{"id":85,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68,"src":"7984:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":84,"name":"_updateRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1205,"src":"7968:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":86,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7968:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":87,"nodeType":"ExpressionStatement","src":"7968:26:0"},{"expression":{"arguments":[{"id":89,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70,"src":"8064:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":88,"name":"_updateTreasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1230,"src":"8048:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$returns$__$","typeString":"function (address payable)"}},"id":90,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8048:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":91,"nodeType":"ExpressionStatement","src":"8048:26:0"},{"expression":{"arguments":[{"id":93,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72,"src":"8137:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":92,"name":"_updatePercentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1252,"src":"8119:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":94,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8119:30:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":95,"nodeType":"ExpressionStatement","src":"8119:30:0"},{"expression":{"arguments":[{"id":97,"name":"_baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74,"src":"8203:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":96,"name":"_updateBaseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1267,"src":"8188:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":98,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8188:24:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":99,"nodeType":"ExpressionStatement","src":"8188:24:0"}]},"baseFunctions":[2404],"documentation":{"id":64,"nodeType":"StructuredDocumentation","src":"7257:364:0","text":"@notice Initializes the contract after an upgrade\n @dev During upgrade -> a higher version should be passed to reinitializer\n @param _owner The owner of allo\n @param _registry The address of the registry\n @param _treasury The address of the treasury\n @param _percentFee The percentage fee\n @param _baseFee The base fee"},"functionSelector":"a6b63eb8","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"31","id":77,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7816:1:0","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"id":78,"kind":"modifierInvocation","modifierName":{"id":76,"name":"reinitializer","nameLocations":["7802:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"7802:13:0"},"nodeType":"ModifierInvocation","src":"7802:16:0"}],"name":"initialize","nameLocation":"7635:10:0","parameters":{"id":75,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66,"mutability":"mutable","name":"_owner","nameLocation":"7663:6:0","nodeType":"VariableDeclaration","scope":101,"src":"7655:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65,"name":"address","nodeType":"ElementaryTypeName","src":"7655:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68,"mutability":"mutable","name":"_registry","nameLocation":"7687:9:0","nodeType":"VariableDeclaration","scope":101,"src":"7679:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67,"name":"address","nodeType":"ElementaryTypeName","src":"7679:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70,"mutability":"mutable","name":"_treasury","nameLocation":"7722:9:0","nodeType":"VariableDeclaration","scope":101,"src":"7706:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":69,"name":"address","nodeType":"ElementaryTypeName","src":"7706:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":72,"mutability":"mutable","name":"_percentFee","nameLocation":"7749:11:0","nodeType":"VariableDeclaration","scope":101,"src":"7741:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71,"name":"uint256","nodeType":"ElementaryTypeName","src":"7741:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74,"mutability":"mutable","name":"_baseFee","nameLocation":"7778:8:0","nodeType":"VariableDeclaration","scope":101,"src":"7770:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73,"name":"uint256","nodeType":"ElementaryTypeName","src":"7770:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7645:147:0"},"returnParameters":{"id":79,"nodeType":"ParameterList","parameters":[],"src":"7819:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":112,"nodeType":"ModifierDefinition","src":"8573:100:0","nodes":[],"body":{"id":111,"nodeType":"Block","src":"8615:58:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":107,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":104,"src":"8647:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":106,"name":"_checkOnlyPoolManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":693,"src":"8625:21:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8625:30:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":109,"nodeType":"ExpressionStatement","src":"8625:30:0"},{"id":110,"nodeType":"PlaceholderStatement","src":"8665:1:0"}]},"documentation":{"id":102,"nodeType":"StructuredDocumentation","src":"8463:105:0","text":"@notice Reverts UNAUTHORIZED() if the caller is not a pool manager\n @param _poolId The pool id"},"name":"onlyPoolManager","nameLocation":"8582:15:0","parameters":{"id":105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":104,"mutability":"mutable","name":"_poolId","nameLocation":"8606:7:0","nodeType":"VariableDeclaration","scope":112,"src":"8598:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":103,"name":"uint256","nodeType":"ElementaryTypeName","src":"8598:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8597:17:0"},"virtual":false,"visibility":"internal"},{"id":123,"nodeType":"ModifierDefinition","src":"8787:96:0","nodes":[],"body":{"id":122,"nodeType":"Block","src":"8827:56:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":118,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":115,"src":"8857:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":117,"name":"_checkOnlyPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":710,"src":"8837:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8837:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":120,"nodeType":"ExpressionStatement","src":"8837:28:0"},{"id":121,"nodeType":"PlaceholderStatement","src":"8875:1:0"}]},"documentation":{"id":113,"nodeType":"StructuredDocumentation","src":"8679:103:0","text":"@notice Reverts UNAUTHORIZED() if the caller is not a pool admin\n @param _poolId The pool id"},"name":"onlyPoolAdmin","nameLocation":"8796:13:0","parameters":{"id":116,"nodeType":"ParameterList","parameters":[{"constant":false,"id":115,"mutability":"mutable","name":"_poolId","nameLocation":"8818:7:0","nodeType":"VariableDeclaration","scope":123,"src":"8810:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":114,"name":"uint256","nodeType":"ElementaryTypeName","src":"8810:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8809:17:0"},"virtual":false,"visibility":"internal"},{"id":175,"nodeType":"FunctionDefinition","src":"10281:884:0","nodes":[],"body":{"id":174,"nodeType":"Block","src":"10582:583:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":145,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":128,"src":"10687:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":148,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10708:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":147,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10700:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":146,"name":"address","nodeType":"ElementaryTypeName","src":"10700:7:0","typeDescriptions":{}}},"id":149,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10700:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10687:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":154,"nodeType":"IfStatement","src":"10683:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":151,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"10719:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":152,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10719:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":153,"nodeType":"RevertStatement","src":"10712:21:0"}},{"condition":{"arguments":[{"id":156,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":128,"src":"10919:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":155,"name":"_isCloneableStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1135,"src":"10898:20:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10898:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":161,"nodeType":"IfStatement","src":"10894:66:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":158,"name":"IS_APPROVED_STRATEGY","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3038,"src":"10938:20:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10938:22:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":160,"nodeType":"RevertStatement","src":"10931:29:0"}},{"expression":{"arguments":[{"id":163,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":126,"src":"11067:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":165,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":128,"src":"11089:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":164,"name":"IStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2969,"src":"11079:9:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IStrategy_$2969_$","typeString":"type(contract IStrategy)"}},"id":166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11079:20:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":167,"name":"_initStrategyData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":130,"src":"11101:17:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":168,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":132,"src":"11120:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":169,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":134,"src":"11128:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":170,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":137,"src":"11137:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":171,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":140,"src":"11148:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":162,"name":"_createPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":925,"src":"11055:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_contract$_IStrategy_$2969_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,contract IStrategy,bytes memory,address,uint256,struct Metadata memory,address[] memory) returns (uint256)"}},"id":172,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11055:103:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":144,"id":173,"nodeType":"Return","src":"11048:110:0"}]},"documentation":{"id":124,"nodeType":"StructuredDocumentation","src":"9025:1251:0","text":"@notice Creates a new pool (with a custom strategy)\n @dev 'msg.sender' must be a member or owner of a profile to create a pool with or without a custom strategy, The encoded data\n will be specific to a given strategy requirements, reference the strategy implementation of 'initialize()'. The strategy\n address passed must not be a cloneable strategy. The strategy address passed must not be the zero address. 'msg.sender' must\n be a member or owner of the profile id passed as '_profileId'.\n @param _profileId The 'profileId' of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\n @param _strategy The address of the deployed custom strategy\n @param _initStrategyData The data to initialize the strategy\n @param _token The address of the token you want to use in your pool\n @param _amount The amount of the token you want to deposit into the pool on initialization\n @param _metadata The 'Metadata' of the pool, this uses our 'Meatdata.sol' struct (consistent throughout the protocol)\n @param _managers The managers of the pool, and can be added/removed later by the pool admin\n @return poolId The ID of the pool"},"functionSelector":"e1007d4a","implemented":true,"kind":"function","modifiers":[],"name":"createPoolWithCustomStrategy","nameLocation":"10290:28:0","parameters":{"id":141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":126,"mutability":"mutable","name":"_profileId","nameLocation":"10336:10:0","nodeType":"VariableDeclaration","scope":175,"src":"10328:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":125,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10328:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":128,"mutability":"mutable","name":"_strategy","nameLocation":"10364:9:0","nodeType":"VariableDeclaration","scope":175,"src":"10356:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":127,"name":"address","nodeType":"ElementaryTypeName","src":"10356:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":130,"mutability":"mutable","name":"_initStrategyData","nameLocation":"10396:17:0","nodeType":"VariableDeclaration","scope":175,"src":"10383:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":129,"name":"bytes","nodeType":"ElementaryTypeName","src":"10383:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":132,"mutability":"mutable","name":"_token","nameLocation":"10431:6:0","nodeType":"VariableDeclaration","scope":175,"src":"10423:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":131,"name":"address","nodeType":"ElementaryTypeName","src":"10423:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":134,"mutability":"mutable","name":"_amount","nameLocation":"10455:7:0","nodeType":"VariableDeclaration","scope":175,"src":"10447:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":133,"name":"uint256","nodeType":"ElementaryTypeName","src":"10447:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":137,"mutability":"mutable","name":"_metadata","nameLocation":"10488:9:0","nodeType":"VariableDeclaration","scope":175,"src":"10472:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":136,"nodeType":"UserDefinedTypeName","pathNode":{"id":135,"name":"Metadata","nameLocations":["10472:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"10472:8:0"},"referencedDeclaration":3098,"src":"10472:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":140,"mutability":"mutable","name":"_managers","nameLocation":"10524:9:0","nodeType":"VariableDeclaration","scope":175,"src":"10507:26:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":138,"name":"address","nodeType":"ElementaryTypeName","src":"10507:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":139,"nodeType":"ArrayTypeName","src":"10507:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"10318:221:0"},"returnParameters":{"id":144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":143,"mutability":"mutable","name":"poolId","nameLocation":"10574:6:0","nodeType":"VariableDeclaration","scope":175,"src":"10566:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":142,"name":"uint256","nodeType":"ElementaryTypeName","src":"10566:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10565:16:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":229,"nodeType":"FunctionDefinition","src":"11971:701:0","nodes":[],"body":{"id":228,"nodeType":"Block","src":"12267:405:0","nodes":[],"statements":[{"condition":{"id":202,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12281:32:0","subExpression":{"arguments":[{"id":200,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":180,"src":"12303:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":199,"name":"_isCloneableStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1135,"src":"12282:20:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12282:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":207,"nodeType":"IfStatement","src":"12277:93:0","trueBody":{"id":206,"nodeType":"Block","src":"12315:55:0","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":203,"name":"NOT_APPROVED_STRATEGY","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3035,"src":"12336:21:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12336:23:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":205,"nodeType":"RevertStatement","src":"12329:30:0"}]}},{"expression":{"arguments":[{"id":209,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":178,"src":"12451:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"id":213,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":180,"src":"12503:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":218,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"12514:21:0","subExpression":{"baseExpression":{"id":214,"name":"_nonces","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52,"src":"12514:7:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":217,"indexExpression":{"expression":{"id":215,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12522:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12526:6:0","memberName":"sender","nodeType":"MemberAccess","src":"12522:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12514:19:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":211,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"12485:5:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":212,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12491:11:0","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"12485:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12485:51:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":210,"name":"IStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2969,"src":"12475:9:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IStrategy_$2969_$","typeString":"type(contract IStrategy)"}},"id":220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12475:62:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":221,"name":"_initStrategyData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":182,"src":"12551:17:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":222,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":184,"src":"12582:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":223,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":186,"src":"12602:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":224,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":189,"src":"12623:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":225,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":192,"src":"12646:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":208,"name":"_createPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":925,"src":"12426:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_contract$_IStrategy_$2969_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,contract IStrategy,bytes memory,address,uint256,struct Metadata memory,address[] memory) returns (uint256)"}},"id":226,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12426:239:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":198,"id":227,"nodeType":"Return","src":"12419:246:0"}]},"documentation":{"id":176,"nodeType":"StructuredDocumentation","src":"11171:795:0","text":"@notice Creates a new pool (by cloning a cloneable strategies).\n @dev 'msg.sender' must be owner or member of the profile id passed as '_profileId'.\n @param _profileId The ID of the registry profile, used to check if 'msg.sender' is a member or owner of the profile\n @param _strategy The address of the strategy contract the pool will use.\n @param _initStrategyData The data to initialize the strategy\n @param _token The address of the token\n @param _amount The amount of the token\n @param _metadata The metadata of the pool\n @param _managers The managers of the pool\n @custom:initstrategydata The encoded data will be specific to a given strategy requirements,\n reference the strategy implementation of 'initialize()'"},"functionSelector":"77da8caf","implemented":true,"kind":"function","modifiers":[{"id":195,"kind":"modifierInvocation","modifierName":{"id":194,"name":"nonReentrant","nameLocations":["12229:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"12229:12:0"},"nodeType":"ModifierInvocation","src":"12229:12:0"}],"name":"createPool","nameLocation":"11980:10:0","parameters":{"id":193,"nodeType":"ParameterList","parameters":[{"constant":false,"id":178,"mutability":"mutable","name":"_profileId","nameLocation":"12008:10:0","nodeType":"VariableDeclaration","scope":229,"src":"12000:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":177,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12000:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":180,"mutability":"mutable","name":"_strategy","nameLocation":"12036:9:0","nodeType":"VariableDeclaration","scope":229,"src":"12028:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":179,"name":"address","nodeType":"ElementaryTypeName","src":"12028:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":182,"mutability":"mutable","name":"_initStrategyData","nameLocation":"12068:17:0","nodeType":"VariableDeclaration","scope":229,"src":"12055:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":181,"name":"bytes","nodeType":"ElementaryTypeName","src":"12055:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":184,"mutability":"mutable","name":"_token","nameLocation":"12103:6:0","nodeType":"VariableDeclaration","scope":229,"src":"12095:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":183,"name":"address","nodeType":"ElementaryTypeName","src":"12095:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":186,"mutability":"mutable","name":"_amount","nameLocation":"12127:7:0","nodeType":"VariableDeclaration","scope":229,"src":"12119:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":185,"name":"uint256","nodeType":"ElementaryTypeName","src":"12119:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":189,"mutability":"mutable","name":"_metadata","nameLocation":"12160:9:0","nodeType":"VariableDeclaration","scope":229,"src":"12144:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":188,"nodeType":"UserDefinedTypeName","pathNode":{"id":187,"name":"Metadata","nameLocations":["12144:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12144:8:0"},"referencedDeclaration":3098,"src":"12144:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":192,"mutability":"mutable","name":"_managers","nameLocation":"12196:9:0","nodeType":"VariableDeclaration","scope":229,"src":"12179:26:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":190,"name":"address","nodeType":"ElementaryTypeName","src":"12179:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":191,"nodeType":"ArrayTypeName","src":"12179:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"11990:221:0"},"returnParameters":{"id":198,"nodeType":"ParameterList","parameters":[{"constant":false,"id":197,"mutability":"mutable","name":"poolId","nameLocation":"12259:6:0","nodeType":"VariableDeclaration","scope":229,"src":"12251:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":196,"name":"uint256","nodeType":"ElementaryTypeName","src":"12251:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12250:16:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":260,"nodeType":"FunctionDefinition","src":"12894:247:0","nodes":[],"body":{"id":259,"nodeType":"Block","src":"13000:141:0","nodes":[],"statements":[{"assignments":[243],"declarations":[{"constant":false,"id":243,"mutability":"mutable","name":"pool","nameLocation":"13023:4:0","nodeType":"VariableDeclaration","scope":259,"src":"13010:17:0","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":242,"nodeType":"UserDefinedTypeName","pathNode":{"id":241,"name":"Pool","nameLocations":["13010:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"13010:4:0"},"referencedDeclaration":2319,"src":"13010:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":247,"initialValue":{"baseExpression":{"id":244,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"13030:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":246,"indexExpression":{"id":245,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":232,"src":"13036:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"13030:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"VariableDeclarationStatement","src":"13010:34:0"},{"expression":{"id":252,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":248,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":243,"src":"13054:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool storage pointer"}},"id":250,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"13059:8:0","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":2314,"src":"13054:13:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":251,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":235,"src":"13070:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"13054:25:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":253,"nodeType":"ExpressionStatement","src":"13054:25:0"},{"eventCall":{"arguments":[{"id":255,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":232,"src":"13115:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":256,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":235,"src":"13124:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":254,"name":"PoolMetadataUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2344,"src":"13095:19:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,struct Metadata memory)"}},"id":257,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13095:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":258,"nodeType":"EmitStatement","src":"13090:44:0"}]},"baseFunctions":[2413],"documentation":{"id":230,"nodeType":"StructuredDocumentation","src":"12678:211:0","text":"@notice Update pool metadata\n @dev 'msg.sender' must be a pool manager. Emits 'PoolMetadataUpdated()' event.\n @param _poolId ID of the pool\n @param _metadata The new metadata of the pool"},"functionSelector":"5f9ca138","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":238,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":232,"src":"12991:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":239,"kind":"modifierInvocation","modifierName":{"id":237,"name":"onlyPoolManager","nameLocations":["12975:15:0"],"nodeType":"IdentifierPath","referencedDeclaration":112,"src":"12975:15:0"},"nodeType":"ModifierInvocation","src":"12975:24:0"}],"name":"updatePoolMetadata","nameLocation":"12903:18:0","parameters":{"id":236,"nodeType":"ParameterList","parameters":[{"constant":false,"id":232,"mutability":"mutable","name":"_poolId","nameLocation":"12930:7:0","nodeType":"VariableDeclaration","scope":260,"src":"12922:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":231,"name":"uint256","nodeType":"ElementaryTypeName","src":"12922:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":235,"mutability":"mutable","name":"_metadata","nameLocation":"12955:9:0","nodeType":"VariableDeclaration","scope":260,"src":"12939:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":234,"nodeType":"UserDefinedTypeName","pathNode":{"id":233,"name":"Metadata","nameLocations":["12939:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12939:8:0"},"referencedDeclaration":3098,"src":"12939:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12921:44:0"},"returnParameters":{"id":240,"nodeType":"ParameterList","parameters":[],"src":"13000:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":273,"nodeType":"FunctionDefinition","src":"13330:105:0","nodes":[],"body":{"id":272,"nodeType":"Block","src":"13392:43:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":269,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":263,"src":"13418:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":268,"name":"_updateRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1205,"src":"13402:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13402:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":271,"nodeType":"ExpressionStatement","src":"13402:26:0"}]},"baseFunctions":[2419],"documentation":{"id":261,"nodeType":"StructuredDocumentation","src":"13147:178:0","text":"@notice Updates the registry address.\n @dev Use this to update the registry address. 'msg.sender' must be Allo owner.\n @param _registry The new registry address"},"functionSelector":"1a5da6c8","implemented":true,"kind":"function","modifiers":[{"id":266,"kind":"modifierInvocation","modifierName":{"id":265,"name":"onlyOwner","nameLocations":["13382:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"13382:9:0"},"nodeType":"ModifierInvocation","src":"13382:9:0"}],"name":"updateRegistry","nameLocation":"13339:14:0","parameters":{"id":264,"nodeType":"ParameterList","parameters":[{"constant":false,"id":263,"mutability":"mutable","name":"_registry","nameLocation":"13362:9:0","nodeType":"VariableDeclaration","scope":273,"src":"13354:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":262,"name":"address","nodeType":"ElementaryTypeName","src":"13354:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13353:19:0"},"returnParameters":{"id":267,"nodeType":"ParameterList","parameters":[],"src":"13392:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":286,"nodeType":"FunctionDefinition","src":"13624:113:0","nodes":[],"body":{"id":285,"nodeType":"Block","src":"13694:43:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":282,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":276,"src":"13720:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":281,"name":"_updateTreasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1230,"src":"13704:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$returns$__$","typeString":"function (address payable)"}},"id":283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13704:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":284,"nodeType":"ExpressionStatement","src":"13704:26:0"}]},"baseFunctions":[2425],"documentation":{"id":274,"nodeType":"StructuredDocumentation","src":"13441:178:0","text":"@notice Updates the treasury address.\n @dev Use this to update the treasury address. 'msg.sender' must be Allo owner.\n @param _treasury The new treasury address"},"functionSelector":"7f51bb1f","implemented":true,"kind":"function","modifiers":[{"id":279,"kind":"modifierInvocation","modifierName":{"id":278,"name":"onlyOwner","nameLocations":["13684:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"13684:9:0"},"nodeType":"ModifierInvocation","src":"13684:9:0"}],"name":"updateTreasury","nameLocation":"13633:14:0","parameters":{"id":277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":276,"mutability":"mutable","name":"_treasury","nameLocation":"13664:9:0","nodeType":"VariableDeclaration","scope":286,"src":"13648:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":275,"name":"address","nodeType":"ElementaryTypeName","src":"13648:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"13647:27:0"},"returnParameters":{"id":280,"nodeType":"ParameterList","parameters":[],"src":"13694:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":299,"nodeType":"FunctionDefinition","src":"13911:113:0","nodes":[],"body":{"id":298,"nodeType":"Block","src":"13977:47:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":295,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":289,"src":"14005:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":294,"name":"_updatePercentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1252,"src":"13987:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":296,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13987:30:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":297,"nodeType":"ExpressionStatement","src":"13987:30:0"}]},"baseFunctions":[2431],"documentation":{"id":287,"nodeType":"StructuredDocumentation","src":"13743:163:0","text":"@notice Updates the fee percentage.\n @dev Use this to update the fee percentage. 'msg.sender' must be Allo owner.\n @param _percentFee The new fee"},"functionSelector":"f54fc4a0","implemented":true,"kind":"function","modifiers":[{"id":292,"kind":"modifierInvocation","modifierName":{"id":291,"name":"onlyOwner","nameLocations":["13967:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"13967:9:0"},"nodeType":"ModifierInvocation","src":"13967:9:0"}],"name":"updatePercentFee","nameLocation":"13920:16:0","parameters":{"id":290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":289,"mutability":"mutable","name":"_percentFee","nameLocation":"13945:11:0","nodeType":"VariableDeclaration","scope":299,"src":"13937:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":288,"name":"uint256","nodeType":"ElementaryTypeName","src":"13937:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"13936:21:0"},"returnParameters":{"id":293,"nodeType":"ParameterList","parameters":[],"src":"13977:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":312,"nodeType":"FunctionDefinition","src":"14188:101:0","nodes":[],"body":{"id":311,"nodeType":"Block","src":"14248:41:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":308,"name":"_baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":302,"src":"14273:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":307,"name":"_updateBaseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1267,"src":"14258:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":309,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14258:24:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":310,"nodeType":"ExpressionStatement","src":"14258:24:0"}]},"baseFunctions":[2437],"documentation":{"id":300,"nodeType":"StructuredDocumentation","src":"14030:153:0","text":"@notice Updates the base fee.\n @dev Use this to update the base fee. 'msg.sender' must be Allo owner.\n @param _baseFee The new base fee"},"functionSelector":"8e690186","implemented":true,"kind":"function","modifiers":[{"id":305,"kind":"modifierInvocation","modifierName":{"id":304,"name":"onlyOwner","nameLocations":["14238:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"14238:9:0"},"nodeType":"ModifierInvocation","src":"14238:9:0"}],"name":"updateBaseFee","nameLocation":"14197:13:0","parameters":{"id":303,"nodeType":"ParameterList","parameters":[{"constant":false,"id":302,"mutability":"mutable","name":"_baseFee","nameLocation":"14219:8:0","nodeType":"VariableDeclaration","scope":312,"src":"14211:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":301,"name":"uint256","nodeType":"ElementaryTypeName","src":"14211:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14210:18:0"},"returnParameters":{"id":306,"nodeType":"ParameterList","parameters":[],"src":"14248:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":341,"nodeType":"FunctionDefinition","src":"14481:229:0","nodes":[],"body":{"id":340,"nodeType":"Block","src":"14553:157:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":320,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":315,"src":"14567:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":323,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14588:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":322,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14580:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":321,"name":"address","nodeType":"ElementaryTypeName","src":"14580:7:0","typeDescriptions":{}}},"id":324,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14580:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14567:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":329,"nodeType":"IfStatement","src":"14563:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":326,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"14599:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14599:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":328,"nodeType":"RevertStatement","src":"14592:21:0"}},{"expression":{"id":334,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":330,"name":"cloneableStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":63,"src":"14624:19:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":332,"indexExpression":{"id":331,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":315,"src":"14644:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14624:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":333,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14657:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"14624:37:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":335,"nodeType":"ExpressionStatement","src":"14624:37:0"},{"eventCall":{"arguments":[{"id":337,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":315,"src":"14693:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":336,"name":"StrategyApproved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2385,"src":"14676:16:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":338,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14676:27:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":339,"nodeType":"EmitStatement","src":"14671:32:0"}]},"baseFunctions":[2443],"documentation":{"id":313,"nodeType":"StructuredDocumentation","src":"14295:181:0","text":"@notice Add a strategy to the allowlist.\n @dev Emits the 'StrategyApproved()' event. 'msg.sender' must be Allo owner.\n @param _strategy The address of the strategy"},"functionSelector":"41bba0b4","implemented":true,"kind":"function","modifiers":[{"id":318,"kind":"modifierInvocation","modifierName":{"id":317,"name":"onlyOwner","nameLocations":["14543:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"14543:9:0"},"nodeType":"ModifierInvocation","src":"14543:9:0"}],"name":"addToCloneableStrategies","nameLocation":"14490:24:0","parameters":{"id":316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":315,"mutability":"mutable","name":"_strategy","nameLocation":"14523:9:0","nodeType":"VariableDeclaration","scope":341,"src":"14515:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":314,"name":"address","nodeType":"ElementaryTypeName","src":"14515:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14514:19:0"},"returnParameters":{"id":319,"nodeType":"ParameterList","parameters":[],"src":"14553:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":360,"nodeType":"FunctionDefinition","src":"14900:288:0","nodes":[],"body":{"id":359,"nodeType":"Block","src":"14977:211:0","nodes":[],"statements":[{"expression":{"id":353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":349,"name":"cloneableStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":63,"src":"15059:19:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":351,"indexExpression":{"id":350,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":344,"src":"15079:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15059:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":352,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15092:5:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15059:38:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":354,"nodeType":"ExpressionStatement","src":"15059:38:0"},{"eventCall":{"arguments":[{"id":356,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":344,"src":"15171:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":355,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2390,"src":"15155:15:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15155:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":358,"nodeType":"EmitStatement","src":"15150:31:0"}]},"baseFunctions":[2449],"documentation":{"id":342,"nodeType":"StructuredDocumentation","src":"14716:179:0","text":"@notice Remove a strategy from the allowlist\n @dev Emits 'StrategyRemoved()' event. 'msg.sender must be Allo owner.\n @param _strategy The address of the strategy"},"functionSelector":"031e2fa1","implemented":true,"kind":"function","modifiers":[{"id":347,"kind":"modifierInvocation","modifierName":{"id":346,"name":"onlyOwner","nameLocations":["14967:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"14967:9:0"},"nodeType":"ModifierInvocation","src":"14967:9:0"}],"name":"removeFromCloneableStrategies","nameLocation":"14909:29:0","parameters":{"id":345,"nodeType":"ParameterList","parameters":[{"constant":false,"id":344,"mutability":"mutable","name":"_strategy","nameLocation":"14947:9:0","nodeType":"VariableDeclaration","scope":360,"src":"14939:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":343,"name":"address","nodeType":"ElementaryTypeName","src":"14939:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14938:19:0"},"returnParameters":{"id":348,"nodeType":"ParameterList","parameters":[],"src":"14977:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":390,"nodeType":"FunctionDefinition","src":"15387:358:0","nodes":[],"body":{"id":389,"nodeType":"Block","src":"15478:267:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":371,"name":"_manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":365,"src":"15568:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":374,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15588:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":373,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15580:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":372,"name":"address","nodeType":"ElementaryTypeName","src":"15580:7:0","typeDescriptions":{}}},"id":375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15580:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15568:22:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":380,"nodeType":"IfStatement","src":"15564:49:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":377,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"15599:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":378,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15599:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":379,"nodeType":"RevertStatement","src":"15592:21:0"}},{"expression":{"arguments":[{"expression":{"baseExpression":{"id":382,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"15701:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":384,"indexExpression":{"id":383,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":363,"src":"15707:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15701:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15716:11:0","memberName":"managerRole","nodeType":"MemberAccess","referencedDeclaration":2316,"src":"15701:26:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":386,"name":"_manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":365,"src":"15729:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":381,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"15690:10:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15690:48:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":388,"nodeType":"ExpressionStatement","src":"15690:48:0"}]},"baseFunctions":[2457],"documentation":{"id":361,"nodeType":"StructuredDocumentation","src":"15194:188:0","text":"@notice Add a pool manager\n @dev Emits 'RoleGranted()' event. 'msg.sender' must be a pool admin.\n @param _poolId ID of the pool\n @param _manager The address to add"},"functionSelector":"2cf682b0","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":368,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":363,"src":"15469:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":369,"kind":"modifierInvocation","modifierName":{"id":367,"name":"onlyPoolAdmin","nameLocations":["15455:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":123,"src":"15455:13:0"},"nodeType":"ModifierInvocation","src":"15455:22:0"}],"name":"addPoolManager","nameLocation":"15396:14:0","parameters":{"id":366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":363,"mutability":"mutable","name":"_poolId","nameLocation":"15419:7:0","nodeType":"VariableDeclaration","scope":390,"src":"15411:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":362,"name":"uint256","nodeType":"ElementaryTypeName","src":"15411:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":365,"mutability":"mutable","name":"_manager","nameLocation":"15436:8:0","nodeType":"VariableDeclaration","scope":390,"src":"15428:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":364,"name":"address","nodeType":"ElementaryTypeName","src":"15428:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15410:35:0"},"returnParameters":{"id":370,"nodeType":"ParameterList","parameters":[],"src":"15478:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":410,"nodeType":"FunctionDefinition","src":"15950:160:0","nodes":[],"body":{"id":409,"nodeType":"Block","src":"16044:66:0","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":402,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"16066:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":404,"indexExpression":{"id":403,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":393,"src":"16072:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16066:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":405,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16081:11:0","memberName":"managerRole","nodeType":"MemberAccess","referencedDeclaration":2316,"src":"16066:26:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":406,"name":"_manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":395,"src":"16094:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":401,"name":"_revokeRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52691,"src":"16054:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16054:49:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":408,"nodeType":"ExpressionStatement","src":"16054:49:0"}]},"baseFunctions":[2465],"documentation":{"id":391,"nodeType":"StructuredDocumentation","src":"15751:194:0","text":"@notice Remove a pool manager\n @dev Emits 'RoleRevoked()' event. 'msg.sender' must be a pool admin.\n @param _poolId ID of the pool\n @param _manager The address to remove"},"functionSelector":"7f5a70bd","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":398,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":393,"src":"16035:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":399,"kind":"modifierInvocation","modifierName":{"id":397,"name":"onlyPoolAdmin","nameLocations":["16021:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":123,"src":"16021:13:0"},"nodeType":"ModifierInvocation","src":"16021:22:0"}],"name":"removePoolManager","nameLocation":"15959:17:0","parameters":{"id":396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":393,"mutability":"mutable","name":"_poolId","nameLocation":"15985:7:0","nodeType":"VariableDeclaration","scope":410,"src":"15977:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":392,"name":"uint256","nodeType":"ElementaryTypeName","src":"15977:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":395,"mutability":"mutable","name":"_manager","nameLocation":"16002:8:0","nodeType":"VariableDeclaration","scope":410,"src":"15994:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":394,"name":"address","nodeType":"ElementaryTypeName","src":"15994:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15976:35:0"},"returnParameters":{"id":400,"nodeType":"ParameterList","parameters":[],"src":"16044:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":448,"nodeType":"FunctionDefinition","src":"16308:430:0","nodes":[],"body":{"id":447,"nodeType":"Block","src":"16385:353:0","nodes":[],"statements":[{"assignments":[421],"declarations":[{"constant":false,"id":421,"mutability":"mutable","name":"amount","nameLocation":"16514:6:0","nodeType":"VariableDeclaration","scope":447,"src":"16506:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":420,"name":"uint256","nodeType":"ElementaryTypeName","src":"16506:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":440,"initialValue":{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":422,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":413,"src":"16523:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":423,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"16533:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16523:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"arguments":[{"id":436,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16610:4:0","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}],"id":435,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16602:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":434,"name":"address","nodeType":"ElementaryTypeName","src":"16602:7:0","typeDescriptions":{}}},"id":437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16602:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":431,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":413,"src":"16584:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":430,"name":"IERC20Upgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53315,"src":"16566:17:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IERC20Upgradeable_$53315_$","typeString":"type(contract IERC20Upgradeable)"}},"id":432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16566:25:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Upgradeable_$53315","typeString":"contract IERC20Upgradeable"}},"id":433,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16592:9:0","memberName":"balanceOf","nodeType":"MemberAccess","referencedDeclaration":53272,"src":"16566:35:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":438,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16566:50:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"16523:93:0","trueExpression":{"expression":{"arguments":[{"id":427,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16550:4:0","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}],"id":426,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16542:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":425,"name":"address","nodeType":"ElementaryTypeName","src":"16542:7:0","typeDescriptions":{}}},"id":428,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16542:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16556:7:0","memberName":"balance","nodeType":"MemberAccess","src":"16542:21:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"16506:110:0"},{"expression":{"arguments":[{"id":442,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":413,"src":"16704:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":443,"name":"_recipient","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":415,"src":"16712:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":444,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":421,"src":"16724:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":441,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"16688:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16688:43:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":446,"nodeType":"ExpressionStatement","src":"16688:43:0"}]},"baseFunctions":[2473],"documentation":{"id":411,"nodeType":"StructuredDocumentation","src":"16116:187:0","text":"@notice Transfer the funds recovered to the recipient\n @dev 'msg.sender' must be Allo owner\n @param _token The token to transfer\n @param _recipient The recipient"},"functionSelector":"24ae6a27","implemented":true,"kind":"function","modifiers":[{"id":418,"kind":"modifierInvocation","modifierName":{"id":417,"name":"onlyOwner","nameLocations":["16375:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":4094,"src":"16375:9:0"},"nodeType":"ModifierInvocation","src":"16375:9:0"}],"name":"recoverFunds","nameLocation":"16317:12:0","parameters":{"id":416,"nodeType":"ParameterList","parameters":[{"constant":false,"id":413,"mutability":"mutable","name":"_token","nameLocation":"16338:6:0","nodeType":"VariableDeclaration","scope":448,"src":"16330:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":412,"name":"address","nodeType":"ElementaryTypeName","src":"16330:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":415,"mutability":"mutable","name":"_recipient","nameLocation":"16354:10:0","nodeType":"VariableDeclaration","scope":448,"src":"16346:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":414,"name":"address","nodeType":"ElementaryTypeName","src":"16346:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16329:36:0"},"returnParameters":{"id":419,"nodeType":"ParameterList","parameters":[],"src":"16385:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":474,"nodeType":"FunctionDefinition","src":"17298:276:0","nodes":[],"body":{"id":473,"nodeType":"Block","src":"17410:164:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":468,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":453,"src":"17549:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":469,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17556:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17560:6:0","memberName":"sender","nodeType":"MemberAccess","src":"17556:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":460,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"17489:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":462,"indexExpression":{"id":461,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":451,"src":"17495:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17489:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17504:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"17489:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":464,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17513:17:0","memberName":"registerRecipient","nodeType":"MemberAccess","referencedDeclaration":2949,"src":"17489:41:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$_t_address_$","typeString":"function (bytes memory,address) payable external returns (address)"}},"id":467,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":465,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17538:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17542:5:0","memberName":"value","nodeType":"MemberAccess","src":"17538:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"17489:59:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$_t_address_$value","typeString":"function (bytes memory,address) payable external returns (address)"}},"id":471,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17489:78:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":459,"id":472,"nodeType":"Return","src":"17482:85:0"}]},"baseFunctions":[2483],"documentation":{"id":449,"nodeType":"StructuredDocumentation","src":"16877:416:0","text":"@notice Passes _data through to the strategy for that pool.\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of registerRecipient().\n @param _poolId ID of the pool\n @param _data Encoded data unique to a strategy that registerRecipient() requires\n @return recipientId The recipient ID that has been registered"},"functionSelector":"075c0e9c","implemented":true,"kind":"function","modifiers":[{"id":456,"kind":"modifierInvocation","modifierName":{"id":455,"name":"nonReentrant","nameLocations":["17379:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"17379:12:0"},"nodeType":"ModifierInvocation","src":"17379:12:0"}],"name":"registerRecipient","nameLocation":"17307:17:0","parameters":{"id":454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":451,"mutability":"mutable","name":"_poolId","nameLocation":"17333:7:0","nodeType":"VariableDeclaration","scope":474,"src":"17325:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":450,"name":"uint256","nodeType":"ElementaryTypeName","src":"17325:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":453,"mutability":"mutable","name":"_data","nameLocation":"17355:5:0","nodeType":"VariableDeclaration","scope":474,"src":"17342:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":452,"name":"bytes","nodeType":"ElementaryTypeName","src":"17342:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"17324:37:0"},"returnParameters":{"id":459,"nodeType":"ParameterList","parameters":[{"constant":false,"id":458,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":474,"src":"17401:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":457,"name":"address","nodeType":"ElementaryTypeName","src":"17401:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"17400:9:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":543,"nodeType":"FunctionDefinition","src":"18212:747:0","nodes":[],"body":{"id":542,"nodeType":"Block","src":"18383:576:0","nodes":[],"statements":[{"assignments":[490],"declarations":[{"constant":false,"id":490,"mutability":"mutable","name":"poolIdLength","nameLocation":"18401:12:0","nodeType":"VariableDeclaration","scope":542,"src":"18393:20:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":489,"name":"uint256","nodeType":"ElementaryTypeName","src":"18393:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":493,"initialValue":{"expression":{"id":491,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":478,"src":"18416:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18425:6:0","memberName":"length","nodeType":"MemberAccess","src":"18416:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"18393:38:0"},{"expression":{"id":500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":494,"name":"recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":487,"src":"18441:12:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":498,"name":"poolIdLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":490,"src":"18470:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":497,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"18456:13:0","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":495,"name":"address","nodeType":"ElementaryTypeName","src":"18460:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":496,"nodeType":"ArrayTypeName","src":"18460:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18456:27:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"18441:42:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":501,"nodeType":"ExpressionStatement","src":"18441:42:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":505,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":502,"name":"poolIdLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":490,"src":"18498:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":503,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":481,"src":"18514:5:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":504,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18520:6:0","memberName":"length","nodeType":"MemberAccess","src":"18514:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18498:28:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":509,"nodeType":"IfStatement","src":"18494:51:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":506,"name":"MISMATCH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3011,"src":"18535:8:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18535:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":508,"nodeType":"RevertStatement","src":"18528:17:0"}},{"body":{"id":538,"nodeType":"Block","src":"18693:169:0","statements":[{"expression":{"id":532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":516,"name":"recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":487,"src":"18707:12:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":518,"indexExpression":{"id":517,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18720:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18707:15:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"baseExpression":{"id":526,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":481,"src":"18771:5:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":528,"indexExpression":{"id":527,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18777:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18771:8:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":529,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"18781:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18785:6:0","memberName":"sender","nodeType":"MemberAccess","src":"18781:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":519,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"18725:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":523,"indexExpression":{"baseExpression":{"id":520,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":478,"src":"18731:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":522,"indexExpression":{"id":521,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18740:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18731:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18725:18:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":524,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18744:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"18725:27:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":525,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18753:17:0","memberName":"registerRecipient","nodeType":"MemberAccess","referencedDeclaration":2949,"src":"18725:45:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$_t_address_$","typeString":"function (bytes memory,address) payable external returns (address)"}},"id":531,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18725:67:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18707:85:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":533,"nodeType":"ExpressionStatement","src":"18707:85:0"},{"id":537,"nodeType":"UncheckedBlock","src":"18806:46:0","statements":[{"expression":{"id":535,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"18834:3:0","subExpression":{"id":534,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18836:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":536,"nodeType":"ExpressionStatement","src":"18834:3:0"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":513,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":511,"src":"18674:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":514,"name":"poolIdLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":490,"src":"18678:12:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18674:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":539,"initializationExpression":{"assignments":[511],"declarations":[{"constant":false,"id":511,"mutability":"mutable","name":"i","nameLocation":"18671:1:0","nodeType":"VariableDeclaration","scope":539,"src":"18663:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":510,"name":"uint256","nodeType":"ElementaryTypeName","src":"18663:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":512,"nodeType":"VariableDeclarationStatement","src":"18663:9:0"},"nodeType":"ForStatement","src":"18658:204:0"},{"expression":{"id":540,"name":"recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":487,"src":"18940:12:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"functionReturnParameters":488,"id":541,"nodeType":"Return","src":"18933:19:0"}]},"baseFunctions":[2496],"documentation":{"id":475,"nodeType":"StructuredDocumentation","src":"17580:627:0","text":"@notice Register multiple recipients to multiple pools.\n @dev Returns the 'recipientIds' from the strategy that have been registered from calling this function.\n Encoded data unique to a strategy that registerRecipient() requires. Encoded '_data' length must match\n '_poolIds' length or this will revert with MISMATCH(). Other requirements will be determined by the strategy.\n @param _poolIds ID's of the pools\n @param _data An array of encoded data unique to a strategy that registerRecipient() requires.\n @return recipientIds The recipient IDs that have been registered"},"functionSelector":"1a20bd88","implemented":true,"kind":"function","modifiers":[{"id":484,"kind":"modifierInvocation","modifierName":{"id":483,"name":"nonReentrant","nameLocations":["18318:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"18318:12:0"},"nodeType":"ModifierInvocation","src":"18318:12:0"}],"name":"batchRegisterRecipient","nameLocation":"18221:22:0","parameters":{"id":482,"nodeType":"ParameterList","parameters":[{"constant":false,"id":478,"mutability":"mutable","name":"_poolIds","nameLocation":"18261:8:0","nodeType":"VariableDeclaration","scope":543,"src":"18244:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":476,"name":"uint256","nodeType":"ElementaryTypeName","src":"18244:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":477,"nodeType":"ArrayTypeName","src":"18244:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":481,"mutability":"mutable","name":"_data","nameLocation":"18286:5:0","nodeType":"VariableDeclaration","scope":543,"src":"18271:20:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":479,"name":"bytes","nodeType":"ElementaryTypeName","src":"18271:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":480,"nodeType":"ArrayTypeName","src":"18271:7:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"18243:49:0"},"returnParameters":{"id":488,"nodeType":"ParameterList","parameters":[{"constant":false,"id":487,"mutability":"mutable","name":"recipientIds","nameLocation":"18365:12:0","nodeType":"VariableDeclaration","scope":543,"src":"18348:29:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":485,"name":"address","nodeType":"ElementaryTypeName","src":"18348:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":486,"nodeType":"ArrayTypeName","src":"18348:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"18347:31:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":588,"nodeType":"FunctionDefinition","src":"19156:439:0","nodes":[],"body":{"id":587,"nodeType":"Block","src":"19238:357:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":553,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":548,"src":"19318:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":554,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19329:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"19318:12:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":559,"nodeType":"IfStatement","src":"19314:43:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":556,"name":"NOT_ENOUGH_FUNDS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3014,"src":"19339:16:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19339:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":558,"nodeType":"RevertStatement","src":"19332:25:0"}},{"assignments":[562],"declarations":[{"constant":false,"id":562,"mutability":"mutable","name":"pool","nameLocation":"19380:4:0","nodeType":"VariableDeclaration","scope":587,"src":"19368:16:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":561,"nodeType":"UserDefinedTypeName","pathNode":{"id":560,"name":"Pool","nameLocations":["19368:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"19368:4:0"},"referencedDeclaration":2319,"src":"19368:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":566,"initialValue":{"baseExpression":{"id":563,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"19387:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":565,"indexExpression":{"id":564,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":546,"src":"19393:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19387:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"VariableDeclarationStatement","src":"19368:33:0"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":575,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":567,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":562,"src":"19415:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":568,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19420:5:0","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"19415:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":569,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"19429:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"19415:20:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":571,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":548,"src":"19439:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":572,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19450:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19454:5:0","memberName":"value","nodeType":"MemberAccess","src":"19450:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19439:20:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"19415:44:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":579,"nodeType":"IfStatement","src":"19411:75:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":576,"name":"NOT_ENOUGH_FUNDS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3014,"src":"19468:16:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":577,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19468:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":578,"nodeType":"RevertStatement","src":"19461:25:0"}},{"expression":{"arguments":[{"id":581,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":548,"src":"19556:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":582,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":546,"src":"19565:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":583,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":562,"src":"19574:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19579:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"19574:13:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":580,"name":"_fundPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1122,"src":"19546:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_contract$_IStrategy_$2969_$returns$__$","typeString":"function (uint256,uint256,contract IStrategy)"}},"id":585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19546:42:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":586,"nodeType":"ExpressionStatement","src":"19546:42:0"}]},"baseFunctions":[2504],"documentation":{"id":544,"nodeType":"StructuredDocumentation","src":"18965:186:0","text":"@notice Fund a pool.\n @dev Anyone can fund a pool and call this function.\n @param _poolId ID of the pool\n @param _amount The amount to be deposited into the pool"},"functionSelector":"5acd6fac","implemented":true,"kind":"function","modifiers":[{"id":551,"kind":"modifierInvocation","modifierName":{"id":550,"name":"nonReentrant","nameLocations":["19225:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"19225:12:0"},"nodeType":"ModifierInvocation","src":"19225:12:0"}],"name":"fundPool","nameLocation":"19165:8:0","parameters":{"id":549,"nodeType":"ParameterList","parameters":[{"constant":false,"id":546,"mutability":"mutable","name":"_poolId","nameLocation":"19182:7:0","nodeType":"VariableDeclaration","scope":588,"src":"19174:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":545,"name":"uint256","nodeType":"ElementaryTypeName","src":"19174:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":548,"mutability":"mutable","name":"_amount","nameLocation":"19199:7:0","nodeType":"VariableDeclaration","scope":588,"src":"19191:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":547,"name":"uint256","nodeType":"ElementaryTypeName","src":"19191:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19173:34:0"},"returnParameters":{"id":552,"nodeType":"ParameterList","parameters":[],"src":"19238:0:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":604,"nodeType":"FunctionDefinition","src":"19921:127:0","nodes":[],"body":{"id":603,"nodeType":"Block","src":"20006:42:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":599,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":591,"src":"20026:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":600,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":593,"src":"20035:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":598,"name":"_allocate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":947,"src":"20016:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (uint256,bytes memory)"}},"id":601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20016:25:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":602,"nodeType":"ExpressionStatement","src":"20016:25:0"}]},"baseFunctions":[2512],"documentation":{"id":589,"nodeType":"StructuredDocumentation","src":"19601:315:0","text":"@notice Allocate to a recipient or multiple recipients.\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of allocate().\n @param _poolId ID of the pool\n @param _data Encoded data unique to the strategy for that pool"},"functionSelector":"2ec38188","implemented":true,"kind":"function","modifiers":[{"id":596,"kind":"modifierInvocation","modifierName":{"id":595,"name":"nonReentrant","nameLocations":["19993:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"19993:12:0"},"nodeType":"ModifierInvocation","src":"19993:12:0"}],"name":"allocate","nameLocation":"19930:8:0","parameters":{"id":594,"nodeType":"ParameterList","parameters":[{"constant":false,"id":591,"mutability":"mutable","name":"_poolId","nameLocation":"19947:7:0","nodeType":"VariableDeclaration","scope":604,"src":"19939:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":590,"name":"uint256","nodeType":"ElementaryTypeName","src":"19939:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":593,"mutability":"mutable","name":"_data","nameLocation":"19969:5:0","nodeType":"VariableDeclaration","scope":604,"src":"19956:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":592,"name":"bytes","nodeType":"ElementaryTypeName","src":"19956:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"19938:37:0"},"returnParameters":{"id":597,"nodeType":"ParameterList","parameters":[],"src":"20006:0:0"},"scope":1390,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":651,"nodeType":"FunctionDefinition","src":"20511:559:0","nodes":[],"body":{"id":650,"nodeType":"Block","src":"20608:462:0","nodes":[],"statements":[{"assignments":[617],"declarations":[{"constant":false,"id":617,"mutability":"mutable","name":"numPools","nameLocation":"20626:8:0","nodeType":"VariableDeclaration","scope":650,"src":"20618:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":616,"name":"uint256","nodeType":"ElementaryTypeName","src":"20618:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":620,"initialValue":{"expression":{"id":618,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":608,"src":"20637:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[] calldata"}},"id":619,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20646:6:0","memberName":"length","nodeType":"MemberAccess","src":"20637:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20618:34:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":621,"name":"numPools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":617,"src":"20772:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":622,"name":"_datas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":611,"src":"20784:6:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20791:6:0","memberName":"length","nodeType":"MemberAccess","src":"20784:13:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20772:25:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":628,"nodeType":"IfStatement","src":"20768:48:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":625,"name":"MISMATCH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3011,"src":"20806:8:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20806:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":627,"nodeType":"RevertStatement","src":"20799:17:0"}},{"body":{"id":648,"nodeType":"Block","src":"20947:117:0","statements":[{"expression":{"arguments":[{"baseExpression":{"id":636,"name":"_poolIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":608,"src":"20971:8:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[] calldata"}},"id":638,"indexExpression":{"id":637,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"20980:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20971:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"id":639,"name":"_datas","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":611,"src":"20984:6:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":641,"indexExpression":{"id":640,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"20991:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20984:9:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":635,"name":"_allocate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":947,"src":"20961:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (uint256,bytes memory)"}},"id":642,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20961:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":643,"nodeType":"ExpressionStatement","src":"20961:33:0"},{"id":647,"nodeType":"UncheckedBlock","src":"21008:46:0","statements":[{"expression":{"id":645,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"21036:3:0","subExpression":{"id":644,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"21038:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":646,"nodeType":"ExpressionStatement","src":"21036:3:0"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":634,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":632,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":630,"src":"20932:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":633,"name":"numPools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":617,"src":"20936:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20932:12:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":649,"initializationExpression":{"assignments":[630],"declarations":[{"constant":false,"id":630,"mutability":"mutable","name":"i","nameLocation":"20929:1:0","nodeType":"VariableDeclaration","scope":649,"src":"20921:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":629,"name":"uint256","nodeType":"ElementaryTypeName","src":"20921:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":631,"nodeType":"VariableDeclarationStatement","src":"20921:9:0"},"nodeType":"ForStatement","src":"20916:148:0"}]},"baseFunctions":[2522],"documentation":{"id":605,"nodeType":"StructuredDocumentation","src":"20054:452:0","text":"@notice Allocate to multiple pools\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of allocate(). Please note that this is not a 'payable' function, so if you\n want to send funds to the strategy, you must send the funds using 'fundPool()'.\n @param _poolIds IDs of the pools\n @param _datas encoded data unique to the strategy for that pool"},"functionSelector":"c6dff1cf","implemented":true,"kind":"function","modifiers":[{"id":614,"kind":"modifierInvocation","modifierName":{"id":613,"name":"nonReentrant","nameLocations":["20595:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"20595:12:0"},"nodeType":"ModifierInvocation","src":"20595:12:0"}],"name":"batchAllocate","nameLocation":"20520:13:0","parameters":{"id":612,"nodeType":"ParameterList","parameters":[{"constant":false,"id":608,"mutability":"mutable","name":"_poolIds","nameLocation":"20553:8:0","nodeType":"VariableDeclaration","scope":651,"src":"20534:27:0","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":606,"name":"uint256","nodeType":"ElementaryTypeName","src":"20534:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":607,"nodeType":"ArrayTypeName","src":"20534:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":611,"mutability":"mutable","name":"_datas","nameLocation":"20578:6:0","nodeType":"VariableDeclaration","scope":651,"src":"20563:21:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":609,"name":"bytes","nodeType":"ElementaryTypeName","src":"20563:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":610,"nodeType":"ArrayTypeName","src":"20563:7:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"20533:52:0"},"returnParameters":{"id":615,"nodeType":"ParameterList","parameters":[],"src":"20608:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":676,"nodeType":"FunctionDefinition","src":"21468:196:0","nodes":[],"body":{"id":675,"nodeType":"Block","src":"21579:85:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":669,"name":"_recipientIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":657,"src":"21624:13:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":670,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":659,"src":"21639:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":671,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21646:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21650:6:0","memberName":"sender","nodeType":"MemberAccess","src":"21646:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":664,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"21589:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":666,"indexExpression":{"id":665,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":654,"src":"21595:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21589:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":667,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21604:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"21589:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21613:10:0","memberName":"distribute","nodeType":"MemberAccess","referencedDeclaration":2968,"src":"21589:34:0","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_bytes_memory_ptr_$_t_address_$returns$__$","typeString":"function (address[] memory,bytes memory,address) external"}},"id":673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21589:68:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":674,"nodeType":"ExpressionStatement","src":"21589:68:0"}]},"baseFunctions":[2533],"documentation":{"id":652,"nodeType":"StructuredDocumentation","src":"21076:387:0","text":"@notice Distribute to a recipient or multiple recipients.\n @dev The encoded data will be specific to a given strategy requirements, reference the strategy\n implementation of 'strategy.distribute()'.\n @param _poolId ID of the pool\n @param _recipientIds Ids of the recipients of the distribution\n @param _data Encoded data unique to the strategy"},"functionSelector":"3a5fbd92","implemented":true,"kind":"function","modifiers":[{"id":662,"kind":"modifierInvocation","modifierName":{"id":661,"name":"nonReentrant","nameLocations":["21566:12:0"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"21566:12:0"},"nodeType":"ModifierInvocation","src":"21566:12:0"}],"name":"distribute","nameLocation":"21477:10:0","parameters":{"id":660,"nodeType":"ParameterList","parameters":[{"constant":false,"id":654,"mutability":"mutable","name":"_poolId","nameLocation":"21496:7:0","nodeType":"VariableDeclaration","scope":676,"src":"21488:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":653,"name":"uint256","nodeType":"ElementaryTypeName","src":"21488:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":657,"mutability":"mutable","name":"_recipientIds","nameLocation":"21522:13:0","nodeType":"VariableDeclaration","scope":676,"src":"21505:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":655,"name":"address","nodeType":"ElementaryTypeName","src":"21505:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":656,"nodeType":"ArrayTypeName","src":"21505:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":659,"mutability":"mutable","name":"_data","nameLocation":"21550:5:0","nodeType":"VariableDeclaration","scope":676,"src":"21537:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":658,"name":"bytes","nodeType":"ElementaryTypeName","src":"21537:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"21487:69:0"},"returnParameters":{"id":663,"nodeType":"ParameterList","parameters":[],"src":"21579:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":693,"nodeType":"FunctionDefinition","src":"21910:142:0","nodes":[],"body":{"id":692,"nodeType":"Block","src":"21972:80:0","nodes":[],"statements":[{"condition":{"id":687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"21986:36:0","subExpression":{"arguments":[{"id":683,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":679,"src":"22002:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":684,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"22011:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":685,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22015:6:0","memberName":"sender","nodeType":"MemberAccess","src":"22011:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":682,"name":"_isPoolManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1178,"src":"21987:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":686,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21987:35:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":691,"nodeType":"IfStatement","src":"21982:63:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":688,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"22031:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22031:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":690,"nodeType":"RevertStatement","src":"22024:21:0"}}]},"documentation":{"id":677,"nodeType":"StructuredDocumentation","src":"21806:99:0","text":"@notice Internal function to check is caller is pool manager\n @param _poolId The pool id"},"implemented":true,"kind":"function","modifiers":[],"name":"_checkOnlyPoolManager","nameLocation":"21919:21:0","parameters":{"id":680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":679,"mutability":"mutable","name":"_poolId","nameLocation":"21949:7:0","nodeType":"VariableDeclaration","scope":693,"src":"21941:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":678,"name":"uint256","nodeType":"ElementaryTypeName","src":"21941:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21940:17:0"},"returnParameters":{"id":681,"nodeType":"ParameterList","parameters":[],"src":"21972:0:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":710,"nodeType":"FunctionDefinition","src":"22160:138:0","nodes":[],"body":{"id":709,"nodeType":"Block","src":"22220:78:0","nodes":[],"statements":[{"condition":{"id":704,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22234:34:0","subExpression":{"arguments":[{"id":700,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":696,"src":"22248:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":701,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"22257:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22261:6:0","memberName":"sender","nodeType":"MemberAccess","src":"22257:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":699,"name":"_isPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1154,"src":"22235:12:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":703,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22235:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":708,"nodeType":"IfStatement","src":"22230:61:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":705,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"22277:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":706,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22277:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":707,"nodeType":"RevertStatement","src":"22270:21:0"}}]},"documentation":{"id":694,"nodeType":"StructuredDocumentation","src":"22058:97:0","text":"@notice Internal function to check is caller is pool admin\n @param _poolId The pool id"},"implemented":true,"kind":"function","modifiers":[],"name":"_checkOnlyPoolAdmin","nameLocation":"22169:19:0","parameters":{"id":697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":696,"mutability":"mutable","name":"_poolId","nameLocation":"22197:7:0","nodeType":"VariableDeclaration","scope":710,"src":"22189:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":695,"name":"uint256","nodeType":"ElementaryTypeName","src":"22189:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22188:17:0"},"returnParameters":{"id":698,"nodeType":"ParameterList","parameters":[],"src":"22220:0:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":925,"nodeType":"FunctionDefinition","src":"23131:2681:0","nodes":[],"body":{"id":924,"nodeType":"Block","src":"23409:2403:0","nodes":[],"statements":[{"condition":{"id":739,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"23423:58:0","subExpression":{"arguments":[{"id":735,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":713,"src":"23458:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":736,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23470:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23474:6:0","memberName":"sender","nodeType":"MemberAccess","src":"23470:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":733,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47,"src":"23424:8:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":734,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23433:24:0","memberName":"isOwnerOrMemberOfProfile","nodeType":"MemberAccess","referencedDeclaration":2704,"src":"23424:33:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":738,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23424:57:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":743,"nodeType":"IfStatement","src":"23419:85:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":740,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"23490:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":741,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23490:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":742,"nodeType":"RevertStatement","src":"23483:21:0"}},{"expression":{"id":747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":744,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"23515:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":746,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"23524:12:0","subExpression":{"id":745,"name":"_poolIndex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":40,"src":"23526:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23515:21:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":748,"nodeType":"ExpressionStatement","src":"23515:21:0"},{"assignments":[750],"declarations":[{"constant":false,"id":750,"mutability":"mutable","name":"POOL_MANAGER_ROLE","nameLocation":"23683:17:0","nodeType":"VariableDeclaration","scope":924,"src":"23675:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":749,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23675:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":755,"initialValue":{"arguments":[{"id":753,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"23711:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":752,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23703:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":751,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23703:7:0","typeDescriptions":{}}},"id":754,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23703:15:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"23675:43:0"},{"assignments":[757],"declarations":[{"constant":false,"id":757,"mutability":"mutable","name":"POOL_ADMIN_ROLE","nameLocation":"23736:15:0","nodeType":"VariableDeclaration","scope":924,"src":"23728:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":756,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23728:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":765,"initialValue":{"arguments":[{"arguments":[{"id":761,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"23781:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"61646d696e","id":762,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"23789:7:0","typeDescriptions":{"typeIdentifier":"t_stringliteral_f23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d8","typeString":"literal_string \"admin\""},"value":"admin"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_stringliteral_f23ec0bb4210edd5cba85afd05127efcd2fc6a781bfed49188da1081670b22d8","typeString":"literal_string \"admin\""}],"expression":{"id":759,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23764:3:0","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":760,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23768:12:0","memberName":"encodePacked","nodeType":"MemberAccess","src":"23764:16:0","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23764:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":758,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"23754:9:0","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":764,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23754:44:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"23728:70:0"},{"assignments":[768],"declarations":[{"constant":false,"id":768,"mutability":"mutable","name":"pool","nameLocation":"23857:4:0","nodeType":"VariableDeclaration","scope":924,"src":"23845:16:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":767,"nodeType":"UserDefinedTypeName","pathNode":{"id":766,"name":"Pool","nameLocations":["23845:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"23845:4:0"},"referencedDeclaration":2319,"src":"23845:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":777,"initialValue":{"arguments":[{"id":770,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":713,"src":"23894:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":771,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"23928:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":772,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":725,"src":"23961:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":773,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"23991:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":774,"name":"POOL_MANAGER_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":750,"src":"24024:17:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":775,"name":"POOL_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":757,"src":"24066:15:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":769,"name":"Pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2319,"src":"23864:4:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Pool_$2319_storage_ptr_$","typeString":"type(struct IAllo.Pool storage pointer)"}},"id":776,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["23883:9:0","23918:8:0","23951:8:0","23984:5:0","24011:11:0","24055:9:0"],"names":["profileId","strategy","metadata","token","managerRole","adminRole"],"nodeType":"FunctionCall","src":"23864:228:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"23845:247:0"},{"expression":{"id":782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":778,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"24159:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":780,"indexExpression":{"id":779,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"24165:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24159:13:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":781,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":768,"src":"24175:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"src":"24159:20:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":783,"nodeType":"ExpressionStatement","src":"24159:20:0"},{"expression":{"arguments":[{"id":785,"name":"POOL_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":757,"src":"24250:15:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":786,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24267:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":787,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24271:6:0","memberName":"sender","nodeType":"MemberAccess","src":"24267:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":784,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"24239:10:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24239:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":789,"nodeType":"ExpressionStatement","src":"24239:39:0"},{"expression":{"arguments":[{"id":791,"name":"POOL_MANAGER_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":750,"src":"24351:17:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":792,"name":"POOL_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":757,"src":"24370:15:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":790,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"24337:13:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":793,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24337:49:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":794,"nodeType":"ExpressionStatement","src":"24337:49:0"},{"expression":{"arguments":[{"id":798,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"24562:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":799,"name":"_initStrategyData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":718,"src":"24570:17:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":795,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"24541:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24551:10:0","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":2939,"src":"24541:20:0","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (uint256,bytes memory) external"}},"id":800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24541:47:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":801,"nodeType":"ExpressionStatement","src":"24541:47:0"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":818,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":806,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":802,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"24603:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24613:9:0","memberName":"getPoolId","nodeType":"MemberAccess","referencedDeclaration":2876,"src":"24603:19:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":804,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24603:21:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":805,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"24628:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24603:31:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":809,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"24646:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24656:7:0","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":2870,"src":"24646:17:0","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":811,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24646:19:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}],"id":808,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24638:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":807,"name":"address","nodeType":"ElementaryTypeName","src":"24638:7:0","typeDescriptions":{}}},"id":812,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24638:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":815,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"24678:4:0","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}],"id":814,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24670:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":813,"name":"address","nodeType":"ElementaryTypeName","src":"24670:7:0","typeDescriptions":{}}},"id":816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24670:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"24638:45:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24603:80:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":822,"nodeType":"IfStatement","src":"24599:103:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":819,"name":"MISMATCH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3011,"src":"24692:8:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24692:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":821,"nodeType":"RevertStatement","src":"24685:17:0"}},{"assignments":[824],"declarations":[{"constant":false,"id":824,"mutability":"mutable","name":"managersLength","nameLocation":"24758:14:0","nodeType":"VariableDeclaration","scope":924,"src":"24750:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":823,"name":"uint256","nodeType":"ElementaryTypeName","src":"24750:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":827,"initialValue":{"expression":{"id":825,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":728,"src":"24775:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24785:6:0","memberName":"length","nodeType":"MemberAccess","src":"24775:16:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24750:41:0"},{"body":{"id":859,"nodeType":"Block","src":"24838:229:0","statements":[{"assignments":[835],"declarations":[{"constant":false,"id":835,"mutability":"mutable","name":"manager","nameLocation":"24860:7:0","nodeType":"VariableDeclaration","scope":859,"src":"24852:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":834,"name":"address","nodeType":"ElementaryTypeName","src":"24852:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":839,"initialValue":{"baseExpression":{"id":836,"name":"_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":728,"src":"24870:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":838,"indexExpression":{"id":837,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":829,"src":"24880:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24870:12:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"24852:30:0"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":840,"name":"manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":835,"src":"24900:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":843,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24919:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":842,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24911:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":841,"name":"address","nodeType":"ElementaryTypeName","src":"24911:7:0","typeDescriptions":{}}},"id":844,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24911:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"24900:21:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":849,"nodeType":"IfStatement","src":"24896:48:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":846,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"24930:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24930:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":848,"nodeType":"RevertStatement","src":"24923:21:0"}},{"expression":{"arguments":[{"id":851,"name":"POOL_MANAGER_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":750,"src":"24970:17:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":852,"name":"manager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":835,"src":"24989:7:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":850,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"24959:10:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":853,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24959:38:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":854,"nodeType":"ExpressionStatement","src":"24959:38:0"},{"id":858,"nodeType":"UncheckedBlock","src":"25011:46:0","statements":[{"expression":{"id":856,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"25039:3:0","subExpression":{"id":855,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":829,"src":"25041:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":857,"nodeType":"ExpressionStatement","src":"25039:3:0"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":833,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":831,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":829,"src":"24817:1:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":832,"name":"managersLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":824,"src":"24821:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24817:18:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":860,"initializationExpression":{"assignments":[829],"declarations":[{"constant":false,"id":829,"mutability":"mutable","name":"i","nameLocation":"24814:1:0","nodeType":"VariableDeclaration","scope":860,"src":"24806:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":828,"name":"uint256","nodeType":"ElementaryTypeName","src":"24806:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":830,"nodeType":"VariableDeclarationStatement","src":"24806:9:0"},"nodeType":"ForStatement","src":"24801:266:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":861,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25081:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":862,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25091:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25081:11:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":903,"nodeType":"IfStatement","src":"25077:554:0","trueBody":{"id":902,"nodeType":"Block","src":"25094:537:0","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":864,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"25359:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":865,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"25369:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"25359:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":867,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25380:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":868,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25390:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25380:17:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":870,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"25401:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25405:5:0","memberName":"value","nodeType":"MemberAccess","src":"25401:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25380:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":873,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25379:32:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25359:52:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":875,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25358:54:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":876,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"25417:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":877,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"25427:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"25417:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":879,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25437:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":880,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"25448:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25452:5:0","memberName":"value","nodeType":"MemberAccess","src":"25448:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25437:20:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25417:40:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":884,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25416:42:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25358:100:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":890,"nodeType":"IfStatement","src":"25354:164:0","trueBody":{"id":889,"nodeType":"Block","src":"25460:58:0","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":886,"name":"NOT_ENOUGH_FUNDS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3014,"src":"25485:16:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":887,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25485:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":888,"nodeType":"RevertStatement","src":"25478:25:0"}]}},{"expression":{"arguments":[{"id":892,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"25547:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":893,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"25555:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"id":894,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25565:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":891,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"25531:15:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":895,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25531:42:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":896,"nodeType":"ExpressionStatement","src":"25531:42:0"},{"eventCall":{"arguments":[{"id":898,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"25604:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":899,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"25612:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":897,"name":"BaseFeePaid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2360,"src":"25592:11:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":900,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25592:28:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":901,"nodeType":"EmitStatement","src":"25587:33:0"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":904,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25645:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":905,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25655:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25645:11:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":914,"nodeType":"IfStatement","src":"25641:79:0","trueBody":{"id":913,"nodeType":"Block","src":"25658:62:0","statements":[{"expression":{"arguments":[{"id":908,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25682:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":909,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"25691:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":910,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"25699:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":907,"name":"_fundPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1122,"src":"25672:9:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_contract$_IStrategy_$2969_$returns$__$","typeString":"function (uint256,uint256,contract IStrategy)"}},"id":911,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25672:37:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":912,"nodeType":"ExpressionStatement","src":"25672:37:0"}]}},{"eventCall":{"arguments":[{"id":916,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":731,"src":"25747:6:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":917,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":713,"src":"25755:10:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":918,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":716,"src":"25767:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},{"id":919,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":720,"src":"25778:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":920,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":722,"src":"25786:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":921,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":725,"src":"25795:9:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":915,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2336,"src":"25735:11:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_bytes32_$_t_contract$_IStrategy_$2969_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,bytes32,contract IStrategy,address,uint256,struct Metadata memory)"}},"id":922,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25735:70:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":923,"nodeType":"EmitStatement","src":"25730:75:0"}]},"documentation":{"id":711,"nodeType":"StructuredDocumentation","src":"22304:822:0","text":"@notice Creates a new pool.\n @dev This is an internal function that is called by the 'createPool()' & 'createPoolWithCustomStrategy()' functions\n It is used to create a new pool and is called by both functions. The 'msg.sender' must be a member or owner of\n a profile to create a pool.\n @param _profileId The ID of the profile of for pool creator in the registry\n @param _strategy The address of strategy\n @param _initStrategyData The data to initialize the strategy\n @param _token The address of the token that the pool is denominated in\n @param _amount The amount of the token to be deposited into the pool\n @param _metadata The 'Metadata' of the pool\n @param _managers The managers of the pool\n @return poolId The ID of the pool"},"implemented":true,"kind":"function","modifiers":[],"name":"_createPool","nameLocation":"23140:11:0","parameters":{"id":729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":713,"mutability":"mutable","name":"_profileId","nameLocation":"23169:10:0","nodeType":"VariableDeclaration","scope":925,"src":"23161:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":712,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23161:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":716,"mutability":"mutable","name":"_strategy","nameLocation":"23199:9:0","nodeType":"VariableDeclaration","scope":925,"src":"23189:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},"typeName":{"id":715,"nodeType":"UserDefinedTypeName","pathNode":{"id":714,"name":"IStrategy","nameLocations":["23189:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2969,"src":"23189:9:0"},"referencedDeclaration":2969,"src":"23189:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"visibility":"internal"},{"constant":false,"id":718,"mutability":"mutable","name":"_initStrategyData","nameLocation":"23231:17:0","nodeType":"VariableDeclaration","scope":925,"src":"23218:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":717,"name":"bytes","nodeType":"ElementaryTypeName","src":"23218:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":720,"mutability":"mutable","name":"_token","nameLocation":"23266:6:0","nodeType":"VariableDeclaration","scope":925,"src":"23258:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":719,"name":"address","nodeType":"ElementaryTypeName","src":"23258:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":722,"mutability":"mutable","name":"_amount","nameLocation":"23290:7:0","nodeType":"VariableDeclaration","scope":925,"src":"23282:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":721,"name":"uint256","nodeType":"ElementaryTypeName","src":"23282:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":725,"mutability":"mutable","name":"_metadata","nameLocation":"23323:9:0","nodeType":"VariableDeclaration","scope":925,"src":"23307:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":724,"nodeType":"UserDefinedTypeName","pathNode":{"id":723,"name":"Metadata","nameLocations":["23307:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"23307:8:0"},"referencedDeclaration":3098,"src":"23307:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":728,"mutability":"mutable","name":"_managers","nameLocation":"23359:9:0","nodeType":"VariableDeclaration","scope":925,"src":"23342:26:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":726,"name":"address","nodeType":"ElementaryTypeName","src":"23342:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":727,"nodeType":"ArrayTypeName","src":"23342:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"23151:223:0"},"returnParameters":{"id":732,"nodeType":"ParameterList","parameters":[{"constant":false,"id":731,"mutability":"mutable","name":"poolId","nameLocation":"23401:6:0","nodeType":"VariableDeclaration","scope":925,"src":"23393:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":730,"name":"uint256","nodeType":"ElementaryTypeName","src":"23393:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23392:16:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":947,"nodeType":"FunctionDefinition","src":"26159:151:0","nodes":[],"body":{"id":946,"nodeType":"Block","src":"26224:86:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":941,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":930,"src":"26285:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"expression":{"id":942,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"26292:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26296:6:0","memberName":"sender","nodeType":"MemberAccess","src":"26292:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"baseExpression":{"id":933,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"26234:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":935,"indexExpression":{"id":934,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":928,"src":"26240:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26234:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":936,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26249:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"26234:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26258:8:0","memberName":"allocate","nodeType":"MemberAccess","referencedDeclaration":2957,"src":"26234:32:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$__$","typeString":"function (bytes memory,address) payable external"}},"id":940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":938,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"26274:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":939,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26278:5:0","memberName":"value","nodeType":"MemberAccess","src":"26274:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"26234:50:0","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes_memory_ptr_$_t_address_$returns$__$value","typeString":"function (bytes memory,address) payable external"}},"id":944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26234:69:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":945,"nodeType":"ExpressionStatement","src":"26234:69:0"}]},"documentation":{"id":926,"nodeType":"StructuredDocumentation","src":"25818:336:0","text":"@notice Allocate to recipient(s).\n @dev Passes '_data' & 'msg.sender' through to the strategy for that pool.\n This is an internal function that is called by the 'allocate()' & 'batchAllocate()' functions.\n @param _poolId ID of the pool\n @param _data Encoded data unique to the strategy for that pool"},"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"26168:9:0","parameters":{"id":931,"nodeType":"ParameterList","parameters":[{"constant":false,"id":928,"mutability":"mutable","name":"_poolId","nameLocation":"26186:7:0","nodeType":"VariableDeclaration","scope":947,"src":"26178:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":927,"name":"uint256","nodeType":"ElementaryTypeName","src":"26178:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":930,"mutability":"mutable","name":"_data","nameLocation":"26208:5:0","nodeType":"VariableDeclaration","scope":947,"src":"26195:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":929,"name":"bytes","nodeType":"ElementaryTypeName","src":"26195:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26177:37:0"},"returnParameters":{"id":932,"nodeType":"ParameterList","parameters":[],"src":"26224:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1122,"nodeType":"FunctionDefinition","src":"26634:1879:0","nodes":[],"body":{"id":1121,"nodeType":"Block","src":"26717:1796:0","nodes":[],"statements":[{"assignments":[959],"declarations":[{"constant":false,"id":959,"mutability":"mutable","name":"feeAmount","nameLocation":"26735:9:0","nodeType":"VariableDeclaration","scope":1121,"src":"26727:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":958,"name":"uint256","nodeType":"ElementaryTypeName","src":"26727:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":960,"nodeType":"VariableDeclarationStatement","src":"26727:17:0"},{"assignments":[962],"declarations":[{"constant":false,"id":962,"mutability":"mutable","name":"amountAfterFee","nameLocation":"26762:14:0","nodeType":"VariableDeclaration","scope":1121,"src":"26754:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":961,"name":"uint256","nodeType":"ElementaryTypeName","src":"26754:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":964,"initialValue":{"id":963,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":950,"src":"26779:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26754:32:0"},{"assignments":[967],"declarations":[{"constant":false,"id":967,"mutability":"mutable","name":"pool","nameLocation":"26810:4:0","nodeType":"VariableDeclaration","scope":1121,"src":"26797:17:0","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":966,"nodeType":"UserDefinedTypeName","pathNode":{"id":965,"name":"Pool","nameLocations":["26797:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"26797:4:0"},"referencedDeclaration":2319,"src":"26797:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":971,"initialValue":{"baseExpression":{"id":968,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"26817:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":970,"indexExpression":{"id":969,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":952,"src":"26823:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26817:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"nodeType":"VariableDeclarationStatement","src":"26797:34:0"},{"assignments":[973],"declarations":[{"constant":false,"id":973,"mutability":"mutable","name":"_token","nameLocation":"26849:6:0","nodeType":"VariableDeclaration","scope":1121,"src":"26841:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":972,"name":"address","nodeType":"ElementaryTypeName","src":"26841:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":976,"initialValue":{"expression":{"id":974,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":967,"src":"26858:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool storage pointer"}},"id":975,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26863:5:0","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"26858:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"26841:27:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":979,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":977,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"26883:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":978,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26896:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"26883:14:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1050,"nodeType":"IfStatement","src":"26879:808:0","trueBody":{"id":1049,"nodeType":"Block","src":"26899:788:0","statements":[{"expression":{"id":988,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":980,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"26913:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":981,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":950,"src":"26926:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":982,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"26936:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26926:20:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":984,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"26925:22:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":985,"name":"getFeeDenominator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1276,"src":"26950:17:0","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_uint256_$","typeString":"function () pure returns (uint256)"}},"id":986,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26950:19:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26925:44:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26913:56:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":989,"nodeType":"ExpressionStatement","src":"26913:56:0"},{"expression":{"id":992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":990,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"26983:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":991,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27001:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26983:27:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":993,"nodeType":"ExpressionStatement","src":"26983:27:0"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":994,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27029:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":995,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"27041:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27029:26:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":997,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":950,"src":"27059:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27029:37:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1002,"nodeType":"IfStatement","src":"27025:59:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":999,"name":"INVALID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3008,"src":"27075:7:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27075:9:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1001,"nodeType":"RevertStatement","src":"27068:16:0"}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1005,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1003,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27103:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":1004,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"27113:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27103:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1047,"nodeType":"Block","src":"27254:423:0","statements":[{"assignments":[1018],"declarations":[{"constant":false,"id":1018,"mutability":"mutable","name":"balanceBeforeFee","nameLocation":"27280:16:0","nodeType":"VariableDeclaration","scope":1047,"src":"27272:24:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1017,"name":"uint256","nodeType":"ElementaryTypeName","src":"27272:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1023,"initialValue":{"arguments":[{"id":1020,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27311:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1021,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27319:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":1019,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"27299:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27299:29:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27272:56:0"},{"expression":{"arguments":[{"id":1025,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27366:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1027,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"27394:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27398:6:0","memberName":"sender","nodeType":"MemberAccess","src":"27394:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1029,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27410:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"id":1030,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27428:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1026,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"27374:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1031,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["27388:4:0","27406:2:0","27420:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"27374:65:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1024,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27346:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1032,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27346:94:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1033,"nodeType":"ExpressionStatement","src":"27346:94:0"},{"assignments":[1035],"declarations":[{"constant":false,"id":1035,"mutability":"mutable","name":"balanceAfterFee","nameLocation":"27466:15:0","nodeType":"VariableDeclaration","scope":1047,"src":"27458:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1034,"name":"uint256","nodeType":"ElementaryTypeName","src":"27458:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1040,"initialValue":{"arguments":[{"id":1037,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27496:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1038,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27504:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":1036,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"27484:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27484:29:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27458:55:0"},{"expression":{"id":1045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1041,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27616:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1042,"name":"balanceAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1035,"src":"27628:15:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":1043,"name":"balanceBeforeFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1018,"src":"27646:16:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27628:34:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27616:46:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1046,"nodeType":"ExpressionStatement","src":"27616:46:0"}]},"id":1048,"nodeType":"IfStatement","src":"27099:578:0","trueBody":{"id":1016,"nodeType":"Block","src":"27121:127:0","statements":[{"expression":{"arguments":[{"id":1007,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27159:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1009,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"27187:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27191:6:0","memberName":"sender","nodeType":"MemberAccess","src":"27187:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1011,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"27203:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"id":1012,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"27221:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1008,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"27167:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["27181:4:0","27199:2:0","27213:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"27167:65:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1006,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27139:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1014,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27139:94:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1015,"nodeType":"ExpressionStatement","src":"27139:94:0"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1053,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1051,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27701:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":1052,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"27711:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27701:16:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1107,"nodeType":"Block","src":"27889:501:0","statements":[{"assignments":[1069],"declarations":[{"constant":false,"id":1069,"mutability":"mutable","name":"balanceBeforeFundingPool","nameLocation":"27911:24:0","nodeType":"VariableDeclaration","scope":1107,"src":"27903:32:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1068,"name":"uint256","nodeType":"ElementaryTypeName","src":"27903:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1077,"initialValue":{"arguments":[{"id":1071,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27950:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1074,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"27966:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1073,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27958:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1072,"name":"address","nodeType":"ElementaryTypeName","src":"27958:7:0","typeDescriptions":{}}},"id":1075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27958:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1070,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"27938:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27938:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27903:74:0"},{"expression":{"arguments":[{"id":1079,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"28028:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1081,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"28056:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28060:6:0","memberName":"sender","nodeType":"MemberAccess","src":"28056:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1085,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"28080:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1084,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"28072:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1083,"name":"address","nodeType":"ElementaryTypeName","src":"28072:7:0","typeDescriptions":{}}},"id":1086,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28072:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1087,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28100:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1080,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"28036:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1088,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["28050:4:0","28068:2:0","28092:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"28036:80:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1078,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27991:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1089,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27991:139:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1090,"nodeType":"ExpressionStatement","src":"27991:139:0"},{"assignments":[1092],"declarations":[{"constant":false,"id":1092,"mutability":"mutable","name":"balanceAfterFundingPool","nameLocation":"28152:23:0","nodeType":"VariableDeclaration","scope":1107,"src":"28144:31:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1091,"name":"uint256","nodeType":"ElementaryTypeName","src":"28144:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1100,"initialValue":{"arguments":[{"id":1094,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"28190:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1097,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"28206:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1096,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"28198:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1095,"name":"address","nodeType":"ElementaryTypeName","src":"28198:7:0","typeDescriptions":{}}},"id":1098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28198:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1093,"name":"_getBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3316,"src":"28178:11:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":1099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28178:39:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"28144:73:0"},{"expression":{"id":1105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1101,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28312:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1102,"name":"balanceAfterFundingPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1092,"src":"28329:23:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":1103,"name":"balanceBeforeFundingPool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1069,"src":"28355:24:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28329:50:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28312:67:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1106,"nodeType":"ExpressionStatement","src":"28312:67:0"}]},"id":1108,"nodeType":"IfStatement","src":"27697:693:0","trueBody":{"id":1067,"nodeType":"Block","src":"27719:164:0","statements":[{"expression":{"arguments":[{"id":1055,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"27770:6:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":1057,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"27798:3:0","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27802:6:0","memberName":"sender","nodeType":"MemberAccess","src":"27798:10:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1061,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"27822:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1060,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27814:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1059,"name":"address","nodeType":"ElementaryTypeName","src":"27814:7:0","typeDescriptions":{}}},"id":1062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27814:18:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":1063,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"27842:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1056,"name":"TransferData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3124,"src":"27778:12:0","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_TransferData_$3124_storage_ptr_$","typeString":"type(struct Transfer.TransferData storage pointer)"}},"id":1064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["27792:4:0","27810:2:0","27834:6:0"],"names":["from","to","amount"],"nodeType":"FunctionCall","src":"27778:80:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_TransferData_$3124_memory_ptr","typeString":"struct Transfer.TransferData memory"}],"id":1054,"name":"_transferAmountFrom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3255,"src":"27733:19:0","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_struct$_TransferData_$3124_memory_ptr_$returns$_t_bool_$","typeString":"function (address,struct Transfer.TransferData memory) returns (bool)"}},"id":1065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27733:139:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1066,"nodeType":"ExpressionStatement","src":"27733:139:0"}]}},{"expression":{"arguments":[{"id":1112,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28429:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":1109,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":955,"src":"28400:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"id":1111,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28410:18:0","memberName":"increasePoolAmount","nodeType":"MemberAccess","referencedDeclaration":2908,"src":"28400:28:0","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256) external"}},"id":1113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28400:44:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1114,"nodeType":"ExpressionStatement","src":"28400:44:0"},{"eventCall":{"arguments":[{"id":1116,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":952,"src":"28471:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1117,"name":"amountAfterFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":962,"src":"28480:14:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1118,"name":"feeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":959,"src":"28496:9:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1115,"name":"PoolFunded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2353,"src":"28460:10:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256)"}},"id":1119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28460:46:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1120,"nodeType":"EmitStatement","src":"28455:51:0"}]},"documentation":{"id":948,"nodeType":"StructuredDocumentation","src":"26316:313:0","text":"@notice Fund a pool.\n @dev Deducts the fee and transfers the amount to the distribution strategy.\n Emits a 'PoolFunded' event.\n @param _amount The amount to transfer\n @param _poolId The 'poolId' for the pool you are funding\n @param _strategy The address of the strategy"},"implemented":true,"kind":"function","modifiers":[],"name":"_fundPool","nameLocation":"26643:9:0","parameters":{"id":956,"nodeType":"ParameterList","parameters":[{"constant":false,"id":950,"mutability":"mutable","name":"_amount","nameLocation":"26661:7:0","nodeType":"VariableDeclaration","scope":1122,"src":"26653:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":949,"name":"uint256","nodeType":"ElementaryTypeName","src":"26653:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":952,"mutability":"mutable","name":"_poolId","nameLocation":"26678:7:0","nodeType":"VariableDeclaration","scope":1122,"src":"26670:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":951,"name":"uint256","nodeType":"ElementaryTypeName","src":"26670:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":955,"mutability":"mutable","name":"_strategy","nameLocation":"26697:9:0","nodeType":"VariableDeclaration","scope":1122,"src":"26687:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},"typeName":{"id":954,"nodeType":"UserDefinedTypeName","pathNode":{"id":953,"name":"IStrategy","nameLocations":["26687:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2969,"src":"26687:9:0"},"referencedDeclaration":2969,"src":"26687:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"visibility":"internal"}],"src":"26652:55:0"},"returnParameters":{"id":957,"nodeType":"ParameterList","parameters":[],"src":"26717:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1135,"nodeType":"FunctionDefinition","src":"28898:132:0","nodes":[],"body":{"id":1134,"nodeType":"Block","src":"28976:54:0","nodes":[],"statements":[{"expression":{"baseExpression":{"id":1130,"name":"cloneableStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":63,"src":"28993:19:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":1132,"indexExpression":{"id":1131,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"29013:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28993:30:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1129,"id":1133,"nodeType":"Return","src":"28986:37:0"}]},"documentation":{"id":1123,"nodeType":"StructuredDocumentation","src":"28519:374:0","text":"@notice Checks if the strategy is an approved cloneable strategy.\n @dev Internal function used by createPoolwithCustomStrategy and createPool to\n determine if a strategy is in the cloneable strategy allow list.\n @param _strategy The address of the strategy\n @return This will return 'true' if the strategy is cloneable, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isCloneableStrategy","nameLocation":"28907:20:0","parameters":{"id":1126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1125,"mutability":"mutable","name":"_strategy","nameLocation":"28936:9:0","nodeType":"VariableDeclaration","scope":1135,"src":"28928:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1124,"name":"address","nodeType":"ElementaryTypeName","src":"28928:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"28927:19:0"},"returnParameters":{"id":1129,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1128,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1135,"src":"28970:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1127,"name":"bool","nodeType":"ElementaryTypeName","src":"28970:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28969:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":1154,"nodeType":"FunctionDefinition","src":"29346:153:0","nodes":[],"body":{"id":1153,"nodeType":"Block","src":"29432:67:0","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":1146,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"29457:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1148,"indexExpression":{"id":1147,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1138,"src":"29463:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29457:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":1149,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29472:9:0","memberName":"adminRole","nodeType":"MemberAccess","referencedDeclaration":2318,"src":"29457:24:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1150,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1140,"src":"29483:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1145,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"29449:7:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29449:43:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1144,"id":1152,"nodeType":"Return","src":"29442:50:0"}]},"documentation":{"id":1136,"nodeType":"StructuredDocumentation","src":"29036:305:0","text":"@notice Checks if the address is a pool admin\n @dev Internal function used to determine if an address is a pool admin\n @param _poolId The ID of the pool\n @param _address The address to check\n @return This will return 'true' if the address is a pool admin, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isPoolAdmin","nameLocation":"29355:12:0","parameters":{"id":1141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1138,"mutability":"mutable","name":"_poolId","nameLocation":"29376:7:0","nodeType":"VariableDeclaration","scope":1154,"src":"29368:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1137,"name":"uint256","nodeType":"ElementaryTypeName","src":"29368:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1140,"mutability":"mutable","name":"_address","nameLocation":"29393:8:0","nodeType":"VariableDeclaration","scope":1154,"src":"29385:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1139,"name":"address","nodeType":"ElementaryTypeName","src":"29385:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29367:35:0"},"returnParameters":{"id":1144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1143,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1154,"src":"29426:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1142,"name":"bool","nodeType":"ElementaryTypeName","src":"29426:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"29425:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":1178,"nodeType":"FunctionDefinition","src":"29821:192:0","nodes":[],"body":{"id":1177,"nodeType":"Block","src":"29909:104:0","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1175,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":1165,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"29934:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1167,"indexExpression":{"id":1166,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1157,"src":"29940:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29934:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":1168,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29949:11:0","memberName":"managerRole","nodeType":"MemberAccess","referencedDeclaration":2316,"src":"29934:26:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1169,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1159,"src":"29962:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1164,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"29926:7:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1170,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29926:45:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":1172,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1157,"src":"29988:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1173,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1159,"src":"29997:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1171,"name":"_isPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1154,"src":"29975:12:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":1174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29975:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"29926:80:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1163,"id":1176,"nodeType":"Return","src":"29919:87:0"}]},"documentation":{"id":1155,"nodeType":"StructuredDocumentation","src":"29505:311:0","text":"@notice Checks if the address is a pool manager\n @dev Internal function used to determine if an address is a pool manager\n @param _poolId The ID of the pool\n @param _address The address to check\n @return This will return 'true' if the address is a pool manager, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isPoolManager","nameLocation":"29830:14:0","parameters":{"id":1160,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1157,"mutability":"mutable","name":"_poolId","nameLocation":"29853:7:0","nodeType":"VariableDeclaration","scope":1178,"src":"29845:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1156,"name":"uint256","nodeType":"ElementaryTypeName","src":"29845:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1159,"mutability":"mutable","name":"_address","nameLocation":"29870:8:0","nodeType":"VariableDeclaration","scope":1178,"src":"29862:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1158,"name":"address","nodeType":"ElementaryTypeName","src":"29862:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29844:35:0"},"returnParameters":{"id":1163,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1162,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1178,"src":"29903:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1161,"name":"bool","nodeType":"ElementaryTypeName","src":"29903:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"29902:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":1205,"nodeType":"FunctionDefinition","src":"30226:203:0","nodes":[],"body":{"id":1204,"nodeType":"Block","src":"30279:150:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1184,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1181,"src":"30293:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1187,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30314:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1186,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"30306:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1185,"name":"address","nodeType":"ElementaryTypeName","src":"30306:7:0","typeDescriptions":{}}},"id":1188,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30306:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"30293:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1193,"nodeType":"IfStatement","src":"30289:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1190,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"30325:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30325:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1192,"nodeType":"RevertStatement","src":"30318:21:0"}},{"expression":{"id":1198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1194,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47,"src":"30350:8:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1196,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1181,"src":"30371:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1195,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"30361:9:0","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$2802_$","typeString":"type(contract IRegistry)"}},"id":1197,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30361:20:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"src":"30350:31:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":1199,"nodeType":"ExpressionStatement","src":"30350:31:0"},{"eventCall":{"arguments":[{"id":1201,"name":"_registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1181,"src":"30412:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1200,"name":"RegistryUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2380,"src":"30396:15:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":1202,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30396:26:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1203,"nodeType":"EmitStatement","src":"30391:31:0"}]},"documentation":{"id":1179,"nodeType":"StructuredDocumentation","src":"30019:202:0","text":"@notice Updates the registry address\n @dev Internal function used to update the registry address.\n Emits a RegistryUpdated event.\n @param _registry The new registry address"},"implemented":true,"kind":"function","modifiers":[],"name":"_updateRegistry","nameLocation":"30235:15:0","parameters":{"id":1182,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1181,"mutability":"mutable","name":"_registry","nameLocation":"30259:9:0","nodeType":"VariableDeclaration","scope":1205,"src":"30251:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1180,"name":"address","nodeType":"ElementaryTypeName","src":"30251:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30250:19:0"},"returnParameters":{"id":1183,"nodeType":"ParameterList","parameters":[],"src":"30279:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1230,"nodeType":"FunctionDefinition","src":"30642:199:0","nodes":[],"body":{"id":1229,"nodeType":"Block","src":"30703:138:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1211,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1208,"src":"30717:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1214,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30738:1:0","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1213,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"30730:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1212,"name":"address","nodeType":"ElementaryTypeName","src":"30730:7:0","typeDescriptions":{}}},"id":1215,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30730:10:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"30717:23:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1220,"nodeType":"IfStatement","src":"30713:50:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1217,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"30749:12:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1218,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30749:14:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1219,"nodeType":"RevertStatement","src":"30742:21:0"}},{"expression":{"id":1223,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1221,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"30774:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1222,"name":"_treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1208,"src":"30785:9:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"30774:20:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":1224,"nodeType":"ExpressionStatement","src":"30774:20:0"},{"eventCall":{"arguments":[{"id":1226,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"30825:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":1225,"name":"TreasuryUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2365,"src":"30809:15:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":1227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30809:25:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1228,"nodeType":"EmitStatement","src":"30804:30:0"}]},"documentation":{"id":1206,"nodeType":"StructuredDocumentation","src":"30435:202:0","text":"@notice Updates the treasury address\n @dev Internal function used to update the treasury address.\n Emits a TreasuryUpdated event.\n @param _treasury The new treasury address"},"implemented":true,"kind":"function","modifiers":[],"name":"_updateTreasury","nameLocation":"30651:15:0","parameters":{"id":1209,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1208,"mutability":"mutable","name":"_treasury","nameLocation":"30683:9:0","nodeType":"VariableDeclaration","scope":1230,"src":"30667:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":1207,"name":"address","nodeType":"ElementaryTypeName","src":"30667:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"30666:27:0"},"returnParameters":{"id":1210,"nodeType":"ParameterList","parameters":[],"src":"30703:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1252,"nodeType":"FunctionDefinition","src":"31041:198:0","nodes":[],"body":{"id":1251,"nodeType":"Block","src":"31098:141:0","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1238,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1236,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1233,"src":"31112:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"31653138","id":1237,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31126:4:0","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"value":"1e18"},"src":"31112:18:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1242,"nodeType":"IfStatement","src":"31108:44:0","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1239,"name":"INVALID_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3041,"src":"31139:11:0","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1240,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31139:13:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1241,"nodeType":"RevertStatement","src":"31132:20:0"}},{"expression":{"id":1245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1243,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"31163:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1244,"name":"_percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1233,"src":"31176:11:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"31163:24:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1246,"nodeType":"ExpressionStatement","src":"31163:24:0"},{"eventCall":{"arguments":[{"id":1248,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"31221:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1247,"name":"PercentFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2370,"src":"31203:17:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":1249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31203:29:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1250,"nodeType":"EmitStatement","src":"31198:34:0"}]},"documentation":{"id":1231,"nodeType":"StructuredDocumentation","src":"30847:189:0","text":"@notice Updates the fee percentage\n @dev Internal function used to update the percentage fee.\n Emits a PercentFeeUpdated event.\n @param _percentFee The new fee"},"implemented":true,"kind":"function","modifiers":[],"name":"_updatePercentFee","nameLocation":"31050:17:0","parameters":{"id":1234,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1233,"mutability":"mutable","name":"_percentFee","nameLocation":"31076:11:0","nodeType":"VariableDeclaration","scope":1252,"src":"31068:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1232,"name":"uint256","nodeType":"ElementaryTypeName","src":"31068:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31067:21:0"},"returnParameters":{"id":1235,"nodeType":"ParameterList","parameters":[],"src":"31098:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1267,"nodeType":"FunctionDefinition","src":"31426:125:0","nodes":[],"body":{"id":1266,"nodeType":"Block","src":"31477:74:0","nodes":[],"statements":[{"expression":{"id":1260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1258,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"31487:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1259,"name":"_baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1255,"src":"31497:8:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"31487:18:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1261,"nodeType":"ExpressionStatement","src":"31487:18:0"},{"eventCall":{"arguments":[{"id":1263,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"31536:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1262,"name":"BaseFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2375,"src":"31521:14:0","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":1264,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31521:23:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1265,"nodeType":"EmitStatement","src":"31516:28:0"}]},"documentation":{"id":1253,"nodeType":"StructuredDocumentation","src":"31245:176:0","text":"@notice Updates the base fee\n @dev Internal function used to update the base fee.\n Emits a BaseFeeUpdated event.\n @param _baseFee The new base fee"},"implemented":true,"kind":"function","modifiers":[],"name":"_updateBaseFee","nameLocation":"31435:14:0","parameters":{"id":1256,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1255,"mutability":"mutable","name":"_baseFee","nameLocation":"31458:8:0","nodeType":"VariableDeclaration","scope":1267,"src":"31450:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1254,"name":"uint256","nodeType":"ElementaryTypeName","src":"31450:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31449:18:0"},"returnParameters":{"id":1257,"nodeType":"ParameterList","parameters":[],"src":"31477:0:0"},"scope":1390,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":1276,"nodeType":"FunctionDefinition","src":"31788:103:0","nodes":[],"body":{"id":1275,"nodeType":"Block","src":"31863:28:0","nodes":[],"statements":[{"expression":{"hexValue":"31653138","id":1273,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31880:4:0","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"value":"1e18"},"functionReturnParameters":1272,"id":1274,"nodeType":"Return","src":"31873:11:0"}]},"baseFunctions":[2609],"documentation":{"id":1268,"nodeType":"StructuredDocumentation","src":"31657:126:0","text":"@notice Getter for the fee denominator\n @return FEE_DENOMINATOR The fee denominator is (1e18) which represents 100%"},"functionSelector":"f4e1fc41","implemented":true,"kind":"function","modifiers":[],"name":"getFeeDenominator","nameLocation":"31797:17:0","parameters":{"id":1269,"nodeType":"ParameterList","parameters":[],"src":"31814:2:0"},"returnParameters":{"id":1272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1271,"mutability":"mutable","name":"FEE_DENOMINATOR","nameLocation":"31846:15:0","nodeType":"VariableDeclaration","scope":1276,"src":"31838:23:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1270,"name":"uint256","nodeType":"ElementaryTypeName","src":"31838:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31837:25:0"},"scope":1390,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":1292,"nodeType":"FunctionDefinition","src":"32112:140:0","nodes":[],"body":{"id":1291,"nodeType":"Block","src":"32197:55:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":1287,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1279,"src":"32227:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1288,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1281,"src":"32236:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1286,"name":"_isPoolAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1154,"src":"32214:12:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":1289,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32214:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1285,"id":1290,"nodeType":"Return","src":"32207:38:0"}]},"baseFunctions":[2543],"documentation":{"id":1277,"nodeType":"StructuredDocumentation","src":"31897:210:0","text":"@notice Checks if the address is a pool admin.\n @param _poolId The ID of the pool\n @param _address The address to check\n @return 'true' if the address is a pool admin, otherwise 'false'"},"functionSelector":"ab3febc6","implemented":true,"kind":"function","modifiers":[],"name":"isPoolAdmin","nameLocation":"32121:11:0","parameters":{"id":1282,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1279,"mutability":"mutable","name":"_poolId","nameLocation":"32141:7:0","nodeType":"VariableDeclaration","scope":1292,"src":"32133:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1278,"name":"uint256","nodeType":"ElementaryTypeName","src":"32133:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1281,"mutability":"mutable","name":"_address","nameLocation":"32158:8:0","nodeType":"VariableDeclaration","scope":1292,"src":"32150:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1280,"name":"address","nodeType":"ElementaryTypeName","src":"32150:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"32132:35:0"},"returnParameters":{"id":1285,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1284,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1292,"src":"32191:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1283,"name":"bool","nodeType":"ElementaryTypeName","src":"32191:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32190:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1308,"nodeType":"FunctionDefinition","src":"32476:144:0","nodes":[],"body":{"id":1307,"nodeType":"Block","src":"32563:57:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":1303,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1295,"src":"32595:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1304,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1297,"src":"32604:8:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1302,"name":"_isPoolManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1178,"src":"32580:14:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_bool_$","typeString":"function (uint256,address) view returns (bool)"}},"id":1305,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32580:33:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1301,"id":1306,"nodeType":"Return","src":"32573:40:0"}]},"baseFunctions":[2553],"documentation":{"id":1293,"nodeType":"StructuredDocumentation","src":"32258:213:0","text":"@notice Checks if the address is a pool manager\n @param _poolId The ID of the pool\n @param _address The address to check\n @return 'true' if the address is a pool manager, otherwise 'false'"},"functionSelector":"29e40d4b","implemented":true,"kind":"function","modifiers":[],"name":"isPoolManager","nameLocation":"32485:13:0","parameters":{"id":1298,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1295,"mutability":"mutable","name":"_poolId","nameLocation":"32507:7:0","nodeType":"VariableDeclaration","scope":1308,"src":"32499:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1294,"name":"uint256","nodeType":"ElementaryTypeName","src":"32499:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1297,"mutability":"mutable","name":"_address","nameLocation":"32524:8:0","nodeType":"VariableDeclaration","scope":1308,"src":"32516:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1296,"name":"address","nodeType":"ElementaryTypeName","src":"32516:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"32498:35:0"},"returnParameters":{"id":1301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1300,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1308,"src":"32557:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1299,"name":"bool","nodeType":"ElementaryTypeName","src":"32557:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32556:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1325,"nodeType":"FunctionDefinition","src":"32753:126:0","nodes":[],"body":{"id":1324,"nodeType":"Block","src":"32823:56:0","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":1318,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"32848:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1320,"indexExpression":{"id":1319,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1311,"src":"32854:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32848:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"id":1321,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32863:8:0","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"32848:23:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":1317,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32840:7:0","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1316,"name":"address","nodeType":"ElementaryTypeName","src":"32840:7:0","typeDescriptions":{}}},"id":1322,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32840:32:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":1315,"id":1323,"nodeType":"Return","src":"32833:39:0"}]},"baseFunctions":[2569],"documentation":{"id":1309,"nodeType":"StructuredDocumentation","src":"32626:122:0","text":"@notice Getter for the strategy.\n @param _poolId The ID of the pool\n @return The address of the strategy"},"functionSelector":"cfc0cc34","implemented":true,"kind":"function","modifiers":[],"name":"getStrategy","nameLocation":"32762:11:0","parameters":{"id":1312,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1311,"mutability":"mutable","name":"_poolId","nameLocation":"32782:7:0","nodeType":"VariableDeclaration","scope":1325,"src":"32774:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1310,"name":"uint256","nodeType":"ElementaryTypeName","src":"32774:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32773:17:0"},"returnParameters":{"id":1315,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1314,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1325,"src":"32814:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1313,"name":"address","nodeType":"ElementaryTypeName","src":"32814:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"32813:9:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1334,"nodeType":"FunctionDefinition","src":"32977:91:0","nodes":[],"body":{"id":1333,"nodeType":"Block","src":"33034:34:0","nodes":[],"statements":[{"expression":{"id":1331,"name":"percentFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"33051:10:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":1330,"id":1332,"nodeType":"Return","src":"33044:17:0"}]},"baseFunctions":[2575],"documentation":{"id":1326,"nodeType":"StructuredDocumentation","src":"32885:87:0","text":"@notice Getter for fee percentage.\n @return The fee percentage (1e18 = 100%)"},"functionSelector":"4edbaadc","implemented":true,"kind":"function","modifiers":[],"name":"getPercentFee","nameLocation":"32986:13:0","parameters":{"id":1327,"nodeType":"ParameterList","parameters":[],"src":"32999:2:0"},"returnParameters":{"id":1330,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1329,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1334,"src":"33025:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1328,"name":"uint256","nodeType":"ElementaryTypeName","src":"33025:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33024:9:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1343,"nodeType":"FunctionDefinition","src":"33140:85:0","nodes":[],"body":{"id":1342,"nodeType":"Block","src":"33194:31:0","nodes":[],"statements":[{"expression":{"id":1340,"name":"baseFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"33211:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":1339,"id":1341,"nodeType":"Return","src":"33204:14:0"}]},"baseFunctions":[2581],"documentation":{"id":1335,"nodeType":"StructuredDocumentation","src":"33074:61:0","text":"@notice Getter for base fee.\n @return The base fee"},"functionSelector":"15e812ad","implemented":true,"kind":"function","modifiers":[],"name":"getBaseFee","nameLocation":"33149:10:0","parameters":{"id":1336,"nodeType":"ParameterList","parameters":[],"src":"33159:2:0"},"returnParameters":{"id":1339,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1338,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1343,"src":"33185:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1337,"name":"uint256","nodeType":"ElementaryTypeName","src":"33185:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33184:9:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1352,"nodeType":"FunctionDefinition","src":"33313:95:0","nodes":[],"body":{"id":1351,"nodeType":"Block","src":"33376:32:0","nodes":[],"statements":[{"expression":{"id":1349,"name":"treasury","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":43,"src":"33393:8:0","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"functionReturnParameters":1348,"id":1350,"nodeType":"Return","src":"33386:15:0"}]},"baseFunctions":[2587],"documentation":{"id":1344,"nodeType":"StructuredDocumentation","src":"33231:77:0","text":"@notice Getter for treasury address.\n @return The treasury address"},"functionSelector":"3b19e84a","implemented":true,"kind":"function","modifiers":[],"name":"getTreasury","nameLocation":"33322:11:0","parameters":{"id":1345,"nodeType":"ParameterList","parameters":[],"src":"33333:2:0"},"returnParameters":{"id":1348,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1347,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1352,"src":"33359:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":1346,"name":"address","nodeType":"ElementaryTypeName","src":"33359:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"33358:17:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1362,"nodeType":"FunctionDefinition","src":"33488:89:0","nodes":[],"body":{"id":1361,"nodeType":"Block","src":"33545:32:0","nodes":[],"statements":[{"expression":{"id":1359,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":47,"src":"33562:8:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"functionReturnParameters":1358,"id":1360,"nodeType":"Return","src":"33555:15:0"}]},"baseFunctions":[2594],"documentation":{"id":1353,"nodeType":"StructuredDocumentation","src":"33414:69:0","text":"@notice Getter for registry.\n @return The registry address"},"functionSelector":"5ab1bd53","implemented":true,"kind":"function","modifiers":[],"name":"getRegistry","nameLocation":"33497:11:0","parameters":{"id":1354,"nodeType":"ParameterList","parameters":[],"src":"33508:2:0"},"returnParameters":{"id":1358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1357,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1362,"src":"33534:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":1356,"nodeType":"UserDefinedTypeName","pathNode":{"id":1355,"name":"IRegistry","nameLocations":["33534:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"33534:9:0"},"referencedDeclaration":2802,"src":"33534:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"}],"src":"33533:11:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1375,"nodeType":"FunctionDefinition","src":"33760:132:0","nodes":[],"body":{"id":1374,"nodeType":"Block","src":"33837:55:0","nodes":[],"statements":[{"expression":{"arguments":[{"id":1371,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1365,"src":"33875:9:0","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1370,"name":"_isCloneableStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1135,"src":"33854:20:0","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":1372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33854:31:0","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1369,"id":1373,"nodeType":"Return","src":"33847:38:0"}]},"baseFunctions":[2561],"documentation":{"id":1363,"nodeType":"StructuredDocumentation","src":"33583:172:0","text":"@notice Getter for if strategy is cloneable.\n @param _strategy The address of the strategy\n @return 'true' if the strategy is cloneable, otherwise 'false'"},"functionSelector":"ab2ec589","implemented":true,"kind":"function","modifiers":[],"name":"isCloneableStrategy","nameLocation":"33769:19:0","parameters":{"id":1366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1365,"mutability":"mutable","name":"_strategy","nameLocation":"33797:9:0","nodeType":"VariableDeclaration","scope":1375,"src":"33789:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1364,"name":"address","nodeType":"ElementaryTypeName","src":"33789:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"33788:19:0"},"returnParameters":{"id":1369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1368,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1375,"src":"33831:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1367,"name":"bool","nodeType":"ElementaryTypeName","src":"33831:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"33830:6:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1389,"nodeType":"FunctionDefinition","src":"34013:108:0","nodes":[],"body":{"id":1388,"nodeType":"Block","src":"34083:38:0","nodes":[],"statements":[{"expression":{"baseExpression":{"id":1384,"name":"pools","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58,"src":"34100:5:0","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Pool_$2319_storage_$","typeString":"mapping(uint256 => struct IAllo.Pool storage ref)"}},"id":1386,"indexExpression":{"id":1385,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1378,"src":"34106:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34100:14:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage","typeString":"struct IAllo.Pool storage ref"}},"functionReturnParameters":1383,"id":1387,"nodeType":"Return","src":"34093:21:0"}]},"baseFunctions":[2603],"documentation":{"id":1376,"nodeType":"StructuredDocumentation","src":"33898:110:0","text":"@notice Getter for the 'Pool'.\n @param _poolId The ID of the pool\n @return The 'Pool' struct"},"functionSelector":"068bcd8d","implemented":true,"kind":"function","modifiers":[],"name":"getPool","nameLocation":"34022:7:0","parameters":{"id":1379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1378,"mutability":"mutable","name":"_poolId","nameLocation":"34038:7:0","nodeType":"VariableDeclaration","scope":1389,"src":"34030:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1377,"name":"uint256","nodeType":"ElementaryTypeName","src":"34030:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"34029:17:0"},"returnParameters":{"id":1383,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1382,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1389,"src":"34070:11:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":1381,"nodeType":"UserDefinedTypeName","pathNode":{"id":1380,"name":"Pool","nameLocations":["34070:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"34070:4:0"},"referencedDeclaration":2319,"src":"34070:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"src":"34069:13:0"},"scope":1390,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":16,"name":"IAllo","nameLocations":["5097:5:0"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"5097:5:0"},"id":17,"nodeType":"InheritanceSpecifier","src":"5097:5:0"},{"baseName":{"id":18,"name":"Native","nameLocations":["5108:6:0"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"5108:6:0"},"id":19,"nodeType":"InheritanceSpecifier","src":"5108:6:0"},{"baseName":{"id":20,"name":"Transfer","nameLocations":["5120:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":3317,"src":"5120:8:0"},"id":21,"nodeType":"InheritanceSpecifier","src":"5120:8:0"},{"baseName":{"id":22,"name":"Initializable","nameLocations":["5134:13:0"],"nodeType":"IdentifierPath","referencedDeclaration":53152,"src":"5134:13:0"},"id":23,"nodeType":"InheritanceSpecifier","src":"5134:13:0"},{"baseName":{"id":24,"name":"Ownable","nameLocations":["5153:7:0"],"nodeType":"IdentifierPath","referencedDeclaration":4095,"src":"5153:7:0"},"id":25,"nodeType":"InheritanceSpecifier","src":"5153:7:0"},{"baseName":{"id":26,"name":"AccessControlUpgradeable","nameLocations":["5166:24:0"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"5166:24:0"},"id":27,"nodeType":"InheritanceSpecifier","src":"5166:24:0"},{"baseName":{"id":28,"name":"ReentrancyGuardUpgradeable","nameLocations":["5196:26:0"],"nodeType":"IdentifierPath","referencedDeclaration":53237,"src":"5196:26:0"},"id":29,"nodeType":"InheritanceSpecifier","src":"5196:26:0"},{"baseName":{"id":30,"name":"Errors","nameLocations":["5228:6:0"],"nodeType":"IdentifierPath","referencedDeclaration":3089,"src":"5228:6:0"},"id":31,"nodeType":"InheritanceSpecifier","src":"5228:6:0"}],"canonicalName":"Allo","contractDependencies":[],"contractKind":"contract","documentation":{"id":15,"nodeType":"StructuredDocumentation","src":"4725:351:0","text":"@title Allo\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice This contract is used to create & manage pools as well as manage the protocol.\n @dev The contract must be initialized with the 'initialize()' function."},"fullyImplemented":true,"linearizedBaseContracts":[1390,3089,53237,52697,53970,53982,52770,53696,4095,53152,3317,3106,2610],"name":"Allo","nameLocation":"5085:4:0","scope":1391,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,3929,3932,3935]}],"license":"AGPL-3.0-only"},"id":0} \ No newline at end of file diff --git a/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json b/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json index 90266a24..a677d0ca 100644 --- a/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json +++ b/pkg/contracts/out/CVStrategyHelpers.sol/CVStrategyHelpers.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"DECIMALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PERCENTAGE_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"_calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getParams","inputs":[{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"stateMutability":"pure"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"metadata","inputs":[],"outputs":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"poolProfile_id1","inputs":[{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"pool_admin","type":"address","internalType":"address"},{"name":"pool_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x60016080908152610120604052602e60c081815260a09162001d4160e0399052805160099081556020820151600a906200003a9082620000f6565b5050503480156200004a57600080fd5b50620001c2565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007c57607f821691505b6020821081036200009d57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f157600081815260208120601f850160051c81016020861015620000cc5750805b601f850160051c820191505b81811015620000ed57828155600101620000d8565b5050505b505050565b81516001600160401b0381111562000112576200011262000051565b6200012a8162000123845462000067565b84620000a3565b602080601f831160018114620001625760008415620001495750858301515b600019600386901b1c1916600185901b178555620000ed565b600085815260208120601f198616915b82811015620001935788860151825594840194600190910190840162000172565b5085821015620001b25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611b6f80620001d26000396000f3fe608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea2646970667358221220b7549f59d28ae8e47deced734799a7fc1ffa231b8c551216ad7ec26f525084c364736f6c63430008130033516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","sourceMap":"1014:1:125:-:0;914:5508;994:82;;;;914:5508;994:82;;;;;;;;;;;;;967:109;;;;;;;;;;;;;;;;:::i;:::-;;;;914:5508;;;;;;;;;;;;14:127:131;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:380;225:1;221:12;;;;268;;;289:61;;343:4;335:6;331:17;321:27;;289:61;396:2;388:6;385:14;365:18;362:38;359:161;;442:10;437:3;433:20;430:1;423:31;477:4;474:1;467:15;505:4;502:1;495:15;359:161;;146:380;;;:::o;657:545::-;759:2;754:3;751:11;748:448;;;795:1;820:5;816:2;809:17;865:4;861:2;851:19;935:2;923:10;919:19;916:1;912:27;906:4;902:38;971:4;959:10;956:20;953:47;;;-1:-1:-1;994:4:131;953:47;1049:2;1044:3;1040:12;1037:1;1033:20;1027:4;1023:31;1013:41;;1104:82;1122:2;1115:5;1112:13;1104:82;;;1167:17;;;1148:1;1137:13;1104:82;;;1108:3;;;748:448;657:545;;;:::o;1378:1352::-;1498:10;;-1:-1:-1;;;;;1520:30:131;;1517:56;;;1553:18;;:::i;:::-;1582:97;1672:6;1632:38;1664:4;1658:11;1632:38;:::i;:::-;1626:4;1582:97;:::i;:::-;1734:4;;1798:2;1787:14;;1815:1;1810:663;;;;2517:1;2534:6;2531:89;;;-1:-1:-1;2586:19:131;;;2580:26;2531:89;-1:-1:-1;;1335:1:131;1331:11;;;1327:24;1323:29;1313:40;1359:1;1355:11;;;1310:57;2633:81;;1780:944;;1810:663;604:1;597:14;;;641:4;628:18;;-1:-1:-1;;1846:20:131;;;1964:236;1978:7;1975:1;1972:14;1964:236;;;2067:19;;;2061:26;2046:42;;2159:27;;;;2127:1;2115:14;;;;1994:19;;1964:236;;;1968:3;2228:6;2219:7;2216:19;2213:201;;;2289:19;;;2283:26;-1:-1:-1;;2372:1:131;2368:14;;;2384:3;2364:24;2360:37;2356:42;2341:58;2326:74;;2213:201;-1:-1:-1;;;;;2460:1:131;2444:14;;;2440:22;2427:36;;-1:-1:-1;1378:1352:131:o;:::-;914:5508:125;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea2646970667358221220b7549f59d28ae8e47deced734799a7fc1ffa231b8c551216ad7ec26f525084c364736f6c63430008130033","sourceMap":"914:5508:125:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;287:32:131;;;269:51;;257:2;242:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;3126:109;;;:::i;2554:113::-;;;:::i;1105:43:125:-;;1140:8;1105:43;;;;;477:25:131;;;465:2;450:18;1105:43:125;331:177:131;1503:437:125;;;;;;:::i;:::-;;:::i;967:109::-;;;:::i;:::-;;;;;;;;:::i;1154:50::-;;1197:7;1154:50;;1331:118:15;;;:::i;:::-;;;;;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;1876:107::-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;2673:113::-;;;:::i;439:101::-;;;:::i;4608:578:125:-;;;;;;:::i;:::-;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;4412:75:9:-;;4445:42;4412:75;;3604:241:15;;;:::i;3938:101::-;;;:::i;1946:1182:125:-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1644:113:15:-;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;3134:1468:125:-;;;;;;:::i;:::-;;:::i;6040:380::-;;;;;;:::i;:::-;;:::i;3241:119:15:-;;;:::i;1763:107::-;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;1503:437:125:-;1675:16;;1648:7;;1671:230;;1801:48;;;;;;;;1821:1;1801:48;;;;;;;;;;;;-1:-1:-1;;;1801:48:125;;;;;;;;;;;1740:150;;-1:-1:-1;;;1740:150:125;;-1:-1:-1;;;;;1740:22:125;;;;;:150;;1780:1;;1851:10;;1863:13;;1740:150;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1721:16;:169;1671:230;-1:-1:-1;1917:16:125;;1503:437;;;;;:::o;967:109::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;1876:107::-;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;4608:578:125:-;4899:14;4932:247;4956:4;4974:8;4996:17;5027:8;5049:5;5068:12;5094:11;5119:20;;;;;;;;5137:1;5119:20;;;5153:16;4932:10;:247::i;:::-;4925:254;4608:578;-1:-1:-1;;;;;;;;;4608:578:125:o;1537:101:15:-;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3604:241::-;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;1946:1182:125:-;2191:44;;:::i;:::-;2322:30;2336:15;2322:13;:30::i;:::-;2298:15;;:21;;:54;2406:24;2420:9;2406:13;:24::i;:::-;2379:15;;:51;2484:26;2498:11;2484:13;:26::i;:::-;2459:15;;:22;;;;:51;;;;2541:15;;2578:9;2541:34;;;;:46;-1:-1:-1;;;;;2604:44:125;;:24;;;:44;2658:19;;2680:12;2658:34;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2702:18:125;;;2723:11;2702:32;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2749:21:125;;;:26;2745:182;;2902:14;1140:8;2902:3;:14;:::i;:::-;2878:38;;2745:182;2936:18;;;:32;;;2978:23;;;:42;;;3056:16;;;3070:1;3056:16;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3030:23:125;;;:42;;;3082:26;;3119:1;;3030:42;3119:1;;3082:26;;;;:::i;:::-;;;;;;:39;-1:-1:-1;;;;;3082:39:125;;;-1:-1:-1;;;;;3082:39:125;;;;;1946:1182;;;;;;;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;3134:1468:125:-;3471:14;3548:44;3607:86;3617:17;3636:12;3650:11;3663;3676:16;3607:9;:86::i;:::-;3738:16;;;3752:1;3738:16;;;;;;;;3548:145;;-1:-1:-1;3704:31:125;;3738:16;;;;;;;;;;;;-1:-1:-1;3738:16:125;3704:50;;3792:4;3764:14;3779:1;3764:17;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;3764:33:125;;;-1:-1:-1;;;;;3764:33:125;;;;;3835:10;3807:14;3822:1;3807:17;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3807:39:125;;;:17;;;;;;;;;:39;4445:42:9;;4133:19:125;;;4129:64;;-1:-1:-1;4177:5:125;4129:64;4211:4;-1:-1:-1;;;;;4211:33:125;;4299:55;4315:8;4325:12;:10;:12::i;:::-;4339:14;4299:15;:55::i;:::-;4376:8;4410:6;4399:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;4431:6;4451:1;4466:8;4488:14;4211:301;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4202:310;;4582:12;4530:64;;;;;;;;:::i;:::-;4553:8;-1:-1:-1;;;;;4530:46:125;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:64;;;;;;;;:::i;:::-;;4523:72;;;;:::i;:::-;3487:1115;;;3134:1468;;;;;;;;;;;:::o;6040:380::-;6190:7;6225:11;6190:7;6266:27;6271:18;1381:7;6281:3;6272:12;;;6271:18;:::i;:::-;6291:1;6266:4;:27::i;:::-;6246:47;-1:-1:-1;6410:3:125;-1:-1:-1;;;6383:9:125;6387:5;1381:7;6383:9;:::i;:::-;6358:19;6368:9;-1:-1:-1;;;6358:19:125;:::i;:::-;6340:14;1381:7;6340:10;:14;:::i;:::-;:38;;;;:::i;:::-;6339:54;;;;:::i;:::-;6313:21;6325:9;6313;:21;:::i;:::-;6312:82;;;;:::i;:::-;6311:94;;;;:::i;:::-;6310:103;;;6040:380;-1:-1:-1;;;;;;;6040:380:125:o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;5192:114:125:-;5255:7;5281:18;5291:8;5281:7;:18;:::i;:::-;5274:25;5192:114;-1:-1:-1;;5192:114:125:o;5587:447::-;5648:15;-1:-1:-1;;;5683:2:125;:12;5675:53;;;;-1:-1:-1;;;5675:53:125;;18530:2:131;5675:53:125;;;18512:21:131;18569:2;18549:18;;;18542:30;-1:-1:-1;;;18588:18:131;;;18581:58;18656:18;;5675:53:125;;;;;;;;;-1:-1:-1;;;;5750:2:125;5774;5813:215;5820:5;;5813:215;;5845:1;5849;5845:5;5854:1;5845:10;5841:177;;5879:10;5884:1;5887;5879:4;:10::i;:::-;5875:14;-1:-1:-1;5913:1:125;5907:7;5813:215;;5841:177;5963:16;5968:7;5977:1;5963:4;:16::i;:::-;5953:26;-1:-1:-1;5997:6:125;6002:1;5997:6;;:::i;:::-;;;5813:215;;;5665:369;;5587:447;;;;:::o;20158:242:23:-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;477:25:131;;;20293:33:23;-1:-1:-1;20344:7:23;;;;450:18:131;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;5312:269:125:-;5373:15;-1:-1:-1;;;5408:2:125;:13;;5400:66;;;;-1:-1:-1;;;5400:66:125;;19770:2:131;5400:66:125;;;19752:21:131;19809:2;19789:18;;;19782:30;19848:34;19828:18;;;19821:62;-1:-1:-1;;;19899:18:131;;;19892:38;19947:19;;5400:66:125;19568:404:131;5400:66:125;-1:-1:-1;;;5484:2:125;:12;5476:53;;;;-1:-1:-1;;;5476:53:125;;20179:2:131;5476:53:125;;;20161:21:131;20218:2;20198:18;;;20191:30;-1:-1:-1;;;20237:18:131;;;20230:58;20305:18;;5476:53:125;19977:352:131;5476:53:125;5571:3;-1:-1:-1;;;5548:7:125;5553:2;5548;:7;:::i;:::-;5547:19;;;;:::i;:::-;5546:28;;;5312:269;-1:-1:-1;;;5312:269:125:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:104:131:-;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;513:142::-;-1:-1:-1;;;;;599:31:131;;589:42;;579:70;;645:1;642;635:12;579:70;513:142;:::o;660:127::-;721:10;716:3;712:20;709:1;702:31;752:4;749:1;742:15;776:4;773:1;766:15;792:275;863:2;857:9;928:2;909:13;;-1:-1:-1;;905:27:131;893:40;;-1:-1:-1;;;;;948:34:131;;984:22;;;945:62;942:88;;;1010:18;;:::i;:::-;1046:2;1039:22;792:275;;-1:-1:-1;792:275:131:o;1072:1354::-;1192:6;1200;1208;1261:2;1249:9;1240:7;1236:23;1232:32;1229:52;;;1277:1;1274;1267:12;1229:52;1316:9;1303:23;1335:42;1371:5;1335:42;:::i;:::-;1396:5;-1:-1:-1;1420:2:131;1459:18;;;1446:32;1487:44;1446:32;1487:44;:::i;:::-;1550:7;-1:-1:-1;1608:2:131;1593:18;;1580:32;-1:-1:-1;;;;;1661:14:131;;;1658:34;;;1688:1;1685;1678:12;1658:34;1726:6;1715:9;1711:22;1701:32;;1771:7;1764:4;1760:2;1756:13;1752:27;1742:55;;1793:1;1790;1783:12;1742:55;1829:2;1816:16;1851:2;1847;1844:10;1841:36;;;1857:18;;:::i;:::-;1903:2;1900:1;1896:10;1886:20;;1926:28;1950:2;1946;1942:11;1926:28;:::i;:::-;1988:15;;;2058:11;;;2054:20;;;2019:12;;;;2086:19;;;2083:39;;;2118:1;2115;2108:12;2083:39;2142:11;;;;2162:234;2178:6;2173:3;2170:15;2162:234;;;2260:3;2247:17;2232:32;;2277:44;2313:7;2277:44;:::i;:::-;2334:20;;;2195:12;;;;2374;;;;2162:234;;;2415:5;2405:15;;;;;;;;1072:1354;;;;;:::o;2768:250::-;2853:1;2863:113;2877:6;2874:1;2871:13;2863:113;;;2953:11;;;2947:18;2934:11;;;2927:39;2899:2;2892:10;2863:113;;;-1:-1:-1;;3010:1:131;2992:16;;2985:27;2768:250::o;3023:271::-;3065:3;3103:5;3097:12;3130:6;3125:3;3118:19;3146:76;3215:6;3208:4;3203:3;3199:14;3192:4;3185:5;3181:16;3146:76;:::i;:::-;3276:2;3255:15;-1:-1:-1;;3251:29:131;3242:39;;;;3283:4;3238:50;;3023:271;-1:-1:-1;;3023:271:131:o;3299:291::-;3476:6;3465:9;3458:25;3519:2;3514;3503:9;3499:18;3492:30;3439:4;3539:45;3580:2;3569:9;3565:18;3557:6;3539:45;:::i;:::-;3531:53;3299:291;-1:-1:-1;;;;3299:291:131:o;3595:461::-;3648:3;3686:5;3680:12;3713:6;3708:3;3701:19;3739:4;3768:2;3763:3;3759:12;3752:19;;3805:2;3798:5;3794:14;3826:1;3836:195;3850:6;3847:1;3844:13;3836:195;;;3915:13;;-1:-1:-1;;;;;3911:39:131;3899:52;;3971:12;;;;4006:15;;;;3947:1;3865:9;3836:195;;;-1:-1:-1;4047:3:131;;3595:461;-1:-1:-1;;;;;3595:461:131:o;4061:261::-;4240:2;4229:9;4222:21;4203:4;4260:56;4312:2;4301:9;4297:18;4289:6;4260:56;:::i;:::-;4252:64;4061:261;-1:-1:-1;;;4061:261:131:o;4327:111::-;4412:1;4405:5;4402:12;4392:40;;4428:1;4425;4418:12;4443:152;4520:20;;4569:1;4559:12;;4549:40;;4585:1;4582;4575:12;4549:40;4443:152;;;:::o;4600:917::-;4663:5;4711:4;4699:9;4694:3;4690:19;4686:30;4683:50;;;4729:1;4726;4719:12;4683:50;4762:2;4756:9;4804:4;4792:17;;-1:-1:-1;;;;;4824:34:131;;4860:22;;;4821:62;4818:88;;;4886:18;;:::i;:::-;4922:2;4915:22;4955:6;-1:-1:-1;4955:6:131;4985:23;;5017:44;4985:23;5017:44;:::i;:::-;5070:23;;5145:2;5130:18;;5117:32;5158:44;5117:32;5158:44;:::i;:::-;5235:7;5230:2;5222:6;5218:15;5211:32;;5304:2;5293:9;5289:18;5276:32;5271:2;5263:6;5259:15;5252:57;5370:2;5359:9;5355:18;5342:32;5337:2;5329:6;5325:15;5318:57;5437:3;5426:9;5422:19;5409:33;5403:3;5395:6;5391:16;5384:59;5505:3;5494:9;5490:19;5477:33;5471:3;5463:6;5459:16;5452:59;;4600:917;;;;:::o;5522:1305::-;5745:6;5753;5761;5769;5777;5785;5793;5801;5854:3;5842:9;5833:7;5829:23;5825:33;5822:53;;;5871:1;5868;5861:12;5822:53;5910:9;5897:23;5929:42;5965:5;5929:42;:::i;:::-;5990:5;-1:-1:-1;6047:2:131;6032:18;;6019:32;6060:44;6019:32;6060:44;:::i;:::-;6123:7;-1:-1:-1;6182:2:131;6167:18;;6154:32;6195:44;6154:32;6195:44;:::i;:::-;6258:7;-1:-1:-1;6317:2:131;6302:18;;6289:32;6330:44;6289:32;6330:44;:::i;:::-;6393:7;-1:-1:-1;6452:3:131;6437:19;;6424:33;6466:44;6424:33;6466:44;:::i;:::-;6529:7;-1:-1:-1;6588:3:131;6573:19;;6560:33;6602:43;6560:33;6602:43;:::i;:::-;6664:7;-1:-1:-1;6690:48:131;6733:3;6718:19;;6690:48;:::i;:::-;6680:58;;6757:64;6813:7;6807:3;6796:9;6792:19;6757:64;:::i;:::-;6747:74;;5522:1305;;;;;;;;;;;:::o;6832:416::-;6896:5;6944:4;6932:9;6927:3;6923:19;6919:30;6916:50;;;6962:1;6959;6952:12;6916:50;6995:2;6989:9;7037:4;7025:17;;-1:-1:-1;;;;;7057:34:131;;7093:22;;;7054:62;7051:88;;;7119:18;;:::i;:::-;7155:2;7148:22;7218:23;;7203:39;;-1:-1:-1;7188:6:131;6832:416;-1:-1:-1;6832:416:131:o;7253:799::-;7454:6;7462;7470;7478;7486;7539:3;7527:9;7518:7;7514:23;7510:33;7507:53;;;7556:1;7553;7546:12;7507:53;7595:9;7582:23;7614:42;7650:5;7614:42;:::i;:::-;7675:5;-1:-1:-1;7732:2:131;7717:18;;7704:32;7745:43;7704:32;7745:43;:::i;:::-;7807:7;-1:-1:-1;7833:47:131;7876:2;7861:18;;7833:47;:::i;:::-;7823:57;;7899:64;7955:7;7950:2;7939:9;7935:18;7899:64;:::i;:::-;7889:74;;7982:64;8038:7;8032:3;8021:9;8017:19;7982:64;:::i;:::-;7972:74;;7253:799;;;;;;;;:::o;8057:127::-;8118:10;8113:3;8109:20;8106:1;8099:31;8149:4;8146:1;8139:15;8173:4;8170:1;8163:15;8189:143;8273:1;8266:5;8263:12;8253:46;;8279:18;;:::i;:::-;8308;;8189:143::o;8337:142::-;8420:1;8413:5;8410:12;8400:46;;8426:18;;:::i;9498:1444::-;9725:2;9714:9;9707:21;9688:4;9753:6;9747:13;9802:2;9796:9;9791:2;9780:9;9776:18;9769:37;9856:2;9852;9848:11;9842:18;9837:2;9826:9;9822:18;9815:46;9911:2;9907;9903:11;9897:18;9892:2;9881:9;9877:18;9870:46;9967:2;9963;9959:11;9953:18;9947:3;9936:9;9932:19;9925:47;;10019:2;10011:6;10007:15;10001:22;10032:63;10090:3;10079:9;10075:19;10061:12;10032:63;:::i;:::-;;10144:2;10136:6;10132:15;10126:22;10157:64;10216:3;10205:9;10201:19;10185:14;10157:64;:::i;:::-;-1:-1:-1;10270:2:131;10258:15;;;10252:22;8559:12;10350:3;10335:19;;8547:25;10404:3;10392:16;;;10386:23;8703:12;;-1:-1:-1;;;;;8699:21:131;;;10484:3;10469:19;;8687:34;8774:4;8763:16;;8757:23;8753:32;8737:14;;;8730:56;8835:4;8824:16;;8818:23;8802:14;;;8795:47;8880:16;;;8874:23;8858:14;;;8851:47;8936:16;;8930:23;8914:14;;;8907:47;8667:3;8992:16;;;8986:23;8970:14;;;8963:47;10526:16;;10520:23;10552:55;10602:3;10587:19;;10520:23;10552:55;:::i;:::-;;10656:3;10648:6;10644:16;10638:23;10670:55;10720:3;10709:9;10705:19;10689:14;10670:55;:::i;:::-;-1:-1:-1;10774:3:131;10762:16;;10756:23;10798:6;10820:18;;;10813:30;10860:76;10931:3;10916:19;;10756:23;10860:76;:::i;11171:1442::-;11439:6;11447;11455;11463;11471;11479;11487;11495;11503;11556:3;11544:9;11535:7;11531:23;11527:33;11524:53;;;11573:1;11570;11563:12;11524:53;11612:9;11599:23;11631:42;11667:5;11631:42;:::i;:::-;11692:5;-1:-1:-1;11749:2:131;11734:18;;11721:32;11762:44;11721:32;11762:44;:::i;:::-;11825:7;-1:-1:-1;11884:2:131;11869:18;;11856:32;11897:44;11856:32;11897:44;:::i;:::-;11960:7;-1:-1:-1;12019:2:131;12004:18;;11991:32;12032:44;11991:32;12032:44;:::i;:::-;12095:7;-1:-1:-1;12154:3:131;12139:19;;12126:33;12168:44;12126:33;12168:44;:::i;:::-;12231:7;-1:-1:-1;12290:3:131;12275:19;;12262:33;12304:43;12262:33;12304:43;:::i;:::-;12366:7;-1:-1:-1;12392:48:131;12435:3;12420:19;;12392:48;:::i;:::-;12382:58;;12459:65;12516:7;12510:3;12499:9;12495:19;12459:65;:::i;:::-;12449:75;;12543:64;12599:7;12593:3;12582:9;12578:19;12543:64;:::i;:::-;12533:74;;11171:1442;;;;;;;;;;;:::o;12618:385::-;12704:6;12712;12720;12728;12781:3;12769:9;12760:7;12756:23;12752:33;12749:53;;;12798:1;12795;12788:12;12749:53;-1:-1:-1;;12821:23:131;;;12891:2;12876:18;;12863:32;;-1:-1:-1;12942:2:131;12927:18;;12914:32;;12993:2;12978:18;12965:32;;-1:-1:-1;12618:385:131;-1:-1:-1;12618:385:131:o;13008:1009::-;13432:6;13421:9;13414:25;13475:3;13470:2;13459:9;13455:18;13448:31;13516:2;13510:3;13499:9;13495:19;13488:31;-1:-1:-1;;;13550:3:131;13539:9;13535:19;13528:45;13609:3;13604:2;13593:9;13589:18;13582:31;13656:6;13650:13;13644:3;13633:9;13629:19;13622:42;13395:4;13711:2;13703:6;13699:15;13693:22;13752:2;13746:3;13735:9;13731:19;13724:31;13775:52;13822:3;13811:9;13807:19;13793:12;13775:52;:::i;:::-;-1:-1:-1;;;;;13863:32:131;;13858:2;13843:18;;13836:60;13933:19;;;13927:3;13912:19;;13905:48;13764:63;-1:-1:-1;13970:41:131;13764:63;13999:6;13970:41;:::i;:::-;13962:49;13008:1009;-1:-1:-1;;;;;;;13008:1009:131:o;14022:184::-;14092:6;14145:2;14133:9;14124:7;14120:23;14116:32;14113:52;;;14161:1;14158;14151:12;14113:52;-1:-1:-1;14184:16:131;;14022:184;-1:-1:-1;14022:184:131:o;14211:380::-;14290:1;14286:12;;;;14333;;;14354:61;;14408:4;14400:6;14396:17;14386:27;;14354:61;14461:2;14453:6;14450:14;14430:18;14427:38;14424:161;;14507:10;14502:3;14498:20;14495:1;14488:31;14542:4;14539:1;14532:15;14570:4;14567:1;14560:15;14424:161;;14211:380;;;:::o;14596:127::-;14657:10;14652:3;14648:20;14645:1;14638:31;14688:4;14685:1;14678:15;14712:4;14709:1;14702:15;14728:127;14789:10;14784:3;14780:20;14777:1;14770:31;14820:4;14817:1;14810:15;14844:4;14841:1;14834:15;14860:168;14933:9;;;14964;;14981:15;;;14975:22;;14961:37;14951:71;;15002:18;;:::i;15159:2074::-;15581:6;15570:9;15563:25;15544:4;15607:2;15645:1;15641;15636:3;15632:11;15628:19;15695:2;15687:6;15683:15;15678:2;15667:9;15663:18;15656:43;15735:3;15730:2;15719:9;15715:18;15708:31;15762:46;15803:3;15792:9;15788:19;15780:6;15762:46;:::i;:::-;15856:2;15848:6;15844:15;15839:2;15828:9;15824:18;15817:43;15897:6;15891:3;15880:9;15876:19;15869:35;15953:9;15945:6;15941:22;15935:3;15924:9;15920:19;15913:51;15994:6;15988:13;15980:6;15973:29;16021:4;16011:14;;16066:2;16058:6;16054:15;16102:2;16097;16089:6;16085:15;16078:27;16125:1;16158:12;16152:19;16194:3;16224:9;16220:2;16216:18;16206:28;;16284:2;16273:9;16269:18;16306;16296:61;;16350:4;16342:6;16338:17;16328:27;;16296:61;16403:2;16395:6;16392:14;16372:18;16369:38;16366:165;;-1:-1:-1;;;16430:33:131;;16486:4;16483:1;16476:15;16516:4;16437:3;16504:17;16366:165;16599:2;16587:15;;2700:19;;;2743:14;;;16540:71;-1:-1:-1;16627:18:131;16654:128;;;;16796:1;16791:321;;;;16620:492;;16654:128;-1:-1:-1;;16687:24:131;;16675:37;;16755:14;;16748:22;16745:1;16741:30;16732:40;;;-1:-1:-1;16654:128:131;;16791:321;15106:1;15099:14;;;15143:4;15130:18;;16892:1;16906:165;16920:6;16917:1;16914:13;16906:165;;;16998:14;;16985:11;;;16978:35;17041:16;;;;16935:10;;16906:165;;;17091:11;;;-1:-1:-1;;16620:492:131;;;;;17158:9;17153:3;17149:19;17143:3;17132:9;17128:19;17121:48;17186:41;17223:3;17215:6;17186:41;:::i;:::-;17178:49;15159:2074;-1:-1:-1;;;;;;;;;;;;;;15159:2074:131:o;17427:279::-;17515:6;17568:2;17556:9;17547:7;17543:23;17539:32;17536:52;;;17584:1;17581;17574:12;17536:52;17616:9;17610:16;17635:41;17670:5;17635:41;:::i;17711:127::-;17772:10;17767:3;17763:20;17760:1;17753:31;17803:4;17800:1;17793:15;17827:4;17824:1;17817:15;17843:217;17883:1;17909;17899:132;;17953:10;17948:3;17944:20;17941:1;17934:31;17988:4;17985:1;17978:15;18016:4;18013:1;18006:15;17899:132;-1:-1:-1;18045:9:131;;17843:217::o;18065:128::-;18132:9;;;18153:11;;;18150:37;;;18167:18;;:::i;18198:125::-;18263:9;;;18284:10;;;18281:36;;;18297:18;;:::i;18685:289::-;18816:3;18854:6;18848:13;18870:66;18929:6;18924:3;18917:4;18909:6;18905:17;18870:66;:::i;:::-;18952:16;;;;;18685:289;-1:-1:-1;;18685:289:131:o;18979:262::-;19049:6;19102:2;19090:9;19081:7;19077:23;19073:32;19070:52;;;19118:1;19115;19108:12;19070:52;19150:9;19144:16;19169:42;19205:5;19169:42;:::i;19246:317::-;-1:-1:-1;;;;;19423:32:131;;19405:51;;19492:2;19487;19472:18;;19465:30;;;-1:-1:-1;;19512:45:131;;19538:18;;19530:6;19512:45;:::i","linkReferences":{}},"methodIdentifiers":{"DECIMALS()":"2e0f2625","NATIVE()":"a0cf0aea","PERCENTAGE_SCALE()":"3f26479e","_calculateConviction(uint256,uint256,uint256,uint256)":"e99ce911","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","createPool(address,address,address,address,address,uint8,uint8,(address,address,uint256,uint256,uint256,uint256))":"85294f18","createPool(address,address,address,address,address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"e070e0ab","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"c36e336b","local()":"0f166ad4","metadata()":"392f37e9","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","poolProfile_id1(address,address,address[])":"37d1c404","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry_owner()":"dac4eb16"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"DECIMALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PERCENTAGE_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"}],\"name\":\"_calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"getParams\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"params\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"metadata\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"pool_admin\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"pool_managers\",\"type\":\"address[]\"}],\"name\":\"poolProfile_id1\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/test/CVStrategyHelpers.sol\":\"CVStrategyHelpers\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Allo.sol\":{\"keccak256\":\"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c\",\"dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd\"]},\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/auth/Ownable.sol\":{\"keccak256\":\"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30\",\"dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol\":{\"keccak256\":\"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f\",\"dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]},\"pkg/contracts/test/CVStrategyHelpers.sol\":{\"keccak256\":\"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e\",\"dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PERCENTAGE_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"}],"stateMutability":"pure","type":"function","name":"_calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"pure","type":"function","name":"getParams","outputs":[{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"metadata","outputs":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"pool_admin","type":"address"},{"internalType":"address[]","name":"pool_managers","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"poolProfile_id1","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/test/CVStrategyHelpers.sol":"CVStrategyHelpers"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Allo.sol":{"keccak256":"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a","urls":["bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c","dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/auth/Ownable.sol":{"keccak256":"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b","urls":["bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30","dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol":{"keccak256":"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f","urls":["bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f","dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"},"pkg/contracts/test/CVStrategyHelpers.sol":{"keccak256":"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d","urls":["bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e","dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw"],"license":"AGPL-3.0-or-later"}},"version":1},"storageLayout":{"storage":[{"astId":9278,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"gasMeteringOff","offset":0,"slot":"0","type":"t_bool"},{"astId":11315,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"stdstore","offset":0,"slot":"1","type":"t_struct(StdStorage)13196_storage"},{"astId":75295,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"metadata","offset":0,"slot":"9","type":"t_struct(Metadata)3098_storage"},{"astId":75307,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_poolProfileId1_","offset":0,"slot":"11","type":"t_bytes32"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/test/CVStrategyHelpers.sol","id":75820,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[65628],"CVStrategyHelpers":[75819],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"IRegistry":[2802],"Metadata":[3098],"Native":[3106],"PointSystem":[65545],"PointSystemConfig":[65614],"ProposalType":[65540],"console":[29510]},"nodeType":"SourceUnit","src":"46:6377:125","nodes":[{"id":75263,"nodeType":"PragmaDirective","src":"46:24:125","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":75264,"nodeType":"ImportDirective","src":"72:31:125","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":29511,"symbolAliases":[],"unitAlias":""},{"id":75266,"nodeType":"ImportDirective","src":"104:53:125","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","file":"allo-v2-contracts/core/Allo.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":1391,"symbolAliases":[{"foreign":{"id":75265,"name":"Allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1390,"src":"112:4:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75275,"nodeType":"ImportDirective","src":"376:230:125","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"../src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":75267,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"389:14:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75268,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"409:14:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75269,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"429:12:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75270,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"447:11:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75271,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"464:14:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75272,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"484:17:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75273,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"507:16:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75274,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"529:30:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75277,"nodeType":"ImportDirective","src":"607:84:125","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":75276,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"615:30:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75279,"nodeType":"ImportDirective","src":"692:67:125","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"allo-v2-contracts/core/libraries/Native.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":3107,"symbolAliases":[{"foreign":{"id":75278,"name":"Native","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3106,"src":"700:6:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75282,"nodeType":"ImportDirective","src":"760:84:125","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":75280,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"768:9:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75281,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"779:8:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75284,"nodeType":"ImportDirective","src":"846:66:125","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"allo-v2-test/foundry/shared/Accounts.sol","nameLocation":"-1:-1:-1","scope":75820,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":75283,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"854:8:125","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75819,"nodeType":"ContractDefinition","src":"914:5508:125","nodes":[{"id":75295,"nodeType":"VariableDeclaration","src":"967:109:125","nodes":[],"constant":false,"functionSelector":"392f37e9","mutability":"mutable","name":"metadata","nameLocation":"983:8:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata"},"typeName":{"id":75290,"nodeType":"UserDefinedTypeName","pathNode":{"id":75289,"name":"Metadata","nameLocations":["967:8:125"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"967:8:125"},"referencedDeclaration":3098,"src":"967:8:125","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"value":{"arguments":[{"hexValue":"31","id":75292,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1014:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","id":75293,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1026:48:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""},"value":"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""}],"id":75291,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"994:8:125","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":75294,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1004:8:125","1017:7:125"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"994:82:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"visibility":"public"},{"id":75300,"nodeType":"VariableDeclaration","src":"1105:43:125","nodes":[],"constant":true,"functionSelector":"2e0f2625","mutability":"constant","name":"DECIMALS","nameLocation":"1129:8:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75296,"name":"uint256","nodeType":"ElementaryTypeName","src":"1105:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"id":75299,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1140:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3138","id":75298,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1146:2:125","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"1140:8:125","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"}},"visibility":"public"},{"id":75305,"nodeType":"VariableDeclaration","src":"1154:50:125","nodes":[],"constant":true,"functionSelector":"3f26479e","mutability":"constant","name":"PERCENTAGE_SCALE","nameLocation":"1178:16:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75301,"name":"uint256","nodeType":"ElementaryTypeName","src":"1154:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":75304,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75302,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1197:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":75303,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1203:1:125","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"1197:7:125","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":75307,"nodeType":"VariableDeclaration","src":"1211:33:125","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId1_","nameLocation":"1228:16:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":75306,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1211:7:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":75312,"nodeType":"VariableDeclaration","src":"1251:44:125","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"1277:7:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75308,"name":"uint256","nodeType":"ElementaryTypeName","src":"1251:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"id":75311,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":75309,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1287:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313237","id":75310,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1292:3:125","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"127"},"src":"1287:8:125","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"}},"visibility":"internal"},{"id":75317,"nodeType":"VariableDeclaration","src":"1301:44:125","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"1327:7:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75313,"name":"uint256","nodeType":"ElementaryTypeName","src":"1301:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"id":75316,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":75314,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1337:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313238","id":75315,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1342:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"1337:8:125","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"}},"visibility":"internal"},{"id":75322,"nodeType":"VariableDeclaration","src":"1351:37:125","nodes":[],"constant":true,"mutability":"constant","name":"D","nameLocation":"1377:1:125","scope":75819,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75318,"name":"uint256","nodeType":"ElementaryTypeName","src":"1351:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":75321,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75319,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1381:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":75320,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1387:1:125","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"1381:7:125","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"visibility":"internal"},{"id":75360,"nodeType":"FunctionDefinition","src":"1503:437:125","nodes":[],"body":{"id":75359,"nodeType":"Block","src":"1661:279:125","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":75340,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75335,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75307,"src":"1675:16:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":75338,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1703:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75337,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1695:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":75336,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1695:7:125","typeDescriptions":{}}},"id":75339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1695:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1675:30:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75356,"nodeType":"IfStatement","src":"1671:230:125","trueBody":{"id":75355,"nodeType":"Block","src":"1707:194:125","statements":[{"expression":{"id":75353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75341,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75307,"src":"1721:16:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"32","id":75344,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1780:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"506f6f6c2050726f66696c652031","id":75345,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1783:16:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":75347,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1821:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":75348,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1833:14:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":75346,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1801:8:125","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":75349,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1811:8:125","1824:7:125"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1801:48:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":75350,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75327,"src":"1851:10:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75351,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75330,"src":"1863:13:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":75342,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75325,"src":"1740:8:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":75343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1749:13:125","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"1740:22:125","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":75352,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1740:150:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1721:169:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":75354,"nodeType":"ExpressionStatement","src":"1721:169:125"}]}},{"expression":{"id":75357,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75307,"src":"1917:16:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":75334,"id":75358,"nodeType":"Return","src":"1910:23:125"}]},"functionSelector":"37d1c404","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id1","nameLocation":"1512:15:125","parameters":{"id":75331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75325,"mutability":"mutable","name":"registry","nameLocation":"1538:8:125","nodeType":"VariableDeclaration","scope":75360,"src":"1528:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75324,"nodeType":"UserDefinedTypeName","pathNode":{"id":75323,"name":"IRegistry","nameLocations":["1528:9:125"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"1528:9:125"},"referencedDeclaration":2802,"src":"1528:9:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75327,"mutability":"mutable","name":"pool_admin","nameLocation":"1556:10:125","nodeType":"VariableDeclaration","scope":75360,"src":"1548:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75326,"name":"address","nodeType":"ElementaryTypeName","src":"1548:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75330,"mutability":"mutable","name":"pool_managers","nameLocation":"1585:13:125","nodeType":"VariableDeclaration","scope":75360,"src":"1568:30:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":75328,"name":"address","nodeType":"ElementaryTypeName","src":"1568:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75329,"nodeType":"ArrayTypeName","src":"1568:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1527:72:125"},"returnParameters":{"id":75334,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75333,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75360,"src":"1648:7:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":75332,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1648:7:125","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1647:9:125"},"scope":75819,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75484,"nodeType":"FunctionDefinition","src":"1946:1182:125","nodes":[],"body":{"id":75483,"nodeType":"Block","src":"2237:891:125","nodes":[],"statements":[{"expression":{"id":75388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75380,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2298:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75383,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2305:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2298:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75384,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2314:5:125","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"2298:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e39393939373939","id":75386,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2336:15:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"},"value":"0.9999799"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"}],"id":75385,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75663,"src":"2322:13:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2322:30:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2298:54:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75389,"nodeType":"ExpressionStatement","src":"2298:54:125"},{"expression":{"id":75398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75390,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2379:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75393,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2386:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2379:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2395:8:125","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"2379:24:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e32","id":75396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2420:9:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"}],"id":75395,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75663,"src":"2406:13:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75397,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2406:24:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2379:51:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75399,"nodeType":"ExpressionStatement","src":"2379:51:125"},{"expression":{"id":75408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75400,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2459:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75403,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2466:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2459:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75404,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2475:6:125","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"2459:22:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e303031","id":75406,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2498:11:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"},"value":"0.001"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"}],"id":75405,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75663,"src":"2484:13:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2484:26:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2459:51:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75409,"nodeType":"ExpressionStatement","src":"2459:51:125"},{"expression":{"id":75416,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75410,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2541:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2548:8:125","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2541:15:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75414,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2557:18:125","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"2541:34:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"302e32","id":75415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2578:9:125","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"},"src":"2541:46:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75417,"nodeType":"ExpressionStatement","src":"2541:46:125"},{"expression":{"id":75422,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75418,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2604:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75420,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2611:17:125","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"2604:24:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75421,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75362,"src":"2631:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2604:44:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75423,"nodeType":"ExpressionStatement","src":"2604:44:125"},{"expression":{"id":75428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75424,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2658:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75426,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2665:12:125","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"2658:19:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75427,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75365,"src":"2680:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"2658:34:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":75429,"nodeType":"ExpressionStatement","src":"2658:34:125"},{"expression":{"id":75434,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75430,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2702:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2709:11:125","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"2702:18:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75433,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75368,"src":"2723:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"2702:32:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":75435,"nodeType":"ExpressionStatement","src":"2702:32:125"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":75436,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75371,"src":"2749:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75437,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2761:9:125","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2749:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":75438,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2774:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2749:26:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75449,"nodeType":"IfStatement","src":"2745:182:125","trueBody":{"id":75448,"nodeType":"Block","src":"2777:150:125","statements":[{"expression":{"id":75446,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75440,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75371,"src":"2878:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75442,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2890:9:125","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2878:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75445,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"323030","id":75443,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2902:3:125","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75444,"name":"DECIMALS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75300,"src":"2908:8:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2902:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2878:38:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75447,"nodeType":"ExpressionStatement","src":"2878:38:125"}]}},{"expression":{"id":75454,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75450,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2936:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75452,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2943:11:125","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"2936:18:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75453,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75371,"src":"2957:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"2936:32:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75455,"nodeType":"ExpressionStatement","src":"2936:32:125"},{"expression":{"id":75460,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75456,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"2978:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75458,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2985:16:125","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"2978:23:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75459,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75374,"src":"3004:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"2978:42:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":75461,"nodeType":"ExpressionStatement","src":"2978:42:125"},{"expression":{"id":75470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75462,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"3030:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75464,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3037:16:125","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3030:23:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":75468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3070:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":75467,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3056:13:125","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":75465,"name":"address","nodeType":"ElementaryTypeName","src":"3060:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75466,"nodeType":"ArrayTypeName","src":"3060:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":75469,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3056:16:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"3030:42:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75471,"nodeType":"ExpressionStatement","src":"3030:42:125"},{"expression":{"id":75481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":75472,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75378,"src":"3082:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75475,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3089:16:125","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3082:23:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75476,"indexExpression":{"hexValue":"30","id":75474,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3106:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3082:26:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":75479,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3119:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75478,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3111:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75477,"name":"address","nodeType":"ElementaryTypeName","src":"3111:7:125","typeDescriptions":{}}},"id":75480,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3111:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3082:39:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75482,"nodeType":"ExpressionStatement","src":"3082:39:125"}]},"functionSelector":"c36e336b","implemented":true,"kind":"function","modifiers":[],"name":"getParams","nameLocation":"1955:9:125","parameters":{"id":75375,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75362,"mutability":"mutable","name":"registryCommunity","nameLocation":"1982:17:125","nodeType":"VariableDeclaration","scope":75484,"src":"1974:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75361,"name":"address","nodeType":"ElementaryTypeName","src":"1974:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75365,"mutability":"mutable","name":"proposalType","nameLocation":"2022:12:125","nodeType":"VariableDeclaration","scope":75484,"src":"2009:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":75364,"nodeType":"UserDefinedTypeName","pathNode":{"id":75363,"name":"ProposalType","nameLocations":["2009:12:125"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"2009:12:125"},"referencedDeclaration":65540,"src":"2009:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75368,"mutability":"mutable","name":"pointSystem","nameLocation":"2056:11:125","nodeType":"VariableDeclaration","scope":75484,"src":"2044:23:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":75367,"nodeType":"UserDefinedTypeName","pathNode":{"id":75366,"name":"PointSystem","nameLocations":["2044:11:125"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"2044:11:125"},"referencedDeclaration":65545,"src":"2044:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75371,"mutability":"mutable","name":"pointConfig","nameLocation":"2102:11:125","nodeType":"VariableDeclaration","scope":75484,"src":"2077:36:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":75370,"nodeType":"UserDefinedTypeName","pathNode":{"id":75369,"name":"PointSystemConfig","nameLocations":["2077:17:125"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"2077:17:125"},"referencedDeclaration":65614,"src":"2077:17:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":75374,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"2147:16:125","nodeType":"VariableDeclaration","scope":75484,"src":"2123:40:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75373,"nodeType":"UserDefinedTypeName","pathNode":{"id":75372,"name":"ArbitrableConfig","nameLocations":["2123:16:125"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"2123:16:125"},"referencedDeclaration":65628,"src":"2123:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"1964:205:125"},"returnParameters":{"id":75379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75378,"mutability":"mutable","name":"params","nameLocation":"2229:6:125","nodeType":"VariableDeclaration","scope":75484,"src":"2191:44:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":75377,"nodeType":"UserDefinedTypeName","pathNode":{"id":75376,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2191:30:125"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2191:30:125"},"referencedDeclaration":69242,"src":"2191:30:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"2190:46:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":75608,"nodeType":"FunctionDefinition","src":"3134:1468:125","nodes":[],"body":{"id":75607,"nodeType":"Block","src":"3487:1115:125","nodes":[],"statements":[{"assignments":[75515],"declarations":[{"constant":false,"id":75515,"mutability":"mutable","name":"params","nameLocation":"3586:6:125","nodeType":"VariableDeclaration","scope":75607,"src":"3548:44:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":75514,"nodeType":"UserDefinedTypeName","pathNode":{"id":75513,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["3548:30:125"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"3548:30:125"},"referencedDeclaration":69242,"src":"3548:30:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":75523,"initialValue":{"arguments":[{"id":75517,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75491,"src":"3617:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75518,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75499,"src":"3636:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":75519,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75502,"src":"3650:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"id":75520,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75505,"src":"3663:11:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":75521,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75508,"src":"3676:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":75516,"name":"getParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75484,"src":"3607:9:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$","typeString":"function (address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) pure returns (struct CVStrategyInitializeParamsV0_1 memory)"}},"id":75522,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3607:86:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"3548:145:125"},{"assignments":[75528],"declarations":[{"constant":false,"id":75528,"mutability":"mutable","name":"_pool_managers","nameLocation":"3721:14:125","nodeType":"VariableDeclaration","scope":75607,"src":"3704:31:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":75526,"name":"address","nodeType":"ElementaryTypeName","src":"3704:7:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75527,"nodeType":"ArrayTypeName","src":"3704:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":75534,"initialValue":{"arguments":[{"hexValue":"32","id":75532,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3752:1:125","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":75531,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3738:13:125","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":75529,"name":"address","nodeType":"ElementaryTypeName","src":"3742:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75530,"nodeType":"ArrayTypeName","src":"3742:9:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":75533,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3738:16:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3704:50:125"},{"expression":{"id":75542,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":75535,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"3764:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75537,"indexExpression":{"hexValue":"30","id":75536,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3779:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3764:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75540,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3792:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyHelpers_$75819","typeString":"contract CVStrategyHelpers"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyHelpers_$75819","typeString":"contract CVStrategyHelpers"}],"id":75539,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3784:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75538,"name":"address","nodeType":"ElementaryTypeName","src":"3784:7:125","typeDescriptions":{}}},"id":75541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3784:13:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3764:33:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75543,"nodeType":"ExpressionStatement","src":"3764:33:125"},{"expression":{"id":75552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":75544,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"3807:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75546,"indexExpression":{"hexValue":"31","id":75545,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3822:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3807:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":75549,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3835:3:125","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":75550,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3839:6:125","memberName":"sender","nodeType":"MemberAccess","src":"3835:10:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75548,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3827:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75547,"name":"address","nodeType":"ElementaryTypeName","src":"3827:7:125","typeDescriptions":{}}},"id":75551,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3827:19:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3807:39:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75553,"nodeType":"ExpressionStatement","src":"3807:39:125"},{"assignments":[75555],"declarations":[{"constant":false,"id":75555,"mutability":"mutable","name":"_token","nameLocation":"4104:6:125","nodeType":"VariableDeclaration","scope":75607,"src":"4096:14:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75554,"name":"address","nodeType":"ElementaryTypeName","src":"4096:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":75557,"initialValue":{"id":75556,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"4113:6:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4096:23:125"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":75563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75558,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75496,"src":"4133:5:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":75561,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4150:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75560,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4142:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75559,"name":"address","nodeType":"ElementaryTypeName","src":"4142:7:125","typeDescriptions":{}}},"id":75562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4142:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4133:19:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75569,"nodeType":"IfStatement","src":"4129:64:125","trueBody":{"id":75568,"nodeType":"Block","src":"4154:39:125","statements":[{"expression":{"id":75566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75564,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75555,"src":"4168:6:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75565,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75496,"src":"4177:5:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4168:14:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75567,"nodeType":"ExpressionStatement","src":"4168:14:125"}]}},{"expression":{"id":75592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75570,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75511,"src":"4202:6:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":75574,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75494,"src":"4315:8:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"arguments":[],"expression":{"argumentTypes":[],"id":75575,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"4325:10:125","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":75576,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4325:12:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75577,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"4339:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":75573,"name":"poolProfile_id1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75360,"src":"4299:15:125","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IRegistry_$2802_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (contract IRegistry,address,address[] memory) returns (bytes32)"}},"id":75578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4299:55:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":75581,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75489,"src":"4376:8:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75580,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4368:7:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75579,"name":"address","nodeType":"ElementaryTypeName","src":"4368:7:125","typeDescriptions":{}}},"id":75582,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4368:17:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":75585,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75515,"src":"4410:6:125","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":75583,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4399:3:125","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":75584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4403:6:125","memberName":"encode","nodeType":"MemberAccess","src":"4399:10:125","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":75586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4399:18:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":75587,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75555,"src":"4431:6:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":75588,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4451:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":75589,"name":"metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75295,"src":"4466:8:125","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},{"id":75590,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75528,"src":"4488:14:125","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":75571,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75487,"src":"4211:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"id":75572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4216:28:125","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":175,"src":"4211:33:125","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":75591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4211:301:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4202:310:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75593,"nodeType":"ExpressionStatement","src":"4202:310:125"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":75604,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":75598,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75489,"src":"4553:8:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75597,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4545:8:125","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":75596,"name":"address","nodeType":"ElementaryTypeName","src":"4545:8:125","stateMutability":"payable","typeDescriptions":{}}},"id":75599,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4545:17:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":75595,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"4530:14:125","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_1_$69756_$","typeString":"type(contract CVStrategyV0_1)"}},"id":75600,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:33:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}},"id":75601,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4564:12:125","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65930,"src":"4530:46:125","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_enum$_ProposalType_$65540_$","typeString":"function () view external returns (enum ProposalType)"}},"id":75602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:48:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":75603,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75499,"src":"4582:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"4530:64:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":75594,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"4523:6:125","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":75605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4523:72:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75606,"nodeType":"ExpressionStatement","src":"4523:72:125"}]},"functionSelector":"e070e0ab","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"3143:10:125","parameters":{"id":75509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75487,"mutability":"mutable","name":"allo","nameLocation":"3168:4:125","nodeType":"VariableDeclaration","scope":75608,"src":"3163:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":75486,"nodeType":"UserDefinedTypeName","pathNode":{"id":75485,"name":"Allo","nameLocations":["3163:4:125"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"3163:4:125"},"referencedDeclaration":1390,"src":"3163:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":75489,"mutability":"mutable","name":"strategy","nameLocation":"3190:8:125","nodeType":"VariableDeclaration","scope":75608,"src":"3182:16:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75488,"name":"address","nodeType":"ElementaryTypeName","src":"3182:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75491,"mutability":"mutable","name":"registryCommunity","nameLocation":"3216:17:125","nodeType":"VariableDeclaration","scope":75608,"src":"3208:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75490,"name":"address","nodeType":"ElementaryTypeName","src":"3208:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75494,"mutability":"mutable","name":"registry","nameLocation":"3253:8:125","nodeType":"VariableDeclaration","scope":75608,"src":"3243:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75493,"nodeType":"UserDefinedTypeName","pathNode":{"id":75492,"name":"IRegistry","nameLocations":["3243:9:125"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"3243:9:125"},"referencedDeclaration":2802,"src":"3243:9:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75496,"mutability":"mutable","name":"token","nameLocation":"3279:5:125","nodeType":"VariableDeclaration","scope":75608,"src":"3271:13:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75495,"name":"address","nodeType":"ElementaryTypeName","src":"3271:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75499,"mutability":"mutable","name":"proposalType","nameLocation":"3307:12:125","nodeType":"VariableDeclaration","scope":75608,"src":"3294:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":75498,"nodeType":"UserDefinedTypeName","pathNode":{"id":75497,"name":"ProposalType","nameLocations":["3294:12:125"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3294:12:125"},"referencedDeclaration":65540,"src":"3294:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75502,"mutability":"mutable","name":"pointSystem","nameLocation":"3341:11:125","nodeType":"VariableDeclaration","scope":75608,"src":"3329:23:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":75501,"nodeType":"UserDefinedTypeName","pathNode":{"id":75500,"name":"PointSystem","nameLocations":["3329:11:125"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3329:11:125"},"referencedDeclaration":65545,"src":"3329:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75505,"mutability":"mutable","name":"pointConfig","nameLocation":"3387:11:125","nodeType":"VariableDeclaration","scope":75608,"src":"3362:36:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":75504,"nodeType":"UserDefinedTypeName","pathNode":{"id":75503,"name":"PointSystemConfig","nameLocations":["3362:17:125"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3362:17:125"},"referencedDeclaration":65614,"src":"3362:17:125","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":75508,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3432:16:125","nodeType":"VariableDeclaration","scope":75608,"src":"3408:40:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75507,"nodeType":"UserDefinedTypeName","pathNode":{"id":75506,"name":"ArbitrableConfig","nameLocations":["3408:16:125"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3408:16:125"},"referencedDeclaration":65628,"src":"3408:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"3153:301:125"},"returnParameters":{"id":75512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75511,"mutability":"mutable","name":"poolId","nameLocation":"3479:6:125","nodeType":"VariableDeclaration","scope":75608,"src":"3471:14:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75510,"name":"uint256","nodeType":"ElementaryTypeName","src":"3471:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3470:16:125"},"scope":75819,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75649,"nodeType":"FunctionDefinition","src":"4608:578:125","nodes":[],"body":{"id":75648,"nodeType":"Block","src":"4915:271:125","nodes":[],"statements":[{"expression":{"arguments":[{"id":75635,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75611,"src":"4956:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},{"id":75636,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75613,"src":"4974:8:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75637,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75615,"src":"4996:17:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75638,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75618,"src":"5027:8:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"id":75639,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75620,"src":"5049:5:125","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75640,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75623,"src":"5068:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":75641,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75626,"src":"5094:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"arguments":[{"hexValue":"30","id":75643,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5137:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75642,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"5119:17:125","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_PointSystemConfig_$65614_storage_ptr_$","typeString":"type(struct PointSystemConfig storage pointer)"}},"id":75644,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5119:20:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":75645,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75629,"src":"5153:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":75634,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[75608,75649],"referencedDeclaration":75608,"src":"4932:10:125","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Allo_$1390_$_t_address_$_t_address_$_t_contract$_IRegistry_$2802_$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_uint256_$","typeString":"function (contract Allo,address,address,contract IRegistry,address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) returns (uint256)"}},"id":75646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4932:247:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75633,"id":75647,"nodeType":"Return","src":"4925:254:125"}]},"functionSelector":"85294f18","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"4617:10:125","parameters":{"id":75630,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75611,"mutability":"mutable","name":"allo","nameLocation":"4642:4:125","nodeType":"VariableDeclaration","scope":75649,"src":"4637:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":75610,"nodeType":"UserDefinedTypeName","pathNode":{"id":75609,"name":"Allo","nameLocations":["4637:4:125"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"4637:4:125"},"referencedDeclaration":1390,"src":"4637:4:125","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":75613,"mutability":"mutable","name":"strategy","nameLocation":"4664:8:125","nodeType":"VariableDeclaration","scope":75649,"src":"4656:16:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75612,"name":"address","nodeType":"ElementaryTypeName","src":"4656:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75615,"mutability":"mutable","name":"registryCommunity","nameLocation":"4690:17:125","nodeType":"VariableDeclaration","scope":75649,"src":"4682:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75614,"name":"address","nodeType":"ElementaryTypeName","src":"4682:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75618,"mutability":"mutable","name":"registry","nameLocation":"4727:8:125","nodeType":"VariableDeclaration","scope":75649,"src":"4717:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75617,"nodeType":"UserDefinedTypeName","pathNode":{"id":75616,"name":"IRegistry","nameLocations":["4717:9:125"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"4717:9:125"},"referencedDeclaration":2802,"src":"4717:9:125","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75620,"mutability":"mutable","name":"token","nameLocation":"4753:5:125","nodeType":"VariableDeclaration","scope":75649,"src":"4745:13:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75619,"name":"address","nodeType":"ElementaryTypeName","src":"4745:7:125","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75623,"mutability":"mutable","name":"proposalType","nameLocation":"4781:12:125","nodeType":"VariableDeclaration","scope":75649,"src":"4768:25:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":75622,"nodeType":"UserDefinedTypeName","pathNode":{"id":75621,"name":"ProposalType","nameLocations":["4768:12:125"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"4768:12:125"},"referencedDeclaration":65540,"src":"4768:12:125","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75626,"mutability":"mutable","name":"pointSystem","nameLocation":"4815:11:125","nodeType":"VariableDeclaration","scope":75649,"src":"4803:23:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":75625,"nodeType":"UserDefinedTypeName","pathNode":{"id":75624,"name":"PointSystem","nameLocations":["4803:11:125"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"4803:11:125"},"referencedDeclaration":65545,"src":"4803:11:125","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75629,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"4860:16:125","nodeType":"VariableDeclaration","scope":75649,"src":"4836:40:125","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75628,"nodeType":"UserDefinedTypeName","pathNode":{"id":75627,"name":"ArbitrableConfig","nameLocations":["4836:16:125"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"4836:16:125"},"referencedDeclaration":65628,"src":"4836:16:125","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"4627:255:125"},"returnParameters":{"id":75633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75632,"mutability":"mutable","name":"poolId","nameLocation":"4907:6:125","nodeType":"VariableDeclaration","scope":75649,"src":"4899:14:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75631,"name":"uint256","nodeType":"ElementaryTypeName","src":"4899:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4898:16:125"},"scope":75819,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75663,"nodeType":"FunctionDefinition","src":"5192:114:125","nodes":[],"body":{"id":75662,"nodeType":"Block","src":"5264:42:125","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75656,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75651,"src":"5281:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":75659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75657,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5291:2:125","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":75658,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5297:2:125","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"5291:8:125","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"5281:18:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75655,"id":75661,"nodeType":"Return","src":"5274:25:125"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_etherToFloat","nameLocation":"5201:13:125","parameters":{"id":75652,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75651,"mutability":"mutable","name":"_amount","nameLocation":"5223:7:125","nodeType":"VariableDeclaration","scope":75663,"src":"5215:15:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75650,"name":"uint256","nodeType":"ElementaryTypeName","src":"5215:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5214:17:125"},"returnParameters":{"id":75655,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75654,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75663,"src":"5255:7:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75653,"name":"uint256","nodeType":"ElementaryTypeName","src":"5255:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5254:9:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75697,"nodeType":"FunctionDefinition","src":"5312:269:125","nodes":[],"body":{"id":75696,"nodeType":"Block","src":"5390:191:125","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75673,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75665,"src":"5408:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":75674,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5414:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5408:13:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":75676,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5423:42:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":75672,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5400:7:125","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75677,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5400:66:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75678,"nodeType":"ExpressionStatement","src":"5400:66:125"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75680,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75667,"src":"5484:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":75681,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5489:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5484:12:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":75683,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5498:30:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":75679,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5476:7:125","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5476:53:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75685,"nodeType":"ExpressionStatement","src":"5476:53:125"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75694,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75691,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75686,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75665,"src":"5548:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75687,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75667,"src":"5553:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5548:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75689,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5547:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":75690,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75312,"src":"5559:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5547:19:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75692,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5546:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":75693,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5571:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"5546:28:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75671,"id":75695,"nodeType":"Return","src":"5539:35:125"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"5321:4:125","parameters":{"id":75668,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75665,"mutability":"mutable","name":"_a","nameLocation":"5334:2:125","nodeType":"VariableDeclaration","scope":75697,"src":"5326:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75664,"name":"uint256","nodeType":"ElementaryTypeName","src":"5326:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75667,"mutability":"mutable","name":"_b","nameLocation":"5346:2:125","nodeType":"VariableDeclaration","scope":75697,"src":"5338:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75666,"name":"uint256","nodeType":"ElementaryTypeName","src":"5338:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5325:24:125"},"returnParameters":{"id":75671,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75670,"mutability":"mutable","name":"_result","nameLocation":"5381:7:125","nodeType":"VariableDeclaration","scope":75697,"src":"5373:15:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75669,"name":"uint256","nodeType":"ElementaryTypeName","src":"5373:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5372:17:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75761,"nodeType":"FunctionDefinition","src":"5587:447:125","nodes":[],"body":{"id":75760,"nodeType":"Block","src":"5665:369:125","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75707,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75699,"src":"5683:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":75708,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5688:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5683:12:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":75710,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5697:30:125","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":75706,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5675:7:125","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5675:53:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75712,"nodeType":"ExpressionStatement","src":"5675:53:125"},{"assignments":[75714],"declarations":[{"constant":false,"id":75714,"mutability":"mutable","name":"a","nameLocation":"5746:1:125","nodeType":"VariableDeclaration","scope":75760,"src":"5738:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75713,"name":"uint256","nodeType":"ElementaryTypeName","src":"5738:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75716,"initialValue":{"id":75715,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75699,"src":"5750:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5738:14:125"},{"assignments":[75718],"declarations":[{"constant":false,"id":75718,"mutability":"mutable","name":"b","nameLocation":"5770:1:125","nodeType":"VariableDeclaration","scope":75760,"src":"5762:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75717,"name":"uint256","nodeType":"ElementaryTypeName","src":"5762:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75720,"initialValue":{"id":75719,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75701,"src":"5774:2:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5762:14:125"},{"expression":{"id":75723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75721,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75704,"src":"5786:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75722,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5796:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5786:17:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75724,"nodeType":"ExpressionStatement","src":"5786:17:125"},{"body":{"id":75758,"nodeType":"Block","src":"5827:201:125","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75730,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75728,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5845:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":75729,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5849:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5845:5:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":75731,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5854:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5845:10:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":75756,"nodeType":"Block","src":"5935:83:125","statements":[{"expression":{"id":75750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75745,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75704,"src":"5953:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75747,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75704,"src":"5968:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75748,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5977:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75746,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75697,"src":"5963:4:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5963:16:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5953:26:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75751,"nodeType":"ExpressionStatement","src":"5953:26:125"},{"expression":{"id":75754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75752,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5997:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":75753,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6002:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5997:6:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75755,"nodeType":"ExpressionStatement","src":"5997:6:125"}]},"id":75757,"nodeType":"IfStatement","src":"5841:177:125","trueBody":{"id":75744,"nodeType":"Block","src":"5857:72:125","statements":[{"expression":{"id":75738,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75733,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5875:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75735,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5884:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75736,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75714,"src":"5887:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75734,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75697,"src":"5879:4:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5879:10:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5875:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75739,"nodeType":"ExpressionStatement","src":"5875:14:125"},{"expression":{"id":75742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75740,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5907:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":75741,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5913:1:125","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5907:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75743,"nodeType":"ExpressionStatement","src":"5907:7:125"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75727,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75725,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"5820:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":75726,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5824:1:125","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5820:5:125","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75759,"nodeType":"WhileStatement","src":"5813:215:125"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"5596:4:125","parameters":{"id":75702,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75699,"mutability":"mutable","name":"_a","nameLocation":"5609:2:125","nodeType":"VariableDeclaration","scope":75761,"src":"5601:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75698,"name":"uint256","nodeType":"ElementaryTypeName","src":"5601:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75701,"mutability":"mutable","name":"_b","nameLocation":"5621:2:125","nodeType":"VariableDeclaration","scope":75761,"src":"5613:10:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75700,"name":"uint256","nodeType":"ElementaryTypeName","src":"5613:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5600:24:125"},"returnParameters":{"id":75705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75704,"mutability":"mutable","name":"_result","nameLocation":"5656:7:125","nodeType":"VariableDeclaration","scope":75761,"src":"5648:15:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75703,"name":"uint256","nodeType":"ElementaryTypeName","src":"5648:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5647:17:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75818,"nodeType":"FunctionDefinition","src":"6040:380:125","nodes":[],"body":{"id":75817,"nodeType":"Block","src":"6203:217:125","nodes":[],"statements":[{"assignments":[75775],"declarations":[{"constant":false,"id":75775,"mutability":"mutable","name":"t","nameLocation":"6221:1:125","nodeType":"VariableDeclaration","scope":75817,"src":"6213:9:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75774,"name":"uint256","nodeType":"ElementaryTypeName","src":"6213:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75777,"initialValue":{"id":75776,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75763,"src":"6225:11:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6213:23:125"},{"assignments":[75779],"declarations":[{"constant":false,"id":75779,"mutability":"mutable","name":"atTWO_128","nameLocation":"6254:9:125","nodeType":"VariableDeclaration","scope":75817,"src":"6246:17:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75778,"name":"uint256","nodeType":"ElementaryTypeName","src":"6246:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75789,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75786,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75781,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75769,"src":"6272:5:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":75782,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6281:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6272:12:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75784,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6271:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":75785,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"6288:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6271:18:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75787,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75775,"src":"6291:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75780,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75761,"src":"6266:4:125","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6266:27:125","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6246:47:125"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75815,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75809,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75790,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75779,"src":"6313:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75791,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75765,"src":"6325:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6313:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75793,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6312:23:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75807,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75796,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75794,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75767,"src":"6340:10:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75795,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"6353:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:14:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75797,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"6358:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":75798,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75779,"src":"6368:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6358:19:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75800,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6357:21:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:38:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75802,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6339:40:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75805,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75803,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"6383:1:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":75804,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75769,"src":"6387:5:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6383:9:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75806,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6382:11:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6339:54:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75808,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6338:56:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6312:82:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75810,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6311:84:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":75811,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75312,"src":"6398:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6311:94:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75813,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6310:96:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":75814,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6410:3:125","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6310:103:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75773,"id":75816,"nodeType":"Return","src":"6303:110:125"}]},"functionSelector":"e99ce911","implemented":true,"kind":"function","modifiers":[],"name":"_calculateConviction","nameLocation":"6049:20:125","parameters":{"id":75770,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75763,"mutability":"mutable","name":"_timePassed","nameLocation":"6078:11:125","nodeType":"VariableDeclaration","scope":75818,"src":"6070:19:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75762,"name":"uint256","nodeType":"ElementaryTypeName","src":"6070:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75765,"mutability":"mutable","name":"_lastConv","nameLocation":"6099:9:125","nodeType":"VariableDeclaration","scope":75818,"src":"6091:17:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75764,"name":"uint256","nodeType":"ElementaryTypeName","src":"6091:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75767,"mutability":"mutable","name":"_oldAmount","nameLocation":"6118:10:125","nodeType":"VariableDeclaration","scope":75818,"src":"6110:18:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75766,"name":"uint256","nodeType":"ElementaryTypeName","src":"6110:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75769,"mutability":"mutable","name":"decay","nameLocation":"6138:5:125","nodeType":"VariableDeclaration","scope":75818,"src":"6130:13:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75768,"name":"uint256","nodeType":"ElementaryTypeName","src":"6130:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6069:75:125"},"returnParameters":{"id":75773,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75772,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75818,"src":"6190:7:125","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75771,"name":"uint256","nodeType":"ElementaryTypeName","src":"6190:7:125","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6189:9:125"},"scope":75819,"stateMutability":"pure","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":75285,"name":"Native","nameLocations":["944:6:125"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"944:6:125"},"id":75286,"nodeType":"InheritanceSpecifier","src":"944:6:125"},{"baseName":{"id":75287,"name":"Accounts","nameLocations":["952:8:125"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"952:8:125"},"id":75288,"nodeType":"InheritanceSpecifier","src":"952:8:125"}],"canonicalName":"CVStrategyHelpers","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[75819,5026,12099,11306,3106],"name":"CVStrategyHelpers","nameLocation":"923:17:125","scope":75820,"usedErrors":[]}],"license":"AGPL-3.0-or-later"},"id":125} \ No newline at end of file +{"abi":[{"type":"function","name":"DECIMALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PERCENTAGE_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"_calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"allo","type":"address","internalType":"contract Allo"},{"name":"strategy","type":"address","internalType":"address"},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"token","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getParams","inputs":[{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]}],"outputs":[{"name":"params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"stateMutability":"pure"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"metadata","inputs":[],"outputs":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"poolProfile_id1","inputs":[{"name":"registry","type":"address","internalType":"contract IRegistry"},{"name":"pool_admin","type":"address","internalType":"address"},{"name":"pool_managers","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x60016080908152610120604052602e60c081815260a09162001d4160e0399052805160099081556020820151600a906200003a9082620000f6565b5050503480156200004a57600080fd5b50620001c2565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200007c57607f821691505b6020821081036200009d57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620000f157600081815260208120601f850160051c81016020861015620000cc5750805b601f850160051c820191505b81811015620000ed57828155600101620000d8565b5050505b505050565b81516001600160401b0381111562000112576200011262000051565b6200012a8162000123845462000067565b84620000a3565b602080601f831160018114620001625760008415620001495750858301515b600019600386901b1c1916600185901b178555620000ed565b600085815260208120601f198616915b82811015620001935788860151825594840194600190910190840162000172565b5085821015620001b25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b611b6f80620001d26000396000f3fe608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea264697066735822122001e537a328e560bcb0c3d69d7eac640e5646e654df81a2d41b8f72da8743b31364736f6c63430008130033516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","sourceMap":"1014:1:130:-:0;914:5508;994:82;;;;914:5508;994:82;;;;;;;;;;;;;967:109;;;;;;;;;;;;;;;;:::i;:::-;;;;914:5508;;;;;;;;;;;;14:127:136;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:380;225:1;221:12;;;;268;;;289:61;;343:4;335:6;331:17;321:27;;289:61;396:2;388:6;385:14;365:18;362:38;359:161;;442:10;437:3;433:20;430:1;423:31;477:4;474:1;467:15;505:4;502:1;495:15;359:161;;146:380;;;:::o;657:545::-;759:2;754:3;751:11;748:448;;;795:1;820:5;816:2;809:17;865:4;861:2;851:19;935:2;923:10;919:19;916:1;912:27;906:4;902:38;971:4;959:10;956:20;953:47;;;-1:-1:-1;994:4:136;953:47;1049:2;1044:3;1040:12;1037:1;1033:20;1027:4;1023:31;1013:41;;1104:82;1122:2;1115:5;1112:13;1104:82;;;1167:17;;;1148:1;1137:13;1104:82;;;1108:3;;;748:448;657:545;;;:::o;1378:1352::-;1498:10;;-1:-1:-1;;;;;1520:30:136;;1517:56;;;1553:18;;:::i;:::-;1582:97;1672:6;1632:38;1664:4;1658:11;1632:38;:::i;:::-;1626:4;1582:97;:::i;:::-;1734:4;;1798:2;1787:14;;1815:1;1810:663;;;;2517:1;2534:6;2531:89;;;-1:-1:-1;2586:19:136;;;2580:26;2531:89;-1:-1:-1;;1335:1:136;1331:11;;;1327:24;1323:29;1313:40;1359:1;1355:11;;;1310:57;2633:81;;1780:944;;1810:663;604:1;597:14;;;641:4;628:18;;-1:-1:-1;;1846:20:136;;;1964:236;1978:7;1975:1;1972:14;1964:236;;;2067:19;;;2061:26;2046:42;;2159:27;;;;2127:1;2115:14;;;;1994:19;;1964:236;;;1968:3;2228:6;2219:7;2216:19;2213:201;;;2289:19;;;2283:26;-1:-1:-1;;2372:1:136;2368:14;;;2384:3;2364:24;2360:37;2356:42;2341:58;2326:74;;2213:201;-1:-1:-1;;;;;2460:1:136;2444:14;;;2440:22;2427:36;;-1:-1:-1;1378:1352:136:o;:::-;914:5508:130;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106101cc5760003560e01c8062b1fad7146101d1578063030e4006146101f65780630688b135146101fe5780630f166ad414610206578063174eedde1461020c5780631b96dce6146102135780631e7bcb2e1461021b5780632e0f26251461022357806337d1c40414610240578063392f37e9146102535780633f26479e146102695780634bf4ba2114610272578063587c1243146102875780635aff59991461028f57806366d003ac146102975780636a38dd0a1461029f57806370a32944146102a757806374d9284e1461020c578063759c9a86146102af57806379e62d0d146102b75780637b2edf32146102bf5780637cbe79ed146102c7578063829e423f1461020c57806385294f18146102cf5780638c7408c41461020c5780638e0d1a50146102e25780638e3c2493146102ea578063a0cf0aea146102f2578063a407c67a1461030d578063aa3744bd14610315578063c36e336b1461031d578063d1e82b581461033d578063d1f2cd8814610345578063d5bee9f51461034d578063da4bf08714610355578063dac4eb161461035d578063e070e0ab14610365578063e99ce91114610378578063ef0d790f1461038b575b600080fd5b6101d9610393565b6040516001600160a01b0390911681526020015b60405180910390f35b6101d96103c8565b6101d96103fe565b306101d9565b60006101d9565b6101d961042b565b6101d961045c565b610232670de0b6b3a764000081565b6040519081526020016101ed565b61023261024e366004611285565b61048f565b61025b61054f565b6040516101ed9291906113ad565b61023261271081565b61027a6105e6565b6040516101ed9190611412565b6101d9610609565b6101d961063c565b6101d961066f565b6101d961069b565b61027a6106cb565b6101d9610763565b61027a610792565b6101d96107fa565b6101d961082d565b6102326102dd3660046114d8565b61085a565b6101d9610889565b6101d96108b6565b6101d973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b61027a6108e9565b6101d9610951565b61033061032b3660046115bd565b61097e565b6040516101ed9190611663565b6101d9610ad0565b6101d9610b03565b6101d9610b34565b6101d9610b62565b6101d9610b92565b610232610373366004611752565b610bc3565b610232610386366004611808565b610dc8565b6101d9610e56565b60006103c36040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610e88565b905090565b60006103c360405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610e88565b60006103c36040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610e88565b60006103c36040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610e88565b600b54600090610544576040805180820182526001815281518083018352600c81526b506f6f6c50726f66696c653160a01b6020828101919091528201529051633a92f65f60e01b81526001600160a01b03861691633a92f65f916104fd916002918890889060040161183a565b6020604051808303816000875af115801561051c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054091906118bb565b600b555b50600b549392505050565b60098054600a8054919291610563906118d4565b80601f016020809104026020016040519081016040528092919081815260200182805461058f906118d4565b80156105dc5780601f106105b1576101008083540402835291602001916105dc565b820191906000526020600020905b8154815290600101906020018083116105bf57829003601f168201915b5050505050905082565b604080516002808252606080830184529260208301908036833701905050905090565b60006103c36040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610e88565b60006103c36040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610e88565b60006103c3604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610e88565b60006103c36040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506106f861045c565b8160008151811061070b5761070b61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336107fa565b816001815181106107465761074661190e565b6001600160a01b0390921660209283029190910190910152919050565b60006103c36040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610e88565b604080516002808252606080830184529260009291906020830190803683370190505090506107bf610393565b816000815181106107d2576107d261190e565b60200260200101906001600160a01b031690816001600160a01b03168152505061073361069b565b60006103c36040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610e88565b60006103c36040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610e88565b600061087c89898989898989604051806020016040528060008152508a610bc3565b9998505050505050505050565b60006103c36040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610e88565b60006103c36040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610e88565b60408051600280825260608083018452926000929190602083019080368337019050509050610916610609565b816000815181106109295761092961190e565b60200260200101906001600160a01b031690816001600160a01b0316815250506107336108b6565b60006103c36040518060400160405280600a815260200169726563697069656e743160b01b815250610e88565b610986611151565b610997670de0a46bc207d800610e9a565b8151604001526109ae6702c68af0bb140000610e9a565b8151526109c166038d7ea4c68000610e9a565b815160209081019190915281516702c68af0bb1400006060909101526001600160a01b03871660a08301528101856002811115610a0057610a00611629565b90816002811115610a1357610a13611629565b90525060408101846003811115610a2c57610a2c611629565b90816003811115610a3f57610a3f611629565b9052508251600003610a6157610a5e670de0b6b3a764000060c861193a565b83525b6060810183905260808101829052604080516001808252818301909252906020808301908036833750505060e082018190528051600091908290610aa757610aa761190e565b60200260200101906001600160a01b031690816001600160a01b03168152505095945050505050565b60006103c36040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610e88565b60006103c36040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610e88565b60006103c36040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610e88565b60006103c36040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610e88565b60006103c36040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610e88565b600080610bd3898787878761097e565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610c0d57610c0d61190e565b60200260200101906001600160a01b031690816001600160a01b0316815250503381600181518110610c4157610c4161190e565b6001600160a01b03928316602091820292909201015273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee90891615610c775750875b8c6001600160a01b031663e1007d4a610c988c610c92610889565b8661048f565b8e86604051602001610caa9190611663565b6040516020818303038152906040528560006009896040518863ffffffff1660e01b8152600401610ce19796959493929190611951565b6020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2491906118bb565b9350876002811115610d3857610d38611629565b8c6001600160a01b031663351d9f966040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9a9190611a61565b6002811115610dab57610dab611629565b14610db857610db8611a7e565b5050509998505050505050505050565b60008481610de6610de062989680608087901b611a94565b83610eb1565b905060806001607f1b610dfc8662989680611ab6565b610e0a84600160801b611ab6565b610e17629896808a61193a565b610e21919061193a565b610e2b9190611a94565b610e35898561193a565b610e3f9190611ac9565b610e499190611ac9565b901c979650505050505050565b60006103c360405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b6000610e9382610f5e565b5092915050565b6000610eab64174876e80083611a94565b92915050565b6000600160801b8310610f0a5760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b60448201526064015b60405180910390fd5b50600160801b82825b8015610f565780600116600003610f3857610f2e8283611074565b915060011c610f13565b610f428383611074565b9250610f4f600182611ab6565b9050610f13565b505092915050565b60008082604051602001610f729190611adc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015610fdd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110019190611af8565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061103d9085908790600401611b15565b600060405180830381600087803b15801561105757600080fd5b505af115801561106b573d6000803e3d6000fd5b50505050915091565b6000600160801b8311156110db5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610f01565b600160801b821061112d5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610f01565b60806001607f1b61113e848661193a565b6111489190611ac9565b901c9392505050565b6040518061010001604052806111886040518060800160405280600081526020016000815260200160008152602001600081525090565b815260200160008152602001600081526020016111b16040518060200160405280600081525090565b81526020016112016040518060c0016040528060006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b8152600060208201819052604082015260609081015290565b6001600160a01b03169052565b6001600160a01b038116811461123c57600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561127d5761127d61123f565b604052919050565b60008060006060848603121561129a57600080fd5b83356112a581611227565b92506020848101356112b681611227565b925060408501356001600160401b03808211156112d257600080fd5b818701915087601f8301126112e657600080fd5b8135818111156112f8576112f861123f565b8060051b9150611309848301611255565b818152918301840191848101908a84111561132357600080fd5b938501935b8385101561134d578435925061133d83611227565b8282529385019390850190611328565b8096505050505050509250925092565b60005b83811015611378578181015183820152602001611360565b50506000910152565b6000815180845261139981602086016020860161135d565b601f01601f19169290920160200192915050565b8281526040602082015260006113c66040830184611381565b949350505050565b600081518084526020808501945080840160005b838110156114075781516001600160a01b0316875295820195908201906001016113e2565b509495945050505050565b60208152600061142560208301846113ce565b9392505050565b6003811061123c57600080fd5b80356004811061144857600080fd5b919050565b600060c0828403121561145f57600080fd5b60405160c081016001600160401b03811182821017156114815761148161123f565b604052905080823561149281611227565b815260208301356114a281611227565b8060208301525060408301356040820152606083013560608201526080830135608082015260a083013560a08201525092915050565b6000806000806000806000806101a0898b0312156114f557600080fd5b883561150081611227565b9750602089013561151081611227565b9650604089013561152081611227565b9550606089013561153081611227565b9450608089013561154081611227565b935060a08901356115508161142c565b925061155e60c08a01611439565b915061156d8a60e08b0161144d565b90509295985092959890939650565b60006020828403121561158e57600080fd5b604051602081016001600160401b03811182821017156115b0576115b061123f565b6040529135825250919050565b600080600080600061014086880312156115d657600080fd5b85356115e181611227565b945060208601356115f18161142c565b93506115ff60408701611439565b925061160e876060880161157c565b915061161d876080880161144d565b90509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6003811061164f5761164f611629565b9052565b6004811061164f5761164f611629565b6020815260008251805160208401526020810151604084015260408101516060840152606081015160808401525060208301516116a360a084018261163f565b5060408301516116b660c0840182611653565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516117236101c084018261121a565b5060c08301516117376101e084018261121a565b5060e0830151610200838101526113c66102208401826113ce565b60008060008060008060008060006101c08a8c03121561177157600080fd5b893561177c81611227565b985060208a013561178c81611227565b975060408a013561179c81611227565b965060608a01356117ac81611227565b955060808a01356117bc81611227565b945060a08a01356117cc8161142c565b93506117da60c08b01611439565b92506117e98b60e08c0161157c565b91506117f98b6101008c0161144d565b90509295985092959850929598565b6000806000806080858703121561181e57600080fd5b5050823594602084013594506040840135936060013592509050565b84815260a06020820152600e60a08201526d506f6f6c2050726f66696c65203160901b60c082015260e06040820152835160e082015260006020850151604061010084015261188d610120840182611381565b6001600160a01b0386166060850152838103608085015290506118b081856113ce565b979650505050505050565b6000602082840312156118cd57600080fd5b5051919050565b600181811c908216806118e857607f821691505b60208210810361190857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417610eab57610eab611924565b8781526000602060018060a01b03808a168285015260e0604085015261197a60e085018a611381565b818916606086015287608086015284810360a08601528654815260019150818701604084830152600081548181861c9050858216806119ba57607f821691505b87821081036119d757634e487b7160e01b84526022600452602484fd5b604086018290526060860195508080156119f85760018114611a0e57611a39565b60ff198416875282151560051b87019450611a39565b60008681526020902060005b84811015611a3357815489820152908901908a01611a1a565b88019550505b5050505086810360c0880152611a4f81896113ce565b9e9d5050505050505050505050505050565b600060208284031215611a7357600080fd5b81516114258161142c565b634e487b7160e01b600052600160045260246000fd5b600082611ab157634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610eab57610eab611924565b80820180821115610eab57610eab611924565b60008251611aee81846020870161135d565b9190910192915050565b600060208284031215611b0a57600080fd5b815161142581611227565b6001600160a01b03831681526040602082018190526000906113c69083018461138156fea264697066735822122001e537a328e560bcb0c3d69d7eac640e5646e654df81a2d41b8f72da8743b31364736f6c63430008130033","sourceMap":"914:5508:130:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;287:32:136;;;269:51;;257:2;242:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;3126:109;;;:::i;2554:113::-;;;:::i;1105:43:130:-;;1140:8;1105:43;;;;;477:25:136;;;465:2;450:18;1105:43:130;331:177:136;1503:437:130;;;;;;:::i;:::-;;:::i;967:109::-;;;:::i;:::-;;;;;;;;:::i;1154:50::-;;1197:7;1154:50;;1331:118:15;;;:::i;:::-;;;;;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;1876:107::-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;2673:113::-;;;:::i;439:101::-;;;:::i;4608:578:130:-;;;;;;:::i;:::-;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;4412:75:9:-;;4445:42;4412:75;;3604:241:15;;;:::i;3938:101::-;;;:::i;1946:1182:130:-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;1644:113:15:-;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;3134:1468:130:-;;;;;;:::i;:::-;;:::i;6040:380::-;;;;;;:::i;:::-;;:::i;3241:119:15:-;;;:::i;1763:107::-;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;1503:437:130:-;1675:16;;1648:7;;1671:230;;1801:48;;;;;;;;1821:1;1801:48;;;;;;;;;;;;-1:-1:-1;;;1801:48:130;;;;;;;;;;;1740:150;;-1:-1:-1;;;1740:150:130;;-1:-1:-1;;;;;1740:22:130;;;;;:150;;1780:1;;1851:10;;1863:13;;1740:150;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1721:16;:169;1671:230;-1:-1:-1;1917:16:130;;1503:437;;;;;:::o;967:109::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;1876:107::-;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;4608:578:130:-;4899:14;4932:247;4956:4;4974:8;4996:17;5027:8;5049:5;5068:12;5094:11;5119:20;;;;;;;;5137:1;5119:20;;;5153:16;4932:10;:247::i;:::-;4925:254;4608:578;-1:-1:-1;;;;;;;;;4608:578:130:o;1537:101:15:-;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3604:241::-;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;1946:1182:130:-;2191:44;;:::i;:::-;2322:30;2336:15;2322:13;:30::i;:::-;2298:15;;:21;;:54;2406:24;2420:9;2406:13;:24::i;:::-;2379:15;;:51;2484:26;2498:11;2484:13;:26::i;:::-;2459:15;;:22;;;;:51;;;;2541:15;;2578:9;2541:34;;;;:46;-1:-1:-1;;;;;2604:44:130;;:24;;;:44;2658:19;;2680:12;2658:34;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2702:18:130;;;2723:11;2702:32;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;2749:21:130;;;:26;2745:182;;2902:14;1140:8;2902:3;:14;:::i;:::-;2878:38;;2745:182;2936:18;;;:32;;;2978:23;;;:42;;;3056:16;;;3070:1;3056:16;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3030:23:130;;;:42;;;3082:26;;3119:1;;3030:42;3119:1;;3082:26;;;;:::i;:::-;;;;;;:39;-1:-1:-1;;;;;3082:39:130;;;-1:-1:-1;;;;;3082:39:130;;;;;1946:1182;;;;;;;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;3134:1468:130:-;3471:14;3548:44;3607:86;3617:17;3636:12;3650:11;3663;3676:16;3607:9;:86::i;:::-;3738:16;;;3752:1;3738:16;;;;;;;;3548:145;;-1:-1:-1;3704:31:130;;3738:16;;;;;;;;;;;;-1:-1:-1;3738:16:130;3704:50;;3792:4;3764:14;3779:1;3764:17;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1;;;;;3764:33:130;;;-1:-1:-1;;;;;3764:33:130;;;;;3835:10;3807:14;3822:1;3807:17;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3807:39:130;;;:17;;;;;;;;;:39;4445:42:9;;4133:19:130;;;4129:64;;-1:-1:-1;4177:5:130;4129:64;4211:4;-1:-1:-1;;;;;4211:33:130;;4299:55;4315:8;4325:12;:10;:12::i;:::-;4339:14;4299:15;:55::i;:::-;4376:8;4410:6;4399:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;4431:6;4451:1;4466:8;4488:14;4211:301;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4202:310;;4582:12;4530:64;;;;;;;;:::i;:::-;4553:8;-1:-1:-1;;;;;4530:46:130;;:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:64;;;;;;;;:::i;:::-;;4523:72;;;;:::i;:::-;3487:1115;;;3134:1468;;;;;;;;;;;:::o;6040:380::-;6190:7;6225:11;6190:7;6266:27;6271:18;1381:7;6281:3;6272:12;;;6271:18;:::i;:::-;6291:1;6266:4;:27::i;:::-;6246:47;-1:-1:-1;6410:3:130;-1:-1:-1;;;6383:9:130;6387:5;1381:7;6383:9;:::i;:::-;6358:19;6368:9;-1:-1:-1;;;6358:19:130;:::i;:::-;6340:14;1381:7;6340:10;:14;:::i;:::-;:38;;;;:::i;:::-;6339:54;;;;:::i;:::-;6313:21;6325:9;6313;:21;:::i;:::-;6312:82;;;;:::i;:::-;6311:94;;;;:::i;:::-;6310:103;;;6040:380;-1:-1:-1;;;;;;;6040:380:130:o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;5192:114:130:-;5255:7;5281:18;5291:8;5281:7;:18;:::i;:::-;5274:25;5192:114;-1:-1:-1;;5192:114:130:o;5587:447::-;5648:15;-1:-1:-1;;;5683:2:130;:12;5675:53;;;;-1:-1:-1;;;5675:53:130;;18530:2:136;5675:53:130;;;18512:21:136;18569:2;18549:18;;;18542:30;-1:-1:-1;;;18588:18:136;;;18581:58;18656:18;;5675:53:130;;;;;;;;;-1:-1:-1;;;;5750:2:130;5774;5813:215;5820:5;;5813:215;;5845:1;5849;5845:5;5854:1;5845:10;5841:177;;5879:10;5884:1;5887;5879:4;:10::i;:::-;5875:14;-1:-1:-1;5913:1:130;5907:7;5813:215;;5841:177;5963:16;5968:7;5977:1;5963:4;:16::i;:::-;5953:26;-1:-1:-1;5997:6:130;6002:1;5997:6;;:::i;:::-;;;5813:215;;;5665:369;;5587:447;;;;:::o;20158:242:23:-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;477:25:136;;;20293:33:23;-1:-1:-1;20344:7:23;;;;450:18:136;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;5312:269:130:-;5373:15;-1:-1:-1;;;5408:2:130;:13;;5400:66;;;;-1:-1:-1;;;5400:66:130;;19770:2:136;5400:66:130;;;19752:21:136;19809:2;19789:18;;;19782:30;19848:34;19828:18;;;19821:62;-1:-1:-1;;;19899:18:136;;;19892:38;19947:19;;5400:66:130;19568:404:136;5400:66:130;-1:-1:-1;;;5484:2:130;:12;5476:53;;;;-1:-1:-1;;;5476:53:130;;20179:2:136;5476:53:130;;;20161:21:136;20218:2;20198:18;;;20191:30;-1:-1:-1;;;20237:18:136;;;20230:58;20305:18;;5476:53:130;19977:352:136;5476:53:130;5571:3;-1:-1:-1;;;5548:7:130;5553:2;5548;:7;:::i;:::-;5547:19;;;;:::i;:::-;5546:28;;;5312:269;-1:-1:-1;;;5312:269:130:o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:104:136:-;-1:-1:-1;;;;;80:31:136;68:44;;14:104::o;513:142::-;-1:-1:-1;;;;;599:31:136;;589:42;;579:70;;645:1;642;635:12;579:70;513:142;:::o;660:127::-;721:10;716:3;712:20;709:1;702:31;752:4;749:1;742:15;776:4;773:1;766:15;792:275;863:2;857:9;928:2;909:13;;-1:-1:-1;;905:27:136;893:40;;-1:-1:-1;;;;;948:34:136;;984:22;;;945:62;942:88;;;1010:18;;:::i;:::-;1046:2;1039:22;792:275;;-1:-1:-1;792:275:136:o;1072:1354::-;1192:6;1200;1208;1261:2;1249:9;1240:7;1236:23;1232:32;1229:52;;;1277:1;1274;1267:12;1229:52;1316:9;1303:23;1335:42;1371:5;1335:42;:::i;:::-;1396:5;-1:-1:-1;1420:2:136;1459:18;;;1446:32;1487:44;1446:32;1487:44;:::i;:::-;1550:7;-1:-1:-1;1608:2:136;1593:18;;1580:32;-1:-1:-1;;;;;1661:14:136;;;1658:34;;;1688:1;1685;1678:12;1658:34;1726:6;1715:9;1711:22;1701:32;;1771:7;1764:4;1760:2;1756:13;1752:27;1742:55;;1793:1;1790;1783:12;1742:55;1829:2;1816:16;1851:2;1847;1844:10;1841:36;;;1857:18;;:::i;:::-;1903:2;1900:1;1896:10;1886:20;;1926:28;1950:2;1946;1942:11;1926:28;:::i;:::-;1988:15;;;2058:11;;;2054:20;;;2019:12;;;;2086:19;;;2083:39;;;2118:1;2115;2108:12;2083:39;2142:11;;;;2162:234;2178:6;2173:3;2170:15;2162:234;;;2260:3;2247:17;2232:32;;2277:44;2313:7;2277:44;:::i;:::-;2334:20;;;2195:12;;;;2374;;;;2162:234;;;2415:5;2405:15;;;;;;;;1072:1354;;;;;:::o;2768:250::-;2853:1;2863:113;2877:6;2874:1;2871:13;2863:113;;;2953:11;;;2947:18;2934:11;;;2927:39;2899:2;2892:10;2863:113;;;-1:-1:-1;;3010:1:136;2992:16;;2985:27;2768:250::o;3023:271::-;3065:3;3103:5;3097:12;3130:6;3125:3;3118:19;3146:76;3215:6;3208:4;3203:3;3199:14;3192:4;3185:5;3181:16;3146:76;:::i;:::-;3276:2;3255:15;-1:-1:-1;;3251:29:136;3242:39;;;;3283:4;3238:50;;3023:271;-1:-1:-1;;3023:271:136:o;3299:291::-;3476:6;3465:9;3458:25;3519:2;3514;3503:9;3499:18;3492:30;3439:4;3539:45;3580:2;3569:9;3565:18;3557:6;3539:45;:::i;:::-;3531:53;3299:291;-1:-1:-1;;;;3299:291:136:o;3595:461::-;3648:3;3686:5;3680:12;3713:6;3708:3;3701:19;3739:4;3768:2;3763:3;3759:12;3752:19;;3805:2;3798:5;3794:14;3826:1;3836:195;3850:6;3847:1;3844:13;3836:195;;;3915:13;;-1:-1:-1;;;;;3911:39:136;3899:52;;3971:12;;;;4006:15;;;;3947:1;3865:9;3836:195;;;-1:-1:-1;4047:3:136;;3595:461;-1:-1:-1;;;;;3595:461:136:o;4061:261::-;4240:2;4229:9;4222:21;4203:4;4260:56;4312:2;4301:9;4297:18;4289:6;4260:56;:::i;:::-;4252:64;4061:261;-1:-1:-1;;;4061:261:136:o;4327:111::-;4412:1;4405:5;4402:12;4392:40;;4428:1;4425;4418:12;4443:152;4520:20;;4569:1;4559:12;;4549:40;;4585:1;4582;4575:12;4549:40;4443:152;;;:::o;4600:917::-;4663:5;4711:4;4699:9;4694:3;4690:19;4686:30;4683:50;;;4729:1;4726;4719:12;4683:50;4762:2;4756:9;4804:4;4792:17;;-1:-1:-1;;;;;4824:34:136;;4860:22;;;4821:62;4818:88;;;4886:18;;:::i;:::-;4922:2;4915:22;4955:6;-1:-1:-1;4955:6:136;4985:23;;5017:44;4985:23;5017:44;:::i;:::-;5070:23;;5145:2;5130:18;;5117:32;5158:44;5117:32;5158:44;:::i;:::-;5235:7;5230:2;5222:6;5218:15;5211:32;;5304:2;5293:9;5289:18;5276:32;5271:2;5263:6;5259:15;5252:57;5370:2;5359:9;5355:18;5342:32;5337:2;5329:6;5325:15;5318:57;5437:3;5426:9;5422:19;5409:33;5403:3;5395:6;5391:16;5384:59;5505:3;5494:9;5490:19;5477:33;5471:3;5463:6;5459:16;5452:59;;4600:917;;;;:::o;5522:1305::-;5745:6;5753;5761;5769;5777;5785;5793;5801;5854:3;5842:9;5833:7;5829:23;5825:33;5822:53;;;5871:1;5868;5861:12;5822:53;5910:9;5897:23;5929:42;5965:5;5929:42;:::i;:::-;5990:5;-1:-1:-1;6047:2:136;6032:18;;6019:32;6060:44;6019:32;6060:44;:::i;:::-;6123:7;-1:-1:-1;6182:2:136;6167:18;;6154:32;6195:44;6154:32;6195:44;:::i;:::-;6258:7;-1:-1:-1;6317:2:136;6302:18;;6289:32;6330:44;6289:32;6330:44;:::i;:::-;6393:7;-1:-1:-1;6452:3:136;6437:19;;6424:33;6466:44;6424:33;6466:44;:::i;:::-;6529:7;-1:-1:-1;6588:3:136;6573:19;;6560:33;6602:43;6560:33;6602:43;:::i;:::-;6664:7;-1:-1:-1;6690:48:136;6733:3;6718:19;;6690:48;:::i;:::-;6680:58;;6757:64;6813:7;6807:3;6796:9;6792:19;6757:64;:::i;:::-;6747:74;;5522:1305;;;;;;;;;;;:::o;6832:416::-;6896:5;6944:4;6932:9;6927:3;6923:19;6919:30;6916:50;;;6962:1;6959;6952:12;6916:50;6995:2;6989:9;7037:4;7025:17;;-1:-1:-1;;;;;7057:34:136;;7093:22;;;7054:62;7051:88;;;7119:18;;:::i;:::-;7155:2;7148:22;7218:23;;7203:39;;-1:-1:-1;7188:6:136;6832:416;-1:-1:-1;6832:416:136:o;7253:799::-;7454:6;7462;7470;7478;7486;7539:3;7527:9;7518:7;7514:23;7510:33;7507:53;;;7556:1;7553;7546:12;7507:53;7595:9;7582:23;7614:42;7650:5;7614:42;:::i;:::-;7675:5;-1:-1:-1;7732:2:136;7717:18;;7704:32;7745:43;7704:32;7745:43;:::i;:::-;7807:7;-1:-1:-1;7833:47:136;7876:2;7861:18;;7833:47;:::i;:::-;7823:57;;7899:64;7955:7;7950:2;7939:9;7935:18;7899:64;:::i;:::-;7889:74;;7982:64;8038:7;8032:3;8021:9;8017:19;7982:64;:::i;:::-;7972:74;;7253:799;;;;;;;;:::o;8057:127::-;8118:10;8113:3;8109:20;8106:1;8099:31;8149:4;8146:1;8139:15;8173:4;8170:1;8163:15;8189:143;8273:1;8266:5;8263:12;8253:46;;8279:18;;:::i;:::-;8308;;8189:143::o;8337:142::-;8420:1;8413:5;8410:12;8400:46;;8426:18;;:::i;9498:1444::-;9725:2;9714:9;9707:21;9688:4;9753:6;9747:13;9802:2;9796:9;9791:2;9780:9;9776:18;9769:37;9856:2;9852;9848:11;9842:18;9837:2;9826:9;9822:18;9815:46;9911:2;9907;9903:11;9897:18;9892:2;9881:9;9877:18;9870:46;9967:2;9963;9959:11;9953:18;9947:3;9936:9;9932:19;9925:47;;10019:2;10011:6;10007:15;10001:22;10032:63;10090:3;10079:9;10075:19;10061:12;10032:63;:::i;:::-;;10144:2;10136:6;10132:15;10126:22;10157:64;10216:3;10205:9;10201:19;10185:14;10157:64;:::i;:::-;-1:-1:-1;10270:2:136;10258:15;;;10252:22;8559:12;10350:3;10335:19;;8547:25;10404:3;10392:16;;;10386:23;8703:12;;-1:-1:-1;;;;;8699:21:136;;;10484:3;10469:19;;8687:34;8774:4;8763:16;;8757:23;8753:32;8737:14;;;8730:56;8835:4;8824:16;;8818:23;8802:14;;;8795:47;8880:16;;;8874:23;8858:14;;;8851:47;8936:16;;8930:23;8914:14;;;8907:47;8667:3;8992:16;;;8986:23;8970:14;;;8963:47;10526:16;;10520:23;10552:55;10602:3;10587:19;;10520:23;10552:55;:::i;:::-;;10656:3;10648:6;10644:16;10638:23;10670:55;10720:3;10709:9;10705:19;10689:14;10670:55;:::i;:::-;-1:-1:-1;10774:3:136;10762:16;;10756:23;10798:6;10820:18;;;10813:30;10860:76;10931:3;10916:19;;10756:23;10860:76;:::i;11171:1442::-;11439:6;11447;11455;11463;11471;11479;11487;11495;11503;11556:3;11544:9;11535:7;11531:23;11527:33;11524:53;;;11573:1;11570;11563:12;11524:53;11612:9;11599:23;11631:42;11667:5;11631:42;:::i;:::-;11692:5;-1:-1:-1;11749:2:136;11734:18;;11721:32;11762:44;11721:32;11762:44;:::i;:::-;11825:7;-1:-1:-1;11884:2:136;11869:18;;11856:32;11897:44;11856:32;11897:44;:::i;:::-;11960:7;-1:-1:-1;12019:2:136;12004:18;;11991:32;12032:44;11991:32;12032:44;:::i;:::-;12095:7;-1:-1:-1;12154:3:136;12139:19;;12126:33;12168:44;12126:33;12168:44;:::i;:::-;12231:7;-1:-1:-1;12290:3:136;12275:19;;12262:33;12304:43;12262:33;12304:43;:::i;:::-;12366:7;-1:-1:-1;12392:48:136;12435:3;12420:19;;12392:48;:::i;:::-;12382:58;;12459:65;12516:7;12510:3;12499:9;12495:19;12459:65;:::i;:::-;12449:75;;12543:64;12599:7;12593:3;12582:9;12578:19;12543:64;:::i;:::-;12533:74;;11171:1442;;;;;;;;;;;:::o;12618:385::-;12704:6;12712;12720;12728;12781:3;12769:9;12760:7;12756:23;12752:33;12749:53;;;12798:1;12795;12788:12;12749:53;-1:-1:-1;;12821:23:136;;;12891:2;12876:18;;12863:32;;-1:-1:-1;12942:2:136;12927:18;;12914:32;;12993:2;12978:18;12965:32;;-1:-1:-1;12618:385:136;-1:-1:-1;12618:385:136:o;13008:1009::-;13432:6;13421:9;13414:25;13475:3;13470:2;13459:9;13455:18;13448:31;13516:2;13510:3;13499:9;13495:19;13488:31;-1:-1:-1;;;13550:3:136;13539:9;13535:19;13528:45;13609:3;13604:2;13593:9;13589:18;13582:31;13656:6;13650:13;13644:3;13633:9;13629:19;13622:42;13395:4;13711:2;13703:6;13699:15;13693:22;13752:2;13746:3;13735:9;13731:19;13724:31;13775:52;13822:3;13811:9;13807:19;13793:12;13775:52;:::i;:::-;-1:-1:-1;;;;;13863:32:136;;13858:2;13843:18;;13836:60;13933:19;;;13927:3;13912:19;;13905:48;13764:63;-1:-1:-1;13970:41:136;13764:63;13999:6;13970:41;:::i;:::-;13962:49;13008:1009;-1:-1:-1;;;;;;;13008:1009:136:o;14022:184::-;14092:6;14145:2;14133:9;14124:7;14120:23;14116:32;14113:52;;;14161:1;14158;14151:12;14113:52;-1:-1:-1;14184:16:136;;14022:184;-1:-1:-1;14022:184:136:o;14211:380::-;14290:1;14286:12;;;;14333;;;14354:61;;14408:4;14400:6;14396:17;14386:27;;14354:61;14461:2;14453:6;14450:14;14430:18;14427:38;14424:161;;14507:10;14502:3;14498:20;14495:1;14488:31;14542:4;14539:1;14532:15;14570:4;14567:1;14560:15;14424:161;;14211:380;;;:::o;14596:127::-;14657:10;14652:3;14648:20;14645:1;14638:31;14688:4;14685:1;14678:15;14712:4;14709:1;14702:15;14728:127;14789:10;14784:3;14780:20;14777:1;14770:31;14820:4;14817:1;14810:15;14844:4;14841:1;14834:15;14860:168;14933:9;;;14964;;14981:15;;;14975:22;;14961:37;14951:71;;15002:18;;:::i;15159:2074::-;15581:6;15570:9;15563:25;15544:4;15607:2;15645:1;15641;15636:3;15632:11;15628:19;15695:2;15687:6;15683:15;15678:2;15667:9;15663:18;15656:43;15735:3;15730:2;15719:9;15715:18;15708:31;15762:46;15803:3;15792:9;15788:19;15780:6;15762:46;:::i;:::-;15856:2;15848:6;15844:15;15839:2;15828:9;15824:18;15817:43;15897:6;15891:3;15880:9;15876:19;15869:35;15953:9;15945:6;15941:22;15935:3;15924:9;15920:19;15913:51;15994:6;15988:13;15980:6;15973:29;16021:4;16011:14;;16066:2;16058:6;16054:15;16102:2;16097;16089:6;16085:15;16078:27;16125:1;16158:12;16152:19;16194:3;16224:9;16220:2;16216:18;16206:28;;16284:2;16273:9;16269:18;16306;16296:61;;16350:4;16342:6;16338:17;16328:27;;16296:61;16403:2;16395:6;16392:14;16372:18;16369:38;16366:165;;-1:-1:-1;;;16430:33:136;;16486:4;16483:1;16476:15;16516:4;16437:3;16504:17;16366:165;16599:2;16587:15;;2700:19;;;2743:14;;;16540:71;-1:-1:-1;16627:18:136;16654:128;;;;16796:1;16791:321;;;;16620:492;;16654:128;-1:-1:-1;;16687:24:136;;16675:37;;16755:14;;16748:22;16745:1;16741:30;16732:40;;;-1:-1:-1;16654:128:136;;16791:321;15106:1;15099:14;;;15143:4;15130:18;;16892:1;16906:165;16920:6;16917:1;16914:13;16906:165;;;16998:14;;16985:11;;;16978:35;17041:16;;;;16935:10;;16906:165;;;17091:11;;;-1:-1:-1;;16620:492:136;;;;;17158:9;17153:3;17149:19;17143:3;17132:9;17128:19;17121:48;17186:41;17223:3;17215:6;17186:41;:::i;:::-;17178:49;15159:2074;-1:-1:-1;;;;;;;;;;;;;;15159:2074:136:o;17427:279::-;17515:6;17568:2;17556:9;17547:7;17543:23;17539:32;17536:52;;;17584:1;17581;17574:12;17536:52;17616:9;17610:16;17635:41;17670:5;17635:41;:::i;17711:127::-;17772:10;17767:3;17763:20;17760:1;17753:31;17803:4;17800:1;17793:15;17827:4;17824:1;17817:15;17843:217;17883:1;17909;17899:132;;17953:10;17948:3;17944:20;17941:1;17934:31;17988:4;17985:1;17978:15;18016:4;18013:1;18006:15;17899:132;-1:-1:-1;18045:9:136;;17843:217::o;18065:128::-;18132:9;;;18153:11;;;18150:37;;;18167:18;;:::i;18198:125::-;18263:9;;;18284:10;;;18281:36;;;18297:18;;:::i;18685:289::-;18816:3;18854:6;18848:13;18870:66;18929:6;18924:3;18917:4;18909:6;18905:17;18870:66;:::i;:::-;18952:16;;;;;18685:289;-1:-1:-1;;18685:289:136:o;18979:262::-;19049:6;19102:2;19090:9;19081:7;19077:23;19073:32;19070:52;;;19118:1;19115;19108:12;19070:52;19150:9;19144:16;19169:42;19205:5;19169:42;:::i;19246:317::-;-1:-1:-1;;;;;19423:32:136;;19405:51;;19492:2;19487;19472:18;;19465:30;;;-1:-1:-1;;19512:45:136;;19538:18;;19530:6;19512:45;:::i","linkReferences":{}},"methodIdentifiers":{"DECIMALS()":"2e0f2625","NATIVE()":"a0cf0aea","PERCENTAGE_SCALE()":"3f26479e","_calculateConviction(uint256,uint256,uint256,uint256)":"e99ce911","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","createPool(address,address,address,address,address,uint8,uint8,(address,address,uint256,uint256,uint256,uint256))":"85294f18","createPool(address,address,address,address,address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"e070e0ab","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256))":"c36e336b","local()":"0f166ad4","metadata()":"392f37e9","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","poolProfile_id1(address,address,address[])":"37d1c404","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry_owner()":"dac4eb16"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"DECIMALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PERCENTAGE_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"}],\"name\":\"_calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract Allo\",\"name\":\"allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"}],\"name\":\"getParams\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"params\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"metadata\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"registry\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"pool_admin\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"pool_managers\",\"type\":\"address[]\"}],\"name\":\"poolProfile_id1\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/test/CVStrategyHelpers.sol\":\"CVStrategyHelpers\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Allo.sol\":{\"keccak256\":\"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c\",\"dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd\"]},\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/auth/Ownable.sol\":{\"keccak256\":\"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30\",\"dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol\":{\"keccak256\":\"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f\",\"dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]},\"pkg/contracts/test/CVStrategyHelpers.sol\":{\"keccak256\":\"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e\",\"dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PERCENTAGE_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"}],"stateMutability":"pure","type":"function","name":"_calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"contract Allo","name":"allo","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"token","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]}],"stateMutability":"pure","type":"function","name":"getParams","outputs":[{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"metadata","outputs":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"contract IRegistry","name":"registry","type":"address"},{"internalType":"address","name":"pool_admin","type":"address"},{"internalType":"address[]","name":"pool_managers","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"poolProfile_id1","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/test/CVStrategyHelpers.sol":"CVStrategyHelpers"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Allo.sol":{"keccak256":"0x6eadd7d37d010ad736e5b9fd25bd2083e430757d72b5873357cd7ee41d7fc21a","urls":["bzz-raw://add326fecd1aac73bf91e634a9b11ab9a19b99a73616e44d5c79261bfbfb3a7c","dweb:/ipfs/QmTF7WYUpSTF6EPWtB6CW9BPJAjWeZDtNjWGME4VHrarZd"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/auth/Ownable.sol":{"keccak256":"0xd916b6ca098f26e08eff367c6fc1853956839d8d1c9d2df715784b6dec99889b","urls":["bzz-raw://7a9d8137ec1f5fb4210fbebeafa002f5b9cab28579445bd8281c56862e63aa30","dweb:/ipfs/QmPLBcT1JkBKa4jK6qNficwZx2uGG4MetPNErJArdX6G61"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/token/ERC20/IERC20Upgradeable.sol":{"keccak256":"0x0e1f0f5f62f67a881cd1a9597acbc0a5e4071f3c2c10449a183b922ae7272e3f","urls":["bzz-raw://c25f742ff154998d19a669e2508c3597b363e123ce9144cd0fcf6521229f401f","dweb:/ipfs/QmQXRuFzStEWqeEPbhQU6cAg9PaSowxJVo4PDKyRod7dco"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"},"pkg/contracts/test/CVStrategyHelpers.sol":{"keccak256":"0x082384255b863be3fb26aec66adb19083a3b8f93007e74c0af8bf8bd7fa5d15d","urls":["bzz-raw://7f72b03dac8a4121cd3fa5b2bb6d02582490727c77a07d991cd0318e1238a74e","dweb:/ipfs/QmWstkXhdxh8JJfy5NmwsZZiDmHkc4saJHkeDsiSMxeYgw"],"license":"AGPL-3.0-or-later"}},"version":1},"storageLayout":{"storage":[{"astId":9278,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"gasMeteringOff","offset":0,"slot":"0","type":"t_bool"},{"astId":11315,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"stdstore","offset":0,"slot":"1","type":"t_struct(StdStorage)13196_storage"},{"astId":75894,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"metadata","offset":0,"slot":"9","type":"t_struct(Metadata)3098_storage"},{"astId":75906,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_poolProfileId1_","offset":0,"slot":"11","type":"t_bytes32"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/test/CVStrategyHelpers.sol","id":76419,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[65628],"CVStrategyHelpers":[76418],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"IRegistry":[2802],"Metadata":[3098],"Native":[3106],"PointSystem":[65545],"PointSystemConfig":[65614],"ProposalType":[65540],"console":[29510]},"nodeType":"SourceUnit","src":"46:6377:130","nodes":[{"id":75862,"nodeType":"PragmaDirective","src":"46:24:130","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":75863,"nodeType":"ImportDirective","src":"72:31:130","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":76419,"sourceUnit":29511,"symbolAliases":[],"unitAlias":""},{"id":75865,"nodeType":"ImportDirective","src":"104:53:130","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","file":"allo-v2-contracts/core/Allo.sol","nameLocation":"-1:-1:-1","scope":76419,"sourceUnit":1391,"symbolAliases":[{"foreign":{"id":75864,"name":"Allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1390,"src":"112:4:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75874,"nodeType":"ImportDirective","src":"376:230:130","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"../src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":76419,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":75866,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"389:14:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75867,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"409:14:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75868,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"429:12:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75869,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"447:11:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75870,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"464:14:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75871,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"484:17:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75872,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"507:16:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75873,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"529:30:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75876,"nodeType":"ImportDirective","src":"607:84:130","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":76419,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":75875,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"615:30:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75878,"nodeType":"ImportDirective","src":"692:67:130","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"allo-v2-contracts/core/libraries/Native.sol","nameLocation":"-1:-1:-1","scope":76419,"sourceUnit":3107,"symbolAliases":[{"foreign":{"id":75877,"name":"Native","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3106,"src":"700:6:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75881,"nodeType":"ImportDirective","src":"760:84:130","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":76419,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":75879,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"768:9:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75880,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"779:8:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75883,"nodeType":"ImportDirective","src":"846:66:130","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"allo-v2-test/foundry/shared/Accounts.sol","nameLocation":"-1:-1:-1","scope":76419,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":75882,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"854:8:130","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":76418,"nodeType":"ContractDefinition","src":"914:5508:130","nodes":[{"id":75894,"nodeType":"VariableDeclaration","src":"967:109:130","nodes":[],"constant":false,"functionSelector":"392f37e9","mutability":"mutable","name":"metadata","nameLocation":"983:8:130","scope":76418,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata"},"typeName":{"id":75889,"nodeType":"UserDefinedTypeName","pathNode":{"id":75888,"name":"Metadata","nameLocations":["967:8:130"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"967:8:130"},"referencedDeclaration":3098,"src":"967:8:130","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"value":{"arguments":[{"hexValue":"31","id":75891,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1014:1:130","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","id":75892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1026:48:130","typeDescriptions":{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""},"value":"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_5132d0078161e899617508f56f10fe912a54664090fbe8853f8693be238f8d30","typeString":"literal_string \"QmW4zFLFJRN7J67EzNmdC2r2M9u2iJDha2fj5Gee6hJzSY\""}],"id":75890,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"994:8:130","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":75893,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1004:8:130","1017:7:130"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"994:82:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"visibility":"public"},{"id":75899,"nodeType":"VariableDeclaration","src":"1105:43:130","nodes":[],"constant":true,"functionSelector":"2e0f2625","mutability":"constant","name":"DECIMALS","nameLocation":"1129:8:130","scope":76418,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75895,"name":"uint256","nodeType":"ElementaryTypeName","src":"1105:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"id":75898,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75896,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1140:2:130","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3138","id":75897,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1146:2:130","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"1140:8:130","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"}},"visibility":"public"},{"id":75904,"nodeType":"VariableDeclaration","src":"1154:50:130","nodes":[],"constant":true,"functionSelector":"3f26479e","mutability":"constant","name":"PERCENTAGE_SCALE","nameLocation":"1178:16:130","scope":76418,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75900,"name":"uint256","nodeType":"ElementaryTypeName","src":"1154:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":75903,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1197:2:130","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":75902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1203:1:130","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"1197:7:130","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":75906,"nodeType":"VariableDeclaration","src":"1211:33:130","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId1_","nameLocation":"1228:16:130","scope":76418,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":75905,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1211:7:130","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":75911,"nodeType":"VariableDeclaration","src":"1251:44:130","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"1277:7:130","scope":76418,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75907,"name":"uint256","nodeType":"ElementaryTypeName","src":"1251:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"id":75910,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":75908,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1287:1:130","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313237","id":75909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1292:3:130","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"127"},"src":"1287:8:130","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"}},"visibility":"internal"},{"id":75916,"nodeType":"VariableDeclaration","src":"1301:44:130","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"1327:7:130","scope":76418,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75912,"name":"uint256","nodeType":"ElementaryTypeName","src":"1301:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"id":75915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":75913,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1337:1:130","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313238","id":75914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1342:3:130","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"1337:8:130","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"}},"visibility":"internal"},{"id":75921,"nodeType":"VariableDeclaration","src":"1351:37:130","nodes":[],"constant":true,"mutability":"constant","name":"D","nameLocation":"1377:1:130","scope":76418,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75917,"name":"uint256","nodeType":"ElementaryTypeName","src":"1351:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":75920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75918,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1381:2:130","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":75919,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1387:1:130","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"1381:7:130","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"visibility":"internal"},{"id":75959,"nodeType":"FunctionDefinition","src":"1503:437:130","nodes":[],"body":{"id":75958,"nodeType":"Block","src":"1661:279:130","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":75939,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75934,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75906,"src":"1675:16:130","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":75937,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1703:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75936,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1695:7:130","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":75935,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1695:7:130","typeDescriptions":{}}},"id":75938,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1695:10:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1675:30:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75955,"nodeType":"IfStatement","src":"1671:230:130","trueBody":{"id":75954,"nodeType":"Block","src":"1707:194:130","statements":[{"expression":{"id":75952,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75940,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75906,"src":"1721:16:130","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"32","id":75943,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1780:1:130","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"506f6f6c2050726f66696c652031","id":75944,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1783:16:130","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":75946,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1821:1:130","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":75947,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1833:14:130","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":75945,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1801:8:130","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":75948,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1811:8:130","1824:7:130"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1801:48:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":75949,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75926,"src":"1851:10:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75950,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75929,"src":"1863:13:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":75941,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75924,"src":"1740:8:130","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":75942,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1749:13:130","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"1740:22:130","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":75951,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1740:150:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1721:169:130","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":75953,"nodeType":"ExpressionStatement","src":"1721:169:130"}]}},{"expression":{"id":75956,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75906,"src":"1917:16:130","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":75933,"id":75957,"nodeType":"Return","src":"1910:23:130"}]},"functionSelector":"37d1c404","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id1","nameLocation":"1512:15:130","parameters":{"id":75930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75924,"mutability":"mutable","name":"registry","nameLocation":"1538:8:130","nodeType":"VariableDeclaration","scope":75959,"src":"1528:18:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75923,"nodeType":"UserDefinedTypeName","pathNode":{"id":75922,"name":"IRegistry","nameLocations":["1528:9:130"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"1528:9:130"},"referencedDeclaration":2802,"src":"1528:9:130","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75926,"mutability":"mutable","name":"pool_admin","nameLocation":"1556:10:130","nodeType":"VariableDeclaration","scope":75959,"src":"1548:18:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75925,"name":"address","nodeType":"ElementaryTypeName","src":"1548:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75929,"mutability":"mutable","name":"pool_managers","nameLocation":"1585:13:130","nodeType":"VariableDeclaration","scope":75959,"src":"1568:30:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":75927,"name":"address","nodeType":"ElementaryTypeName","src":"1568:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75928,"nodeType":"ArrayTypeName","src":"1568:9:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1527:72:130"},"returnParameters":{"id":75933,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75932,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75959,"src":"1648:7:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":75931,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1648:7:130","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1647:9:130"},"scope":76418,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":76083,"nodeType":"FunctionDefinition","src":"1946:1182:130","nodes":[],"body":{"id":76082,"nodeType":"Block","src":"2237:891:130","nodes":[],"statements":[{"expression":{"id":75987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75979,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2298:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75982,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2305:8:130","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2298:15:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75983,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2314:5:130","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"2298:21:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e39393939373939","id":75985,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2336:15:130","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"},"value":"0.9999799"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_999979900000000000_by_1","typeString":"int_const 999979900000000000"}],"id":75984,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76262,"src":"2322:13:130","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75986,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2322:30:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2298:54:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75988,"nodeType":"ExpressionStatement","src":"2298:54:130"},{"expression":{"id":75997,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75989,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2379:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75992,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2386:8:130","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2379:15:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":75993,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2395:8:130","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"2379:24:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e32","id":75995,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2420:9:130","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"}],"id":75994,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76262,"src":"2406:13:130","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2406:24:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2379:51:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75998,"nodeType":"ExpressionStatement","src":"2379:51:130"},{"expression":{"id":76007,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75999,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2459:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76002,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2466:8:130","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2459:15:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":76003,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2475:6:130","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"2459:22:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e303031","id":76005,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2498:11:130","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"},"value":"0.001"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"}],"id":76004,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76262,"src":"2484:13:130","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":76006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2484:26:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2459:51:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76008,"nodeType":"ExpressionStatement","src":"2459:51:130"},{"expression":{"id":76015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":76009,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2541:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76012,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2548:8:130","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"2541:15:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"id":76013,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2557:18:130","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"2541:34:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"302e32","id":76014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2578:9:130","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"},"src":"2541:46:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76016,"nodeType":"ExpressionStatement","src":"2541:46:130"},{"expression":{"id":76021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":76017,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2604:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76019,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2611:17:130","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"2604:24:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":76020,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75961,"src":"2631:17:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2604:44:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76022,"nodeType":"ExpressionStatement","src":"2604:44:130"},{"expression":{"id":76027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":76023,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2658:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76025,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2665:12:130","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"2658:19:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":76026,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75964,"src":"2680:12:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"2658:34:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":76028,"nodeType":"ExpressionStatement","src":"2658:34:130"},{"expression":{"id":76033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":76029,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2702:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2709:11:130","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"2702:18:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":76032,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75967,"src":"2723:11:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"2702:32:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":76034,"nodeType":"ExpressionStatement","src":"2702:32:130"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":76035,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75970,"src":"2749:11:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":76036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2761:9:130","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2749:21:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":76037,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2774:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2749:26:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":76048,"nodeType":"IfStatement","src":"2745:182:130","trueBody":{"id":76047,"nodeType":"Block","src":"2777:150:130","statements":[{"expression":{"id":76045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":76039,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75970,"src":"2878:11:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":76041,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2890:9:130","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"2878:21:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"323030","id":76042,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2902:3:130","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":76043,"name":"DECIMALS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75899,"src":"2908:8:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2902:14:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2878:38:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76046,"nodeType":"ExpressionStatement","src":"2878:38:130"}]}},{"expression":{"id":76053,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":76049,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2936:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76051,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2943:11:130","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"2936:18:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":76052,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75970,"src":"2957:11:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"2936:32:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":76054,"nodeType":"ExpressionStatement","src":"2936:32:130"},{"expression":{"id":76059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":76055,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"2978:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2985:16:130","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"2978:23:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":76058,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75973,"src":"3004:16:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"2978:42:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":76060,"nodeType":"ExpressionStatement","src":"2978:42:130"},{"expression":{"id":76069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":76061,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"3030:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76063,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3037:16:130","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3030:23:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":76067,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3070:1:130","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":76066,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3056:13:130","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":76064,"name":"address","nodeType":"ElementaryTypeName","src":"3060:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76065,"nodeType":"ArrayTypeName","src":"3060:9:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":76068,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3056:16:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"3030:42:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":76070,"nodeType":"ExpressionStatement","src":"3030:42:130"},{"expression":{"id":76080,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":76071,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75977,"src":"3082:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":76074,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3089:16:130","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"3082:23:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":76075,"indexExpression":{"hexValue":"30","id":76073,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3106:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3082:26:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":76078,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3119:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":76077,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3111:7:130","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":76076,"name":"address","nodeType":"ElementaryTypeName","src":"3111:7:130","typeDescriptions":{}}},"id":76079,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3111:10:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3082:39:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76081,"nodeType":"ExpressionStatement","src":"3082:39:130"}]},"functionSelector":"c36e336b","implemented":true,"kind":"function","modifiers":[],"name":"getParams","nameLocation":"1955:9:130","parameters":{"id":75974,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75961,"mutability":"mutable","name":"registryCommunity","nameLocation":"1982:17:130","nodeType":"VariableDeclaration","scope":76083,"src":"1974:25:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75960,"name":"address","nodeType":"ElementaryTypeName","src":"1974:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75964,"mutability":"mutable","name":"proposalType","nameLocation":"2022:12:130","nodeType":"VariableDeclaration","scope":76083,"src":"2009:25:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":75963,"nodeType":"UserDefinedTypeName","pathNode":{"id":75962,"name":"ProposalType","nameLocations":["2009:12:130"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"2009:12:130"},"referencedDeclaration":65540,"src":"2009:12:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75967,"mutability":"mutable","name":"pointSystem","nameLocation":"2056:11:130","nodeType":"VariableDeclaration","scope":76083,"src":"2044:23:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":75966,"nodeType":"UserDefinedTypeName","pathNode":{"id":75965,"name":"PointSystem","nameLocations":["2044:11:130"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"2044:11:130"},"referencedDeclaration":65545,"src":"2044:11:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75970,"mutability":"mutable","name":"pointConfig","nameLocation":"2102:11:130","nodeType":"VariableDeclaration","scope":76083,"src":"2077:36:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":75969,"nodeType":"UserDefinedTypeName","pathNode":{"id":75968,"name":"PointSystemConfig","nameLocations":["2077:17:130"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"2077:17:130"},"referencedDeclaration":65614,"src":"2077:17:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":75973,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"2147:16:130","nodeType":"VariableDeclaration","scope":76083,"src":"2123:40:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75972,"nodeType":"UserDefinedTypeName","pathNode":{"id":75971,"name":"ArbitrableConfig","nameLocations":["2123:16:130"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"2123:16:130"},"referencedDeclaration":65628,"src":"2123:16:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"1964:205:130"},"returnParameters":{"id":75978,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75977,"mutability":"mutable","name":"params","nameLocation":"2229:6:130","nodeType":"VariableDeclaration","scope":76083,"src":"2191:44:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":75976,"nodeType":"UserDefinedTypeName","pathNode":{"id":75975,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2191:30:130"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2191:30:130"},"referencedDeclaration":69242,"src":"2191:30:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"2190:46:130"},"scope":76418,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":76207,"nodeType":"FunctionDefinition","src":"3134:1468:130","nodes":[],"body":{"id":76206,"nodeType":"Block","src":"3487:1115:130","nodes":[],"statements":[{"assignments":[76114],"declarations":[{"constant":false,"id":76114,"mutability":"mutable","name":"params","nameLocation":"3586:6:130","nodeType":"VariableDeclaration","scope":76206,"src":"3548:44:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":76113,"nodeType":"UserDefinedTypeName","pathNode":{"id":76112,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["3548:30:130"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"3548:30:130"},"referencedDeclaration":69242,"src":"3548:30:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":76122,"initialValue":{"arguments":[{"id":76116,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76090,"src":"3617:17:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":76117,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76098,"src":"3636:12:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":76118,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76101,"src":"3650:11:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"id":76119,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76104,"src":"3663:11:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":76120,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76107,"src":"3676:16:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":76115,"name":"getParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76083,"src":"3607:9:130","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$","typeString":"function (address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) pure returns (struct CVStrategyInitializeParamsV0_1 memory)"}},"id":76121,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3607:86:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"3548:145:130"},{"assignments":[76127],"declarations":[{"constant":false,"id":76127,"mutability":"mutable","name":"_pool_managers","nameLocation":"3721:14:130","nodeType":"VariableDeclaration","scope":76206,"src":"3704:31:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":76125,"name":"address","nodeType":"ElementaryTypeName","src":"3704:7:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76126,"nodeType":"ArrayTypeName","src":"3704:9:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":76133,"initialValue":{"arguments":[{"hexValue":"32","id":76131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3752:1:130","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":76130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3738:13:130","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":76128,"name":"address","nodeType":"ElementaryTypeName","src":"3742:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76129,"nodeType":"ArrayTypeName","src":"3742:9:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":76132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3738:16:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3704:50:130"},{"expression":{"id":76141,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":76134,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76127,"src":"3764:14:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":76136,"indexExpression":{"hexValue":"30","id":76135,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3779:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3764:17:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":76139,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3792:4:130","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyHelpers_$76418","typeString":"contract CVStrategyHelpers"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyHelpers_$76418","typeString":"contract CVStrategyHelpers"}],"id":76138,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3784:7:130","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":76137,"name":"address","nodeType":"ElementaryTypeName","src":"3784:7:130","typeDescriptions":{}}},"id":76140,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3784:13:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3764:33:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76142,"nodeType":"ExpressionStatement","src":"3764:33:130"},{"expression":{"id":76151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":76143,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76127,"src":"3807:14:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":76145,"indexExpression":{"hexValue":"31","id":76144,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3822:1:130","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3807:17:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":76148,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3835:3:130","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":76149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3839:6:130","memberName":"sender","nodeType":"MemberAccess","src":"3835:10:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":76147,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3827:7:130","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":76146,"name":"address","nodeType":"ElementaryTypeName","src":"3827:7:130","typeDescriptions":{}}},"id":76150,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3827:19:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3807:39:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76152,"nodeType":"ExpressionStatement","src":"3807:39:130"},{"assignments":[76154],"declarations":[{"constant":false,"id":76154,"mutability":"mutable","name":"_token","nameLocation":"4104:6:130","nodeType":"VariableDeclaration","scope":76206,"src":"4096:14:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76153,"name":"address","nodeType":"ElementaryTypeName","src":"4096:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":76156,"initialValue":{"id":76155,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"4113:6:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4096:23:130"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":76162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76157,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76095,"src":"4133:5:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":76160,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4150:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":76159,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4142:7:130","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":76158,"name":"address","nodeType":"ElementaryTypeName","src":"4142:7:130","typeDescriptions":{}}},"id":76161,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4142:10:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4133:19:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":76168,"nodeType":"IfStatement","src":"4129:64:130","trueBody":{"id":76167,"nodeType":"Block","src":"4154:39:130","statements":[{"expression":{"id":76165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76163,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76154,"src":"4168:6:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":76164,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76095,"src":"4177:5:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4168:14:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76166,"nodeType":"ExpressionStatement","src":"4168:14:130"}]}},{"expression":{"id":76191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76169,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76110,"src":"4202:6:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":76173,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76093,"src":"4315:8:130","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"arguments":[],"expression":{"argumentTypes":[],"id":76174,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"4325:10:130","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":76175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4325:12:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":76176,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76127,"src":"4339:14:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":76172,"name":"poolProfile_id1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75959,"src":"4299:15:130","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IRegistry_$2802_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (contract IRegistry,address,address[] memory) returns (bytes32)"}},"id":76177,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4299:55:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":76180,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76088,"src":"4376:8:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":76179,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4368:7:130","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":76178,"name":"address","nodeType":"ElementaryTypeName","src":"4368:7:130","typeDescriptions":{}}},"id":76181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4368:17:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":76184,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76114,"src":"4410:6:130","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":76182,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4399:3:130","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":76183,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4403:6:130","memberName":"encode","nodeType":"MemberAccess","src":"4399:10:130","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":76185,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4399:18:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":76186,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76154,"src":"4431:6:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":76187,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4451:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":76188,"name":"metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75894,"src":"4466:8:130","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},{"id":76189,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76127,"src":"4488:14:130","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":76170,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76086,"src":"4211:4:130","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"id":76171,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4216:28:130","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":175,"src":"4211:33:130","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":76190,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4211:301:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4202:310:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76192,"nodeType":"ExpressionStatement","src":"4202:310:130"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":76203,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":76197,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76088,"src":"4553:8:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":76196,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4545:8:130","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":76195,"name":"address","nodeType":"ElementaryTypeName","src":"4545:8:130","stateMutability":"payable","typeDescriptions":{}}},"id":76198,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4545:17:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":76194,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"4530:14:130","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_1_$69756_$","typeString":"type(contract CVStrategyV0_1)"}},"id":76199,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:33:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}},"id":76200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4564:12:130","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65930,"src":"4530:46:130","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_enum$_ProposalType_$65540_$","typeString":"function () view external returns (enum ProposalType)"}},"id":76201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4530:48:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":76202,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76098,"src":"4582:12:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"4530:64:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":76193,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"4523:6:130","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":76204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4523:72:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":76205,"nodeType":"ExpressionStatement","src":"4523:72:130"}]},"functionSelector":"e070e0ab","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"3143:10:130","parameters":{"id":76108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76086,"mutability":"mutable","name":"allo","nameLocation":"3168:4:130","nodeType":"VariableDeclaration","scope":76207,"src":"3163:9:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":76085,"nodeType":"UserDefinedTypeName","pathNode":{"id":76084,"name":"Allo","nameLocations":["3163:4:130"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"3163:4:130"},"referencedDeclaration":1390,"src":"3163:4:130","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":76088,"mutability":"mutable","name":"strategy","nameLocation":"3190:8:130","nodeType":"VariableDeclaration","scope":76207,"src":"3182:16:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76087,"name":"address","nodeType":"ElementaryTypeName","src":"3182:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76090,"mutability":"mutable","name":"registryCommunity","nameLocation":"3216:17:130","nodeType":"VariableDeclaration","scope":76207,"src":"3208:25:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76089,"name":"address","nodeType":"ElementaryTypeName","src":"3208:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76093,"mutability":"mutable","name":"registry","nameLocation":"3253:8:130","nodeType":"VariableDeclaration","scope":76207,"src":"3243:18:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":76092,"nodeType":"UserDefinedTypeName","pathNode":{"id":76091,"name":"IRegistry","nameLocations":["3243:9:130"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"3243:9:130"},"referencedDeclaration":2802,"src":"3243:9:130","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":76095,"mutability":"mutable","name":"token","nameLocation":"3279:5:130","nodeType":"VariableDeclaration","scope":76207,"src":"3271:13:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76094,"name":"address","nodeType":"ElementaryTypeName","src":"3271:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76098,"mutability":"mutable","name":"proposalType","nameLocation":"3307:12:130","nodeType":"VariableDeclaration","scope":76207,"src":"3294:25:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":76097,"nodeType":"UserDefinedTypeName","pathNode":{"id":76096,"name":"ProposalType","nameLocations":["3294:12:130"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3294:12:130"},"referencedDeclaration":65540,"src":"3294:12:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":76101,"mutability":"mutable","name":"pointSystem","nameLocation":"3341:11:130","nodeType":"VariableDeclaration","scope":76207,"src":"3329:23:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":76100,"nodeType":"UserDefinedTypeName","pathNode":{"id":76099,"name":"PointSystem","nameLocations":["3329:11:130"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3329:11:130"},"referencedDeclaration":65545,"src":"3329:11:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":76104,"mutability":"mutable","name":"pointConfig","nameLocation":"3387:11:130","nodeType":"VariableDeclaration","scope":76207,"src":"3362:36:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":76103,"nodeType":"UserDefinedTypeName","pathNode":{"id":76102,"name":"PointSystemConfig","nameLocations":["3362:17:130"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3362:17:130"},"referencedDeclaration":65614,"src":"3362:17:130","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":76107,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3432:16:130","nodeType":"VariableDeclaration","scope":76207,"src":"3408:40:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":76106,"nodeType":"UserDefinedTypeName","pathNode":{"id":76105,"name":"ArbitrableConfig","nameLocations":["3408:16:130"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3408:16:130"},"referencedDeclaration":65628,"src":"3408:16:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"3153:301:130"},"returnParameters":{"id":76111,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76110,"mutability":"mutable","name":"poolId","nameLocation":"3479:6:130","nodeType":"VariableDeclaration","scope":76207,"src":"3471:14:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76109,"name":"uint256","nodeType":"ElementaryTypeName","src":"3471:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3470:16:130"},"scope":76418,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":76248,"nodeType":"FunctionDefinition","src":"4608:578:130","nodes":[],"body":{"id":76247,"nodeType":"Block","src":"4915:271:130","nodes":[],"statements":[{"expression":{"arguments":[{"id":76234,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76210,"src":"4956:4:130","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},{"id":76235,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76212,"src":"4974:8:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":76236,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76214,"src":"4996:17:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":76237,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76217,"src":"5027:8:130","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"id":76238,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76219,"src":"5049:5:130","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":76239,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76222,"src":"5068:12:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},{"id":76240,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76225,"src":"5094:11:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},{"arguments":[{"hexValue":"30","id":76242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5137:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":76241,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"5119:17:130","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_PointSystemConfig_$65614_storage_ptr_$","typeString":"type(struct PointSystemConfig storage pointer)"}},"id":76243,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5119:20:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":76244,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76228,"src":"5153:16:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":76233,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[76207,76248],"referencedDeclaration":76207,"src":"4932:10:130","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Allo_$1390_$_t_address_$_t_address_$_t_contract$_IRegistry_$2802_$_t_address_$_t_enum$_ProposalType_$65540_$_t_enum$_PointSystem_$65545_$_t_struct$_PointSystemConfig_$65614_memory_ptr_$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$returns$_t_uint256_$","typeString":"function (contract Allo,address,address,contract IRegistry,address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory) returns (uint256)"}},"id":76245,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4932:247:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":76232,"id":76246,"nodeType":"Return","src":"4925:254:130"}]},"functionSelector":"85294f18","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"4617:10:130","parameters":{"id":76229,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76210,"mutability":"mutable","name":"allo","nameLocation":"4642:4:130","nodeType":"VariableDeclaration","scope":76248,"src":"4637:9:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":76209,"nodeType":"UserDefinedTypeName","pathNode":{"id":76208,"name":"Allo","nameLocations":["4637:4:130"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"4637:4:130"},"referencedDeclaration":1390,"src":"4637:4:130","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":76212,"mutability":"mutable","name":"strategy","nameLocation":"4664:8:130","nodeType":"VariableDeclaration","scope":76248,"src":"4656:16:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76211,"name":"address","nodeType":"ElementaryTypeName","src":"4656:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76214,"mutability":"mutable","name":"registryCommunity","nameLocation":"4690:17:130","nodeType":"VariableDeclaration","scope":76248,"src":"4682:25:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76213,"name":"address","nodeType":"ElementaryTypeName","src":"4682:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76217,"mutability":"mutable","name":"registry","nameLocation":"4727:8:130","nodeType":"VariableDeclaration","scope":76248,"src":"4717:18:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":76216,"nodeType":"UserDefinedTypeName","pathNode":{"id":76215,"name":"IRegistry","nameLocations":["4717:9:130"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"4717:9:130"},"referencedDeclaration":2802,"src":"4717:9:130","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":76219,"mutability":"mutable","name":"token","nameLocation":"4753:5:130","nodeType":"VariableDeclaration","scope":76248,"src":"4745:13:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76218,"name":"address","nodeType":"ElementaryTypeName","src":"4745:7:130","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76222,"mutability":"mutable","name":"proposalType","nameLocation":"4781:12:130","nodeType":"VariableDeclaration","scope":76248,"src":"4768:25:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":76221,"nodeType":"UserDefinedTypeName","pathNode":{"id":76220,"name":"ProposalType","nameLocations":["4768:12:130"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"4768:12:130"},"referencedDeclaration":65540,"src":"4768:12:130","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":76225,"mutability":"mutable","name":"pointSystem","nameLocation":"4815:11:130","nodeType":"VariableDeclaration","scope":76248,"src":"4803:23:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":76224,"nodeType":"UserDefinedTypeName","pathNode":{"id":76223,"name":"PointSystem","nameLocations":["4803:11:130"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"4803:11:130"},"referencedDeclaration":65545,"src":"4803:11:130","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":76228,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"4860:16:130","nodeType":"VariableDeclaration","scope":76248,"src":"4836:40:130","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":76227,"nodeType":"UserDefinedTypeName","pathNode":{"id":76226,"name":"ArbitrableConfig","nameLocations":["4836:16:130"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"4836:16:130"},"referencedDeclaration":65628,"src":"4836:16:130","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"4627:255:130"},"returnParameters":{"id":76232,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76231,"mutability":"mutable","name":"poolId","nameLocation":"4907:6:130","nodeType":"VariableDeclaration","scope":76248,"src":"4899:14:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76230,"name":"uint256","nodeType":"ElementaryTypeName","src":"4899:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4898:16:130"},"scope":76418,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":76262,"nodeType":"FunctionDefinition","src":"5192:114:130","nodes":[],"body":{"id":76261,"nodeType":"Block","src":"5264:42:130","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76259,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76255,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76250,"src":"5281:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":76258,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":76256,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5291:2:130","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":76257,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5297:2:130","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"5291:8:130","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"5281:18:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":76254,"id":76260,"nodeType":"Return","src":"5274:25:130"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_etherToFloat","nameLocation":"5201:13:130","parameters":{"id":76251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76250,"mutability":"mutable","name":"_amount","nameLocation":"5223:7:130","nodeType":"VariableDeclaration","scope":76262,"src":"5215:15:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76249,"name":"uint256","nodeType":"ElementaryTypeName","src":"5215:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5214:17:130"},"returnParameters":{"id":76254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76253,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76262,"src":"5255:7:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76252,"name":"uint256","nodeType":"ElementaryTypeName","src":"5255:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5254:9:130"},"scope":76418,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":76296,"nodeType":"FunctionDefinition","src":"5312:269:130","nodes":[],"body":{"id":76295,"nodeType":"Block","src":"5390:191:130","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76264,"src":"5408:2:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":76273,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75916,"src":"5414:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5408:13:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":76275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5423:42:130","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":76271,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5400:7:130","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":76276,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5400:66:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":76277,"nodeType":"ExpressionStatement","src":"5400:66:130"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76279,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76266,"src":"5484:2:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":76280,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75916,"src":"5489:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5484:12:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":76282,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5498:30:130","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":76278,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5476:7:130","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":76283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5476:53:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":76284,"nodeType":"ExpressionStatement","src":"5476:53:130"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76293,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76290,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76285,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76264,"src":"5548:2:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":76286,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76266,"src":"5553:2:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5548:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76288,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5547:9:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":76289,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75911,"src":"5559:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5547:19:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76291,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5546:21:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":76292,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5571:3:130","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"5546:28:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":76270,"id":76294,"nodeType":"Return","src":"5539:35:130"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"5321:4:130","parameters":{"id":76267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76264,"mutability":"mutable","name":"_a","nameLocation":"5334:2:130","nodeType":"VariableDeclaration","scope":76296,"src":"5326:10:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76263,"name":"uint256","nodeType":"ElementaryTypeName","src":"5326:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76266,"mutability":"mutable","name":"_b","nameLocation":"5346:2:130","nodeType":"VariableDeclaration","scope":76296,"src":"5338:10:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76265,"name":"uint256","nodeType":"ElementaryTypeName","src":"5338:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5325:24:130"},"returnParameters":{"id":76270,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76269,"mutability":"mutable","name":"_result","nameLocation":"5381:7:130","nodeType":"VariableDeclaration","scope":76296,"src":"5373:15:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76268,"name":"uint256","nodeType":"ElementaryTypeName","src":"5373:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5372:17:130"},"scope":76418,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":76360,"nodeType":"FunctionDefinition","src":"5587:447:130","nodes":[],"body":{"id":76359,"nodeType":"Block","src":"5665:369:130","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76308,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76306,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76298,"src":"5683:2:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":76307,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75916,"src":"5688:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5683:12:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":76309,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5697:30:130","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":76305,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5675:7:130","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":76310,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5675:53:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":76311,"nodeType":"ExpressionStatement","src":"5675:53:130"},{"assignments":[76313],"declarations":[{"constant":false,"id":76313,"mutability":"mutable","name":"a","nameLocation":"5746:1:130","nodeType":"VariableDeclaration","scope":76359,"src":"5738:9:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76312,"name":"uint256","nodeType":"ElementaryTypeName","src":"5738:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":76315,"initialValue":{"id":76314,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76298,"src":"5750:2:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5738:14:130"},{"assignments":[76317],"declarations":[{"constant":false,"id":76317,"mutability":"mutable","name":"b","nameLocation":"5770:1:130","nodeType":"VariableDeclaration","scope":76359,"src":"5762:9:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76316,"name":"uint256","nodeType":"ElementaryTypeName","src":"5762:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":76319,"initialValue":{"id":76318,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76300,"src":"5774:2:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5762:14:130"},{"expression":{"id":76322,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76320,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76303,"src":"5786:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":76321,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75916,"src":"5796:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5786:17:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76323,"nodeType":"ExpressionStatement","src":"5786:17:130"},{"body":{"id":76357,"nodeType":"Block","src":"5827:201:130","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76331,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76317,"src":"5845:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":76328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5849:1:130","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5845:5:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":76330,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5854:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5845:10:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":76355,"nodeType":"Block","src":"5935:83:130","statements":[{"expression":{"id":76349,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76344,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76303,"src":"5953:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":76346,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76303,"src":"5968:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":76347,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76313,"src":"5977:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":76345,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76296,"src":"5963:4:130","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":76348,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5963:16:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5953:26:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76350,"nodeType":"ExpressionStatement","src":"5953:26:130"},{"expression":{"id":76353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76351,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76317,"src":"5997:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":76352,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6002:1:130","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5997:6:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76354,"nodeType":"ExpressionStatement","src":"5997:6:130"}]},"id":76356,"nodeType":"IfStatement","src":"5841:177:130","trueBody":{"id":76343,"nodeType":"Block","src":"5857:72:130","statements":[{"expression":{"id":76337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76332,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76313,"src":"5875:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":76334,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76313,"src":"5884:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":76335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76313,"src":"5887:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":76333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76296,"src":"5879:4:130","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":76336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5879:10:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5875:14:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76338,"nodeType":"ExpressionStatement","src":"5875:14:130"},{"expression":{"id":76341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":76339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76317,"src":"5907:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":76340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5913:1:130","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5907:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":76342,"nodeType":"ExpressionStatement","src":"5907:7:130"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76324,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76317,"src":"5820:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":76325,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5824:1:130","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5820:5:130","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":76358,"nodeType":"WhileStatement","src":"5813:215:130"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"5596:4:130","parameters":{"id":76301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76298,"mutability":"mutable","name":"_a","nameLocation":"5609:2:130","nodeType":"VariableDeclaration","scope":76360,"src":"5601:10:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76297,"name":"uint256","nodeType":"ElementaryTypeName","src":"5601:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76300,"mutability":"mutable","name":"_b","nameLocation":"5621:2:130","nodeType":"VariableDeclaration","scope":76360,"src":"5613:10:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76299,"name":"uint256","nodeType":"ElementaryTypeName","src":"5613:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5600:24:130"},"returnParameters":{"id":76304,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76303,"mutability":"mutable","name":"_result","nameLocation":"5656:7:130","nodeType":"VariableDeclaration","scope":76360,"src":"5648:15:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76302,"name":"uint256","nodeType":"ElementaryTypeName","src":"5648:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5647:17:130"},"scope":76418,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":76417,"nodeType":"FunctionDefinition","src":"6040:380:130","nodes":[],"body":{"id":76416,"nodeType":"Block","src":"6203:217:130","nodes":[],"statements":[{"assignments":[76374],"declarations":[{"constant":false,"id":76374,"mutability":"mutable","name":"t","nameLocation":"6221:1:130","nodeType":"VariableDeclaration","scope":76416,"src":"6213:9:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76373,"name":"uint256","nodeType":"ElementaryTypeName","src":"6213:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":76376,"initialValue":{"id":76375,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76362,"src":"6225:11:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6213:23:130"},{"assignments":[76378],"declarations":[{"constant":false,"id":76378,"mutability":"mutable","name":"atTWO_128","nameLocation":"6254:9:130","nodeType":"VariableDeclaration","scope":76416,"src":"6246:17:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76377,"name":"uint256","nodeType":"ElementaryTypeName","src":"6246:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":76388,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76385,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76382,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76380,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76368,"src":"6272:5:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":76381,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6281:3:130","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6272:12:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76383,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6271:14:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":76384,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75921,"src":"6288:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6271:18:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":76386,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76374,"src":"6291:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":76379,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76360,"src":"6266:4:130","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":76387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6266:27:130","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6246:47:130"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76391,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76389,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76378,"src":"6313:9:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":76390,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76364,"src":"6325:9:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6313:21:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76392,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6312:23:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76406,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76395,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76393,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76366,"src":"6340:10:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":76394,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75921,"src":"6353:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:14:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76396,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75916,"src":"6358:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":76397,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76378,"src":"6368:9:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6358:19:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76399,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6357:21:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6340:38:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76401,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6339:40:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":76404,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":76402,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75921,"src":"6383:1:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":76403,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76368,"src":"6387:5:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6383:9:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76405,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6382:11:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6339:54:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76407,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6338:56:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6312:82:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76409,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6311:84:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":76410,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75911,"src":"6398:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6311:94:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":76412,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6310:96:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":76413,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6410:3:130","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6310:103:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":76372,"id":76415,"nodeType":"Return","src":"6303:110:130"}]},"functionSelector":"e99ce911","implemented":true,"kind":"function","modifiers":[],"name":"_calculateConviction","nameLocation":"6049:20:130","parameters":{"id":76369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76362,"mutability":"mutable","name":"_timePassed","nameLocation":"6078:11:130","nodeType":"VariableDeclaration","scope":76417,"src":"6070:19:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76361,"name":"uint256","nodeType":"ElementaryTypeName","src":"6070:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76364,"mutability":"mutable","name":"_lastConv","nameLocation":"6099:9:130","nodeType":"VariableDeclaration","scope":76417,"src":"6091:17:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76363,"name":"uint256","nodeType":"ElementaryTypeName","src":"6091:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76366,"mutability":"mutable","name":"_oldAmount","nameLocation":"6118:10:130","nodeType":"VariableDeclaration","scope":76417,"src":"6110:18:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76365,"name":"uint256","nodeType":"ElementaryTypeName","src":"6110:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76368,"mutability":"mutable","name":"decay","nameLocation":"6138:5:130","nodeType":"VariableDeclaration","scope":76417,"src":"6130:13:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76367,"name":"uint256","nodeType":"ElementaryTypeName","src":"6130:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6069:75:130"},"returnParameters":{"id":76372,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76371,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76417,"src":"6190:7:130","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76370,"name":"uint256","nodeType":"ElementaryTypeName","src":"6190:7:130","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6189:9:130"},"scope":76418,"stateMutability":"pure","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":75884,"name":"Native","nameLocations":["944:6:130"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"944:6:130"},"id":75885,"nodeType":"InheritanceSpecifier","src":"944:6:130"},{"baseName":{"id":75886,"name":"Accounts","nameLocations":["952:8:130"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"952:8:130"},"id":75887,"nodeType":"InheritanceSpecifier","src":"952:8:130"}],"canonicalName":"CVStrategyHelpers","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[76418,5026,12099,11306,3106],"name":"CVStrategyHelpers","nameLocation":"923:17:130","scope":76419,"usedErrors":[]}],"license":"AGPL-3.0-or-later"},"id":130} \ No newline at end of file diff --git a/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json b/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json index 269081f0..64f63b44 100644 --- a/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json +++ b/pkg/contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json @@ -1 +1 @@ -{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516167766200004d60003960008181611840015281816118800152818161191f0152818161195f01526119d701526167766000f3fe60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212200f75d48ef3c99ad939ae8097d1e2f2bbe3e3aa304a3a3d182314b380df17796e64736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;1088:4:64;1045:48;;3782:50033:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212200f75d48ef3c99ad939ae8097d1e2f2bbe3e3aa304a3a3d182314b380df17796e64736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:131;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:131;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:131;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:131;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9672:25:131;;;9660:2;9645:18;21565:107:98;9526:177:131;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;10968:25:131;;;11024:2;11009:18;;11002:34;;;;11052:18;;;11045:34;11110:2;11095:18;;11088:34;10955:3;10940:19;8833:24:98;10737:391:131;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;15532:31:131;;;15514:50;;15502:2;15487:18;8639:26:98;15370:200:131;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;30100:191;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:103;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;10318:799:98:-;;;;;;;;;;-1:-1:-1;10318:799:98;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22599:2:131;3325:201:47;;;22581:21:131;22638:2;22618:18;;;22611:30;22677:34;22657:18;;;22650:62;-1:-1:-1;;;22728:18:131;;;22721:44;22782:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;22964:36:131;;3721:14:47;;22952:2:131;22937:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9672:25:131;;;9645:18;;46534:29:98;9526:177:131;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9672:25:131;;;9645:18;;50531:29:98;9526:177:131;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9672:25:131;;;9645:18;;50657:31:98;9526:177:131;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9672:25:131;;9660:2;9645:18;;9526:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;26595:2:131;2064:92:64;;;26577:21:131;26634:2;26614:18;;;26607:30;26673:34;26653:18;;;26646:62;-1:-1:-1;;;26724:18:131;;;26717:54;26788:19;;2064:92:64;26393:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;17286:1025:98:-:0;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;30100:191::-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9672:25:131;;;9645:18;;48528:29:98;9526:177:131;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9672:25:131;;;9645:18;;48652:29:98;9526:177:131;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9672:25:131;;;9645:18;;53238:29:98;9526:177:131;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9672:25:131;;;53745:29:98;;-1:-1:-1;9645:18:131;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;10318:799;2435:16:97;:14;:16::i;:::-;10411:28:98::1;10431:7;10411:19;:28::i;:::-;10503:23;::::0;10528:10:::1;:12:::0;;10485:56:::1;::::0;-1:-1:-1;;;;;10503:23:98::1;::::0;::::1;10528:12;::::0;::::1;:::i;:::-;;;;;10485:17;:56::i;:::-;10450:15;:92:::0;;-1:-1:-1;;;;;;10450:92:98::1;-1:-1:-1::0;;;;;10450:92:98;;;::::1;::::0;;::::1;::::0;;10552:28:::1;::::0;;-1:-1:-1;;;10552:28:98;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;10552:28:98;;;;;;;;-1:-1:-1;10450:92:98;10552:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10591:40;10645:5;10634:51;;;;;;;;;;;;:::i;:::-;10700:20;::::0;::::1;::::0;10591:94;;-1:-1:-1;;;;;;10700:34:98::1;10696:94;;10757:22;;-1:-1:-1::0;;;10757:22:98::1;;;;;;;;;;;10696:94;10820:20;::::0;::::1;::::0;10800:17:::1;:40:::0;;-1:-1:-1;;;;;;10800:40:98::1;-1:-1:-1::0;;;;;10800:40:98;;::::1;::::0;;;::::1;::::0;;10866:15:::1;::::0;::::1;::::0;10851:12:::1;:30:::0;;-1:-1:-1;;10851:30:98::1;-1:-1:-1::0;10866:15:98;10851:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10905:14:98::1;::::0;::::1;::::0;10891:11:::1;:28:::0;;-1:-1:-1;;10891:28:98::1;;10905:14:::0;10891:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10943:14:98::1;::::0;::::1;::::0;10929:28;:11:::1;:28:::0;10994:14:::1;::::0;::::1;::::0;10967:11:::1;:42:::0;;-1:-1:-1;;;;;;10967:42:98::1;-1:-1:-1::0;;;;;10967:42:98;;::::1;::::0;;;::::1;::::0;;11035:19:::1;::::0;::::1;::::0;11056:11;;11020:48:::1;::::0;11035:19;11020:14:::1;:48::i;:::-;11084:26;11098:7;11107:2;11084:26;;;;;;;:::i;:::-;;;;;;;;10401:716;10318:799:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7055:25:::2;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35144:2:131;2415:73:45::1;::::0;::::1;35126:21:131::0;35183:2;35163:18;;;35156:30;35222:34;35202:18;;;35195:62;-1:-1:-1;;;35273:18:131;;;35266:36;35319:19;;2415:73:45::1;34942:402:131::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;35607:15:131;;;35589:34;;35659:15;;;35654:2;35639:18;;35632:43;35711:15;;;35706:2;35691:18;;35684:43;35539:2;35524:18;;35349:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;36074:25:131;;;36153:18;;;36146:43;;;;36205:18;;;36198:43;;;;36257:18;;36250:34;36300:19;;;36293:35;36344:19;;;36337:35;;;;36403:3;36388:19;;36381:35;;;;45815:407:98;;36061:3:131;36046:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9672:25:131;;;9645:18;;23722:29:98;9526:177:131;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9672:25:131;;;9645:18;;24025:29:98;9526:177:131;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9672:25:131;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9645:18:131;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9672:25:131;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9645:18:131;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;44441:2:131;42048:53:98;;;44423:21:131;44480:2;44460:18;;;44453:30;-1:-1:-1;;;44499:18:131;;;44492:58;44567:18;;42048:53:98;44239:352:131;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;44987:2:131;3262:56:60;;;44969:21:131;45026:2;45006:18;;;44999:30;45065:34;45045:18;;;45038:62;-1:-1:-1;;;45116:18:131;;;45109:44;45170:19;;3262:56:60;44785:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;45402:2:131;3140:82:60;;;45384:21:131;45441:2;45421:18;;;45414:30;45480:34;45460:18;;;45453:62;-1:-1:-1;;;45531:18:131;;;45524:39;45580:19;;3140:82:60;45200:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;45812:2:131;1675:68:45;;;45794:21:131;;;45831:18;;;45824:30;45890:34;45870:18;;;45863:62;45942:18;;1675:68:45;45610:356:131;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;12805:296:98:-;12894:48;;;;;;;;;;;;-1:-1:-1;;;12894:48:98;;;;12929:11;;12878:4;;12894:48;;-1:-1:-1;;;;;12929:11:98;12894;:48::i;:::-;12964:11;;-1:-1:-1;;;;;12964:11:98;12952:76;;-1:-1:-1;13013:4:98;;12805:296;-1:-1:-1;12805:296:98:o;12952:76::-;13044:11;;:50;;-1:-1:-1;;;13044:50:98;;-1:-1:-1;;;;;13044:11:98;;;;:28;;:50;;13073:5;;13088:4;;13044:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637::-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;12473:141::-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:131;;;11071:19:97;;3276:2:131;3261:18;11071:19:97;3148:187:131;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;46305:2:131;46276:15;46272:45;4867:36:6;;;46260:58:131;46334:12;;;46327:28;;;4823:7:6;;;;46371:12:131;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;22272:633:98:-;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9672:25:131;;;27095:28:98;;9660:2:131;9645:18;27095:28:98;9526:177:131;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;48420:2:131;41543:66:98;;;48402:21:131;48459:2;48439:18;;;48432:30;48498:34;48478:18;;;48471:62;-1:-1:-1;;;48549:18:131;;;48542:38;48597:19;;41543:66:98;48218:404:131;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;48829:2:131;41619:53:98;;;48811:21:131;48868:2;48848:18;;;48841:30;-1:-1:-1;;;48887:18:131;;;48880:58;48955:18;;41619:53:98;48627:352:131;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;49186:2:131;1479:95:60;;;49168:21:131;49225:2;49205:18;;;49198:30;49264:34;49244:18;;;49237:62;-1:-1:-1;;;49315:18:131;;;49308:43;49368:19;;1479:95:60;48984:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;6994:145:34:-;7061:71;7124:2;7128;7077:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;7077:54:34;;;;;;;;;;;;;;-1:-1:-1;;;;;7077:54:34;-1:-1:-1;;;7077:54:34;;;7061:15;:71::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;49922:2:131;2847:58:46;;;49904:21:131;49961:2;49941:18;;;49934:30;-1:-1:-1;;;49980:18:131;;;49973:53;50043:18;;2847:58:46;49720:347:131;11899:391:98;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9672:25:131;;;9645:18;;33311:29:98;9526:177:131;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;181:376:34:-;275:14;;131:42;448:2;435:16;;251:21;;275:14;435:16;131:42;484:5;473:68;464:77;;401:150;;181:376;:::o;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;51601:2:131;8113:60:76;;;51583:21:131;51640:2;51620:18;;;51613:30;51679:31;51659:18;;;51652:59;51728:18;;8113:60:76;51399:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:131:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:131;;14:180;-1:-1:-1;14:180:131:o;199:104::-;-1:-1:-1;;;;;265:31:131;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:131;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:131;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:131:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:131;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:131:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:131;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:131;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:131;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:253::-;4677:2;4671:9;4719:4;4707:17;;-1:-1:-1;;;;;4739:34:131;;4775:22;;;4736:62;4733:88;;;4801:18;;:::i;4863:257::-;4935:4;4929:11;;;4967:17;;-1:-1:-1;;;;;4999:34:131;;5035:22;;;4996:62;4993:88;;;5061:18;;:::i;5125:253::-;5197:2;5191:9;5239:4;5227:17;;-1:-1:-1;;;;;5259:34:131;;5295:22;;;5256:62;5253:88;;;5321:18;;:::i;5383:275::-;5454:2;5448:9;5519:2;5500:13;;-1:-1:-1;;5496:27:131;5484:40;;-1:-1:-1;;;;;5539:34:131;;5575:22;;;5536:62;5533:88;;;5601:18;;:::i;:::-;5637:2;5630:22;5383:275;;-1:-1:-1;5383:275:131:o;5663:144::-;-1:-1:-1;;;;;5751:31:131;;5741:42;;5731:70;;5797:1;5794;5787:12;5812:1289;5942:6;5950;5994:9;5985:7;5981:23;6024:3;6020:2;6016:12;6013:32;;;6041:1;6038;6031:12;6013:32;6065:4;6061:2;6057:13;6054:33;;;6083:1;6080;6073:12;6054:33;6109:22;;:::i;:::-;6168:9;6155:23;6187:46;6225:7;6187:46;:::i;:::-;6242:22;;6316:2;6301:18;;6288:32;6329:46;6288:32;6329:46;:::i;:::-;6402:2;6391:14;;6384:31;6475:2;6460:18;;;6447:32;6431:14;;;6424:56;6540:2;6525:18;;;6512:32;6496:14;;;6489:56;6606:3;6591:19;;;6578:33;6561:15;;;6554:58;6673:3;6658:19;;;6645:33;6628:15;;;6621:58;6395:5;;-1:-1:-1;;;6719:17:131;;6715:27;6712:47;;;6755:1;6752;6745:12;6712:47;;6783:22;;:::i;:::-;6858:4;6843:20;;6830:34;6814:51;;6927:3;6912:19;;6899:33;6894:2;6881:16;;6874:59;6995:3;6980:19;;6967:33;6962:2;6949:16;;6942:59;7063:3;7048:19;;;7035:33;7030:2;7017:16;;7010:59;-1:-1:-1;5812:1289:131;6821:7;;-1:-1:-1;5812:1289:131:o;7106:183::-;7166:4;-1:-1:-1;;;;;7188:30:131;;7185:56;;;7221:18;;:::i;:::-;-1:-1:-1;7266:1:131;7262:14;7278:4;7258:25;;7106:183::o;7294:750::-;7348:5;7401:3;7394:4;7386:6;7382:17;7378:27;7368:55;;7419:1;7416;7409:12;7368:55;7455:6;7442:20;7481:4;7505:60;7521:43;7561:2;7521:43;:::i;:::-;7505:60;:::i;:::-;7599:15;;;7685:1;7681:10;;;;7669:23;;7665:32;;;7630:12;;;;7709:15;;;7706:35;;;7737:1;7734;7727:12;7706:35;7773:2;7765:6;7761:15;7785:230;7801:6;7796:3;7793:15;7785:230;;;7881:3;7868:17;7898:44;7936:5;7898:44;:::i;:::-;7955:18;;7993:12;;;;7818;;7785:230;;;-1:-1:-1;8033:5:131;7294:750;-1:-1:-1;;;;;;7294:750:131:o;8049:186::-;8097:4;-1:-1:-1;;;;;8119:30:131;;8116:56;;;8152:18;;:::i;:::-;-1:-1:-1;8218:2:131;8197:15;-1:-1:-1;;8193:29:131;8224:4;8189:40;;8049:186::o;8240:336::-;8304:5;8333:52;8349:35;8377:6;8349:35;:::i;8333:52::-;8324:61;;8408:6;8401:5;8394:21;8448:3;8439:6;8434:3;8430:16;8427:25;8424:45;;;8465:1;8462;8455:12;8424:45;8514:6;8509:3;8502:4;8495:5;8491:16;8478:43;8568:1;8561:4;8552:6;8545:5;8541:18;8537:29;8530:40;8240:336;;;;;:::o;8581:220::-;8623:5;8676:3;8669:4;8661:6;8657:17;8653:27;8643:55;;8694:1;8691;8684:12;8643:55;8716:79;8791:3;8782:6;8769:20;8762:4;8754:6;8750:17;8716:79;:::i;8806:715::-;8917:6;8925;8933;8986:2;8974:9;8965:7;8961:23;8957:32;8954:52;;;9002:1;8999;8992:12;8954:52;9029:23;;-1:-1:-1;;;;;9101:14:131;;;9098:34;;;9128:1;9125;9118:12;9098:34;9151:61;9204:7;9195:6;9184:9;9180:22;9151:61;:::i;:::-;9141:71;;9265:2;9254:9;9250:18;9237:32;9221:48;;9294:2;9284:8;9281:16;9278:36;;;9310:1;9307;9300:12;9278:36;;9333:51;9376:7;9365:8;9354:9;9350:24;9333:51;:::i;:::-;9323:61;;;9434:2;9423:9;9419:18;9406:32;9447:44;9485:5;9447:44;:::i;:::-;9510:5;9500:15;;;8806:715;;;;;:::o;9708:229::-;-1:-1:-1;;;;;9898:32:131;;;;9880:51;;9868:2;9853:18;;9708:229::o;10164:568::-;10241:6;10249;10257;10310:2;10298:9;10289:7;10285:23;10281:32;10278:52;;;10326:1;10323;10316:12;10278:52;10365:9;10352:23;10384:44;10422:5;10384:44;:::i;:::-;10447:5;-1:-1:-1;10504:2:131;10489:18;;10476:32;10517:46;10476:32;10517:46;:::i;:::-;10582:7;-1:-1:-1;10641:2:131;10626:18;;10613:32;10654:46;10613:32;10654:46;:::i;11133:468::-;11210:6;11218;11271:2;11259:9;11250:7;11246:23;11242:32;11239:52;;;11287:1;11284;11277:12;11239:52;11314:23;;-1:-1:-1;;;;;11349:30:131;;11346:50;;;11392:1;11389;11382:12;11346:50;11415:49;11456:7;11447:6;11436:9;11432:22;11415:49;:::i;:::-;11405:59;;;11514:2;11503:9;11499:18;11486:32;11527:44;11565:5;11527:44;:::i;:::-;11590:5;11580:15;;;11133:468;;;;;:::o;11814:142::-;11897:1;11890:5;11887:12;11877:46;;11903:18;;:::i;:::-;11932;;11814:142::o;11961:213::-;12110:2;12095:18;;12122:46;12099:9;12150:6;12122:46;:::i;12179:328::-;12247:6;12255;12308:2;12296:9;12287:7;12283:23;12279:32;12276:52;;;12324:1;12321;12314:12;12276:52;12363:9;12350:23;12382:44;12420:5;12382:44;:::i;:::-;12445:5;12497:2;12482:18;;;;12469:32;;-1:-1:-1;;;12179:328:131:o;12512:248::-;12580:6;12588;12641:2;12629:9;12620:7;12616:23;12612:32;12609:52;;;12657:1;12654;12647:12;12609:52;-1:-1:-1;;12680:23:131;;;12750:2;12735:18;;;12722:32;;-1:-1:-1;12512:248:131:o;12765:316::-;12842:6;12850;12858;12911:2;12899:9;12890:7;12886:23;12882:32;12879:52;;;12927:1;12924;12917:12;12879:52;-1:-1:-1;;12950:23:131;;;13020:2;13005:18;;12992:32;;-1:-1:-1;13071:2:131;13056:18;;;13043:32;;12765:316;-1:-1:-1;12765:316:131:o;13086:143::-;13170:1;13163:5;13160:12;13150:46;;13176:18;;:::i;13234:215::-;13384:2;13369:18;;13396:47;13373:9;13425:6;13396:47;:::i;13454:260::-;13513:6;13566:2;13554:9;13545:7;13541:23;13537:32;13534:52;;;13582:1;13579;13572:12;13534:52;13621:9;13608:23;13640:44;13678:5;13640:44;:::i;14140:468::-;14217:6;14225;14278:2;14266:9;14257:7;14253:23;14249:32;14246:52;;;14294:1;14291;14284:12;14246:52;14333:9;14320:23;14352:44;14390:5;14352:44;:::i;:::-;14415:5;-1:-1:-1;14471:2:131;14456:18;;14443:32;-1:-1:-1;;;;;14487:30:131;;14484:50;;;14530:1;14527;14520:12;14484:50;14553:49;14594:7;14585:6;14574:9;14570:22;14553:49;:::i;:::-;14543:59;;;14140:468;;;;;:::o;14613:752::-;14700:6;14708;14716;14769:2;14757:9;14748:7;14744:23;14740:32;14737:52;;;14785:1;14782;14775:12;14737:52;14824:9;14811:23;14843:44;14881:5;14843:44;:::i;:::-;14906:5;-1:-1:-1;14962:2:131;14947:18;;14934:32;-1:-1:-1;;;;;14978:30:131;;14975:50;;;15021:1;15018;15011:12;14975:50;15044:22;;15097:4;15089:13;;15085:27;-1:-1:-1;15075:55:131;;15126:1;15123;15116:12;15075:55;15149:73;15214:7;15209:2;15196:16;15191:2;15187;15183:11;15149:73;:::i;15575:261::-;15756:2;15745:9;15738:21;15719:4;15776:54;15826:2;15815:9;15811:18;15803:6;15776:54;:::i;15841:1357::-;15968:6;15976;16029:2;16017:9;16008:7;16004:23;16000:32;15997:52;;;16045:1;16042;16035:12;15997:52;16072:23;;-1:-1:-1;;;;;16144:14:131;;;16141:34;;;16171:1;16168;16161:12;16141:34;16194:61;16247:7;16238:6;16227:9;16223:22;16194:61;:::i;:::-;16184:71;;16274:2;16264:12;;16329:2;16318:9;16314:18;16301:32;16358:2;16348:8;16345:16;16342:36;;;16374:1;16371;16364:12;16342:36;16397:24;;16452:4;16444:13;;16440:27;-1:-1:-1;16430:55:131;;16481:1;16478;16471:12;16430:55;16517:2;16504:16;16540:60;16556:43;16596:2;16556:43;:::i;16540:60::-;16634:15;;;16716:1;16712:10;;;;16704:19;;16700:28;;;16665:12;;;;16740:19;;;16737:39;;;16772:1;16769;16762:12;16737:39;16804:2;16800;16796:11;16816:352;16832:6;16827:3;16824:15;16816:352;;;16918:3;16905:17;16954:2;16941:11;16938:19;16935:109;;;16998:1;17027:2;17023;17016:14;16935:109;17069:56;17117:7;17112:2;17098:11;17094:2;17090:20;17086:29;17069:56;:::i;:::-;17057:69;;-1:-1:-1;17146:12:131;;;;16849;;16816:352;;;16820:3;17187:5;17177:15;;;;;;;;15841:1357;;;;;:::o;17203:826::-;17436:2;17488:21;;;17558:13;;17461:18;;;17580:22;;;17407:4;;17436:2;17621;;17639:18;;;;17680:15;;;17407:4;17723:280;17737:6;17734:1;17731:13;17723:280;;;17796:13;;17838:9;;-1:-1:-1;;;;;17834:35:131;17822:48;;17910:11;;17904:18;17890:12;;;17883:40;17943:12;;;;17978:15;;;;17866:1;17752:9;17723:280;;;-1:-1:-1;18020:3:131;;17203:826;-1:-1:-1;;;;;;;17203:826:131:o;18034:348::-;18086:8;18096:6;18150:3;18143:4;18135:6;18131:17;18127:27;18117:55;;18168:1;18165;18158:12;18117:55;-1:-1:-1;18191:20:131;;-1:-1:-1;;;;;18223:30:131;;18220:50;;;18266:1;18263;18256:12;18220:50;18303:4;18295:6;18291:17;18279:29;;18355:3;18348:4;18339:6;18331;18327:19;18323:30;18320:39;18317:59;;;18372:1;18369;18362:12;18387:788;18487:6;18495;18503;18511;18519;18572:2;18560:9;18551:7;18547:23;18543:32;18540:52;;;18588:1;18585;18578:12;18540:52;18611:23;;;-1:-1:-1;18685:2:131;18670:18;;18657:32;-1:-1:-1;;;;;18738:14:131;;;18735:34;;;18765:1;18762;18755:12;18735:34;18804:59;18855:7;18846:6;18835:9;18831:22;18804:59;:::i;:::-;18882:8;;-1:-1:-1;18778:85:131;-1:-1:-1;18970:2:131;18955:18;;18942:32;;-1:-1:-1;18986:16:131;;;18983:36;;;19015:1;19012;19005:12;18983:36;;19054:61;19107:7;19096:8;19085:9;19081:24;19054:61;:::i;:::-;18387:788;;;;-1:-1:-1;18387:788:131;;-1:-1:-1;19134:8:131;;19028:87;18387:788;-1:-1:-1;;;18387:788:131:o;19180:118::-;19266:5;19259:13;19252:21;19245:5;19242:32;19232:60;;19288:1;19285;19278:12;19303:241;19359:6;19412:2;19400:9;19391:7;19387:23;19383:32;19380:52;;;19428:1;19425;19418:12;19380:52;19467:9;19454:23;19486:28;19508:5;19486:28;:::i;19779:1033::-;-1:-1:-1;;;;;20281:15:131;;;20263:34;;20333:15;;;20328:2;20313:18;;20306:43;20385:15;;20380:2;20365:18;;20358:43;20432:2;20417:18;;20410:34;;;20475:3;20460:19;;20453:35;;;20212:3;20197:19;;20497:44;20534:6;20497:44;:::i;:::-;20578:6;20572:3;20561:9;20557:19;20550:35;20622:6;20616:3;20605:9;20601:19;20594:35;20666:6;20660:3;20649:9;20645:19;20638:35;20710:6;20704:3;20693:9;20689:19;20682:35;20754:6;20748:3;20737:9;20733:19;20726:35;20798:7;20792:3;20781:9;20777:19;20770:36;19779:1033;;;;;;;;;;;;;;:::o;20817:328::-;20885:6;20893;20946:2;20934:9;20925:7;20921:23;20917:32;20914:52;;;20962:1;20959;20952:12;20914:52;20998:9;20985:23;20975:33;;21058:2;21047:9;21043:18;21030:32;21071:44;21109:5;21071:44;:::i;21150:239::-;21293:2;21278:18;;21305:44;21342:6;21305:44;:::i;:::-;21358:25;;;21150:239;:::o;21394:388::-;21471:6;21479;21532:2;21520:9;21511:7;21507:23;21503:32;21500:52;;;21548:1;21545;21538:12;21500:52;21571:23;;;-1:-1:-1;21645:2:131;21630:18;;21617:32;-1:-1:-1;;;;;21661:30:131;;21658:50;;;21704:1;21701;21694:12;21787:220;21936:2;21925:9;21918:21;21899:4;21956:45;21997:2;21986:9;21982:18;21974:6;21956:45;:::i;22012:380::-;22091:1;22087:12;;;;22134;;;22155:61;;22209:4;22201:6;22197:17;22187:27;;22155:61;22262:2;22254:6;22251:14;22231:18;22228:38;22225:161;;22308:10;22303:3;22299:20;22296:1;22289:31;22343:4;22340:1;22333:15;22371:4;22368:1;22361:15;23011:127;23072:10;23067:3;23063:20;23060:1;23053:31;23103:4;23100:1;23093:15;23127:4;23124:1;23117:15;23143:128;23210:9;;;23231:11;;;23228:37;;;23245:18;;:::i;23276:345::-;-1:-1:-1;;;;;23496:32:131;;;;23478:51;;23560:2;23545:18;;23538:34;;;;23603:2;23588:18;;23581:34;23466:2;23451:18;;23276:345::o;23626:125::-;23691:9;;;23712:10;;;23709:36;;;23725:18;;:::i;23756:345::-;23958:25;;;-1:-1:-1;;;;;24019:32:131;;;;24014:2;23999:18;;23992:60;24083:2;24068:18;;24061:34;23946:2;23931:18;;23756:345::o;24106:279::-;24191:6;24244:2;24232:9;24223:7;24219:23;24215:32;24212:52;;;24260:1;24257;24250:12;24212:52;24292:9;24286:16;24311:44;24349:5;24311:44;:::i;24390:447::-;24621:25;;;-1:-1:-1;;;;;24720:15:131;;;24715:2;24700:18;;24693:43;24772:15;;24767:2;24752:18;;24745:43;24819:2;24804:18;;24797:34;24608:3;24593:19;;24390:447::o;24842:127::-;24903:10;24898:3;24894:20;24891:1;24884:31;24934:4;24931:1;24924:15;24958:4;24955:1;24948:15;24974:217;25014:1;25040;25030:132;;25084:10;25079:3;25075:20;25072:1;25065:31;25119:4;25116:1;25109:15;25147:4;25144:1;25137:15;25030:132;-1:-1:-1;25176:9:131;;24974:217::o;25196:193::-;25234:3;-1:-1:-1;;;;;25267:30:131;;;25306:41;;25327:18;;:::i;:::-;-1:-1:-1;;25363:20:131;;25196:193;-1:-1:-1;;25196:193:131:o;25394:168::-;25467:9;;;25498;;25515:15;;;25509:22;;25495:37;25485:71;;25536:18;;:::i;25567:408::-;25769:2;25751:21;;;25808:2;25788:18;;;25781:30;-1:-1:-1;;;;;;;;;;;25842:2:131;25827:18;;25820:62;-1:-1:-1;;;25913:2:131;25898:18;;25891:42;25965:3;25950:19;;25567:408::o;25980:::-;26182:2;26164:21;;;26221:2;26201:18;;;26194:30;-1:-1:-1;;;;;;;;;;;26255:2:131;26240:18;;26233:62;-1:-1:-1;;;26326:2:131;26311:18;;26304:42;26378:3;26363:19;;25980:408::o;26818:407::-;27020:2;27002:21;;;27059:2;27039:18;;;27032:30;27098:34;27093:2;27078:18;;27071:62;-1:-1:-1;;;27164:2:131;27149:18;;27142:41;27215:3;27200:19;;26818:407::o;27230:304::-;-1:-1:-1;;;;;27460:15:131;;;27442:34;;27512:15;;27507:2;27492:18;;27485:43;27392:2;27377:18;;27230:304::o;27539:245::-;27606:6;27659:2;27647:9;27638:7;27634:23;27630:32;27627:52;;;27675:1;27672;27665:12;27627:52;27707:9;27701:16;27726:28;27748:5;27726:28;:::i;27789:184::-;27859:6;27912:2;27900:9;27891:7;27887:23;27883:32;27880:52;;;27928:1;27925;27918:12;27880:52;-1:-1:-1;27951:16:131;;27789:184;-1:-1:-1;27789:184:131:o;27978:151::-;28057:13;;28079:44;28057:13;28079:44;:::i;:::-;27978:151;;;:::o;28403:248::-;28577:25;;;28633:2;28618:18;;28611:34;28565:2;28550:18;;28403:248::o;28656:274::-;28830:25;;;-1:-1:-1;;;;;28891:32:131;28886:2;28871:18;;28864:60;28818:2;28803:18;;28656:274::o;28935:266::-;29023:6;29018:3;29011:19;29075:6;29068:5;29061:4;29056:3;29052:14;29039:43;-1:-1:-1;29127:1:131;29102:16;;;29120:4;29098:27;;;29091:38;;;;29183:2;29162:15;;;-1:-1:-1;;29158:29:131;29149:39;;;29145:50;;28935:266::o;29206:315::-;29391:6;29380:9;29373:25;29434:2;29429;29418:9;29414:18;29407:30;29354:4;29454:61;29511:2;29500:9;29496:18;29488:6;29480;29454:61;:::i;:::-;29446:69;29206:315;-1:-1:-1;;;;;29206:315:131:o;29526:209::-;29564:3;-1:-1:-1;;;;;29634:14:131;;;-1:-1:-1;;;;;;29660:15:131;;29657:41;;29678:18;;:::i;:::-;29727:1;29714:15;;29526:209;-1:-1:-1;;;29526:209:131:o;29740:682::-;-1:-1:-1;;;;;30098:15:131;;;30080:34;;30145:2;30130:18;;30123:34;;;30188:2;30173:18;;30166:34;;;30236:15;;30231:2;30216:18;;30209:43;30289:3;30283;30268:19;;30261:32;;;30023:4;;30310:62;;30352:19;;30344:6;30336;30310:62;:::i;:::-;30302:70;;30409:6;30403:3;30392:9;30388:19;30381:35;29740:682;;;;;;;;;;:::o;30427:135::-;30466:3;30487:17;;;30484:43;;30507:18;;:::i;:::-;-1:-1:-1;30554:1:131;30543:13;;30427:135::o;30567:157::-;30656:13;;30698:1;30688:12;;30678:40;;30714:1;30711;30704:12;30729:156;30817:13;;30859:1;30849:12;;30839:40;;30875:1;30872;30865:12;30890:420;30965:5;31013:4;31001:9;30996:3;30992:19;30988:30;30985:50;;;31031:1;31028;31021:12;30985:50;31064:2;31058:9;31106:4;31094:17;;-1:-1:-1;;;;;31126:34:131;;31162:22;;;31123:62;31120:88;;;31188:18;;:::i;:::-;31224:2;31217:22;31287:16;;31272:32;;-1:-1:-1;31257:6:131;30890:420;-1:-1:-1;30890:420:131:o;31315:696::-;31389:5;31437:4;31425:9;31420:3;31416:19;31412:30;31409:50;;;31455:1;31452;31445:12;31409:50;31477:22;;:::i;:::-;31468:31;;31529:9;31523:16;31548:46;31586:7;31548:46;:::i;:::-;31603:22;;31670:2;31655:18;;31649:25;31683:46;31649:25;31683:46;:::i;:::-;31761:7;31756:2;31749:5;31745:14;31738:31;;31822:2;31811:9;31807:18;31801:25;31796:2;31789:5;31785:14;31778:49;31880:2;31869:9;31865:18;31859:25;31854:2;31847:5;31843:14;31836:49;31939:3;31928:9;31924:19;31918:26;31912:3;31905:5;31901:15;31894:51;31999:3;31988:9;31984:19;31978:26;31972:3;31965:5;31961:15;31954:51;31315:696;;;;:::o;32016:1203::-;32135:6;32179:9;32170:7;32166:23;32209:3;32205:2;32201:12;32198:32;;;32226:1;32223;32216:12;32198:32;32252:22;;:::i;:::-;32294:4;32290:2;32286:13;32283:33;;;32312:1;32309;32302:12;32283:33;32340:22;;:::i;:::-;32325:37;;32393:9;32387:16;32378:7;32371:33;32459:2;32448:9;32444:18;32438:25;32433:2;32424:7;32420:16;32413:51;32519:2;32508:9;32504:18;32498:25;32493:2;32484:7;32480:16;32473:51;32579:2;32568:9;32564:18;32558:25;32553:2;32544:7;32540:16;32533:51;32607:7;32600:5;32593:22;32647:61;32702:4;32691:9;32687:20;32647:61;:::i;:::-;32642:2;32635:5;32631:14;32624:85;32741:59;32795:3;32784:9;32780:19;32741:59;:::i;:::-;32736:2;32729:5;32725:14;32718:83;32833:76;32901:7;32895:3;32884:9;32880:19;32833:76;:::i;:::-;32828:2;32821:5;32817:14;32810:100;32944:76;33012:7;33005:4;32994:9;32990:20;32944:76;:::i;:::-;32937:4;32930:5;32926:16;32919:102;33054:50;33099:3;33088:9;33084:19;33054:50;:::i;:::-;33048:3;33041:5;33037:15;33030:75;33138:50;33183:3;33172:9;33168:19;33138:50;:::i;:::-;33132:3;33121:15;;33114:75;33125:5;32016:1203;-1:-1:-1;;;;32016:1203:131:o;33224:261::-;33304:5;33298:12;33293:3;33286:25;33360:4;33353:5;33349:16;33343:23;33336:4;33331:3;33327:14;33320:47;33416:4;33409:5;33405:16;33399:23;33392:4;33387:3;33383:14;33376:47;33472:4;33465:5;33461:16;33455:23;33448:4;33443:3;33439:14;33432:47;;;33224:261::o;33490:1447::-;33708:4;33750:3;33739:9;33735:19;33727:27;;33781:6;33770:9;33763:25;33797:61;33854:2;33843:9;33839:18;33830:6;33824:13;33797:61;:::i;:::-;33905:2;33897:6;33893:15;33887:22;33918:63;33976:3;33965:9;33961:19;33947:12;33918:63;:::i;:::-;;34030:4;34022:6;34018:17;34012:24;34045:64;34104:3;34093:9;34089:19;34073:14;34045:64;:::i;:::-;-1:-1:-1;34170:4:131;34158:17;;;34152:24;34146:31;34140:3;34125:19;;34118:60;34227:4;34215:17;;;34209:24;34312:21;;-1:-1:-1;;;;;34308:30:131;;;34302:3;34287:19;;34280:59;34406:2;34386:23;;34380:30;34376:39;34370:3;34355:19;;34348:68;34479:4;34459:25;;34453:32;34447:3;34432:19;;34425:61;34529:25;;;34523:32;34517:3;34502:19;;34495:61;34599:25;;34593:32;34587:3;34572:19;;34565:61;34260:3;34669:24;;;34663:31;34657:3;34642:19;;34635:60;34732:16;;34726:23;34758:55;34808:3;34793:19;;34726:23;34758:55;:::i;:::-;;34862:3;34854:6;34850:16;34844:23;34876:55;34926:3;34915:9;34911:19;34895:14;34876:55;:::i;36427:252::-;36615:3;36600:19;;36628:45;36604:9;36655:6;36628:45;:::i;36684:319::-;36886:25;;;36942:2;36927:18;;36920:34;;;;36985:2;36970:18;;36963:34;36874:2;36859:18;;36684:319::o;37008:726::-;37074:5;37122:4;37110:9;37105:3;37101:19;37097:30;37094:50;;;37140:1;37137;37130:12;37094:50;37162:22;;:::i;:::-;37207:16;;37193:31;;37268:2;37253:18;;37247:25;37153:31;;-1:-1:-1;;;;;;37284:30:131;;37281:50;;;37327:1;37324;37317:12;37281:50;37350:22;;37403:4;37395:13;;37391:23;-1:-1:-1;37381:51:131;;37428:1;37425;37418:12;37381:51;37457:2;37451:9;37482:48;37498:31;37526:2;37498:31;:::i;37482:48::-;37553:2;37546:5;37539:17;37593:3;37588:2;37583;37579;37575:11;37571:20;37568:29;37565:49;;;37610:1;37607;37600:12;37565:49;37623:67;37687:2;37682;37675:5;37671:14;37666:2;37662;37658:11;37623:67;:::i;:::-;37717:2;37706:14;;37699:29;-1:-1:-1;37710:5:131;;37008:726;-1:-1:-1;;;37008:726:131:o;37739:1054::-;37831:6;37884:2;37872:9;37863:7;37859:23;37855:32;37852:52;;;37900:1;37897;37890:12;37852:52;37927:16;;-1:-1:-1;;;;;37992:14:131;;;37989:34;;;38019:1;38016;38009:12;37989:34;38042:22;;;;38098:4;38080:16;;;38076:27;38073:47;;;38116:1;38113;38106:12;38073:47;38142:22;;:::i;:::-;38193:2;38187:9;38180:5;38173:24;38235:2;38231;38227:11;38221:18;38248:46;38286:7;38248:46;:::i;:::-;38321:2;38310:14;;38303:31;38372:2;38364:11;;38358:18;38385:46;38358:18;38385:46;:::i;:::-;38458:2;38447:14;;38440:31;38510:2;38502:11;;38496:18;38526:16;;;38523:36;;;38555:1;38552;38545:12;38523:36;38591:65;38648:7;38637:8;38633:2;38629:17;38591:65;:::i;:::-;38586:2;38579:5;38575:14;38568:89;;38704:3;38700:2;38696:12;38690:19;38684:3;38677:5;38673:15;38666:44;38757:3;38753:2;38749:12;38743:19;38737:3;38730:5;38726:15;38719:44;38782:5;38772:15;;;;;37739:1054;;;;:::o;38798:1012::-;38901:6;38954:2;38942:9;38933:7;38929:23;38925:32;38922:52;;;38970:1;38967;38960:12;38922:52;38997:16;;-1:-1:-1;;;;;39062:14:131;;;39059:34;;;39089:1;39086;39079:12;39059:34;39112:22;;;;39168:4;39150:16;;;39146:27;39143:47;;;39186:1;39183;39176:12;39143:47;39212:22;;:::i;:::-;39263:2;39257:9;39250:5;39243:24;39305:2;39301;39297:11;39291:18;39318:46;39356:7;39318:46;:::i;:::-;39391:2;39380:14;;39373:31;39450:2;39442:11;;;39436:18;39420:14;;;39413:42;39493:2;39485:11;;39479:18;39506:46;39479:18;39506:46;:::i;:::-;39579:2;39568:14;;39561:31;39631:3;39623:12;;39617:19;39648:16;;;39645:36;;;39677:1;39674;39667:12;39645:36;39714:65;39771:7;39760:8;39756:2;39752:17;39714:65;:::i;:::-;39708:3;39697:15;;39690:90;-1:-1:-1;39701:5:131;38798:1012;-1:-1:-1;;;;;38798:1012:131:o;40224:545::-;40326:2;40321:3;40318:11;40315:448;;;40362:1;40387:5;40383:2;40376:17;40432:4;40428:2;40418:19;40502:2;40490:10;40486:19;40483:1;40479:27;40473:4;40469:38;40538:4;40526:10;40523:20;40520:47;;;-1:-1:-1;40561:4:131;40520:47;40616:2;40611:3;40607:12;40604:1;40600:20;40594:4;40590:31;40580:41;;40671:82;40689:2;40682:5;40679:13;40671:82;;;40734:17;;;40715:1;40704:13;40671:82;;;40675:3;;;40224:545;;;:::o;40945:1352::-;41065:10;;-1:-1:-1;;;;;41087:30:131;;41084:56;;;41120:18;;:::i;:::-;41149:97;41239:6;41199:38;41231:4;41225:11;41199:38;:::i;:::-;41193:4;41149:97;:::i;:::-;41301:4;;41365:2;41354:14;;41382:1;41377:663;;;;42084:1;42101:6;42098:89;;;-1:-1:-1;42153:19:131;;;42147:26;42098:89;-1:-1:-1;;40902:1:131;40898:11;;;40894:24;40890:29;40880:40;40926:1;40922:11;;;40877:57;42200:81;;41347:944;;41377:663;40171:1;40164:14;;;40208:4;40195:18;;-1:-1:-1;;41413:20:131;;;41531:236;41545:7;41542:1;41539:14;41531:236;;;41634:19;;;41628:26;41613:42;;41726:27;;;;41694:1;41682:14;;;;41561:19;;41531:236;;;41535:3;41795:6;41786:7;41783:19;41780:201;;;41856:19;;;41850:26;-1:-1:-1;;41939:1:131;41935:14;;;41951:3;41931:24;41927:37;41923:42;41908:58;41893:74;;41780:201;-1:-1:-1;;;;;42027:1:131;42011:14;;;42007:22;41994:36;;-1:-1:-1;40945:1352:131:o;42587:273::-;42655:6;42708:2;42696:9;42687:7;42683:23;42679:32;42676:52;;;42724:1;42721;42714:12;42676:52;42756:9;42750:16;42806:4;42799:5;42795:16;42788:5;42785:27;42775:55;;42826:1;42823;42816:12;42865:422;42954:1;42997:5;42954:1;43011:270;43032:7;43022:8;43019:21;43011:270;;;43091:4;43087:1;43083:6;43079:17;43073:4;43070:27;43067:53;;;43100:18;;:::i;:::-;43150:7;43140:8;43136:22;43133:55;;;43170:16;;;;43133:55;43249:22;;;;43209:15;;;;43011:270;;;43015:3;42865:422;;;;;:::o;43292:806::-;43341:5;43371:8;43361:80;;-1:-1:-1;43412:1:131;43426:5;;43361:80;43460:4;43450:76;;-1:-1:-1;43497:1:131;43511:5;;43450:76;43542:4;43560:1;43555:59;;;;43628:1;43623:130;;;;43535:218;;43555:59;43585:1;43576:10;;43599:5;;;43623:130;43660:3;43650:8;43647:17;43644:43;;;43667:18;;:::i;:::-;-1:-1:-1;;43723:1:131;43709:16;;43738:5;;43535:218;;43837:2;43827:8;43824:16;43818:3;43812:4;43809:13;43805:36;43799:2;43789:8;43786:16;43781:2;43775:4;43772:12;43768:35;43765:77;43762:159;;;-1:-1:-1;43874:19:131;;;43906:5;;43762:159;43953:34;43978:8;43972:4;43953:34;:::i;:::-;44023:6;44019:1;44015:6;44011:19;44002:7;43999:32;43996:58;;;44034:18;;:::i;:::-;44072:20;;43292:806;-1:-1:-1;;;43292:806:131:o;44103:131::-;44163:5;44192:36;44219:8;44213:4;44192:36;:::i;45971:127::-;46032:10;46027:3;46023:20;46020:1;46013:31;46063:4;46060:1;46053:15;46087:4;46084:1;46077:15;46394:1185;46523:6;46554:2;46597;46585:9;46576:7;46572:23;46568:32;46565:52;;;46613:1;46610;46603:12;46565:52;46640:16;;-1:-1:-1;;;;;46668:30:131;;46665:50;;;46711:1;46708;46701:12;46665:50;46734:22;;46787:4;46779:13;;46775:27;-1:-1:-1;46765:55:131;;46816:1;46813;46806:12;46765:55;46845:2;46839:9;46868:60;46884:43;46924:2;46884:43;:::i;46868:60::-;46962:15;;;47044:1;47040:10;;;;47032:19;;47028:28;;;46993:12;;;;47068:19;;;47065:39;;;47100:1;47097;47090:12;47065:39;47124:11;;;;47144:405;47160:6;47155:3;47152:15;47144:405;;;47242:4;47236:3;47227:7;47223:17;47219:28;47216:118;;;47288:1;47317:2;47313;47306:14;47216:118;47360:22;;:::i;:::-;47409:10;;47395:25;;47462:12;;;47456:19;47440:14;;;47433:43;47489:18;;47186:4;47177:14;;;;47527:12;;;;47144:405;;47584:127;47645:10;47640:3;47636:20;47633:1;47626:31;47676:4;47673:1;47666:15;47700:4;47697:1;47690:15;47716:497;-1:-1:-1;;;;;48001:32:131;;;;47983:51;;48065:2;48050:18;;48043:34;;;;48108:2;48093:18;;48086:34;;;;48151:2;48136:18;;48129:34;48194:3;48179:19;;48172:35;47970:3;47955:19;;47716:497::o;49398:317::-;49575:2;49564:9;49557:21;49538:4;49595:45;49636:2;49625:9;49621:18;49613:6;49595:45;:::i;:::-;49587:53;;49705:1;49701;49696:3;49692:11;49688:19;49680:6;49676:32;49671:2;49660:9;49656:18;49649:60;49398:317;;;;;:::o;50072:216::-;50136:9;;;50164:11;;;50111:3;50194:9;;50222:10;;50218:19;;50247:10;;50239:19;;50215:44;50212:70;;;50262:18;;:::i;51107:287::-;51236:3;51274:6;51268:13;51290:66;51349:6;51344:3;51337:4;51329:6;51325:17;51290:66;:::i;:::-;51372:16;;;;;51107:287;-1:-1:-1;;51107:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6208,"length":32},{"start":6272,"length":32},{"start":6431,"length":32},{"start":6495,"length":32},{"start":6615,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"CVStrategyV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"CVStrategyV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)75152"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70106"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)75119":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)75152":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70106":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)75119"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[75015],"IArbitrator":[75119],"ICollateralVault":[75152],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70106],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72174],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75120,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75119,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75016,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75015,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75153,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"3175:11:98"},"referencedDeclaration":75119,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"6863:11:98"},"referencedDeclaration":75119,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"7260:11:98"},"referencedDeclaration":75119,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":75152,"src":"9139:16:98"},"referencedDeclaration":75152,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70106,"src":"9184:12:98"},"referencedDeclaration":70106,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"9752:21:98"},"referencedDeclaration":72174,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75152_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75124,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":71791,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71198,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71257,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"31151:11:98"},"referencedDeclaration":75119,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71967,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":75118,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":75066,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75006,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[75014],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75015,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,75015,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70122]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file +{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516167766200004d60003960008181611840015281816118800152818161191f0152818161195f01526119d701526167766000f3fe60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122051ff812a84a305f8c830c17f353d4436238dd34d2483d8def723b05f4325a8e464736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;1088:4:64;1045:48;;3782:50033:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361061034d5760003560e01c8063013cf08b1461035657806301ffc9a714610398578063059351cd146103c8578063062f9ece146104555780630a6f0ee9146104755780630ba95909146104955780630bece79c146104b45780630c0512e9146104e15780630f529ba2146104f7578063125fd1d91461050e57806315cc481e14610524578063184b9559146105425780631aa91a9e146105625780631ddf1e23146105825780632506b87014610597578063255ffb38146105da5780632bbe0cae146106075780632dbd6fdd1461061a5780632ed04b2b14610646578063311a6c56146106665780633396045914610686578063346db8cb1461069c578063351d9f96146106bc5780633659cfe6146106e357806338fff2d014610703578063406244d81461071857806341bb76051461072d57806342fda9c71461078a57806348f19c1d1461079f5780634ab4ba42146107b45780634d31d087146107c95780634f1ef286146107e957806352d1902d146107fc57806359a5db8b146108115780635db64b99146108315780636003e4141461085e57806360d5dedc1461087e578063626c47e81461089e5780636453d9c4146108b3578063715018a6146108d3578063782aadff146108e8578063814516ad14610908578063817b1cd21461091d578063824ea8ed14610933578063868c57b8146109535780638da5cb5b14610973578063950559d7146109885780639a1c157c146109a8578063a0cf0aea146109bd578063a28889e1146109e5578063a47ff7e514610a1d578063a574cea414610a34578063aba9ffee14610a61578063ac1ed7b914610a77578063b0d3713a14610a97578063b2b878d014610ab7578063b41596ec14610ae4578063b5f620ce14610af7578063b6c61f3114610b17578063bcc5b93b14610b37578063c329217114610b57578063c4d66de814610b74578063c7f758a814610b94578063d1e3623214610bcb578063dc96ff2d14610be0578063df868ed314610c10578063e0a8f6f514610c25578063e0dd2c3814610c45578063eb11af9314610c65578063edd146cc14610c8d578063ef2920fc14610cad578063f2fde38b14610cc0578063f5b0dfb714610ce0578063f5be3f7c14610d00578063ffa1ad7414610d1657005b3661035457005b005b34801561036257600080fd5b5061037661037136600461510d565b610d52565b60405161038f9d9c9b9a999897969594939291906151c8565b60405180910390f35b3480156103a457600080fd5b506103b86103b336600461526a565b610ea0565b604051901515815260200161038f565b3480156103d457600080fd5b5061041d606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161038f565b34801561046157600080fd5b5061035461047036600461539f565b610ed7565b34801561048157600080fd5b50610354610490366004615574565b610eed565b3480156104a157600080fd5b506077545b60405190815260200161038f565b3480156104c057600080fd5b506079546104d4906001600160a01b031681565b60405161038f91906155eb565b3480156104ed57600080fd5b506104a6606e5481565b34801561050357600080fd5b506104a66298968081565b34801561051a57600080fd5b506104a6606f5481565b34801561053057600080fd5b506065546001600160a01b03166104d4565b34801561054e57600080fd5b5061035461055d3660046155ff565b610f0d565b34801561056e57600080fd5b506104a661057d36600461510d565b61106d565b34801561058e57600080fd5b506103546110b7565b3480156105a357600080fd5b506072546073546074546075546105ba9392919084565b60408051948552602085019390935291830152606082015260800161038f565b3480156105e657600080fd5b506104a66105f536600461510d565b607e6020526000908152604090205481565b6104d461061536600461563f565b6110c2565b34801561062657600080fd5b5060765461063990610100900460ff1681565b60405161038f91906156a4565b34801561065257600080fd5b506104a66106613660046156b2565b6110e5565b34801561067257600080fd5b506103546106813660046156de565b6111a9565b34801561069257600080fd5b506104a6606c5481565b3480156106a857600080fd5b506104a66106b7366004615700565b61179b565b3480156106c857600080fd5b506076546106d69060ff1681565b60405161038f919061573c565b3480156106ef57600080fd5b506103546106fe36600461574a565b611836565b34801561070f57600080fd5b506068546104a6565b34801561072457600080fd5b506104a6600a81565b34801561073957600080fd5b5061041d61074836600461510d565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b34801561079657600080fd5b506066546104a6565b3480156107ab57600080fd5b506104d46118fe565b3480156107c057600080fd5b506069546104a6565b3480156107d557600080fd5b506103b86107e436600461574a565b61190d565b6103546107f7366004615767565b611915565b34801561080857600080fd5b506104a66119ca565b34801561081d57600080fd5b506104a661082c36600461510d565b611a78565b34801561083d57600080fd5b506104a661084c36600461574a565b607c6020526000908152604090205481565b34801561086a57600080fd5b506078546104d4906001600160a01b031681565b34801561088a57600080fd5b506103546108993660046157b6565b611b92565b3480156108aa57600080fd5b506104a6600381565b3480156108bf57600080fd5b506103546108ce36600461574a565b611c0e565b3480156108df57600080fd5b50610354611c1f565b3480156108f457600080fd5b506104a66109033660046156b2565b611c31565b34801561091457600080fd5b50610354611dc7565b34801561092957600080fd5b506104a660705481565b34801561093f57600080fd5b506103b861094e36600461510d565b611ee4565b34801561095f57600080fd5b506104a661096e3660046156b2565b611f41565b34801561097f57600080fd5b506104d4611f72565b34801561099457600080fd5b506104a66109a336600461510d565b612003565b3480156109b457600080fd5b506074546104a6565b3480156109c957600080fd5b506104d473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b3480156109f157600080fd5b50606d54610a05906001600160401b031681565b6040516001600160401b03909116815260200161038f565b348015610a2957600080fd5b506077546104a69081565b348015610a4057600080fd5b50610a54610a4f36600461510d565b61202d565b60405161038f9190615811565b348015610a6d57600080fd5b506104a660715481565b348015610a8357600080fd5b50610354610a9236600461574a565b61210c565b348015610aa357600080fd5b50610354610ab236600461574a565b61213f565b348015610ac357600080fd5b50610ad7610ad2366004615824565b612169565b60405161038f91906158f8565b6104a6610af2366004615991565b612184565b348015610b0357600080fd5b50610354610b12366004615a18565b6124d6565b348015610b2357600080fd5b50607a546104d4906001600160a01b031681565b348015610b4357600080fd5b506104a6610b5236600461574a565b6124df565b348015610b6357600080fd5b50607654610100900460ff16610639565b348015610b8057600080fd5b50610354610b8f36600461574a565b6124fa565b348015610ba057600080fd5b50610bb4610baf36600461510d565b61252a565b60405161038f9b9a99989796959493929190615a35565b348015610bd757600080fd5b506071546104a6565b348015610bec57600080fd5b506104a6610bfb36600461510d565b6000908152607b602052604090206002015490565b348015610c1c57600080fd5b506103b8612636565b348015610c3157600080fd5b50610354610c4036600461510d565b612649565b348015610c5157600080fd5b506104a6610c60366004615aa4565b6127ce565b348015610c7157600080fd5b50610c806107e436600461574a565b60405161038f9190615ac9565b348015610c9957600080fd5b50610354610ca8366004615adc565b6127f9565b610354610cbb36600461563f565b6129d3565b348015610ccc57600080fd5b50610354610cdb36600461574a565b6129ed565b348015610cec57600080fd5b50610354610cfb36600461510d565b612a5a565b348015610d0c57600080fd5b506104a6611c2081565b348015610d2257600080fd5b50610d45604051806040016040528060038152602001620302e360ec1b81525081565b60405161038f9190615b0c565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dd990615b1f565b80601f0160208091040260200160405190810160405280929190818152602001828054610e0590615b1f565b8015610e525780601f10610e2757610100808354040283529160200191610e52565b820191906000526020600020905b815481529060010190602001808311610e3557829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ed157506301ffc9a760e01b6001600160e01b03198316145b92915050565b610edf612a83565b610ee98282612b1d565b5050565b610ef5612e92565b610efd612ebd565b610f08838383612ee0565b505050565b600054610100900460ff1615808015610f2d5750600054600160ff909116105b80610f4e5750610f3c306131ea565b158015610f4e575060005460ff166001145b610fb65760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015610fd9576000805461ff0019166101001790555b611006846040518060400160405280600a8152602001694356537472617465677960b01b81525084611b92565b606a80546001600160a01b0319166001600160a01b0385161790558015611067576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461109f5760405163c1d17bef60e01b815260048101849052602401610fad565b6110ad8182600201546131f9565b6003015492915050565b6110c033613234565b565b60006110cc612e92565b6110d4612ebd565b6110de8383613360565b9392505050565b60006110ef61374e565b60006002607654610100900460ff16600381111561110f5761110f615133565b148061113657506001607654610100900460ff16600381111561113457611134615133565b145b1561114257508161114f565b61114c8484613779565b90505b80607160008282546111619190615b69565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061119a90869086908590615b7c565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112495760405163c1d17bef60e01b815260048101849052602401610fad565b6005600883015460ff16600681111561126457611264615133565b1461128557604051634b011ca960e11b815260048101849052602401610fad565b60a0810151600d83015460009161129b91615b9d565b421190508015816112b6575081516001600160a01b03163314155b156112d457604051631777988560e11b815260040160405180910390fd5b80806112de575084155b1561142757816080015160000361130857604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113245760088301805460ff191660011790555b81608001516002036113b15760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361137e938a939290911691600401615bb0565b600060405180830381600087803b15801561139857600080fd5b505af11580156113ac573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113f0938a939290911691600401615bb0565b600060405180830381600087803b15801561140a57600080fd5b505af115801561141e573d6000803e3d6000fd5b50505050611704565b846001036114e85760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114636118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114c49190615bcf565b86606001516040518563ffffffff1660e01b81526004016113f09493929190615bec565b846002036117045760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361153e938a939290911691600401615bb0565b600060405180830381600087803b15801561155857600080fd5b505af115801561156c573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab5392508791166115956118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115f69190615bcf565b606f546000908152607f602052604090206002908101546116179190615c27565b6040518563ffffffff1660e01b81526004016116369493929190615bec565b600060405180830381600087803b15801561165057600080fd5b505af1158015611664573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116b29190615c27565b6040518563ffffffff1660e01b81526004016116d19493929190615bec565b600060405180830381600087803b1580156116eb57600080fd5b505af11580156116ff573d6000803e3d6000fd5b505050505b606d80546001600160401b031690600061171d83615c49565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161178b91815260200190565b60405180910390a3505050505050565b607454600090849082906117c0906117ba90629896809060801b615c27565b8361397c565b905060806001607f1b607260020154629896806117dd9190615b69565b6117eb84600160801b615b69565b6117f86298968089615c6c565b6118029190615c6c565b61180c9190615c27565b6118168885615c6c565b6118209190615b9d565b61182a9190615b9d565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361187e5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166118b0613a24565b6001600160a01b0316146118d65760405162461bcd60e51b8152600401610fad90615cbd565b6118df81613a40565b604080516000808252602082019092526118fb91839190613a7b565b50565b6078546001600160a01b031690565b600080610ed1565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361195d5760405162461bcd60e51b8152600401610fad90615c83565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661198f613a24565b6001600160a01b0316146119b55760405162461bcd60e51b8152600401610fad90615cbd565b6119be82613a40565b610ee982826001613a7b565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a655760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610fad565b506000805160206166da83398151915290565b60008060695411611a9c5760405163ed4421ad60e01b815260040160405180910390fd5b611aa582613be6565b15611ac357604051630efd728560e21b815260040160405180910390fd5b606954600090611ad784600160401b615c6c565b611ae19190615c27565b6072546298968090611af790600160401b615c6c565b611b019190615c27565b611b0b9190615b69565b90506040611b1860715490565b607454611b289062989680615b69565b629896806040611b388680615c6c565b607354911c90611b4f90629896809060801b615c27565b611b599190615c27565b611b639190615c6c565b611b6d9190615c27565b611b779190615c6c565b607554911c92508211611b8c576075546110de565b50919050565b600054610100900460ff16611bb95760405162461bcd60e51b8152600401610fad90615cf7565b611bc2816124fa565b606580546001600160a01b0319166001600160a01b038516179055604051611bee908390602001615b0c565b60408051601f198184030181529190528051602090910120606655505050565b611c1661374e565b6118fb81613234565b611c27613c0d565b6110c06000613c6c565b6000611c3b61374e565b611c4483613cbe565b611c6157604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611c8157611c81615133565b03611c8f57825b9050611cec565b6001607654610100900460ff166003811115611cad57611cad615133565b03611cbc57611c888484613d83565b6003607654610100900460ff166003811115611cda57611cda615133565b03611cec57611ce98484613e2c565b90505b6000611cf66118fe565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611d23929190615d42565b602060405180830381865afa158015611d40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d649190615d5c565b90508015611d84578160716000828254611d7e9190615b9d565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611db793929190615b7c565b60405180910390a1509392505050565b33611dd181613cbe565b611dee57604051630b72d6b160e31b815260040160405180910390fd5b611df66118fe565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611e23929190615d42565b600060405180830381600087803b158015611e3d57600080fd5b505af1158015611e51573d6000803e3d6000fd5b50505050611e5d6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611e8a929190615d42565b602060405180830381865afa158015611ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ecb9190615d79565b60716000828254611edc9190615b9d565b909155505050565b6000818152607b60205260408120600281015482908190611f0690849061402d565b91509150816000148015611f18575080155b15611f2557826003015491505b6000611f348460010154611a78565b9092101595945050505050565b607d6020528160005260406000208181548110611f5d57600080fd5b90600052602060002001600091509150505481565b600080611f876033546001600160a01b031690565b9050806001600160a01b03163b600003611fa057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611ffa575060408051601f3d908101601f19168201909252611ff791810190615bcf565b60015b610ed157919050565b6074546000906120169062989680615b69565b6120236298968084615c6c565b610ed19190615c27565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a016040518060400160405290816000820154815260200160018201805461208290615b1f565b80601f01602080910402602001604051908101604052809291908181526020018280546120ae90615b1f565b80156120fb5780601f106120d0576101008083540402835291602001916120fb565b820191906000526020600020905b8154815290600101906020018083116120de57829003601f168201915b505050505081525050915050919050565b612114612a83565b61211d81614085565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612147613c0d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a08301529161221157604051636c291fd360e01b815260040160405180910390fd5b815488146122355760405163c1d17bef60e01b815260048101899052602401610fad565b6001600883015460ff16600681111561225057612250615133565b14612271576040516344980d8f60e01b815260048101899052602401610fad565b806060015134101561229d576060810151604051632c1f8ef160e21b8152610fad913491600401615da2565b600f820154158015906122c0575042611c2083600f01546122be9190615b9d565b115b156122fe578742611c2084600f01546122d99190615b9d565b6122e39190615b69565b604051638d2f6c3160e01b8152600401610fad929190615da2565b60008160600151346123109190615b69565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061234b908d903390600401615db0565b6000604051808303818588803b15801561236457600080fd5b505af1158015612378573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506123b3906003908b908b90600401615df0565b60206040518083038185885af11580156123d1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906123f69190615d79565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b03169161245783615e13565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516124c29796959493929190615e41565b60405180910390a150505095945050505050565b6118fb816140ac565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125215760405162461bcd60e51b8152600401610fad90615cf7565b6118fb81613c6c565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461256f5761256a8160010154611a78565b612572565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061264460675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561267157612671615133565b14612692576040516344980d8f60e01b815260048101829052602401610fad565b6000818152607b60205260409020600501546001600160a01b031633146126eb576000818152607b602052604090819020600501549051634544dc9160e11b8152610fad916001600160a01b0316903390600401615d42565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b093612748938793921691600401615bb0565b600060405180830381600087803b15801561276257600080fd5b505af1158015612776573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b03851684526009019091528120546110de565b612801612e92565b61280a826140ed565b606a54606c8054612833926001600160a01b031691600061282a83615e90565b9190505561413c565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561288957600080fd5b505af115801561289d573d6000803e3d6000fd5b505050506000818060200190518101906128b79190615f74565b60a08101519091506001600160a01b03166128e557604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff1916600183600281111561292a5761292a615133565b021790555060408101516076805461ff00191661010083600381111561295257612952615133565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b03909216919091179055608081015181516129959190612b1d565b7fe5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b83826040516129c6929190616065565b60405180910390a1505050565b6129db612e92565b6129e3612ebd565b610ee9828261418b565b6129f5613c0d565b6001600160a01b0381166125215760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fad565b612a62612e92565b8060696000828254612a749190615b9d565b909155506118fb90508161427e565b612a8b6118fe565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ac8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aec9190615bcf565b6001600160a01b0316336001600160a01b0316146110c057604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612b42575081516001600160a01b031615155b8015612c2b5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612b9e5750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612bc25750606f546000908152607f602052604090819020600201549083015114155b80612be55750606f546000908152607f6020526040902060030154606083015114155b80612c085750606f546000908152607f6020526040902060040154608083015114155b80612c2b5750606f546000908152607f602052604090206005015460a083015114155b15612e3a57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612c8557508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612d4e578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612cbc916004016155eb565b600060405180830381600087803b158015612cd657600080fd5b505af1158015612cea573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612d459350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612d5e83615e90565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612e86908390616125565b60405180910390a15050565b6065546001600160a01b031633146110c05760405163075fd2b160e01b815260040160405180910390fd5b6068546000036110c057604051630f68fe6360e21b815260040160405180910390fd5b6000825111612f0257604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612f189190615d79565b905080600003612f3b5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff166002811115612f6257612f62615133565b036131e35780548214612f8b5760405163c1d17bef60e01b815260048101839052602401610fad565b60695481600101541115612fbe57818160010154606954604051632c31d85b60e11b8152600401610fad93929190616133565b6001600882015460ff166006811115612fd957612fd9615133565b14612ffa576040516344980d8f60e01b815260048101839052602401610fad565b60006130058361106d565b905060006130168360010154611a78565b9050808210801561302b575060008360010154115b156130495760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015613097573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526130bf91908101906161d6565b90508360010154606960008282546130d79190615b69565b90915550506040810151600485015460018601546130ff92916001600160a01b0316906142ae565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b09461315f948c94911692909101615bb0565b600060405180830381600087803b15801561317957600080fd5b505af115801561318d573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506131d79289926001600160a01b0390911691615bb0565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b600080613206848461402d565b91509150816000148015613218575080155b156132235750505050565b600784015560039092019190915550565b61323c6118fe565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401613269929190615d42565b602060405180830381865afa158015613286573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132aa9190615d79565b607160008282546132bb9190615b69565b909155506132c990506118fe565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016132f6929190615d42565b600060405180830381600087803b15801561331057600080fd5b505af1158015613324573d6000803e3d6000fd5b50505050613331816142e8565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127c391906155eb565b600061336b82613cbe565b61338857604051630b72d6b160e31b815260040160405180910390fd5b60008380602001905181019061339e9190616289565b80519091506000036133c35760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156133dc576133dc615133565b0361355d576133ee8160200151614085565b60608101516001600160a01b03166134195760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613459573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347d9190615bcf565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156134cb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526134f391908101906161d6565b905080604001516001600160a01b031683606001516001600160a01b03161461352f5760405163514e24c360e11b815260040160405180910390fd5b61353c8360400151613be6565b1561355a57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b0316158015906135995750606f546000908152607f602052604090206002015434105b156135cf57606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152610fad913491600401615da2565b6000606e600081546135e090615e90565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b840190613694908261637d565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926136d89288921690600401615db0565b6000604051808303818588803b1580156136f157600080fd5b505af1158015613705573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b6068548360405161373d929190615da2565b60405180910390a150949350505050565b6078546001600160a01b031633146110c0576040516357848b5160e11b815260040160405180910390fd5b600060126137856118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137e69190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561383f575060408051601f3d908101601f1916820190925261383c9181019061643c565b60015b1561384a5760ff1690505b6000836138556118fe565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b815260040161388091906155eb565b602060405180830381865afa15801561389d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c19190615d79565b6138cb9190615b69565b905060006138ec6138dd84600a616543565b6138e79084615c6c565b614449565b90506000816138f96118fe565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613926929190615d42565b602060405180830381865afa158015613943573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139679190615d79565b6139719190615b69565b979650505050505050565b6000600160801b83106139d05760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b50600160801b82825b8015613a1c57806001166000036139fe576139f48283614531565b915060011c6139d9565b613a088383614531565b9250613a15600182615b69565b90506139d9565b505092915050565b6000805160206166da833981519152546001600160a01b031690565b33613a49611f72565b6001600160a01b0316146118fb5733613a60611f72565b60405163163678e960e01b8152600401610fad929190615d42565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613aae57610f088361460e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b08575060408051601f3d908101601f19168201909252613b0591810190615d79565b60015b613b6b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610fad565b6000805160206166da8339815191528114613bda5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610fad565b50610f088383836146a8565b6000613bf56298968083615c6c565b606954607254613c059190615c6c565b111592915050565b33613c16611f72565b6001600160a01b0316146110c05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fad565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60408051808201909152600b81526a39bcb134b629b1b7b932b960a91b6020820152607a54600091613cf8916001600160a01b03166146cd565b607a546001600160a01b0316613d1057506001919050565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a090613d429085903090600401615d42565b602060405180830381865afa158015613d5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed19190615d5c565b60008181613d8f6118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401613dbc929190615d42565b602060405180830381865afa158015613dd9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613dfd9190615d79565b607754909150613e0d8383615b9d565b1115613e2457607754613e21908290615b69565b91505b509392505050565b60008082613e386118fe565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b8152600401613e6391906155eb565b602060405180830381865afa158015613e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ea49190615d79565b613eae9190615b9d565b90506012613eba6118fe565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613ef7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f1b9190615bcf565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613f74575060408051601f3d908101601f19168201909252613f719181019061643c565b60015b15613f7f5760ff1690505b6000613f99613f8f83600a616543565b6138e79085615c6c565b90506000613fa56118fe565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b8152600401613fd2929190615d42565b602060405180830381865afa158015613fef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140139190615d79565b905060006140218284615b69565b98975050505050505050565b60008043905080846007015411156140475761404761654f565b8084600701540361405d5750600090508061407e565b61407b8460070154826140709190615b69565b85600301548561179b565b91505b9250929050565b6001600160a01b0381166118fb576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127c3565b6140f5612e92565b606854156141165760405163439a74c960e01b815260040160405180910390fd5b8060000361413757604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506141838482614712565b949350505050565b614194816147a9565b61419d81613cbe565b6141ba57604051630b72d6b160e31b815260040160405180910390fd5b60006141c46118fe565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b81526004016141f1929190615d42565b602060405180830381865afa15801561420e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142329190615d5c565b90508061425257604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906142689190616565565b9050614274838261488a565b6110678382614a1f565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127c3565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b038416016142dd57610f088282614df7565b610f08838383614e13565b6001600160a01b0381166000908152607d602090815260408083208054825181850281018501909352808352919290919083018282801561434857602002820191906000526020600020905b815481526020019060010190808311614334575b5050505050905060005b8151811015610f0857600082828151811061436f5761436f61660f565b602002602001015190506000607b6000838152602001908152602001600020905061439982614e59565b15614434576001600160a01b03851660009081526009820160205260408120805490829055600283018054919283926143d3908490615b69565b9250508190555080607060008282546143ec9190615b69565b909155506143fc905082826131f9565b6000805160206166fa833981519152868460008560020154866003015460405161442a959493929190616625565b60405180910390a1505b5050808061444190615e90565b915050614352565b60008160000361445b57506000919050565b6000600161446884614e92565b901c6001901b9050600181848161448157614481615c11565b048201901c9050600181848161449957614499615c11565b048201901c905060018184816144b1576144b1615c11565b048201901c905060018184816144c9576144c9615c11565b048201901c905060018184816144e1576144e1615c11565b048201901c905060018184816144f9576144f9615c11565b048201901c9050600181848161451157614511615c11565b048201901c90506110de8182858161452b5761452b615c11565b04614f26565b6000600160801b8311156145985760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401610fad565b600160801b82106145ea5760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401610fad565b60806001607f1b6145fb8486615c6c565b6146059190615b9d565b901c9392505050565b614617816131ea565b6146795760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610fad565b6000805160206166da83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6146b183614f3c565b6000825111806146be5750805b15610f08576110678383614f7c565b610ee982826040516024016146e3929190616653565b60408051601f198184030181529190526020810180516001600160e01b031663319af33360e01b179052614fa1565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ed15760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610fad565b6001600160a01b0381166147d057604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b03166147f957604051635df4b1ef60e01b815260040160405180910390fd5b6148016118fe565b6001600160a01b031663a230c524826040518263ffffffff1660e01b815260040161482c91906155eb565b602060405180830381865afa158015614849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061486d9190615d5c565b6118fb57604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b8251811015614947578281815181106148a9576148a961660f565b602002602001015160000151600003156149355760008382815181106148d1576148d161660f565b60200260200101516000015190506148e881614e59565b6149085760405163c1d17bef60e01b815260048101829052602401610fad565b83828151811061491a5761491a61660f565b60200260200101516020015183614931919061667d565b9250505b8061493f81615e90565b91505061488e565b50600061495c614956856124df565b83614fc2565b905060006149686118fe565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614995929190615d42565b602060405180830381865afa1580156149b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149d69190615d79565b9050808211156149fd578181604051636b20c17f60e11b8152600401610fad929190615da2565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b8251811015611067576000838281518110614a4157614a4161660f565b60200260200101516000015190508251600003614a9d5760408051600180825281830190925290602080830190803683370190505092508083600081518110614a8c57614a8c61660f565b602002602001018181525050614bd0565b6000805b8451811015614afd5782858281518110614abd57614abd61660f565b602002602001015103614aeb57600191508281604051632b7aec5560e21b8152600401610fad929190615da2565b80614af581615e90565b915050614aa1565b5080614bce57600084516001614b139190615b9d565b6001600160401b03811115614b2a57614b2a615294565b604051908082528060200260200182016040528015614b53578160200160208202803683370190505b50905060005b8551811015614bab57858181518110614b7457614b7461660f565b6020026020010151828281518110614b8e57614b8e61660f565b602090810291909101015280614ba381615e90565b915050614b59565b508281865181518110614bc057614bc061660f565b602090810291909101015293505b505b6000848381518110614be457614be461660f565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b16835260098101909452812054919350614c248285614fc2565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d6020526040902054811015614cbd5784546001600160a01b038c166000908152607d60205260409020805483908110614c9257614c9261660f565b906000526020600020015403614cab5760019150614cbd565b80614cb581615e90565b915050614c46565b5080614cf3576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311614d4357614d048383615b69565b60706000828254614d159190615b9d565b90915550614d2590508383615b69565b846002016000828254614d389190615b9d565b90915550614d879050565b614d4d8284615b69565b60706000828254614d5e9190615b69565b90915550614d6e90508284615b69565b846002016000828254614d819190615b69565b90915550505b8360070154600003614d9e57436007850155614dde565b614da884846131f9565b6000805160206166fa8339815191528a878487600201548860030154604051614dd5959493929190616625565b60405180910390a15b5050505050508080614def90615e90565b915050614a24565b60008060008084865af1610ee95763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716614e4f576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ed15750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c15614ea757608092831c92015b604083901c15614eb957604092831c92015b602083901c15614ecb57602092831c92015b601083901c15614edd57601092831c92015b600883901c15614eef57600892831c92015b600483901c15614f0157600492831c92015b600283901c15614f1357600292831c92015b600183901c15610ed15760010192915050565b6000818310614f3557816110de565b5090919050565b614f458161460e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606110de838360405180606001604052806027815260200161671a60279139614ff9565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b600080614fcf838561667d565b905060008112156110de57838382604051631dde38a160e11b8152600401610fad93929190616133565b6060600080856001600160a01b031685604051615016919061669d565b600060405180830381855af49150503d8060008114615051576040519150601f19603f3d011682016040523d82523d6000602084013e615056565b606091505b509150915061506786838387615071565b9695505050505050565b606083156150de5782516000036150d75761508b856131ea565b6150d75760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fad565b5081614183565b61418383838151156150f35781518083602001fd5b8060405162461bcd60e51b8152600401610fad9190615b0c565b60006020828403121561511f57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118fb576118fb615133565b60005b8381101561517457818101518382015260200161515c565b50506000910152565b60008151808452615195816020860160208601615159565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152614183604085018261517d565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e085015261521089615149565b886101008501528161012085015261522a828501896151a9565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561527c57600080fd5b81356001600160e01b0319811681146110de57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051608081016001600160401b03811182821017156152cc576152cc615294565b60405290565b60405160c081016001600160401b03811182821017156152cc576152cc615294565b60405160e081016001600160401b03811182821017156152cc576152cc615294565b604080519081016001600160401b03811182821017156152cc576152cc615294565b60405160a081016001600160401b03811182821017156152cc576152cc615294565b604051601f8201601f191681016001600160401b038111828210171561538257615382615294565b604052919050565b6001600160a01b03811681146118fb57600080fd5b6000808284036101408112156153b457600080fd5b60c08112156153c257600080fd5b6153ca6152d2565b84356153d58161538a565b815260208501356153e58161538a565b602082015260408581013590820152606080860135908201526080808601358183015260a0808701359083015290935060bf198201121561542557600080fd5b5061542e6152aa565b60c0840135815260e0840135602082015261010084013560408201526101209093013560608401525092909150565b60006001600160401b0382111561547657615476615294565b5060051b60200190565b600082601f83011261549157600080fd5b813560206154a66154a18361545d565b61535a565b82815260059290921b840181019181810190868411156154c557600080fd5b8286015b848110156154e95780356154dc8161538a565b83529183019183016154c9565b509695505050505050565b60006001600160401b0382111561550d5761550d615294565b50601f01601f191660200190565b60006155296154a1846154f4565b905082815283838301111561553d57600080fd5b828260208301376000602084830101529392505050565b600082601f83011261556557600080fd5b6110de8383356020850161551b565b60008060006060848603121561558957600080fd5b83356001600160401b03808211156155a057600080fd5b6155ac87838801615480565b945060208601359150808211156155c257600080fd5b506155cf86828701615554565b92505060408401356155e08161538a565b809150509250925092565b6001600160a01b0391909116815260200190565b60008060006060848603121561561457600080fd5b833561561f8161538a565b9250602084013561562f8161538a565b915060408401356155e08161538a565b6000806040838503121561565257600080fd5b82356001600160401b0381111561566857600080fd5b61567485828601615554565b92505060208301356156858161538a565b809150509250929050565b600481106156a0576156a0615133565b9052565b60208101610ed18284615690565b600080604083850312156156c557600080fd5b82356156d08161538a565b946020939093013593505050565b600080604083850312156156f157600080fd5b50508035926020909101359150565b60008060006060848603121561571557600080fd5b505081359360208301359350604090920135919050565b600381106156a0576156a0615133565b60208101610ed1828461572c565b60006020828403121561575c57600080fd5b81356110de8161538a565b6000806040838503121561577a57600080fd5b82356157858161538a565b915060208301356001600160401b038111156157a057600080fd5b6157ac85828601615554565b9150509250929050565b6000806000606084860312156157cb57600080fd5b83356157d68161538a565b925060208401356001600160401b038111156157f157600080fd5b8401601f8101861361580257600080fd5b6155cf8682356020840161551b565b6020815260006110de60208301846151a9565b6000806040838503121561583757600080fd5b82356001600160401b038082111561584e57600080fd5b61585a86838701615480565b935060209150818501358181111561587157600080fd5b8501601f8101871361588257600080fd5b80356158906154a18261545d565b81815260059190911b820184019084810190898311156158af57600080fd5b8584015b838110156158e7578035868111156158cb5760008081fd5b6158d98c8983890101615554565b8452509186019186016158b3565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561594357815180516001600160a01b03168552860151868501529284019290850190600101615915565b5091979650505050505050565b60008083601f84011261596257600080fd5b5081356001600160401b0381111561597957600080fd5b60208301915083602082850101111561407e57600080fd5b6000806000806000606086880312156159a957600080fd5b8535945060208601356001600160401b03808211156159c757600080fd5b6159d389838a01615950565b909650945060408801359150808211156159ec57600080fd5b506159f988828901615950565b969995985093965092949392505050565b80151581146118fb57600080fd5b600060208284031215615a2a57600080fd5b81356110de81615a0a565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101615a6d88615149565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b60008060408385031215615ab757600080fd5b8235915060208301356156858161538a565b60208101615ad683615149565b91905290565b60008060408385031215615aef57600080fd5b8235915060208301356001600160401b038111156157a057600080fd5b6020815260006110de602083018461517d565b600181811c90821680615b3357607f821691505b602082108103611b8c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610ed157610ed1615b53565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ed157610ed1615b53565b9283526001600160a01b03919091166020830152604082015260600190565b600060208284031215615be157600080fd5b81516110de8161538a565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082615c4457634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b03821680615c6257615c62615b53565b6000190192915050565b8082028115828204841417610ed157610ed1615b53565b6020808252602c908201526000805160206166ba83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206166ba83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b600060208284031215615d6e57600080fd5b81516110de81615a0a565b600060208284031215615d8b57600080fd5b5051919050565b8051615d9d8161538a565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b838152604060208201526000615e0a604083018486615dc7565b95945050505050565b60006001600160401b038281166002600160401b03198101615e3757615e37615b53565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090615e7c9083018587615dc7565b90508260a083015298975050505050505050565b600060018201615ea257615ea2615b53565b5060010190565b805160038110615d9d57600080fd5b805160048110615d9d57600080fd5b600060208284031215615ed957600080fd5b604051602081016001600160401b0381118282101715615efb57615efb615294565b6040529151825250919050565b600060c08284031215615f1a57600080fd5b615f226152d2565b90508151615f2f8161538a565b81526020820151615f3f8161538a565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b60008183036101e0811215615f8857600080fd5b615f906152f4565b6080821215615f9e57600080fd5b615fa66152aa565b915083518252602084015160208301526040840151604083015260608401516060830152818152615fd960808501615ea9565b6020820152615fea60a08501615eb8565b6040820152615ffc8560c08601615ec7565b606082015261600e8560e08601615f08565b60808201526160206101a08501615d92565b60a08201526160326101c08501615d92565b60c0820152949350505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60006102008201905083825261607f60208301845161603f565b602083015161609160a084018261572c565b5060408301516160a460c0840182615690565b506060838101515160e084015260808085015180516001600160a01b0390811661010087015260208201511661012086015260408101516101408601529182015161016085015281015161018084015260a0908101516101a08401528301516161116101c0840182615126565b5060c0830151613e246101e0840182615126565b60808101610ed1828461603f565b9283526020830191909152604082015260600190565b60006040828403121561615b57600080fd5b616163615316565b8251815260208301519091506001600160401b0381111561618357600080fd5b8201601f8101841361619457600080fd5b80516161a26154a1826154f4565b8181528560208385010111156161b757600080fd5b6161c8826020830160208601615159565b602084015250909392505050565b6000602082840312156161e857600080fd5b81516001600160401b03808211156161ff57600080fd5b9083019060c0828603121561621357600080fd5b61621b6152d2565b82518152602083015161622d8161538a565b602082015260408301516162408161538a565b604082015260608301518281111561625757600080fd5b61626387828601616149565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b60006020828403121561629b57600080fd5b81516001600160401b03808211156162b257600080fd5b9083019060a082860312156162c657600080fd5b6162ce615338565b8251815260208301516162e08161538a565b60208201526040838101519082015260608301516162fd8161538a565b606082015260808301518281111561631457600080fd5b61632087828601616149565b60808301525095945050505050565b601f821115610f0857600081815260208120601f850160051c810160208610156163565750805b601f850160051c820191505b8181101561637557828155600101616362565b505050505050565b81516001600160401b0381111561639657616396615294565b6163aa816163a48454615b1f565b8461632f565b602080601f8311600181146163df57600084156163c75750858301515b600019600386901b1c1916600185901b178555616375565b600085815260208120601f198616915b8281101561640e578886015182559484019460019091019084016163ef565b508582101561642c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121561644e57600080fd5b815160ff811681146110de57600080fd5b600181815b8085111561649a57816000190482111561648057616480615b53565b8085161561648d57918102915b93841c9390800290616464565b509250929050565b6000826164b157506001610ed1565b816164be57506000610ed1565b81600181146164d457600281146164de576164fa565b6001915050610ed1565b60ff8411156164ef576164ef615b53565b50506001821b610ed1565b5060208310610133831016604e8410600b841016171561651d575081810a610ed1565b616527838361645f565b806000190482111561653b5761653b615b53565b029392505050565b60006110de83836164a2565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561657857600080fd5b82516001600160401b0381111561658e57600080fd5b8301601f8101851361659f57600080fd5b80516165ad6154a18261545d565b81815260069190911b820183019083810190878311156165cc57600080fd5b928401925b8284101561397157604084890312156165ea5760008081fd5b6165f2615316565b8451815285850151868201528252604090930192908401906165d1565b634e487b7160e01b600052603260045260246000fd5b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b604081526000616666604083018561517d565b905060018060a01b03831660208301529392505050565b8082018281126000831280158216821582161715613a1c57613a1c615b53565b600082516166af818460208701615159565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122051ff812a84a305f8c830c17f353d4436238dd34d2483d8def723b05f4325a8e464736f6c63430008130033","sourceMap":"3782:50033:98:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:136;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:136;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:136;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:136;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9672:25:136;;;9660:2;9645:18;21565:107:98;9526:177:136;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;10968:25:136;;;11024:2;11009:18;;11002:34;;;;11052:18;;;11045:34;11110:2;11095:18;;11088:34;10955:3;10940:19;8833:24:98;10737:391:136;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;15532:31:136;;;15514:50;;15502:2;15487:18;8639:26:98;15370:200:136;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;30100:191;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:103;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;10318:799:98:-;;;;;;;;;;-1:-1:-1;10318:799:98;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22599:2:136;3325:201:47;;;22581:21:136;22638:2;22618:18;;;22611:30;22677:34;22657:18;;;22650:62;-1:-1:-1;;;22728:18:136;;;22721:44;22782:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;22964:36:136;;3721:14:47;;22952:2:136;22937:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9672:25:136;;;9645:18;;46534:29:98;9526:177:136;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9672:25:136;;;9645:18;;50531:29:98;9526:177:136;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9672:25:136;;;9645:18;;50657:31:98;9526:177:136;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9672:25:136;;9660:2;9645:18;;9526:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;26595:2:136;2064:92:64;;;26577:21:136;26634:2;26614:18;;;26607:30;26673:34;26653:18;;;26646:62;-1:-1:-1;;;26724:18:136;;;26717:54;26788:19;;2064:92:64;26393:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;17286:1025:98:-:0;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;30100:191::-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9672:25:136;;;9645:18;;48528:29:98;9526:177:136;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9672:25:136;;;9645:18;;48652:29:98;9526:177:136;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9672:25:136;;;9645:18;;53238:29:98;9526:177:136;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9672:25:136;;;53745:29:98;;-1:-1:-1;9645:18:136;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;10318:799;2435:16:97;:14;:16::i;:::-;10411:28:98::1;10431:7;10411:19;:28::i;:::-;10503:23;::::0;10528:10:::1;:12:::0;;10485:56:::1;::::0;-1:-1:-1;;;;;10503:23:98::1;::::0;::::1;10528:12;::::0;::::1;:::i;:::-;;;;;10485:17;:56::i;:::-;10450:15;:92:::0;;-1:-1:-1;;;;;;10450:92:98::1;-1:-1:-1::0;;;;;10450:92:98;;;::::1;::::0;;::::1;::::0;;10552:28:::1;::::0;;-1:-1:-1;;;10552:28:98;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;10552:28:98;;;;;;;;-1:-1:-1;10450:92:98;10552:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10591:40;10645:5;10634:51;;;;;;;;;;;;:::i;:::-;10700:20;::::0;::::1;::::0;10591:94;;-1:-1:-1;;;;;;10700:34:98::1;10696:94;;10757:22;;-1:-1:-1::0;;;10757:22:98::1;;;;;;;;;;;10696:94;10820:20;::::0;::::1;::::0;10800:17:::1;:40:::0;;-1:-1:-1;;;;;;10800:40:98::1;-1:-1:-1::0;;;;;10800:40:98;;::::1;::::0;;;::::1;::::0;;10866:15:::1;::::0;::::1;::::0;10851:12:::1;:30:::0;;-1:-1:-1;;10851:30:98::1;-1:-1:-1::0;10866:15:98;10851:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10905:14:98::1;::::0;::::1;::::0;10891:11:::1;:28:::0;;-1:-1:-1;;10891:28:98::1;;10905:14:::0;10891:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;10943:14:98::1;::::0;::::1;::::0;10929:28;:11:::1;:28:::0;10994:14:::1;::::0;::::1;::::0;10967:11:::1;:42:::0;;-1:-1:-1;;;;;;10967:42:98::1;-1:-1:-1::0;;;;;10967:42:98;;::::1;::::0;;;::::1;::::0;;11035:19:::1;::::0;::::1;::::0;11056:11;;11020:48:::1;::::0;11035:19;11020:14:::1;:48::i;:::-;11084:26;11098:7;11107:2;11084:26;;;;;;;:::i;:::-;;;;;;;;10401:716;10318:799:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7055:25:::2;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35144:2:136;2415:73:45::1;::::0;::::1;35126:21:136::0;35183:2;35163:18;;;35156:30;35222:34;35202:18;;;35195:62;-1:-1:-1;;;35273:18:136;;;35266:36;35319:19;;2415:73:45::1;34942:402:136::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;35607:15:136;;;35589:34;;35659:15;;;35654:2;35639:18;;35632:43;35711:15;;;35706:2;35691:18;;35684:43;35539:2;35524:18;;35349:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;36074:25:136;;;36153:18;;;36146:43;;;;36205:18;;;36198:43;;;;36257:18;;36250:34;36300:19;;;36293:35;36344:19;;;36337:35;;;;36403:3;36388:19;;36381:35;;;;45815:407:98;;36061:3:136;36046:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9672:25:136;;;9645:18;;23722:29:98;9526:177:136;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9672:25:136;;;9645:18;;24025:29:98;9526:177:136;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9672:25:136;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9645:18:136;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9672:25:136;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9645:18:136;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;44441:2:136;42048:53:98;;;44423:21:136;44480:2;44460:18;;;44453:30;-1:-1:-1;;;44499:18:136;;;44492:58;44567:18;;42048:53:98;44239:352:136;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;44987:2:136;3262:56:60;;;44969:21:136;45026:2;45006:18;;;44999:30;45065:34;45045:18;;;45038:62;-1:-1:-1;;;45116:18:136;;;45109:44;45170:19;;3262:56:60;44785:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;45402:2:136;3140:82:60;;;45384:21:136;45441:2;45421:18;;;45414:30;45480:34;45460:18;;;45453:62;-1:-1:-1;;;45531:18:136;;;45524:39;45580:19;;3140:82:60;45200:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;45812:2:136;1675:68:45;;;45794:21:136;;;45831:18;;;45824:30;45890:34;45870:18;;;45863:62;45942:18;;1675:68:45;45610:356:136;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;12805:296:98:-;12894:48;;;;;;;;;;;;-1:-1:-1;;;12894:48:98;;;;12929:11;;12878:4;;12894:48;;-1:-1:-1;;;;;12929:11:98;12894;:48::i;:::-;12964:11;;-1:-1:-1;;;;;12964:11:98;12952:76;;-1:-1:-1;13013:4:98;;12805:296;-1:-1:-1;12805:296:98:o;12952:76::-;13044:11;;:50;;-1:-1:-1;;;13044:50:98;;-1:-1:-1;;;;;13044:11:98;;;;:28;;:50;;13073:5;;13088:4;;13044:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637::-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;12473:141::-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:136;;;11071:19:97;;3276:2:136;3261:18;11071:19:97;3148:187:136;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;46305:2:136;46276:15;46272:45;4867:36:6;;;46260:58:136;46334:12;;;46327:28;;;4823:7:6;;;;46371:12:136;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;22272:633:98:-;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9672:25:136;;;27095:28:98;;9660:2:136;9645:18;27095:28:98;9526:177:136;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;48420:2:136;41543:66:98;;;48402:21:136;48459:2;48439:18;;;48432:30;48498:34;48478:18;;;48471:62;-1:-1:-1;;;48549:18:136;;;48542:38;48597:19;;41543:66:98;48218:404:136;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;48829:2:136;41619:53:98;;;48811:21:136;48868:2;48848:18;;;48841:30;-1:-1:-1;;;48887:18:136;;;48880:58;48955:18;;41619:53:98;48627:352:136;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;49186:2:136;1479:95:60;;;49168:21:136;49225:2;49205:18;;;49198:30;49264:34;49244:18;;;49237:62;-1:-1:-1;;;49315:18:136;;;49308:43;49368:19;;1479:95:60;48984:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;6994:145:34:-;7061:71;7124:2;7128;7077:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;7077:54:34;;;;;;;;;;;;;;-1:-1:-1;;;;;7077:54:34;-1:-1:-1;;;7077:54:34;;;7061:15;:71::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;49922:2:136;2847:58:46;;;49904:21:136;49961:2;49941:18;;;49934:30;-1:-1:-1;;;49980:18:136;;;49973:53;50043:18;;2847:58:46;49720:347:136;11899:391:98;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9672:25:136;;;9645:18;;33311:29:98;9526:177:136;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;181:376:34:-;275:14;;131:42;448:2;435:16;;251:21;;275:14;435:16;131:42;484:5;473:68;464:77;;401:150;;181:376;:::o;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;51601:2:136;8113:60:76;;;51583:21:136;51640:2;51620:18;;;51613:30;51679:31;51659:18;;;51652:59;51728:18;;8113:60:76;51399:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:136:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:136;;14:180;-1:-1:-1;14:180:136:o;199:104::-;-1:-1:-1;;;;;265:31:136;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:136;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:136;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:136:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:136;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:136:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:136;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:136;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:136;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:253::-;4677:2;4671:9;4719:4;4707:17;;-1:-1:-1;;;;;4739:34:136;;4775:22;;;4736:62;4733:88;;;4801:18;;:::i;4863:257::-;4935:4;4929:11;;;4967:17;;-1:-1:-1;;;;;4999:34:136;;5035:22;;;4996:62;4993:88;;;5061:18;;:::i;5125:253::-;5197:2;5191:9;5239:4;5227:17;;-1:-1:-1;;;;;5259:34:136;;5295:22;;;5256:62;5253:88;;;5321:18;;:::i;5383:275::-;5454:2;5448:9;5519:2;5500:13;;-1:-1:-1;;5496:27:136;5484:40;;-1:-1:-1;;;;;5539:34:136;;5575:22;;;5536:62;5533:88;;;5601:18;;:::i;:::-;5637:2;5630:22;5383:275;;-1:-1:-1;5383:275:136:o;5663:144::-;-1:-1:-1;;;;;5751:31:136;;5741:42;;5731:70;;5797:1;5794;5787:12;5812:1289;5942:6;5950;5994:9;5985:7;5981:23;6024:3;6020:2;6016:12;6013:32;;;6041:1;6038;6031:12;6013:32;6065:4;6061:2;6057:13;6054:33;;;6083:1;6080;6073:12;6054:33;6109:22;;:::i;:::-;6168:9;6155:23;6187:46;6225:7;6187:46;:::i;:::-;6242:22;;6316:2;6301:18;;6288:32;6329:46;6288:32;6329:46;:::i;:::-;6402:2;6391:14;;6384:31;6475:2;6460:18;;;6447:32;6431:14;;;6424:56;6540:2;6525:18;;;6512:32;6496:14;;;6489:56;6606:3;6591:19;;;6578:33;6561:15;;;6554:58;6673:3;6658:19;;;6645:33;6628:15;;;6621:58;6395:5;;-1:-1:-1;;;6719:17:136;;6715:27;6712:47;;;6755:1;6752;6745:12;6712:47;;6783:22;;:::i;:::-;6858:4;6843:20;;6830:34;6814:51;;6927:3;6912:19;;6899:33;6894:2;6881:16;;6874:59;6995:3;6980:19;;6967:33;6962:2;6949:16;;6942:59;7063:3;7048:19;;;7035:33;7030:2;7017:16;;7010:59;-1:-1:-1;5812:1289:136;6821:7;;-1:-1:-1;5812:1289:136:o;7106:183::-;7166:4;-1:-1:-1;;;;;7188:30:136;;7185:56;;;7221:18;;:::i;:::-;-1:-1:-1;7266:1:136;7262:14;7278:4;7258:25;;7106:183::o;7294:750::-;7348:5;7401:3;7394:4;7386:6;7382:17;7378:27;7368:55;;7419:1;7416;7409:12;7368:55;7455:6;7442:20;7481:4;7505:60;7521:43;7561:2;7521:43;:::i;:::-;7505:60;:::i;:::-;7599:15;;;7685:1;7681:10;;;;7669:23;;7665:32;;;7630:12;;;;7709:15;;;7706:35;;;7737:1;7734;7727:12;7706:35;7773:2;7765:6;7761:15;7785:230;7801:6;7796:3;7793:15;7785:230;;;7881:3;7868:17;7898:44;7936:5;7898:44;:::i;:::-;7955:18;;7993:12;;;;7818;;7785:230;;;-1:-1:-1;8033:5:136;7294:750;-1:-1:-1;;;;;;7294:750:136:o;8049:186::-;8097:4;-1:-1:-1;;;;;8119:30:136;;8116:56;;;8152:18;;:::i;:::-;-1:-1:-1;8218:2:136;8197:15;-1:-1:-1;;8193:29:136;8224:4;8189:40;;8049:186::o;8240:336::-;8304:5;8333:52;8349:35;8377:6;8349:35;:::i;8333:52::-;8324:61;;8408:6;8401:5;8394:21;8448:3;8439:6;8434:3;8430:16;8427:25;8424:45;;;8465:1;8462;8455:12;8424:45;8514:6;8509:3;8502:4;8495:5;8491:16;8478:43;8568:1;8561:4;8552:6;8545:5;8541:18;8537:29;8530:40;8240:336;;;;;:::o;8581:220::-;8623:5;8676:3;8669:4;8661:6;8657:17;8653:27;8643:55;;8694:1;8691;8684:12;8643:55;8716:79;8791:3;8782:6;8769:20;8762:4;8754:6;8750:17;8716:79;:::i;8806:715::-;8917:6;8925;8933;8986:2;8974:9;8965:7;8961:23;8957:32;8954:52;;;9002:1;8999;8992:12;8954:52;9029:23;;-1:-1:-1;;;;;9101:14:136;;;9098:34;;;9128:1;9125;9118:12;9098:34;9151:61;9204:7;9195:6;9184:9;9180:22;9151:61;:::i;:::-;9141:71;;9265:2;9254:9;9250:18;9237:32;9221:48;;9294:2;9284:8;9281:16;9278:36;;;9310:1;9307;9300:12;9278:36;;9333:51;9376:7;9365:8;9354:9;9350:24;9333:51;:::i;:::-;9323:61;;;9434:2;9423:9;9419:18;9406:32;9447:44;9485:5;9447:44;:::i;:::-;9510:5;9500:15;;;8806:715;;;;;:::o;9708:229::-;-1:-1:-1;;;;;9898:32:136;;;;9880:51;;9868:2;9853:18;;9708:229::o;10164:568::-;10241:6;10249;10257;10310:2;10298:9;10289:7;10285:23;10281:32;10278:52;;;10326:1;10323;10316:12;10278:52;10365:9;10352:23;10384:44;10422:5;10384:44;:::i;:::-;10447:5;-1:-1:-1;10504:2:136;10489:18;;10476:32;10517:46;10476:32;10517:46;:::i;:::-;10582:7;-1:-1:-1;10641:2:136;10626:18;;10613:32;10654:46;10613:32;10654:46;:::i;11133:468::-;11210:6;11218;11271:2;11259:9;11250:7;11246:23;11242:32;11239:52;;;11287:1;11284;11277:12;11239:52;11314:23;;-1:-1:-1;;;;;11349:30:136;;11346:50;;;11392:1;11389;11382:12;11346:50;11415:49;11456:7;11447:6;11436:9;11432:22;11415:49;:::i;:::-;11405:59;;;11514:2;11503:9;11499:18;11486:32;11527:44;11565:5;11527:44;:::i;:::-;11590:5;11580:15;;;11133:468;;;;;:::o;11814:142::-;11897:1;11890:5;11887:12;11877:46;;11903:18;;:::i;:::-;11932;;11814:142::o;11961:213::-;12110:2;12095:18;;12122:46;12099:9;12150:6;12122:46;:::i;12179:328::-;12247:6;12255;12308:2;12296:9;12287:7;12283:23;12279:32;12276:52;;;12324:1;12321;12314:12;12276:52;12363:9;12350:23;12382:44;12420:5;12382:44;:::i;:::-;12445:5;12497:2;12482:18;;;;12469:32;;-1:-1:-1;;;12179:328:136:o;12512:248::-;12580:6;12588;12641:2;12629:9;12620:7;12616:23;12612:32;12609:52;;;12657:1;12654;12647:12;12609:52;-1:-1:-1;;12680:23:136;;;12750:2;12735:18;;;12722:32;;-1:-1:-1;12512:248:136:o;12765:316::-;12842:6;12850;12858;12911:2;12899:9;12890:7;12886:23;12882:32;12879:52;;;12927:1;12924;12917:12;12879:52;-1:-1:-1;;12950:23:136;;;13020:2;13005:18;;12992:32;;-1:-1:-1;13071:2:136;13056:18;;;13043:32;;12765:316;-1:-1:-1;12765:316:136:o;13086:143::-;13170:1;13163:5;13160:12;13150:46;;13176:18;;:::i;13234:215::-;13384:2;13369:18;;13396:47;13373:9;13425:6;13396:47;:::i;13454:260::-;13513:6;13566:2;13554:9;13545:7;13541:23;13537:32;13534:52;;;13582:1;13579;13572:12;13534:52;13621:9;13608:23;13640:44;13678:5;13640:44;:::i;14140:468::-;14217:6;14225;14278:2;14266:9;14257:7;14253:23;14249:32;14246:52;;;14294:1;14291;14284:12;14246:52;14333:9;14320:23;14352:44;14390:5;14352:44;:::i;:::-;14415:5;-1:-1:-1;14471:2:136;14456:18;;14443:32;-1:-1:-1;;;;;14487:30:136;;14484:50;;;14530:1;14527;14520:12;14484:50;14553:49;14594:7;14585:6;14574:9;14570:22;14553:49;:::i;:::-;14543:59;;;14140:468;;;;;:::o;14613:752::-;14700:6;14708;14716;14769:2;14757:9;14748:7;14744:23;14740:32;14737:52;;;14785:1;14782;14775:12;14737:52;14824:9;14811:23;14843:44;14881:5;14843:44;:::i;:::-;14906:5;-1:-1:-1;14962:2:136;14947:18;;14934:32;-1:-1:-1;;;;;14978:30:136;;14975:50;;;15021:1;15018;15011:12;14975:50;15044:22;;15097:4;15089:13;;15085:27;-1:-1:-1;15075:55:136;;15126:1;15123;15116:12;15075:55;15149:73;15214:7;15209:2;15196:16;15191:2;15187;15183:11;15149:73;:::i;15575:261::-;15756:2;15745:9;15738:21;15719:4;15776:54;15826:2;15815:9;15811:18;15803:6;15776:54;:::i;15841:1357::-;15968:6;15976;16029:2;16017:9;16008:7;16004:23;16000:32;15997:52;;;16045:1;16042;16035:12;15997:52;16072:23;;-1:-1:-1;;;;;16144:14:136;;;16141:34;;;16171:1;16168;16161:12;16141:34;16194:61;16247:7;16238:6;16227:9;16223:22;16194:61;:::i;:::-;16184:71;;16274:2;16264:12;;16329:2;16318:9;16314:18;16301:32;16358:2;16348:8;16345:16;16342:36;;;16374:1;16371;16364:12;16342:36;16397:24;;16452:4;16444:13;;16440:27;-1:-1:-1;16430:55:136;;16481:1;16478;16471:12;16430:55;16517:2;16504:16;16540:60;16556:43;16596:2;16556:43;:::i;16540:60::-;16634:15;;;16716:1;16712:10;;;;16704:19;;16700:28;;;16665:12;;;;16740:19;;;16737:39;;;16772:1;16769;16762:12;16737:39;16804:2;16800;16796:11;16816:352;16832:6;16827:3;16824:15;16816:352;;;16918:3;16905:17;16954:2;16941:11;16938:19;16935:109;;;16998:1;17027:2;17023;17016:14;16935:109;17069:56;17117:7;17112:2;17098:11;17094:2;17090:20;17086:29;17069:56;:::i;:::-;17057:69;;-1:-1:-1;17146:12:136;;;;16849;;16816:352;;;16820:3;17187:5;17177:15;;;;;;;;15841:1357;;;;;:::o;17203:826::-;17436:2;17488:21;;;17558:13;;17461:18;;;17580:22;;;17407:4;;17436:2;17621;;17639:18;;;;17680:15;;;17407:4;17723:280;17737:6;17734:1;17731:13;17723:280;;;17796:13;;17838:9;;-1:-1:-1;;;;;17834:35:136;17822:48;;17910:11;;17904:18;17890:12;;;17883:40;17943:12;;;;17978:15;;;;17866:1;17752:9;17723:280;;;-1:-1:-1;18020:3:136;;17203:826;-1:-1:-1;;;;;;;17203:826:136:o;18034:348::-;18086:8;18096:6;18150:3;18143:4;18135:6;18131:17;18127:27;18117:55;;18168:1;18165;18158:12;18117:55;-1:-1:-1;18191:20:136;;-1:-1:-1;;;;;18223:30:136;;18220:50;;;18266:1;18263;18256:12;18220:50;18303:4;18295:6;18291:17;18279:29;;18355:3;18348:4;18339:6;18331;18327:19;18323:30;18320:39;18317:59;;;18372:1;18369;18362:12;18387:788;18487:6;18495;18503;18511;18519;18572:2;18560:9;18551:7;18547:23;18543:32;18540:52;;;18588:1;18585;18578:12;18540:52;18611:23;;;-1:-1:-1;18685:2:136;18670:18;;18657:32;-1:-1:-1;;;;;18738:14:136;;;18735:34;;;18765:1;18762;18755:12;18735:34;18804:59;18855:7;18846:6;18835:9;18831:22;18804:59;:::i;:::-;18882:8;;-1:-1:-1;18778:85:136;-1:-1:-1;18970:2:136;18955:18;;18942:32;;-1:-1:-1;18986:16:136;;;18983:36;;;19015:1;19012;19005:12;18983:36;;19054:61;19107:7;19096:8;19085:9;19081:24;19054:61;:::i;:::-;18387:788;;;;-1:-1:-1;18387:788:136;;-1:-1:-1;19134:8:136;;19028:87;18387:788;-1:-1:-1;;;18387:788:136:o;19180:118::-;19266:5;19259:13;19252:21;19245:5;19242:32;19232:60;;19288:1;19285;19278:12;19303:241;19359:6;19412:2;19400:9;19391:7;19387:23;19383:32;19380:52;;;19428:1;19425;19418:12;19380:52;19467:9;19454:23;19486:28;19508:5;19486:28;:::i;19779:1033::-;-1:-1:-1;;;;;20281:15:136;;;20263:34;;20333:15;;;20328:2;20313:18;;20306:43;20385:15;;20380:2;20365:18;;20358:43;20432:2;20417:18;;20410:34;;;20475:3;20460:19;;20453:35;;;20212:3;20197:19;;20497:44;20534:6;20497:44;:::i;:::-;20578:6;20572:3;20561:9;20557:19;20550:35;20622:6;20616:3;20605:9;20601:19;20594:35;20666:6;20660:3;20649:9;20645:19;20638:35;20710:6;20704:3;20693:9;20689:19;20682:35;20754:6;20748:3;20737:9;20733:19;20726:35;20798:7;20792:3;20781:9;20777:19;20770:36;19779:1033;;;;;;;;;;;;;;:::o;20817:328::-;20885:6;20893;20946:2;20934:9;20925:7;20921:23;20917:32;20914:52;;;20962:1;20959;20952:12;20914:52;20998:9;20985:23;20975:33;;21058:2;21047:9;21043:18;21030:32;21071:44;21109:5;21071:44;:::i;21150:239::-;21293:2;21278:18;;21305:44;21342:6;21305:44;:::i;:::-;21358:25;;;21150:239;:::o;21394:388::-;21471:6;21479;21532:2;21520:9;21511:7;21507:23;21503:32;21500:52;;;21548:1;21545;21538:12;21500:52;21571:23;;;-1:-1:-1;21645:2:136;21630:18;;21617:32;-1:-1:-1;;;;;21661:30:136;;21658:50;;;21704:1;21701;21694:12;21787:220;21936:2;21925:9;21918:21;21899:4;21956:45;21997:2;21986:9;21982:18;21974:6;21956:45;:::i;22012:380::-;22091:1;22087:12;;;;22134;;;22155:61;;22209:4;22201:6;22197:17;22187:27;;22155:61;22262:2;22254:6;22251:14;22231:18;22228:38;22225:161;;22308:10;22303:3;22299:20;22296:1;22289:31;22343:4;22340:1;22333:15;22371:4;22368:1;22361:15;23011:127;23072:10;23067:3;23063:20;23060:1;23053:31;23103:4;23100:1;23093:15;23127:4;23124:1;23117:15;23143:128;23210:9;;;23231:11;;;23228:37;;;23245:18;;:::i;23276:345::-;-1:-1:-1;;;;;23496:32:136;;;;23478:51;;23560:2;23545:18;;23538:34;;;;23603:2;23588:18;;23581:34;23466:2;23451:18;;23276:345::o;23626:125::-;23691:9;;;23712:10;;;23709:36;;;23725:18;;:::i;23756:345::-;23958:25;;;-1:-1:-1;;;;;24019:32:136;;;;24014:2;23999:18;;23992:60;24083:2;24068:18;;24061:34;23946:2;23931:18;;23756:345::o;24106:279::-;24191:6;24244:2;24232:9;24223:7;24219:23;24215:32;24212:52;;;24260:1;24257;24250:12;24212:52;24292:9;24286:16;24311:44;24349:5;24311:44;:::i;24390:447::-;24621:25;;;-1:-1:-1;;;;;24720:15:136;;;24715:2;24700:18;;24693:43;24772:15;;24767:2;24752:18;;24745:43;24819:2;24804:18;;24797:34;24608:3;24593:19;;24390:447::o;24842:127::-;24903:10;24898:3;24894:20;24891:1;24884:31;24934:4;24931:1;24924:15;24958:4;24955:1;24948:15;24974:217;25014:1;25040;25030:132;;25084:10;25079:3;25075:20;25072:1;25065:31;25119:4;25116:1;25109:15;25147:4;25144:1;25137:15;25030:132;-1:-1:-1;25176:9:136;;24974:217::o;25196:193::-;25234:3;-1:-1:-1;;;;;25267:30:136;;;25306:41;;25327:18;;:::i;:::-;-1:-1:-1;;25363:20:136;;25196:193;-1:-1:-1;;25196:193:136:o;25394:168::-;25467:9;;;25498;;25515:15;;;25509:22;;25495:37;25485:71;;25536:18;;:::i;25567:408::-;25769:2;25751:21;;;25808:2;25788:18;;;25781:30;-1:-1:-1;;;;;;;;;;;25842:2:136;25827:18;;25820:62;-1:-1:-1;;;25913:2:136;25898:18;;25891:42;25965:3;25950:19;;25567:408::o;25980:::-;26182:2;26164:21;;;26221:2;26201:18;;;26194:30;-1:-1:-1;;;;;;;;;;;26255:2:136;26240:18;;26233:62;-1:-1:-1;;;26326:2:136;26311:18;;26304:42;26378:3;26363:19;;25980:408::o;26818:407::-;27020:2;27002:21;;;27059:2;27039:18;;;27032:30;27098:34;27093:2;27078:18;;27071:62;-1:-1:-1;;;27164:2:136;27149:18;;27142:41;27215:3;27200:19;;26818:407::o;27230:304::-;-1:-1:-1;;;;;27460:15:136;;;27442:34;;27512:15;;27507:2;27492:18;;27485:43;27392:2;27377:18;;27230:304::o;27539:245::-;27606:6;27659:2;27647:9;27638:7;27634:23;27630:32;27627:52;;;27675:1;27672;27665:12;27627:52;27707:9;27701:16;27726:28;27748:5;27726:28;:::i;27789:184::-;27859:6;27912:2;27900:9;27891:7;27887:23;27883:32;27880:52;;;27928:1;27925;27918:12;27880:52;-1:-1:-1;27951:16:136;;27789:184;-1:-1:-1;27789:184:136:o;27978:151::-;28057:13;;28079:44;28057:13;28079:44;:::i;:::-;27978:151;;;:::o;28403:248::-;28577:25;;;28633:2;28618:18;;28611:34;28565:2;28550:18;;28403:248::o;28656:274::-;28830:25;;;-1:-1:-1;;;;;28891:32:136;28886:2;28871:18;;28864:60;28818:2;28803:18;;28656:274::o;28935:266::-;29023:6;29018:3;29011:19;29075:6;29068:5;29061:4;29056:3;29052:14;29039:43;-1:-1:-1;29127:1:136;29102:16;;;29120:4;29098:27;;;29091:38;;;;29183:2;29162:15;;;-1:-1:-1;;29158:29:136;29149:39;;;29145:50;;28935:266::o;29206:315::-;29391:6;29380:9;29373:25;29434:2;29429;29418:9;29414:18;29407:30;29354:4;29454:61;29511:2;29500:9;29496:18;29488:6;29480;29454:61;:::i;:::-;29446:69;29206:315;-1:-1:-1;;;;;29206:315:136:o;29526:209::-;29564:3;-1:-1:-1;;;;;29634:14:136;;;-1:-1:-1;;;;;;29660:15:136;;29657:41;;29678:18;;:::i;:::-;29727:1;29714:15;;29526:209;-1:-1:-1;;;29526:209:136:o;29740:682::-;-1:-1:-1;;;;;30098:15:136;;;30080:34;;30145:2;30130:18;;30123:34;;;30188:2;30173:18;;30166:34;;;30236:15;;30231:2;30216:18;;30209:43;30289:3;30283;30268:19;;30261:32;;;30023:4;;30310:62;;30352:19;;30344:6;30336;30310:62;:::i;:::-;30302:70;;30409:6;30403:3;30392:9;30388:19;30381:35;29740:682;;;;;;;;;;:::o;30427:135::-;30466:3;30487:17;;;30484:43;;30507:18;;:::i;:::-;-1:-1:-1;30554:1:136;30543:13;;30427:135::o;30567:157::-;30656:13;;30698:1;30688:12;;30678:40;;30714:1;30711;30704:12;30729:156;30817:13;;30859:1;30849:12;;30839:40;;30875:1;30872;30865:12;30890:420;30965:5;31013:4;31001:9;30996:3;30992:19;30988:30;30985:50;;;31031:1;31028;31021:12;30985:50;31064:2;31058:9;31106:4;31094:17;;-1:-1:-1;;;;;31126:34:136;;31162:22;;;31123:62;31120:88;;;31188:18;;:::i;:::-;31224:2;31217:22;31287:16;;31272:32;;-1:-1:-1;31257:6:136;30890:420;-1:-1:-1;30890:420:136:o;31315:696::-;31389:5;31437:4;31425:9;31420:3;31416:19;31412:30;31409:50;;;31455:1;31452;31445:12;31409:50;31477:22;;:::i;:::-;31468:31;;31529:9;31523:16;31548:46;31586:7;31548:46;:::i;:::-;31603:22;;31670:2;31655:18;;31649:25;31683:46;31649:25;31683:46;:::i;:::-;31761:7;31756:2;31749:5;31745:14;31738:31;;31822:2;31811:9;31807:18;31801:25;31796:2;31789:5;31785:14;31778:49;31880:2;31869:9;31865:18;31859:25;31854:2;31847:5;31843:14;31836:49;31939:3;31928:9;31924:19;31918:26;31912:3;31905:5;31901:15;31894:51;31999:3;31988:9;31984:19;31978:26;31972:3;31965:5;31961:15;31954:51;31315:696;;;;:::o;32016:1203::-;32135:6;32179:9;32170:7;32166:23;32209:3;32205:2;32201:12;32198:32;;;32226:1;32223;32216:12;32198:32;32252:22;;:::i;:::-;32294:4;32290:2;32286:13;32283:33;;;32312:1;32309;32302:12;32283:33;32340:22;;:::i;:::-;32325:37;;32393:9;32387:16;32378:7;32371:33;32459:2;32448:9;32444:18;32438:25;32433:2;32424:7;32420:16;32413:51;32519:2;32508:9;32504:18;32498:25;32493:2;32484:7;32480:16;32473:51;32579:2;32568:9;32564:18;32558:25;32553:2;32544:7;32540:16;32533:51;32607:7;32600:5;32593:22;32647:61;32702:4;32691:9;32687:20;32647:61;:::i;:::-;32642:2;32635:5;32631:14;32624:85;32741:59;32795:3;32784:9;32780:19;32741:59;:::i;:::-;32736:2;32729:5;32725:14;32718:83;32833:76;32901:7;32895:3;32884:9;32880:19;32833:76;:::i;:::-;32828:2;32821:5;32817:14;32810:100;32944:76;33012:7;33005:4;32994:9;32990:20;32944:76;:::i;:::-;32937:4;32930:5;32926:16;32919:102;33054:50;33099:3;33088:9;33084:19;33054:50;:::i;:::-;33048:3;33041:5;33037:15;33030:75;33138:50;33183:3;33172:9;33168:19;33138:50;:::i;:::-;33132:3;33121:15;;33114:75;33125:5;32016:1203;-1:-1:-1;;;;32016:1203:136:o;33224:261::-;33304:5;33298:12;33293:3;33286:25;33360:4;33353:5;33349:16;33343:23;33336:4;33331:3;33327:14;33320:47;33416:4;33409:5;33405:16;33399:23;33392:4;33387:3;33383:14;33376:47;33472:4;33465:5;33461:16;33455:23;33448:4;33443:3;33439:14;33432:47;;;33224:261::o;33490:1447::-;33708:4;33750:3;33739:9;33735:19;33727:27;;33781:6;33770:9;33763:25;33797:61;33854:2;33843:9;33839:18;33830:6;33824:13;33797:61;:::i;:::-;33905:2;33897:6;33893:15;33887:22;33918:63;33976:3;33965:9;33961:19;33947:12;33918:63;:::i;:::-;;34030:4;34022:6;34018:17;34012:24;34045:64;34104:3;34093:9;34089:19;34073:14;34045:64;:::i;:::-;-1:-1:-1;34170:4:136;34158:17;;;34152:24;34146:31;34140:3;34125:19;;34118:60;34227:4;34215:17;;;34209:24;34312:21;;-1:-1:-1;;;;;34308:30:136;;;34302:3;34287:19;;34280:59;34406:2;34386:23;;34380:30;34376:39;34370:3;34355:19;;34348:68;34479:4;34459:25;;34453:32;34447:3;34432:19;;34425:61;34529:25;;;34523:32;34517:3;34502:19;;34495:61;34599:25;;34593:32;34587:3;34572:19;;34565:61;34260:3;34669:24;;;34663:31;34657:3;34642:19;;34635:60;34732:16;;34726:23;34758:55;34808:3;34793:19;;34726:23;34758:55;:::i;:::-;;34862:3;34854:6;34850:16;34844:23;34876:55;34926:3;34915:9;34911:19;34895:14;34876:55;:::i;36427:252::-;36615:3;36600:19;;36628:45;36604:9;36655:6;36628:45;:::i;36684:319::-;36886:25;;;36942:2;36927:18;;36920:34;;;;36985:2;36970:18;;36963:34;36874:2;36859:18;;36684:319::o;37008:726::-;37074:5;37122:4;37110:9;37105:3;37101:19;37097:30;37094:50;;;37140:1;37137;37130:12;37094:50;37162:22;;:::i;:::-;37207:16;;37193:31;;37268:2;37253:18;;37247:25;37153:31;;-1:-1:-1;;;;;;37284:30:136;;37281:50;;;37327:1;37324;37317:12;37281:50;37350:22;;37403:4;37395:13;;37391:23;-1:-1:-1;37381:51:136;;37428:1;37425;37418:12;37381:51;37457:2;37451:9;37482:48;37498:31;37526:2;37498:31;:::i;37482:48::-;37553:2;37546:5;37539:17;37593:3;37588:2;37583;37579;37575:11;37571:20;37568:29;37565:49;;;37610:1;37607;37600:12;37565:49;37623:67;37687:2;37682;37675:5;37671:14;37666:2;37662;37658:11;37623:67;:::i;:::-;37717:2;37706:14;;37699:29;-1:-1:-1;37710:5:136;;37008:726;-1:-1:-1;;;37008:726:136:o;37739:1054::-;37831:6;37884:2;37872:9;37863:7;37859:23;37855:32;37852:52;;;37900:1;37897;37890:12;37852:52;37927:16;;-1:-1:-1;;;;;37992:14:136;;;37989:34;;;38019:1;38016;38009:12;37989:34;38042:22;;;;38098:4;38080:16;;;38076:27;38073:47;;;38116:1;38113;38106:12;38073:47;38142:22;;:::i;:::-;38193:2;38187:9;38180:5;38173:24;38235:2;38231;38227:11;38221:18;38248:46;38286:7;38248:46;:::i;:::-;38321:2;38310:14;;38303:31;38372:2;38364:11;;38358:18;38385:46;38358:18;38385:46;:::i;:::-;38458:2;38447:14;;38440:31;38510:2;38502:11;;38496:18;38526:16;;;38523:36;;;38555:1;38552;38545:12;38523:36;38591:65;38648:7;38637:8;38633:2;38629:17;38591:65;:::i;:::-;38586:2;38579:5;38575:14;38568:89;;38704:3;38700:2;38696:12;38690:19;38684:3;38677:5;38673:15;38666:44;38757:3;38753:2;38749:12;38743:19;38737:3;38730:5;38726:15;38719:44;38782:5;38772:15;;;;;37739:1054;;;;:::o;38798:1012::-;38901:6;38954:2;38942:9;38933:7;38929:23;38925:32;38922:52;;;38970:1;38967;38960:12;38922:52;38997:16;;-1:-1:-1;;;;;39062:14:136;;;39059:34;;;39089:1;39086;39079:12;39059:34;39112:22;;;;39168:4;39150:16;;;39146:27;39143:47;;;39186:1;39183;39176:12;39143:47;39212:22;;:::i;:::-;39263:2;39257:9;39250:5;39243:24;39305:2;39301;39297:11;39291:18;39318:46;39356:7;39318:46;:::i;:::-;39391:2;39380:14;;39373:31;39450:2;39442:11;;;39436:18;39420:14;;;39413:42;39493:2;39485:11;;39479:18;39506:46;39479:18;39506:46;:::i;:::-;39579:2;39568:14;;39561:31;39631:3;39623:12;;39617:19;39648:16;;;39645:36;;;39677:1;39674;39667:12;39645:36;39714:65;39771:7;39760:8;39756:2;39752:17;39714:65;:::i;:::-;39708:3;39697:15;;39690:90;-1:-1:-1;39701:5:136;38798:1012;-1:-1:-1;;;;;38798:1012:136:o;40224:545::-;40326:2;40321:3;40318:11;40315:448;;;40362:1;40387:5;40383:2;40376:17;40432:4;40428:2;40418:19;40502:2;40490:10;40486:19;40483:1;40479:27;40473:4;40469:38;40538:4;40526:10;40523:20;40520:47;;;-1:-1:-1;40561:4:136;40520:47;40616:2;40611:3;40607:12;40604:1;40600:20;40594:4;40590:31;40580:41;;40671:82;40689:2;40682:5;40679:13;40671:82;;;40734:17;;;40715:1;40704:13;40671:82;;;40675:3;;;40224:545;;;:::o;40945:1352::-;41065:10;;-1:-1:-1;;;;;41087:30:136;;41084:56;;;41120:18;;:::i;:::-;41149:97;41239:6;41199:38;41231:4;41225:11;41199:38;:::i;:::-;41193:4;41149:97;:::i;:::-;41301:4;;41365:2;41354:14;;41382:1;41377:663;;;;42084:1;42101:6;42098:89;;;-1:-1:-1;42153:19:136;;;42147:26;42098:89;-1:-1:-1;;40902:1:136;40898:11;;;40894:24;40890:29;40880:40;40926:1;40922:11;;;40877:57;42200:81;;41347:944;;41377:663;40171:1;40164:14;;;40208:4;40195:18;;-1:-1:-1;;41413:20:136;;;41531:236;41545:7;41542:1;41539:14;41531:236;;;41634:19;;;41628:26;41613:42;;41726:27;;;;41694:1;41682:14;;;;41561:19;;41531:236;;;41535:3;41795:6;41786:7;41783:19;41780:201;;;41856:19;;;41850:26;-1:-1:-1;;41939:1:136;41935:14;;;41951:3;41931:24;41927:37;41923:42;41908:58;41893:74;;41780:201;-1:-1:-1;;;;;42027:1:136;42011:14;;;42007:22;41994:36;;-1:-1:-1;40945:1352:136:o;42587:273::-;42655:6;42708:2;42696:9;42687:7;42683:23;42679:32;42676:52;;;42724:1;42721;42714:12;42676:52;42756:9;42750:16;42806:4;42799:5;42795:16;42788:5;42785:27;42775:55;;42826:1;42823;42816:12;42865:422;42954:1;42997:5;42954:1;43011:270;43032:7;43022:8;43019:21;43011:270;;;43091:4;43087:1;43083:6;43079:17;43073:4;43070:27;43067:53;;;43100:18;;:::i;:::-;43150:7;43140:8;43136:22;43133:55;;;43170:16;;;;43133:55;43249:22;;;;43209:15;;;;43011:270;;;43015:3;42865:422;;;;;:::o;43292:806::-;43341:5;43371:8;43361:80;;-1:-1:-1;43412:1:136;43426:5;;43361:80;43460:4;43450:76;;-1:-1:-1;43497:1:136;43511:5;;43450:76;43542:4;43560:1;43555:59;;;;43628:1;43623:130;;;;43535:218;;43555:59;43585:1;43576:10;;43599:5;;;43623:130;43660:3;43650:8;43647:17;43644:43;;;43667:18;;:::i;:::-;-1:-1:-1;;43723:1:136;43709:16;;43738:5;;43535:218;;43837:2;43827:8;43824:16;43818:3;43812:4;43809:13;43805:36;43799:2;43789:8;43786:16;43781:2;43775:4;43772:12;43768:35;43765:77;43762:159;;;-1:-1:-1;43874:19:136;;;43906:5;;43762:159;43953:34;43978:8;43972:4;43953:34;:::i;:::-;44023:6;44019:1;44015:6;44011:19;44002:7;43999:32;43996:58;;;44034:18;;:::i;:::-;44072:20;;43292:806;-1:-1:-1;;;43292:806:136:o;44103:131::-;44163:5;44192:36;44219:8;44213:4;44192:36;:::i;45971:127::-;46032:10;46027:3;46023:20;46020:1;46013:31;46063:4;46060:1;46053:15;46087:4;46084:1;46077:15;46394:1185;46523:6;46554:2;46597;46585:9;46576:7;46572:23;46568:32;46565:52;;;46613:1;46610;46603:12;46565:52;46640:16;;-1:-1:-1;;;;;46668:30:136;;46665:50;;;46711:1;46708;46701:12;46665:50;46734:22;;46787:4;46779:13;;46775:27;-1:-1:-1;46765:55:136;;46816:1;46813;46806:12;46765:55;46845:2;46839:9;46868:60;46884:43;46924:2;46884:43;:::i;46868:60::-;46962:15;;;47044:1;47040:10;;;;47032:19;;47028:28;;;46993:12;;;;47068:19;;;47065:39;;;47100:1;47097;47090:12;47065:39;47124:11;;;;47144:405;47160:6;47155:3;47152:15;47144:405;;;47242:4;47236:3;47227:7;47223:17;47219:28;47216:118;;;47288:1;47317:2;47313;47306:14;47216:118;47360:22;;:::i;:::-;47409:10;;47395:25;;47462:12;;;47456:19;47440:14;;;47433:43;47489:18;;47186:4;47177:14;;;;47527:12;;;;47144:405;;47584:127;47645:10;47640:3;47636:20;47633:1;47626:31;47676:4;47673:1;47666:15;47700:4;47697:1;47690:15;47716:497;-1:-1:-1;;;;;48001:32:136;;;;47983:51;;48065:2;48050:18;;48043:34;;;;48108:2;48093:18;;48086:34;;;;48151:2;48136:18;;48129:34;48194:3;48179:19;;48172:35;47970:3;47955:19;;47716:497::o;49398:317::-;49575:2;49564:9;49557:21;49538:4;49595:45;49636:2;49625:9;49621:18;49613:6;49595:45;:::i;:::-;49587:53;;49705:1;49701;49696:3;49692:11;49688:19;49680:6;49676:32;49671:2;49660:9;49656:18;49649:60;49398:317;;;;;:::o;50072:216::-;50136:9;;;50164:11;;;50111:3;50194:9;;50222:10;;50218:19;;50247:10;;50239:19;;50215:44;50212:70;;;50262:18;;:::i;51107:287::-;51236:3;51274:6;51268:13;51290:66;51349:6;51344:3;51337:4;51329:6;51325:17;51290:66;:::i;:::-;51372:16;;;;;51107:287;-1:-1:-1;;51107:287:136:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6208,"length":32},{"start":6272,"length":32},{"start":6431,"length":32},{"start":6495,"length":32},{"start":6615,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"CVStrategyV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"CVStrategyV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)75751"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70106"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)75718":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)75751":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70106":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)75718"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[75614],"IArbitrator":[75718],"ICollateralVault":[75751],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70106],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72174],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75719,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75615,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75614,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75752,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75751,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"3175:11:98"},"referencedDeclaration":75718,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"6863:11:98"},"referencedDeclaration":75718,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"7260:11:98"},"referencedDeclaration":75718,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":75751,"src":"9139:16:98"},"referencedDeclaration":75751,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70106,"src":"9184:12:98"},"referencedDeclaration":70106,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"9752:21:98"},"referencedDeclaration":72174,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75751,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75751_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75723,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":71791,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75844_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75730,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71198,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71257,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$75718_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"31151:11:98"},"referencedDeclaration":75718,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71967,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":75717,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$75718_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75730,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":75665,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75718_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75844_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75750,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75750,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75844_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75750,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75605,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75718_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[75613],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75614,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,75614,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70122]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file diff --git a/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json b/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json index 93f2e984..9acd3552 100644 --- a/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json +++ b/pkg/contracts/out/CVStrategyV0_0.sol/IPointStrategy.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUntake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","getPointSystem()":"c3292171","increasePower(address,uint256)":"782aadff"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUntake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"IPointStrategy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUntake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"IPointStrategy"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[75015],"IArbitrator":[75119],"ICollateralVault":[75152],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70106],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72174],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75120,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75119,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75016,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75015,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75153,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"3175:11:98"},"referencedDeclaration":75119,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"6863:11:98"},"referencedDeclaration":75119,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"7260:11:98"},"referencedDeclaration":75119,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":75152,"src":"9139:16:98"},"referencedDeclaration":75152,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70106,"src":"9184:12:98"},"referencedDeclaration":70106,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"9752:21:98"},"referencedDeclaration":72174,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75152_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75124,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":71791,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71198,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71257,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75119,"src":"31151:11:98"},"referencedDeclaration":75119,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71967,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":75118,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$75119_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75131,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":75066,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75245_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75151,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75119","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75006,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75119_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[75014],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75140,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75015,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,75015,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70122]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file +{"abi":[{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUntake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","getPointSystem()":"c3292171","increasePower(address,uint256)":"782aadff"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUntake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":\"IPointStrategy\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUntake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":"IPointStrategy"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","id":69195,"exportedSymbols":{"ArbitrableConfig":[65628],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65471],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"CreateProposal":[65557],"ERC165":[57725],"ERC20":[56450],"IAllo":[2610],"IArbitrable":[75614],"IArbitrator":[75718],"ICollateralVault":[75751],"IERC165":[57931],"IPointStrategy":[65536],"ISybilScorer":[70106],"Math":[58797],"Metadata":[3098],"OwnableUpgradeable":[52903],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalDisputeInfo":[65572],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_0":[72174],"UUPSUpgradeable":[55672],"console":[29510]},"nodeType":"SourceUnit","src":"42:53774:98","nodes":[{"id":65473,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65475,"nodeType":"ImportDirective","src":"68:71:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":65474,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65478,"nodeType":"ImportDirective","src":"140:82:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":65476,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65477,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65480,"nodeType":"ImportDirective","src":"223:85:98","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":65479,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"231:21:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65483,"nodeType":"ImportDirective","src":"309:87:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":57726,"symbolAliases":[{"foreign":{"id":65481,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57725,"src":"317:6:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65482,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57931,"src":"325:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65485,"nodeType":"ImportDirective","src":"397:68:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":56451,"symbolAliases":[{"foreign":{"id":65484,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"405:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65487,"nodeType":"ImportDirective","src":"466:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75719,"symbolAliases":[{"foreign":{"id":65486,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"474:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65489,"nodeType":"ImportDirective","src":"525:58:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75615,"symbolAliases":[{"foreign":{"id":65488,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75614,"src":"533:11:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65491,"nodeType":"ImportDirective","src":"584:65:98","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":65490,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65493,"nodeType":"ImportDirective","src":"650:46:98","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":29511,"symbolAliases":[{"foreign":{"id":65492,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"658:7:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65495,"nodeType":"ImportDirective","src":"697:65:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":58798,"symbolAliases":[{"foreign":{"id":65494,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"705:4:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65498,"nodeType":"ImportDirective","src":"763:63:98","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":65496,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"771:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":65497,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"785:12:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65500,"nodeType":"ImportDirective","src":"827:88:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":65499,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"835:15:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65502,"nodeType":"ImportDirective","src":"916:71:98","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":65472,"symbolAliases":[{"foreign":{"id":65501,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"924:23:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65504,"nodeType":"ImportDirective","src":"988:101:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":52904,"symbolAliases":[{"foreign":{"id":65503,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52903,"src":"996:18:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65506,"nodeType":"ImportDirective","src":"1090:68:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69195,"sourceUnit":75752,"symbolAliases":[{"foreign":{"id":65505,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75751,"src":"1098:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65536,"nodeType":"ContractDefinition","src":"1314:343:98","nodes":[{"id":65511,"nodeType":"FunctionDefinition","src":"1345:52:98","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1354:16:98","parameters":{"id":65509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65508,"mutability":"mutable","name":"_member","nameLocation":"1379:7:98","nodeType":"VariableDeclaration","scope":65511,"src":"1371:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65507,"name":"address","nodeType":"ElementaryTypeName","src":"1371:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1370:17:98"},"returnParameters":{"id":65510,"nodeType":"ParameterList","parameters":[],"src":"1396:0:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65520,"nodeType":"FunctionDefinition","src":"1403:91:98","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1412:13:98","parameters":{"id":65516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65513,"mutability":"mutable","name":"_member","nameLocation":"1434:7:98","nodeType":"VariableDeclaration","scope":65520,"src":"1426:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65512,"name":"address","nodeType":"ElementaryTypeName","src":"1426:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65515,"mutability":"mutable","name":"_amountToStake","nameLocation":"1451:14:98","nodeType":"VariableDeclaration","scope":65520,"src":"1443:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65514,"name":"uint256","nodeType":"ElementaryTypeName","src":"1443:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1425:41:98"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65520,"src":"1485:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65517,"name":"uint256","nodeType":"ElementaryTypeName","src":"1485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1484:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65529,"nodeType":"FunctionDefinition","src":"1500:92:98","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1509:13:98","parameters":{"id":65525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65522,"mutability":"mutable","name":"_member","nameLocation":"1531:7:98","nodeType":"VariableDeclaration","scope":65529,"src":"1523:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65521,"name":"address","nodeType":"ElementaryTypeName","src":"1523:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65524,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1548:15:98","nodeType":"VariableDeclaration","scope":65529,"src":"1540:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65523,"name":"uint256","nodeType":"ElementaryTypeName","src":"1540:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1522:42:98"},"returnParameters":{"id":65528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"1583:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1582:9:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":65535,"nodeType":"FunctionDefinition","src":"1598:57:98","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1607:14:98","parameters":{"id":65530,"nodeType":"ParameterList","parameters":[],"src":"1621:2:98"},"returnParameters":{"id":65534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65533,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65535,"src":"1642:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65532,"nodeType":"UserDefinedTypeName","pathNode":{"id":65531,"name":"PointSystem","nameLocations":["1642:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"1642:11:98"},"referencedDeclaration":65545,"src":"1642:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1641:13:98"},"scope":65536,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[65536],"name":"IPointStrategy","nameLocation":"1324:14:98","scope":69195,"usedErrors":[]},{"id":65540,"nodeType":"EnumDefinition","src":"1659:63:98","nodes":[],"canonicalName":"ProposalType","members":[{"id":65537,"name":"Signaling","nameLocation":"1683:9:98","nodeType":"EnumValue","src":"1683:9:98"},{"id":65538,"name":"Funding","nameLocation":"1698:7:98","nodeType":"EnumValue","src":"1698:7:98"},{"id":65539,"name":"Streaming","nameLocation":"1711:9:98","nodeType":"EnumValue","src":"1711:9:98"}],"name":"ProposalType","nameLocation":"1664:12:98"},{"id":65545,"nodeType":"EnumDefinition","src":"1724:72:98","nodes":[],"canonicalName":"PointSystem","members":[{"id":65541,"name":"Fixed","nameLocation":"1747:5:98","nodeType":"EnumValue","src":"1747:5:98"},{"id":65542,"name":"Capped","nameLocation":"1758:6:98","nodeType":"EnumValue","src":"1758:6:98"},{"id":65543,"name":"Unlimited","nameLocation":"1770:9:98","nodeType":"EnumValue","src":"1770:9:98"},{"id":65544,"name":"Quadratic","nameLocation":"1785:9:98","nodeType":"EnumValue","src":"1785:9:98"}],"name":"PointSystem","nameLocation":"1729:11:98"},{"id":65557,"nodeType":"StructDefinition","src":"1798:211:98","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":65547,"mutability":"mutable","name":"poolId","nameLocation":"1861:6:98","nodeType":"VariableDeclaration","scope":65557,"src":"1853:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65546,"name":"uint256","nodeType":"ElementaryTypeName","src":"1853:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65549,"mutability":"mutable","name":"beneficiary","nameLocation":"1881:11:98","nodeType":"VariableDeclaration","scope":65557,"src":"1873:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65548,"name":"address","nodeType":"ElementaryTypeName","src":"1873:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65551,"mutability":"mutable","name":"amountRequested","nameLocation":"1940:15:98","nodeType":"VariableDeclaration","scope":65557,"src":"1932:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65550,"name":"uint256","nodeType":"ElementaryTypeName","src":"1932:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65553,"mutability":"mutable","name":"requestedToken","nameLocation":"1969:14:98","nodeType":"VariableDeclaration","scope":65557,"src":"1961:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65552,"name":"address","nodeType":"ElementaryTypeName","src":"1961:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65556,"mutability":"mutable","name":"metadata","nameLocation":"1998:8:98","nodeType":"VariableDeclaration","scope":65557,"src":"1989:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65555,"nodeType":"UserDefinedTypeName","pathNode":{"id":65554,"name":"Metadata","nameLocations":["1989:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"1989:8:98"},"referencedDeclaration":3098,"src":"1989:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1805:14:98","scope":69195,"visibility":"public"},{"id":65565,"nodeType":"EnumDefinition","src":"2011:360:98","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":65558,"name":"Inactive","nameLocation":"2037:8:98","nodeType":"EnumValue","src":"2037:8:98"},{"id":65559,"name":"Active","nameLocation":"2063:6:98","nodeType":"EnumValue","src":"2063:6:98"},{"id":65560,"name":"Paused","nameLocation":"2122:6:98","nodeType":"EnumValue","src":"2122:6:98"},{"id":65561,"name":"Cancelled","nameLocation":"2184:9:98","nodeType":"EnumValue","src":"2184:9:98"},{"id":65562,"name":"Executed","nameLocation":"2233:8:98","nodeType":"EnumValue","src":"2233:8:98"},{"id":65563,"name":"Disputed","nameLocation":"2280:8:98","nodeType":"EnumValue","src":"2280:8:98"},{"id":65564,"name":"Rejected","nameLocation":"2327:8:98","nodeType":"EnumValue","src":"2327:8:98"}],"name":"ProposalStatus","nameLocation":"2016:14:98"},{"id":65572,"nodeType":"StructDefinition","src":"2373:107:98","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":65567,"mutability":"mutable","name":"disputeId","nameLocation":"2414:9:98","nodeType":"VariableDeclaration","scope":65572,"src":"2406:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65566,"name":"uint256","nodeType":"ElementaryTypeName","src":"2406:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65569,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2437:16:98","nodeType":"VariableDeclaration","scope":65572,"src":"2429:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65568,"name":"uint256","nodeType":"ElementaryTypeName","src":"2429:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65571,"mutability":"mutable","name":"challenger","nameLocation":"2467:10:98","nodeType":"VariableDeclaration","scope":65572,"src":"2459:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65570,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2380:19:98","scope":69195,"visibility":"public"},{"id":65606,"nodeType":"StructDefinition","src":"2482:466:98","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":65574,"mutability":"mutable","name":"proposalId","nameLocation":"2512:10:98","nodeType":"VariableDeclaration","scope":65606,"src":"2504:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65573,"name":"uint256","nodeType":"ElementaryTypeName","src":"2504:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65576,"mutability":"mutable","name":"requestedAmount","nameLocation":"2536:15:98","nodeType":"VariableDeclaration","scope":65606,"src":"2528:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65575,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65578,"mutability":"mutable","name":"stakedAmount","nameLocation":"2565:12:98","nodeType":"VariableDeclaration","scope":65606,"src":"2557:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65577,"name":"uint256","nodeType":"ElementaryTypeName","src":"2557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65580,"mutability":"mutable","name":"convictionLast","nameLocation":"2591:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2583:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65579,"name":"uint256","nodeType":"ElementaryTypeName","src":"2583:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65582,"mutability":"mutable","name":"beneficiary","nameLocation":"2619:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2611:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65581,"name":"address","nodeType":"ElementaryTypeName","src":"2611:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65584,"mutability":"mutable","name":"submitter","nameLocation":"2644:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2636:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65583,"name":"address","nodeType":"ElementaryTypeName","src":"2636:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65586,"mutability":"mutable","name":"requestedToken","nameLocation":"2667:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2659:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65585,"name":"address","nodeType":"ElementaryTypeName","src":"2659:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65588,"mutability":"mutable","name":"blockLast","nameLocation":"2695:9:98","nodeType":"VariableDeclaration","scope":65606,"src":"2687:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65587,"name":"uint256","nodeType":"ElementaryTypeName","src":"2687:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65591,"mutability":"mutable","name":"proposalStatus","nameLocation":"2725:14:98","nodeType":"VariableDeclaration","scope":65606,"src":"2710:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":65590,"nodeType":"UserDefinedTypeName","pathNode":{"id":65589,"name":"ProposalStatus","nameLocations":["2710:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"2710:14:98"},"referencedDeclaration":65565,"src":"2710:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":65595,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2773:17:98","nodeType":"VariableDeclaration","scope":65606,"src":"2745:45:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65594,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65592,"name":"address","nodeType":"ElementaryTypeName","src":"2753:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2745:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65593,"name":"uint256","nodeType":"ElementaryTypeName","src":"2764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":65598,"mutability":"mutable","name":"metadata","nameLocation":"2828:8:98","nodeType":"VariableDeclaration","scope":65606,"src":"2819:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":65597,"nodeType":"UserDefinedTypeName","pathNode":{"id":65596,"name":"Metadata","nameLocations":["2819:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2819:8:98"},"referencedDeclaration":3098,"src":"2819:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":65601,"mutability":"mutable","name":"disputeInfo","nameLocation":"2862:11:98","nodeType":"VariableDeclaration","scope":65606,"src":"2842:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":65600,"nodeType":"UserDefinedTypeName","pathNode":{"id":65599,"name":"ProposalDisputeInfo","nameLocations":["2842:19:98"],"nodeType":"IdentifierPath","referencedDeclaration":65572,"src":"2842:19:98"},"referencedDeclaration":65572,"src":"2842:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":65603,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2887:21:98","nodeType":"VariableDeclaration","scope":65606,"src":"2879:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65602,"name":"uint256","nodeType":"ElementaryTypeName","src":"2879:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65605,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2922:23:98","nodeType":"VariableDeclaration","scope":65606,"src":"2914:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65604,"name":"uint256","nodeType":"ElementaryTypeName","src":"2914:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2489:8:98","scope":69195,"visibility":"public"},{"id":65611,"nodeType":"StructDefinition","src":"2950:114:98","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":65608,"mutability":"mutable","name":"proposalId","nameLocation":"2987:10:98","nodeType":"VariableDeclaration","scope":65611,"src":"2979:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65610,"mutability":"mutable","name":"deltaSupport","nameLocation":"3010:12:98","nodeType":"VariableDeclaration","scope":65611,"src":"3003:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65609,"name":"int256","nodeType":"ElementaryTypeName","src":"3003:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2957:15:98","scope":69195,"visibility":"public"},{"id":65614,"nodeType":"StructDefinition","src":"3066:77:98","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":65613,"mutability":"mutable","name":"maxAmount","nameLocation":"3131:9:98","nodeType":"VariableDeclaration","scope":65614,"src":"3123:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65612,"name":"uint256","nodeType":"ElementaryTypeName","src":"3123:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3073:17:98","scope":69195,"visibility":"public"},{"id":65628,"nodeType":"StructDefinition","src":"3145:221:98","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":65617,"mutability":"mutable","name":"arbitrator","nameLocation":"3187:10:98","nodeType":"VariableDeclaration","scope":65628,"src":"3175:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":65616,"nodeType":"UserDefinedTypeName","pathNode":{"id":65615,"name":"IArbitrator","nameLocations":["3175:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"3175:11:98"},"referencedDeclaration":75718,"src":"3175:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65619,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3211:12:98","nodeType":"VariableDeclaration","scope":65628,"src":"3203:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65618,"name":"address","nodeType":"ElementaryTypeName","src":"3203:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65621,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3237:25:98","nodeType":"VariableDeclaration","scope":65628,"src":"3229:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65620,"name":"uint256","nodeType":"ElementaryTypeName","src":"3229:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65623,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3276:26:98","nodeType":"VariableDeclaration","scope":65628,"src":"3268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65625,"mutability":"mutable","name":"defaultRuling","nameLocation":"3316:13:98","nodeType":"VariableDeclaration","scope":65628,"src":"3308:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65624,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65627,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3343:20:98","nodeType":"VariableDeclaration","scope":65628,"src":"3335:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65626,"name":"uint256","nodeType":"ElementaryTypeName","src":"3335:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3152:16:98","scope":69195,"visibility":"public"},{"id":65637,"nodeType":"StructDefinition","src":"3368:112:98","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":65630,"mutability":"mutable","name":"maxRatio","nameLocation":"3398:8:98","nodeType":"VariableDeclaration","scope":65637,"src":"3390:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65629,"name":"uint256","nodeType":"ElementaryTypeName","src":"3390:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65632,"mutability":"mutable","name":"weight","nameLocation":"3420:6:98","nodeType":"VariableDeclaration","scope":65637,"src":"3412:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65631,"name":"uint256","nodeType":"ElementaryTypeName","src":"3412:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65634,"mutability":"mutable","name":"decay","nameLocation":"3440:5:98","nodeType":"VariableDeclaration","scope":65637,"src":"3432:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65633,"name":"uint256","nodeType":"ElementaryTypeName","src":"3432:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65636,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3459:18:98","nodeType":"VariableDeclaration","scope":65637,"src":"3451:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65635,"name":"uint256","nodeType":"ElementaryTypeName","src":"3451:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3375:8:98","scope":69195,"visibility":"public"},{"id":65657,"nodeType":"StructDefinition","src":"3482:254:98","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":65640,"mutability":"mutable","name":"cvParams","nameLocation":"3535:8:98","nodeType":"VariableDeclaration","scope":65657,"src":"3526:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":65639,"nodeType":"UserDefinedTypeName","pathNode":{"id":65638,"name":"CVParams","nameLocations":["3526:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3526:8:98"},"referencedDeclaration":65637,"src":"3526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":65643,"mutability":"mutable","name":"proposalType","nameLocation":"3562:12:98","nodeType":"VariableDeclaration","scope":65657,"src":"3549:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65642,"nodeType":"UserDefinedTypeName","pathNode":{"id":65641,"name":"ProposalType","nameLocations":["3549:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"3549:12:98"},"referencedDeclaration":65540,"src":"3549:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":65646,"mutability":"mutable","name":"pointSystem","nameLocation":"3592:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3580:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65645,"nodeType":"UserDefinedTypeName","pathNode":{"id":65644,"name":"PointSystem","nameLocations":["3580:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"3580:11:98"},"referencedDeclaration":65545,"src":"3580:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":65649,"mutability":"mutable","name":"pointConfig","nameLocation":"3627:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3609:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":65648,"nodeType":"UserDefinedTypeName","pathNode":{"id":65647,"name":"PointSystemConfig","nameLocations":["3609:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"3609:17:98"},"referencedDeclaration":65614,"src":"3609:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":65652,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3661:16:98","nodeType":"VariableDeclaration","scope":65657,"src":"3644:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":65651,"nodeType":"UserDefinedTypeName","pathNode":{"id":65650,"name":"ArbitrableConfig","nameLocations":["3644:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3644:16:98"},"referencedDeclaration":65628,"src":"3644:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":65654,"mutability":"mutable","name":"registryCommunity","nameLocation":"3691:17:98","nodeType":"VariableDeclaration","scope":65657,"src":"3683:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65653,"name":"address","nodeType":"ElementaryTypeName","src":"3683:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65656,"mutability":"mutable","name":"sybilScorer","nameLocation":"3722:11:98","nodeType":"VariableDeclaration","scope":65657,"src":"3714:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65655,"name":"address","nodeType":"ElementaryTypeName","src":"3714:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3489:30:98","scope":69195,"visibility":"public"},{"id":69194,"nodeType":"ContractDefinition","src":"3782:50033:98","nodes":[{"id":65668,"nodeType":"ErrorDefinition","src":"4042:25:98","nodes":[],"errorSelector":"d1f28288","name":"UserCannotBeZero","nameLocation":"4048:16:98","parameters":{"id":65667,"nodeType":"ParameterList","parameters":[],"src":"4064:2:98"}},{"id":65670,"nodeType":"ErrorDefinition","src":"4086:26:98","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4092:17:98","parameters":{"id":65669,"nodeType":"ParameterList","parameters":[],"src":"4109:2:98"}},{"id":65672,"nodeType":"ErrorDefinition","src":"4130:23:98","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4136:14:98","parameters":{"id":65671,"nodeType":"ParameterList","parameters":[],"src":"4150:2:98"}},{"id":65674,"nodeType":"ErrorDefinition","src":"4172:20:98","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4178:11:98","parameters":{"id":65673,"nodeType":"ParameterList","parameters":[],"src":"4189:2:98"}},{"id":65676,"nodeType":"ErrorDefinition","src":"4211:23:98","nodes":[],"errorSelector":"d6234725","name":"NotImplemented","nameLocation":"4217:14:98","parameters":{"id":65675,"nodeType":"ParameterList","parameters":[],"src":"4231:2:98"}},{"id":65678,"nodeType":"ErrorDefinition","src":"4252:26:98","nodes":[],"errorSelector":"596a094c","name":"TokenCannotBeZero","nameLocation":"4258:17:98","parameters":{"id":65677,"nodeType":"ParameterList","parameters":[],"src":"4275:2:98"}},{"id":65680,"nodeType":"ErrorDefinition","src":"4296:24:98","nodes":[],"errorSelector":"a29c4986","name":"TokenNotAllowed","nameLocation":"4302:15:98","parameters":{"id":65679,"nodeType":"ParameterList","parameters":[],"src":"4317:2:98"}},{"id":65682,"nodeType":"ErrorDefinition","src":"4339:27:98","nodes":[],"errorSelector":"3bf5ca14","name":"AmountOverMaxRatio","nameLocation":"4345:18:98","parameters":{"id":65681,"nodeType":"ParameterList","parameters":[],"src":"4363:2:98"}},{"id":65684,"nodeType":"ErrorDefinition","src":"4385:27:98","nodes":[],"errorSelector":"4e791786","name":"PoolIdCannotBeZero","nameLocation":"4391:18:98","parameters":{"id":65683,"nodeType":"ParameterList","parameters":[],"src":"4409:2:98"}},{"id":65686,"nodeType":"ErrorDefinition","src":"4430:28:98","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4436:19:98","parameters":{"id":65685,"nodeType":"ParameterList","parameters":[],"src":"4455:2:98"}},{"id":65688,"nodeType":"ErrorDefinition","src":"4476:29:98","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4482:20:98","parameters":{"id":65687,"nodeType":"ParameterList","parameters":[],"src":"4502:2:98"}},{"id":65696,"nodeType":"ErrorDefinition","src":"4524:72:98","nodes":[],"errorSelector":"3bbc7142","name":"SupportUnderflow","nameLocation":"4530:16:98","parameters":{"id":65695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65690,"mutability":"mutable","name":"_support","nameLocation":"4555:8:98","nodeType":"VariableDeclaration","scope":65696,"src":"4547:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4547:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65692,"mutability":"mutable","name":"_delta","nameLocation":"4572:6:98","nodeType":"VariableDeclaration","scope":65696,"src":"4565:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65691,"name":"int256","nodeType":"ElementaryTypeName","src":"4565:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":65694,"mutability":"mutable","name":"_result","nameLocation":"4587:7:98","nodeType":"VariableDeclaration","scope":65696,"src":"4580:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":65693,"name":"int256","nodeType":"ElementaryTypeName","src":"4580:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"4546:49:98"}},{"id":65698,"nodeType":"ErrorDefinition","src":"4615:25:98","nodes":[],"errorSelector":"8402b474","name":"MaxPointsReached","nameLocation":"4621:16:98","parameters":{"id":65697,"nodeType":"ParameterList","parameters":[],"src":"4637:2:98"}},{"id":65700,"nodeType":"ErrorDefinition","src":"4659:32:98","nodes":[],"errorSelector":"573c3e93","name":"CantIncreaseFixedSystem","nameLocation":"4665:23:98","parameters":{"id":65699,"nodeType":"ParameterList","parameters":[],"src":"4688:2:98"}},{"id":65706,"nodeType":"ErrorDefinition","src":"4710:77:98","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4716:24:98","parameters":{"id":65705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65702,"mutability":"mutable","name":"pointsSupport","nameLocation":"4749:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4741:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4741:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65704,"mutability":"mutable","name":"pointsBalance","nameLocation":"4772:13:98","nodeType":"VariableDeclaration","scope":65706,"src":"4764:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4764:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4740:46:98"}},{"id":65708,"nodeType":"ErrorDefinition","src":"4807:28:98","nodes":[],"errorSelector":"c5f7c4c0","name":"ProposalDataIsEmpty","nameLocation":"4813:19:98","parameters":{"id":65707,"nodeType":"ParameterList","parameters":[],"src":"4832:2:98"}},{"id":65710,"nodeType":"ErrorDefinition","src":"4853:31:98","nodes":[],"errorSelector":"f881a10d","name":"ProposalIdCannotBeZero","nameLocation":"4859:22:98","parameters":{"id":65709,"nodeType":"ParameterList","parameters":[],"src":"4881:2:98"}},{"id":65714,"nodeType":"ErrorDefinition","src":"4902:45:98","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"4908:17:98","parameters":{"id":65713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65712,"mutability":"mutable","name":"_proposalId","nameLocation":"4934:11:98","nodeType":"VariableDeclaration","scope":65714,"src":"4926:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65711,"name":"uint256","nodeType":"ElementaryTypeName","src":"4926:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4925:21:98"}},{"id":65718,"nodeType":"ErrorDefinition","src":"4966:45:98","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"4972:17:98","parameters":{"id":65717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65716,"mutability":"mutable","name":"_proposalId","nameLocation":"4998:11:98","nodeType":"VariableDeclaration","scope":65718,"src":"4990:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65715,"name":"uint256","nodeType":"ElementaryTypeName","src":"4990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4989:21:98"}},{"id":65724,"nodeType":"ErrorDefinition","src":"5030:68:98","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5036:25:98","parameters":{"id":65723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65720,"mutability":"mutable","name":"_proposalId","nameLocation":"5070:11:98","nodeType":"VariableDeclaration","scope":65724,"src":"5062:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65719,"name":"uint256","nodeType":"ElementaryTypeName","src":"5062:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65722,"mutability":"mutable","name":"index","nameLocation":"5091:5:98","nodeType":"VariableDeclaration","scope":65724,"src":"5083:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65721,"name":"uint256","nodeType":"ElementaryTypeName","src":"5083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5061:36:98"}},{"id":65726,"nodeType":"ErrorDefinition","src":"5116:40:98","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5122:31:98","parameters":{"id":65725,"nodeType":"ParameterList","parameters":[],"src":"5153:2:98"}},{"id":65728,"nodeType":"ErrorDefinition","src":"5175:29:98","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5181:20:98","parameters":{"id":65727,"nodeType":"ParameterList","parameters":[],"src":"5201:2:98"}},{"id":65736,"nodeType":"ErrorDefinition","src":"5223:94:98","nodes":[],"errorSelector":"5863b0b6","name":"PoolAmountNotEnough","nameLocation":"5229:19:98","parameters":{"id":65735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65730,"mutability":"mutable","name":"_proposalId","nameLocation":"5257:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5249:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5249:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65732,"mutability":"mutable","name":"_requestedAmount","nameLocation":"5278:16:98","nodeType":"VariableDeclaration","scope":65736,"src":"5270:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65731,"name":"uint256","nodeType":"ElementaryTypeName","src":"5270:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65734,"mutability":"mutable","name":"_poolAmount","nameLocation":"5304:11:98","nodeType":"VariableDeclaration","scope":65736,"src":"5296:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65733,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5248:68:98"}},{"id":65738,"nodeType":"ErrorDefinition","src":"5335:24:98","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5341:15:98","parameters":{"id":65737,"nodeType":"ParameterList","parameters":[],"src":"5356:2:98"}},{"id":65740,"nodeType":"ErrorDefinition","src":"5364:32:98","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5370:23:98","parameters":{"id":65739,"nodeType":"ParameterList","parameters":[],"src":"5393:2:98"}},{"id":65746,"nodeType":"ErrorDefinition","src":"5401:73:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"5407:22:98","parameters":{"id":65745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65742,"mutability":"mutable","name":"sentAmount","nameLocation":"5438:10:98","nodeType":"VariableDeclaration","scope":65746,"src":"5430:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65741,"name":"uint256","nodeType":"ElementaryTypeName","src":"5430:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65744,"mutability":"mutable","name":"requiredAmount","nameLocation":"5458:14:98","nodeType":"VariableDeclaration","scope":65746,"src":"5450:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65743,"name":"uint256","nodeType":"ElementaryTypeName","src":"5450:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5429:44:98"}},{"id":65748,"nodeType":"ErrorDefinition","src":"5479:23:98","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5485:14:98","parameters":{"id":65747,"nodeType":"ParameterList","parameters":[],"src":"5499:2:98"}},{"id":65752,"nodeType":"ErrorDefinition","src":"5507:47:98","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5513:19:98","parameters":{"id":65751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65750,"mutability":"mutable","name":"_proposalId","nameLocation":"5541:11:98","nodeType":"VariableDeclaration","scope":65752,"src":"5533:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65749,"name":"uint256","nodeType":"ElementaryTypeName","src":"5533:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5532:21:98"}},{"id":65754,"nodeType":"ErrorDefinition","src":"5559:31:98","nodes":[],"errorSelector":"6c291fd3","name":"ArbitratorCannotBeZero","nameLocation":"5565:22:98","parameters":{"id":65753,"nodeType":"ParameterList","parameters":[],"src":"5587:2:98"}},{"id":65760,"nodeType":"ErrorDefinition","src":"5595:55:98","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5601:13:98","parameters":{"id":65759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65756,"mutability":"mutable","name":"submitter","nameLocation":"5623:9:98","nodeType":"VariableDeclaration","scope":65760,"src":"5615:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65755,"name":"address","nodeType":"ElementaryTypeName","src":"5615:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65758,"mutability":"mutable","name":"sender","nameLocation":"5642:6:98","nodeType":"VariableDeclaration","scope":65760,"src":"5634:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65757,"name":"address","nodeType":"ElementaryTypeName","src":"5634:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5614:35:98"}},{"id":65762,"nodeType":"ErrorDefinition","src":"5736:28:98","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"5742:19:98","parameters":{"id":65761,"nodeType":"ParameterList","parameters":[],"src":"5761:2:98"}},{"id":65768,"nodeType":"ErrorDefinition","src":"5769:75:98","nodes":[],"errorSelector":"8d2f6c31","name":"DisputeCooldownNotPassed","nameLocation":"5775:24:98","parameters":{"id":65767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65764,"mutability":"mutable","name":"_proposalId","nameLocation":"5808:11:98","nodeType":"VariableDeclaration","scope":65768,"src":"5800:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65763,"name":"uint256","nodeType":"ElementaryTypeName","src":"5800:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65766,"mutability":"mutable","name":"_remainingSec","nameLocation":"5829:13:98","nodeType":"VariableDeclaration","scope":65768,"src":"5821:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65765,"name":"uint256","nodeType":"ElementaryTypeName","src":"5821:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5799:44:98"}},{"id":65775,"nodeType":"EventDefinition","src":"6016:73:98","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6022:13:98","parameters":{"id":65774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65770,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6044:6:98","nodeType":"VariableDeclaration","scope":65775,"src":"6036:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65769,"name":"uint256","nodeType":"ElementaryTypeName","src":"6036:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65773,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6083:4:98","nodeType":"VariableDeclaration","scope":65775,"src":"6052:35:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":65772,"nodeType":"UserDefinedTypeName","pathNode":{"id":65771,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6052:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"6052:30:98"},"referencedDeclaration":65657,"src":"6052:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6035:53:98"}},{"id":65783,"nodeType":"EventDefinition","src":"6094:75:98","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6100:11:98","parameters":{"id":65782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65777,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6120:10:98","nodeType":"VariableDeclaration","scope":65783,"src":"6112:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65776,"name":"uint256","nodeType":"ElementaryTypeName","src":"6112:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65779,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6140:11:98","nodeType":"VariableDeclaration","scope":65783,"src":"6132:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65778,"name":"address","nodeType":"ElementaryTypeName","src":"6132:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65781,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6161:6:98","nodeType":"VariableDeclaration","scope":65783,"src":"6153:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65780,"name":"uint256","nodeType":"ElementaryTypeName","src":"6153:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6111:57:98"}},{"id":65789,"nodeType":"EventDefinition","src":"6174:58:98","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6180:15:98","parameters":{"id":65788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65785,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6204:6:98","nodeType":"VariableDeclaration","scope":65789,"src":"6196:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65784,"name":"uint256","nodeType":"ElementaryTypeName","src":"6196:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65787,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6220:10:98","nodeType":"VariableDeclaration","scope":65789,"src":"6212:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65786,"name":"uint256","nodeType":"ElementaryTypeName","src":"6212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6195:36:98"}},{"id":65793,"nodeType":"EventDefinition","src":"6237:42:98","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6243:19:98","parameters":{"id":65792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65791,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6271:6:98","nodeType":"VariableDeclaration","scope":65793,"src":"6263:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65790,"name":"uint256","nodeType":"ElementaryTypeName","src":"6263:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6262:16:98"}},{"id":65797,"nodeType":"EventDefinition","src":"6284:40:98","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6290:17:98","parameters":{"id":65796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65795,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6316:6:98","nodeType":"VariableDeclaration","scope":65797,"src":"6308:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65794,"name":"address","nodeType":"ElementaryTypeName","src":"6308:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6307:16:98"}},{"id":65805,"nodeType":"EventDefinition","src":"6329:85:98","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6335:14:98","parameters":{"id":65804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65799,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6358:6:98","nodeType":"VariableDeclaration","scope":65805,"src":"6350:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65798,"name":"address","nodeType":"ElementaryTypeName","src":"6350:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65801,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6374:12:98","nodeType":"VariableDeclaration","scope":65805,"src":"6366:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65800,"name":"uint256","nodeType":"ElementaryTypeName","src":"6366:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65803,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6396:16:98","nodeType":"VariableDeclaration","scope":65805,"src":"6388:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65802,"name":"uint256","nodeType":"ElementaryTypeName","src":"6388:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6349:64:98"}},{"id":65813,"nodeType":"EventDefinition","src":"6419:87:98","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6425:14:98","parameters":{"id":65812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65807,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6448:6:98","nodeType":"VariableDeclaration","scope":65813,"src":"6440:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65806,"name":"address","nodeType":"ElementaryTypeName","src":"6440:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65809,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"6464:14:98","nodeType":"VariableDeclaration","scope":65813,"src":"6456:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65808,"name":"uint256","nodeType":"ElementaryTypeName","src":"6456:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65811,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"6488:16:98","nodeType":"VariableDeclaration","scope":65813,"src":"6480:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65810,"name":"uint256","nodeType":"ElementaryTypeName","src":"6480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6439:66:98"}},{"id":65825,"nodeType":"EventDefinition","src":"6511:134:98","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"6517:12:98","parameters":{"id":65824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65815,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"6547:4:98","nodeType":"VariableDeclaration","scope":65825,"src":"6539:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65814,"name":"address","nodeType":"ElementaryTypeName","src":"6539:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65817,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6561:10:98","nodeType":"VariableDeclaration","scope":65825,"src":"6553:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65816,"name":"uint256","nodeType":"ElementaryTypeName","src":"6553:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65819,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6581:6:98","nodeType":"VariableDeclaration","scope":65825,"src":"6573:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65818,"name":"uint256","nodeType":"ElementaryTypeName","src":"6573:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65821,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"6597:17:98","nodeType":"VariableDeclaration","scope":65825,"src":"6589:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65820,"name":"uint256","nodeType":"ElementaryTypeName","src":"6589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65823,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"6624:14:98","nodeType":"VariableDeclaration","scope":65825,"src":"6616:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65822,"name":"uint256","nodeType":"ElementaryTypeName","src":"6616:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6529:115:98"}},{"id":65830,"nodeType":"EventDefinition","src":"6650:41:98","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"6656:15:98","parameters":{"id":65829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65828,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"6681:8:98","nodeType":"VariableDeclaration","scope":65830,"src":"6672:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":65827,"nodeType":"UserDefinedTypeName","pathNode":{"id":65826,"name":"CVParams","nameLocations":["6672:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"6672:8:98"},"referencedDeclaration":65637,"src":"6672:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"6671:19:98"}},{"id":65834,"nodeType":"EventDefinition","src":"6696:49:98","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6702:15:98","parameters":{"id":65833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65832,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"6726:17:98","nodeType":"VariableDeclaration","scope":65834,"src":"6718:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65831,"name":"address","nodeType":"ElementaryTypeName","src":"6718:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6717:27:98"}},{"id":65840,"nodeType":"EventDefinition","src":"6750:76:98","nodes":[],"anonymous":false,"eventSelector":"056aedca4e334b6c4bea48715fb0de644811b740894de57a0380d3eb90f2805b","name":"MinThresholdPointsUpdated","nameLocation":"6756:25:98","parameters":{"id":65839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65836,"indexed":false,"mutability":"mutable","name":"before","nameLocation":"6790:6:98","nodeType":"VariableDeclaration","scope":65840,"src":"6782:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65835,"name":"uint256","nodeType":"ElementaryTypeName","src":"6782:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65838,"indexed":false,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"6806:18:98","nodeType":"VariableDeclaration","scope":65840,"src":"6798:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65837,"name":"uint256","nodeType":"ElementaryTypeName","src":"6798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6781:44:98"}},{"id":65855,"nodeType":"EventDefinition","src":"6831:195:98","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"6837:16:98","parameters":{"id":65854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65843,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"6875:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6863:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":65842,"nodeType":"UserDefinedTypeName","pathNode":{"id":65841,"name":"IArbitrator","nameLocations":["6863:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"6863:11:98"},"referencedDeclaration":75718,"src":"6863:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65845,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6903:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6895:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65844,"name":"uint256","nodeType":"ElementaryTypeName","src":"6895:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65847,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"6931:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"6923:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65846,"name":"uint256","nodeType":"ElementaryTypeName","src":"6923:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65849,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"6958:10:98","nodeType":"VariableDeclaration","scope":65855,"src":"6950:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65848,"name":"address","nodeType":"ElementaryTypeName","src":"6950:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65851,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"6985:7:98","nodeType":"VariableDeclaration","scope":65855,"src":"6978:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65850,"name":"string","nodeType":"ElementaryTypeName","src":"6978:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65853,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7010:9:98","nodeType":"VariableDeclaration","scope":65855,"src":"7002:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65852,"name":"uint256","nodeType":"ElementaryTypeName","src":"7002:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6853:172:98"}},{"id":65863,"nodeType":"EventDefinition","src":"7031:88:98","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7037:21:98","parameters":{"id":65862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65857,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7067:8:98","nodeType":"VariableDeclaration","scope":65863,"src":"7059:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65856,"name":"address","nodeType":"ElementaryTypeName","src":"7059:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65859,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7085:10:98","nodeType":"VariableDeclaration","scope":65863,"src":"7077:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65858,"name":"address","nodeType":"ElementaryTypeName","src":"7077:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65861,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7105:12:98","nodeType":"VariableDeclaration","scope":65863,"src":"7097:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65860,"name":"address","nodeType":"ElementaryTypeName","src":"7097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7058:60:98"}},{"id":65867,"nodeType":"EventDefinition","src":"7124:44:98","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7130:17:98","parameters":{"id":65866,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65865,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7156:10:98","nodeType":"VariableDeclaration","scope":65867,"src":"7148:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65864,"name":"uint256","nodeType":"ElementaryTypeName","src":"7148:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7147:20:98"}},{"id":65884,"nodeType":"EventDefinition","src":"7173:302:98","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7179:23:98","parameters":{"id":65883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65869,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7220:30:98","nodeType":"VariableDeclaration","scope":65884,"src":"7212:38:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65868,"name":"uint256","nodeType":"ElementaryTypeName","src":"7212:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65872,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7272:10:98","nodeType":"VariableDeclaration","scope":65884,"src":"7260:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":65871,"nodeType":"UserDefinedTypeName","pathNode":{"id":65870,"name":"IArbitrator","nameLocations":["7260:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"7260:11:98"},"referencedDeclaration":75718,"src":"7260:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":65874,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7300:12:98","nodeType":"VariableDeclaration","scope":65884,"src":"7292:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65873,"name":"address","nodeType":"ElementaryTypeName","src":"7292:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65876,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7330:25:98","nodeType":"VariableDeclaration","scope":65884,"src":"7322:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65875,"name":"uint256","nodeType":"ElementaryTypeName","src":"7322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65878,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7373:26:98","nodeType":"VariableDeclaration","scope":65884,"src":"7365:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65877,"name":"uint256","nodeType":"ElementaryTypeName","src":"7365:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65880,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7417:13:98","nodeType":"VariableDeclaration","scope":65884,"src":"7409:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65879,"name":"uint256","nodeType":"ElementaryTypeName","src":"7409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":65882,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7448:20:98","nodeType":"VariableDeclaration","scope":65884,"src":"7440:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65881,"name":"uint256","nodeType":"ElementaryTypeName","src":"7440:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7202:272:98"}},{"id":65887,"nodeType":"VariableDeclaration","src":"7849:38:98","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"7872:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65885,"name":"string","nodeType":"ElementaryTypeName","src":"7849:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":65886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7882:5:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":65890,"nodeType":"VariableDeclaration","src":"7893:36:98","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"7917:1:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65888,"name":"uint256","nodeType":"ElementaryTypeName","src":"7893:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":65889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:8:98","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":65893,"nodeType":"VariableDeclaration","src":"7943:71:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"7969:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65891,"name":"uint256","nodeType":"ElementaryTypeName","src":"7943:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":65892,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7979:35:98","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":65896,"nodeType":"VariableDeclaration","src":"8030:70:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8056:7:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65894,"name":"uint256","nodeType":"ElementaryTypeName","src":"8030:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":65895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8066:34:98","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":65899,"nodeType":"VariableDeclaration","src":"8116:54:98","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8142:6:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65897,"name":"uint256","nodeType":"ElementaryTypeName","src":"8116:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":65898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8151:19:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":65902,"nodeType":"VariableDeclaration","src":"8185:49:98","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8209:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65900,"name":"uint256","nodeType":"ElementaryTypeName","src":"8185:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":65901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8232:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":65905,"nodeType":"VariableDeclaration","src":"8320:42:98","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8344:14:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65903,"name":"uint256","nodeType":"ElementaryTypeName","src":"8320:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":65904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8361:1:98","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":65908,"nodeType":"VariableDeclaration","src":"8368:54:98","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"8392:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65906,"name":"uint256","nodeType":"ElementaryTypeName","src":"8368:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":65907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8415:7:98","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":65910,"nodeType":"VariableDeclaration","src":"8429:40:98","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"8446:23:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65909,"name":"address","nodeType":"ElementaryTypeName","src":"8429:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":65912,"nodeType":"VariableDeclaration","src":"8517:47:98","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"8534:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65911,"name":"uint256","nodeType":"ElementaryTypeName","src":"8517:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":65914,"nodeType":"VariableDeclaration","src":"8608:25:98","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"8623:10:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65913,"name":"uint256","nodeType":"ElementaryTypeName","src":"8608:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65916,"nodeType":"VariableDeclaration","src":"8639:26:98","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"8653:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":65915,"name":"uint64","nodeType":"ElementaryTypeName","src":"8639:6:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":65918,"nodeType":"VariableDeclaration","src":"8671:30:98","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"8686:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65917,"name":"uint256","nodeType":"ElementaryTypeName","src":"8671:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65920,"nodeType":"VariableDeclaration","src":"8707:45:98","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"8722:30:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65919,"name":"uint256","nodeType":"ElementaryTypeName","src":"8707:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65922,"nodeType":"VariableDeclaration","src":"8759:26:98","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"8774:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65921,"name":"uint256","nodeType":"ElementaryTypeName","src":"8759:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65924,"nodeType":"VariableDeclaration","src":"8791:35:98","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"8806:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65923,"name":"uint256","nodeType":"ElementaryTypeName","src":"8791:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":65927,"nodeType":"VariableDeclaration","src":"8833:24:98","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"8849:8:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams"},"typeName":{"id":65926,"nodeType":"UserDefinedTypeName","pathNode":{"id":65925,"name":"CVParams","nameLocations":["8833:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"8833:8:98"},"referencedDeclaration":65637,"src":"8833:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":65930,"nodeType":"VariableDeclaration","src":"8904:32:98","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"8924:12:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":65929,"nodeType":"UserDefinedTypeName","pathNode":{"id":65928,"name":"ProposalType","nameLocations":["8904:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"8904:12:98"},"referencedDeclaration":65540,"src":"8904:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"public"},{"id":65933,"nodeType":"VariableDeclaration","src":"8995:30:98","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9014:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":65932,"nodeType":"UserDefinedTypeName","pathNode":{"id":65931,"name":"PointSystem","nameLocations":["8995:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"8995:11:98"},"referencedDeclaration":65545,"src":"8995:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"public"},{"id":65936,"nodeType":"VariableDeclaration","src":"9031:36:98","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9056:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":65935,"nodeType":"UserDefinedTypeName","pathNode":{"id":65934,"name":"PointSystemConfig","nameLocations":["9031:17:98"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"9031:17:98"},"referencedDeclaration":65614,"src":"9031:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":65938,"nodeType":"VariableDeclaration","src":"9100:32:98","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9115:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65937,"name":"address","nodeType":"ElementaryTypeName","src":"9100:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":65941,"nodeType":"VariableDeclaration","src":"9139:39:98","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9163:15:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"},"typeName":{"id":65940,"nodeType":"UserDefinedTypeName","pathNode":{"id":65939,"name":"ICollateralVault","nameLocations":["9139:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":75751,"src":"9139:16:98"},"referencedDeclaration":75751,"src":"9139:16:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":65944,"nodeType":"VariableDeclaration","src":"9184:31:98","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9204:11:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"},"typeName":{"id":65943,"nodeType":"UserDefinedTypeName","pathNode":{"id":65942,"name":"ISybilScorer","nameLocations":["9184:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":70106,"src":"9184:12:98"},"referencedDeclaration":70106,"src":"9184:12:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":65949,"nodeType":"VariableDeclaration","src":"9282:45:98","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9318:9:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":65948,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65945,"name":"uint256","nodeType":"ElementaryTypeName","src":"9290:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9282:28:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65947,"nodeType":"UserDefinedTypeName","pathNode":{"id":65946,"name":"Proposal","nameLocations":["9301:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"9301:8:98"},"referencedDeclaration":65606,"src":"9301:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":65953,"nodeType":"VariableDeclaration","src":"9383:53:98","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"9418:18:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":65952,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65950,"name":"address","nodeType":"ElementaryTypeName","src":"9391:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9383:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65951,"name":"uint256","nodeType":"ElementaryTypeName","src":"9402:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65958,"nodeType":"VariableDeclaration","src":"9474:57:98","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"9511:20:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":65957,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65954,"name":"address","nodeType":"ElementaryTypeName","src":"9482:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"9474:29:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":65955,"name":"uint256","nodeType":"ElementaryTypeName","src":"9493:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65956,"nodeType":"ArrayTypeName","src":"9493:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":65962,"nodeType":"VariableDeclaration","src":"9569:56:98","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"9604:21:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":65961,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65959,"name":"uint256","nodeType":"ElementaryTypeName","src":"9577:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9569:27:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65960,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":65967,"nodeType":"VariableDeclaration","src":"9631:61:98","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"9675:17:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":65966,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":65963,"name":"uint256","nodeType":"ElementaryTypeName","src":"9639:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9631:36:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":65965,"nodeType":"UserDefinedTypeName","pathNode":{"id":65964,"name":"ArbitrableConfig","nameLocations":["9650:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"9650:16:98"},"referencedDeclaration":65628,"src":"9650:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":65978,"nodeType":"FunctionDefinition","src":"9699:140:98","nodes":[],"body":{"id":65977,"nodeType":"Block","src":"9775:64:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65974,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"9814:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65973,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"9792:21:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":65975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9792:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"functionReturnParameters":65972,"id":65976,"nodeType":"Return","src":"9785:47:98"}]},"functionSelector":"48f19c1d","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunity","nameLocation":"9708:20:98","parameters":{"id":65968,"nodeType":"ParameterList","parameters":[],"src":"9728:2:98"},"returnParameters":{"id":65972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65971,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65978,"src":"9752:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":65970,"nodeType":"UserDefinedTypeName","pathNode":{"id":65969,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:98"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"9752:21:98"},"referencedDeclaration":72174,"src":"9752:21:98","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"src":"9751:23:98"},"scope":69194,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":66002,"nodeType":"FunctionDefinition","src":"10090:222:98","nodes":[],"body":{"id":66001,"nodeType":"Block","src":"10197:115:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":65992,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65980,"src":"10218:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":65993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10225:12:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":65994,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65984,"src":"10239:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":65989,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10207:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":65991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10213:4:98","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":64915,"src":"10207:10:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":65995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10207:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65996,"nodeType":"ExpressionStatement","src":"10207:38:98"},{"expression":{"id":65999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65997,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10255:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65998,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65982,"src":"10281:24:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10255:50:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66000,"nodeType":"ExpressionStatement","src":"10255:50:98"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":65987,"kind":"modifierInvocation","modifierName":{"id":65986,"name":"initializer","nameLocations":["10185:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10185:11:98"},"nodeType":"ModifierInvocation","src":"10185:11:98"}],"name":"init","nameLocation":"10099:4:98","parameters":{"id":65985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65980,"mutability":"mutable","name":"_allo","nameLocation":"10112:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10104:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65979,"name":"address","nodeType":"ElementaryTypeName","src":"10104:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65982,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10127:24:98","nodeType":"VariableDeclaration","scope":66002,"src":"10119:32:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65981,"name":"address","nodeType":"ElementaryTypeName","src":"10119:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65984,"mutability":"mutable","name":"owner","nameLocation":"10161:5:98","nodeType":"VariableDeclaration","scope":66002,"src":"10153:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65983,"name":"address","nodeType":"ElementaryTypeName","src":"10153:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10103:64:98"},"returnParameters":{"id":65988,"nodeType":"ParameterList","parameters":[],"src":"10197:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66093,"nodeType":"FunctionDefinition","src":"10318:799:98","nodes":[],"body":{"id":66092,"nodeType":"Block","src":"10401:716:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":66012,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"10431:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66011,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"10411:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10411:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66014,"nodeType":"ExpressionStatement","src":"10411:28:98"},{"expression":{"id":66024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66015,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10450:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66019,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"10503:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"10528:12:98","subExpression":{"id":66020,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"10528:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66017,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"10485:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10491:11:98","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"10485:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10485:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66016,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75751,"src":"10468:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75751_$","typeString":"type(contract ICollateralVault)"}},"id":66023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10468:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"src":"10450:92:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":66025,"nodeType":"ExpressionStatement","src":"10450:92:98"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66026,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"10552:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":66028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10568:10:98","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75723,"src":"10552:26:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10552:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66030,"nodeType":"ExpressionStatement","src":"10552:28:98"},{"assignments":[66033],"declarations":[{"constant":false,"id":66033,"mutability":"mutable","name":"ip","nameLocation":"10629:2:98","nodeType":"VariableDeclaration","scope":66092,"src":"10591:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66032,"nodeType":"UserDefinedTypeName","pathNode":{"id":66031,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["10591:30:98"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"10591:30:98"},"referencedDeclaration":65657,"src":"10591:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"id":66040,"initialValue":{"arguments":[{"id":66036,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66006,"src":"10645:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66037,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"10653:30:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"id":66038,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"10652:32:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_0 storage pointer)"}],"expression":{"id":66034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"10634:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"10638:6:98","memberName":"decode","nodeType":"MemberAccess","src":"10634:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10634:51:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"nodeType":"VariableDeclarationStatement","src":"10591:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66041,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10700:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10703:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10700:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10732:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66044,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10724:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66043,"name":"address","nodeType":"ElementaryTypeName","src":"10724:7:98","typeDescriptions":{}}},"id":66046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10724:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10700:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66052,"nodeType":"IfStatement","src":"10696:94:98","trueBody":{"id":66051,"nodeType":"Block","src":"10736:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66048,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"10757:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10757:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66050,"nodeType":"RevertStatement","src":"10750:29:98"}]}},{"expression":{"id":66056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66053,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"10800:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66054,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10820:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10823:17:98","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":65654,"src":"10820:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10800:40:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66057,"nodeType":"ExpressionStatement","src":"10800:40:98"},{"expression":{"id":66061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66058,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"10851:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66059,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10866:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10869:12:98","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":65643,"src":"10866:15:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"10851:30:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":66062,"nodeType":"ExpressionStatement","src":"10851:30:98"},{"expression":{"id":66066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66063,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"10891:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66064,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10905:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10908:11:98","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":65646,"src":"10905:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"10891:28:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":66067,"nodeType":"ExpressionStatement","src":"10891:28:98"},{"expression":{"id":66071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66068,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"10929:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66069,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10943:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10946:11:98","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":65649,"src":"10943:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"10929:28:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66072,"nodeType":"ExpressionStatement","src":"10929:28:98"},{"expression":{"id":66078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66073,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"10967:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66075,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"10994:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10997:11:98","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":65656,"src":"10994:14:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66074,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"10981:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":66077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10981:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"10967:42:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66079,"nodeType":"ExpressionStatement","src":"10967:42:98"},{"expression":{"arguments":[{"expression":{"id":66081,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11035:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11038:16:98","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":65652,"src":"11035:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66083,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11056:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},"id":66084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11059:8:98","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":65640,"src":"11056:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":66080,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"11020:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":66085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11020:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66086,"nodeType":"ExpressionStatement","src":"11020:48:98"},{"eventCall":{"arguments":[{"id":66088,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66004,"src":"11098:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66089,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66033,"src":"11107:2:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"id":66087,"name":"InitializedCV","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65775,"src":"11084:13:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_0 memory)"}},"id":66090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11084:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66091,"nodeType":"EmitStatement","src":"11079:31:98"}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66009,"kind":"modifierInvocation","modifierName":{"id":66008,"name":"onlyAllo","nameLocations":["10392:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"10392:8:98"},"nodeType":"ModifierInvocation","src":"10392:8:98"}],"name":"initialize","nameLocation":"10327:10:98","parameters":{"id":66007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66004,"mutability":"mutable","name":"_poolId","nameLocation":"10346:7:98","nodeType":"VariableDeclaration","scope":66093,"src":"10338:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66003,"name":"uint256","nodeType":"ElementaryTypeName","src":"10338:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66006,"mutability":"mutable","name":"_data","nameLocation":"10368:5:98","nodeType":"VariableDeclaration","scope":66093,"src":"10355:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10355:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10337:37:98"},"returnParameters":{"id":66010,"nodeType":"ParameterList","parameters":[],"src":"10401:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66097,"nodeType":"FunctionDefinition","src":"11288:83:98","nodes":[],"body":{"id":66096,"nodeType":"Block","src":"11316:55:98","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66094,"nodeType":"ParameterList","parameters":[],"src":"11296:2:98"},"returnParameters":{"id":66095,"nodeType":"ParameterList","parameters":[],"src":"11316:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66101,"nodeType":"FunctionDefinition","src":"11377:135:98","nodes":[],"body":{"id":66100,"nodeType":"Block","src":"11404:108:98","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66098,"nodeType":"ParameterList","parameters":[],"src":"11384:2:98"},"returnParameters":{"id":66099,"nodeType":"ParameterList","parameters":[],"src":"11404:0:98"},"scope":69194,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66123,"nodeType":"FunctionDefinition","src":"11518:210:98","nodes":[],"body":{"id":66122,"nodeType":"Block","src":"11617:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66110,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11634:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66112,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"11654:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":66111,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11649:4:98","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66113,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11649:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":66114,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11670:11:98","memberName":"interfaceId","nodeType":"MemberAccess","src":"11649:32:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"11634:47:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66118,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66103,"src":"11709:11:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66116,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11685:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$69194_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11691:17:98","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57724,"src":"11685:23:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11685:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11634:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66109,"id":66121,"nodeType":"Return","src":"11627:94:98"}]},"baseFunctions":[57724],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"11527:17:98","overrides":{"id":66106,"nodeType":"OverrideSpecifier","overrides":[{"id":66105,"name":"ERC165","nameLocations":["11594:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"11594:6:98"}],"src":"11585:16:98"},"parameters":{"id":66104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66103,"mutability":"mutable","name":"interfaceId","nameLocation":"11552:11:98","nodeType":"VariableDeclaration","scope":66123,"src":"11545:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66102,"name":"bytes4","nodeType":"ElementaryTypeName","src":"11545:6:98","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"11544:20:98"},"returnParameters":{"id":66109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66123,"src":"11611:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66107,"name":"bool","nodeType":"ElementaryTypeName","src":"11611:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"11610:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66165,"nodeType":"FunctionDefinition","src":"11899:391:98","nodes":[],"body":{"id":66164,"nodeType":"Block","src":"11967:323:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66128,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"11981:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12000:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66130,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11992:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66129,"name":"address","nodeType":"ElementaryTypeName","src":"11992:7:98","typeDescriptions":{}}},"id":66132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11992:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11981:21:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66138,"nodeType":"IfStatement","src":"11977:77:98","trueBody":{"id":66137,"nodeType":"Block","src":"12004:50:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66134,"name":"UserCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65668,"src":"12025:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12025:18:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66136,"nodeType":"RevertStatement","src":"12018:25:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66141,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12075:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66140,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12067:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66139,"name":"address","nodeType":"ElementaryTypeName","src":"12067:7:98","typeDescriptions":{}}},"id":66142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12067:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12105:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66144,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12097:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66143,"name":"address","nodeType":"ElementaryTypeName","src":"12097:7:98","typeDescriptions":{}}},"id":66146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12097:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12067:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66152,"nodeType":"IfStatement","src":"12063:100:98","trueBody":{"id":66151,"nodeType":"Block","src":"12109:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66148,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"12130:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12130:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66150,"nodeType":"RevertStatement","src":"12123:29:98"}]}},{"condition":{"id":66158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"12176:41:98","subExpression":{"arguments":[{"id":66156,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66125,"src":"12209:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66153,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12177:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12200:8:98","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":71791,"src":"12177:31:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12177:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66163,"nodeType":"IfStatement","src":"12172:98:98","trueBody":{"id":66162,"nodeType":"Block","src":"12219:51:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66159,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65670,"src":"12240:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12240:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66161,"nodeType":"RevertStatement","src":"12233:26:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"11908:19:98","parameters":{"id":66126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66125,"mutability":"mutable","name":"_sender","nameLocation":"11936:7:98","nodeType":"VariableDeclaration","scope":66165,"src":"11928:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66124,"name":"address","nodeType":"ElementaryTypeName","src":"11928:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11927:17:98"},"returnParameters":{"id":66127,"nodeType":"ParameterList","parameters":[],"src":"11967:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66181,"nodeType":"FunctionDefinition","src":"12296:171:98","nodes":[],"body":{"id":66180,"nodeType":"Block","src":"12351:116:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66168,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12365:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12369:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12365:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66172,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"12387:17:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12379:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66170,"name":"address","nodeType":"ElementaryTypeName","src":"12379:7:98","typeDescriptions":{}}},"id":66173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12379:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12365:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66179,"nodeType":"IfStatement","src":"12361:100:98","trueBody":{"id":66178,"nodeType":"Block","src":"12407:54:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66175,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65728,"src":"12428:20:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12428:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66177,"nodeType":"RevertStatement","src":"12421:29:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"12305:21:98","parameters":{"id":66166,"nodeType":"ParameterList","parameters":[],"src":"12326:2:98"},"returnParameters":{"id":66167,"nodeType":"ParameterList","parameters":[],"src":"12351:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66197,"nodeType":"FunctionDefinition","src":"12473:141:98","nodes":[],"body":{"id":66196,"nodeType":"Block","src":"12541:73:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66186,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66183,"src":"12555:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12567:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66187,"name":"address","nodeType":"ElementaryTypeName","src":"12567:7:98","typeDescriptions":{}}},"id":66190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12567:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12555:22:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66195,"nodeType":"IfStatement","src":"12551:56:98","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66192,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65686,"src":"12586:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12586:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66194,"nodeType":"RevertStatement","src":"12579:28:98"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"12482:18:98","parameters":{"id":66184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66183,"mutability":"mutable","name":"_address","nameLocation":"12509:8:98","nodeType":"VariableDeclaration","scope":66197,"src":"12501:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66182,"name":"address","nodeType":"ElementaryTypeName","src":"12501:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12500:18:98"},"returnParameters":{"id":66185,"nodeType":"ParameterList","parameters":[],"src":"12541:0:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66216,"nodeType":"FunctionDefinition","src":"12620:179:98","nodes":[],"body":{"id":66215,"nodeType":"Block","src":"12669:130:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12683:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12687:6:98","memberName":"sender","nodeType":"MemberAccess","src":"12683:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66204,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"12705:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12728:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"12705:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75844_$","typeString":"function () view external returns (contract ISafe)"}},"id":66207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12705:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":66203,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12697:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66202,"name":"address","nodeType":"ElementaryTypeName","src":"12697:7:98","typeDescriptions":{}}},"id":66208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12697:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12683:59:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66214,"nodeType":"IfStatement","src":"12679:114:98","trueBody":{"id":66213,"nodeType":"Block","src":"12744:49:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66210,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65738,"src":"12765:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12765:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66212,"nodeType":"RevertStatement","src":"12758:24:98"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"12629:15:98","parameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"12644:2:98"},"returnParameters":{"id":66199,"nodeType":"ParameterList","parameters":[],"src":"12669:0:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66256,"nodeType":"FunctionDefinition","src":"12805:296:98","nodes":[],"body":{"id":66255,"nodeType":"Block","src":"12884:217:98","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"737962696c53636f726572","id":66226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12906:13:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},"value":"sybilScorer"},{"arguments":[{"id":66229,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12929:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66228,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12921:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66227,"name":"address","nodeType":"ElementaryTypeName","src":"12921:7:98","typeDescriptions":{}}},"id":66230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12921:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_a6b38130d269538e3ad3b780bdc2f658c787bffeb47fb2e13772051f0238e91f","typeString":"literal_string \"sybilScorer\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66223,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29510,"src":"12894:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$29510_$","typeString":"type(library console)"}},"id":66225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12902:3:98","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":22205,"src":"12894:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":66231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12894:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66232,"nodeType":"ExpressionStatement","src":"12894:48:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66235,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"12964:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":66234,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12956:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66233,"name":"address","nodeType":"ElementaryTypeName","src":"12956:7:98","typeDescriptions":{}}},"id":66236,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12956:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66238,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12980:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66237,"name":"address","nodeType":"ElementaryTypeName","src":"12980:7:98","typeDescriptions":{}}},"id":66240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12980:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12956:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66245,"nodeType":"IfStatement","src":"12952:76:98","trueBody":{"id":66244,"nodeType":"Block","src":"12992:36:98","statements":[{"expression":{"hexValue":"74727565","id":66242,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"13013:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66222,"id":66243,"nodeType":"Return","src":"13006:11:98"}]}},{"expression":{"arguments":[{"id":66248,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"13073:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66251,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13088:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66250,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13080:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66249,"name":"address","nodeType":"ElementaryTypeName","src":"13080:7:98","typeDescriptions":{}}},"id":66252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13080:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66246,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"13044:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":66247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13056:16:98","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"13044:28:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66253,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13044:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66222,"id":66254,"nodeType":"Return","src":"13037:57:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"12814:17:98","parameters":{"id":66219,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66218,"mutability":"mutable","name":"_user","nameLocation":"12840:5:98","nodeType":"VariableDeclaration","scope":66256,"src":"12832:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66217,"name":"address","nodeType":"ElementaryTypeName","src":"12832:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12831:15:98"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66256,"src":"12878:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66220,"name":"bool","nodeType":"ElementaryTypeName","src":"12878:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"12877:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66268,"nodeType":"FunctionDefinition","src":"13107:132:98","nodes":[],"body":{"id":66267,"nodeType":"Block","src":"13188:51:98","nodes":[],"statements":[{"expression":{"id":66265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66263,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"13198:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66264,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66258,"src":"13224:8:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13198:34:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66266,"nodeType":"ExpressionStatement","src":"13198:34:98"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":66261,"kind":"modifierInvocation","modifierName":{"id":66260,"name":"onlyOwner","nameLocations":["13178:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"13178:9:98"},"nodeType":"ModifierInvocation","src":"13178:9:98"}],"name":"setCollateralVaultTemplate","nameLocation":"13116:26:98","parameters":{"id":66259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66258,"mutability":"mutable","name":"template","nameLocation":"13151:8:98","nodeType":"VariableDeclaration","scope":66268,"src":"13143:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66257,"name":"address","nodeType":"ElementaryTypeName","src":"13143:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13142:18:98"},"returnParameters":{"id":66262,"nodeType":"ParameterList","parameters":[],"src":"13188:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66502,"nodeType":"FunctionDefinition","src":"13565:2624:98","nodes":[],"body":{"id":66501,"nodeType":"Block","src":"13674:2515:98","nodes":[],"statements":[{"condition":{"id":66281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13688:27:98","subExpression":{"arguments":[{"id":66279,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"13707:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66278,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"13689:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13689:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66286,"nodeType":"IfStatement","src":"13684:90:98","trueBody":{"id":66285,"nodeType":"Block","src":"13717:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66282,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"13738:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13738:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66284,"nodeType":"RevertStatement","src":"13731:32:98"}]}},{"expression":{"id":66287,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13828:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":66288,"nodeType":"ExpressionStatement","src":"13828:5:98"},{"assignments":[66291],"declarations":[{"constant":false,"id":66291,"mutability":"mutable","name":"proposal","nameLocation":"13865:8:98","nodeType":"VariableDeclaration","scope":66501,"src":"13843:30:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":66290,"nodeType":"UserDefinedTypeName","pathNode":{"id":66289,"name":"CreateProposal","nameLocations":["13843:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65557,"src":"13843:14:98"},"referencedDeclaration":65557,"src":"13843:14:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":66298,"initialValue":{"arguments":[{"id":66294,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66270,"src":"13887:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66295,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"13895:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":66296,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:16:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$65557_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":66292,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13876:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13880:6:98","memberName":"decode","nodeType":"MemberAccess","src":"13876:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66297,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13876:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"13843:68:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66299,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14026:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14035:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14026:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":66301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14045:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14026:20:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66307,"nodeType":"IfStatement","src":"14022:78:98","trueBody":{"id":66306,"nodeType":"Block","src":"14048:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66303,"name":"PoolIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65684,"src":"14069:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14069:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66305,"nodeType":"RevertStatement","src":"14062:27:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":66311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66308,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"14176:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66309,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"14192:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":66310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14205:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"14192:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"14176:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66367,"nodeType":"IfStatement","src":"14172:749:98","trueBody":{"id":66366,"nodeType":"Block","src":"14214:707:98","statements":[{"expression":{"arguments":[{"expression":{"id":66313,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14247:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14256:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"14247:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66312,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"14228:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":66315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14228:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66316,"nodeType":"ExpressionStatement","src":"14228:40:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66317,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14334:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14343:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14334:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14369:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14361:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66319,"name":"address","nodeType":"ElementaryTypeName","src":"14361:7:98","typeDescriptions":{}}},"id":66322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14361:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14334:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66328,"nodeType":"IfStatement","src":"14330:102:98","trueBody":{"id":66327,"nodeType":"Block","src":"14373:59:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66324,"name":"TokenCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65678,"src":"14398:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14398:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66326,"nodeType":"RevertStatement","src":"14391:26:98"}]}},{"assignments":[66331],"declarations":[{"constant":false,"id":66331,"mutability":"mutable","name":"_allo","nameLocation":"14451:5:98","nodeType":"VariableDeclaration","scope":66366,"src":"14445:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"IAllo","nameLocations":["14445:5:98"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"14445:5:98"},"referencedDeclaration":2610,"src":"14445:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":66335,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66332,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14459:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}},"id":66333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14464:7:98","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":64969,"src":"14459:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":66334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14459:14:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"14445:28:98"},{"assignments":[66340],"declarations":[{"constant":false,"id":66340,"mutability":"mutable","name":"pool","nameLocation":"14505:4:98","nodeType":"VariableDeclaration","scope":66366,"src":"14487:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"IAllo.Pool","nameLocations":["14487:5:98","14493:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14487:10:98"},"referencedDeclaration":2319,"src":"14487:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":66346,"initialValue":{"arguments":[{"expression":{"id":66343,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14526:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66344,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14535:6:98","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":65547,"src":"14526:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66341,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66331,"src":"14512:5:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":66342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14518:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"14512:13:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":66345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14512:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"14487:55:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66347,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14560:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14569:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"14560:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":66349,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66340,"src":"14587:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":66350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14592:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"14587:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14560:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66356,"nodeType":"IfStatement","src":"14556:235:98","trueBody":{"id":66355,"nodeType":"Block","src":"14599:192:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66352,"name":"TokenNotAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65680,"src":"14759:15:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14759:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66354,"nodeType":"RevertStatement","src":"14752:24:98"}]}},{"condition":{"arguments":[{"expression":{"id":66358,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"14824:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14833:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"14824:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66357,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"14808:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":66360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14808:41:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66365,"nodeType":"IfStatement","src":"14804:107:98","trueBody":{"id":66364,"nodeType":"Block","src":"14851:60:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66361,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"14876:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66362,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14876:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66363,"nodeType":"RevertStatement","src":"14869:27:98"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":66370,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"14956:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66372,"indexExpression":{"id":66371,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"14974:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14956:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15006:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"14956:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":66369,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14948:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66368,"name":"address","nodeType":"ElementaryTypeName","src":"14948:7:98","typeDescriptions":{}}},"id":66374,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14948:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":66377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15029:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66376,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15021:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66375,"name":"address","nodeType":"ElementaryTypeName","src":"15021:7:98","typeDescriptions":{}}},"id":66378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15021:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14948:83:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66380,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15051:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66381,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15055:5:98","memberName":"value","nodeType":"MemberAccess","src":"15051:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":66382,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15063:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66384,"indexExpression":{"id":66383,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15081:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15063:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66385,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15113:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15063:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15051:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"14948:190:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66398,"nodeType":"IfStatement","src":"14931:390:98","trueBody":{"id":66397,"nodeType":"Block","src":"15149:172:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":66389,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15210:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15214:5:98","memberName":"value","nodeType":"MemberAccess","src":"15210:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66391,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"15221:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66393,"indexExpression":{"id":66392,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15239:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15221:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15271:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"15221:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66388,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"15170:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":66395,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15170:140:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66396,"nodeType":"RevertStatement","src":"15163:147:98"}]}},{"assignments":[66400],"declarations":[{"constant":false,"id":66400,"mutability":"mutable","name":"proposalId","nameLocation":"15339:10:98","nodeType":"VariableDeclaration","scope":66501,"src":"15331:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66399,"name":"uint256","nodeType":"ElementaryTypeName","src":"15331:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66403,"initialValue":{"id":66402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"15352:17:98","subExpression":{"id":66401,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65918,"src":"15354:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15331:38:98"},{"assignments":[66406],"declarations":[{"constant":false,"id":66406,"mutability":"mutable","name":"p","nameLocation":"15396:1:98","nodeType":"VariableDeclaration","scope":66501,"src":"15379:18:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66405,"nodeType":"UserDefinedTypeName","pathNode":{"id":66404,"name":"Proposal","nameLocations":["15379:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"15379:8:98"},"referencedDeclaration":65606,"src":"15379:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66410,"initialValue":{"baseExpression":{"id":66407,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"15400:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66409,"indexExpression":{"id":66408,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15410:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15400:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15379:42:98"},{"expression":{"id":66415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66411,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15432:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15434:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"15432:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"15447:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15432:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66416,"nodeType":"ExpressionStatement","src":"15432:25:98"},{"expression":{"id":66421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66417,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15467:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15469:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"15467:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66420,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66272,"src":"15481:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15467:21:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66422,"nodeType":"ExpressionStatement","src":"15467:21:98"},{"expression":{"id":66428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66423,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15498:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15500:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"15498:13:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66426,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15514:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66427,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15523:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65549,"src":"15514:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15498:36:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66429,"nodeType":"ExpressionStatement","src":"15498:36:98"},{"expression":{"id":66435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66430,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15544:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66432,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15546:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"15544:16:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66433,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15563:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15572:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65553,"src":"15563:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15544:42:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66436,"nodeType":"ExpressionStatement","src":"15544:42:98"},{"expression":{"id":66442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66437,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15596:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66439,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15598:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"15596:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66440,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15616:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66441,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15625:15:98","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":65551,"src":"15616:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15596:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66443,"nodeType":"ExpressionStatement","src":"15596:44:98"},{"expression":{"id":66449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66444,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15701:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15703:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"15701:16:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66447,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"15720:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":66448,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15735:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"15720:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"15701:40:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":66450,"nodeType":"ExpressionStatement","src":"15701:40:98"},{"expression":{"id":66456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66451,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15751:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15753:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"15751:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66454,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"15765:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":66455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15771:6:98","memberName":"number","nodeType":"MemberAccess","src":"15765:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66457,"nodeType":"ExpressionStatement","src":"15751:26:98"},{"expression":{"id":66462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66458,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15787:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66460,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15789:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"15787:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":66461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15806:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15787:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66463,"nodeType":"ExpressionStatement","src":"15787:20:98"},{"expression":{"id":66469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66464,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15853:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15855:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"15853:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66467,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66291,"src":"15866:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$65557_memory_ptr","typeString":"struct CreateProposal memory"}},"id":66468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15875:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65556,"src":"15866:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"15853:30:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":66470,"nodeType":"ExpressionStatement","src":"15853:30:98"},{"expression":{"id":66475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":66471,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"15893:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15895:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"15893:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"15921:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15893:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66476,"nodeType":"ExpressionStatement","src":"15893:58:98"},{"expression":{"arguments":[{"id":66483,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16013:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":66484,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66406,"src":"16025:1:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":66485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16027:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"16025:11:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66477,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"15961:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":66479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15977:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75730,"src":"15961:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":66482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":66480,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16002:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16006:5:98","memberName":"value","nodeType":"MemberAccess","src":"16002:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"15961:51:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":66486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15961:76:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66487,"nodeType":"ExpressionStatement","src":"15961:76:98"},{"eventCall":{"arguments":[{"id":66489,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"16069:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66490,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16077:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66488,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65789,"src":"16053:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":66491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16053:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66492,"nodeType":"EmitStatement","src":"16048:40:98"},{"expression":{"arguments":[{"arguments":[{"id":66497,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66400,"src":"16170:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16162:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":66495,"name":"uint160","nodeType":"ElementaryTypeName","src":"16162:7:98","typeDescriptions":{}}},"id":66498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16162:19:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":66494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16154:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66493,"name":"address","nodeType":"ElementaryTypeName","src":"16154:7:98","typeDescriptions":{}}},"id":66499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16154:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":66277,"id":66500,"nodeType":"Return","src":"16147:35:98"}]},"baseFunctions":[65357],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"13574:18:98","overrides":{"id":66274,"nodeType":"OverrideSpecifier","overrides":[],"src":"13647:8:98"},"parameters":{"id":66273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66270,"mutability":"mutable","name":"_data","nameLocation":"13606:5:98","nodeType":"VariableDeclaration","scope":66502,"src":"13593:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66269,"name":"bytes","nodeType":"ElementaryTypeName","src":"13593:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"_sender","nameLocation":"13621:7:98","nodeType":"VariableDeclaration","scope":66502,"src":"13613:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"13613:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13592:37:98"},"returnParameters":{"id":66277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66502,"src":"13665:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66275,"name":"address","nodeType":"ElementaryTypeName","src":"13665:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13664:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66511,"nodeType":"FunctionDefinition","src":"16195:98:98","nodes":[],"body":{"id":66510,"nodeType":"Block","src":"16255:38:98","nodes":[],"statements":[{"expression":{"expression":{"id":66507,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"16272:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":66508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16281:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"16272:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66506,"id":66509,"nodeType":"Return","src":"16265:21:98"}]},"functionSelector":"9a1c157c","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"16204:8:98","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[],"src":"16212:2:98"},"returnParameters":{"id":66506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66505,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66511,"src":"16246:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66504,"name":"uint256","nodeType":"ElementaryTypeName","src":"16246:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16245:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":66551,"nodeType":"FunctionDefinition","src":"16299:369:98","nodes":[],"body":{"id":66550,"nodeType":"Block","src":"16342:326:98","nodes":[],"statements":[{"assignments":[66515],"declarations":[{"constant":false,"id":66515,"mutability":"mutable","name":"member","nameLocation":"16360:6:98","nodeType":"VariableDeclaration","scope":66550,"src":"16352:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66514,"name":"address","nodeType":"ElementaryTypeName","src":"16352:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":66518,"initialValue":{"expression":{"id":66516,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16369:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16373:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16369:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16352:27:98"},{"condition":{"id":66522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16393:26:98","subExpression":{"arguments":[{"id":66520,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16412:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66519,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"16394:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66521,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16394:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66527,"nodeType":"IfStatement","src":"16389:89:98","trueBody":{"id":66526,"nodeType":"Block","src":"16421:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66523,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"16442:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16442:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66525,"nodeType":"RevertStatement","src":"16435:32:98"}]}},{"expression":{"arguments":[{"id":66531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16535:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66534,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16551:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66533,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16543:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66532,"name":"address","nodeType":"ElementaryTypeName","src":"16543:7:98","typeDescriptions":{}}},"id":66535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16543:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66528,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16487:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16510:24:98","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71198,"src":"16487:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16487:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66537,"nodeType":"ExpressionStatement","src":"16487:70:98"},{"expression":{"id":66548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66538,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16567:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":66542,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66515,"src":"16639:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66545,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16655:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66544,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16647:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66543,"name":"address","nodeType":"ElementaryTypeName","src":"16647:7:98","typeDescriptions":{}}},"id":66546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16647:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66539,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"16591:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16614:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"16591:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16591:70:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16567:94:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66549,"nodeType":"ExpressionStatement","src":"16567:94:98"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"16308:14:98","parameters":{"id":66512,"nodeType":"ParameterList","parameters":[],"src":"16322:2:98"},"returnParameters":{"id":66513,"nodeType":"ParameterList","parameters":[],"src":"16342:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66560,"nodeType":"FunctionDefinition","src":"16674:89:98","nodes":[],"body":{"id":66559,"nodeType":"Block","src":"16717:46:98","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":66555,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16745:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16749:6:98","memberName":"sender","nodeType":"MemberAccess","src":"16745:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66554,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16727:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16727:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66558,"nodeType":"ExpressionStatement","src":"16727:29:98"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16683:16:98","parameters":{"id":66552,"nodeType":"ParameterList","parameters":[],"src":"16699:2:98"},"returnParameters":{"id":66553,"nodeType":"ParameterList","parameters":[],"src":"16717:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":66573,"nodeType":"FunctionDefinition","src":"16769:136:98","nodes":[],"body":{"id":66572,"nodeType":"Block","src":"16829:76:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66565,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"16839:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16839:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66567,"nodeType":"ExpressionStatement","src":"16839:23:98"},{"expression":{"arguments":[{"id":66569,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66562,"src":"16890:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66568,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66609,"src":"16872:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16872:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66571,"nodeType":"ExpressionStatement","src":"16872:26:98"}]},"baseFunctions":[65511],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"16778:16:98","parameters":{"id":66563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66562,"mutability":"mutable","name":"_member","nameLocation":"16803:7:98","nodeType":"VariableDeclaration","scope":66573,"src":"16795:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66561,"name":"address","nodeType":"ElementaryTypeName","src":"16795:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16794:17:98"},"returnParameters":{"id":66564,"nodeType":"ParameterList","parameters":[],"src":"16829:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66609,"nodeType":"FunctionDefinition","src":"16911:369:98","nodes":[],"body":{"id":66608,"nodeType":"Block","src":"16972:308:98","nodes":[],"statements":[{"expression":{"id":66588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66578,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"16982:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":66582,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17054:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66585,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17071:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66584,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17063:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66583,"name":"address","nodeType":"ElementaryTypeName","src":"17063:7:98","typeDescriptions":{}}},"id":66586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17063:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66579,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17006:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66581,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17029:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"17006:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17006:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16982:95:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66589,"nodeType":"ExpressionStatement","src":"16982:95:98"},{"expression":{"arguments":[{"id":66593,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17137:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66596,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17154:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66595,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17146:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66594,"name":"address","nodeType":"ElementaryTypeName","src":"17146:7:98","typeDescriptions":{}}},"id":66597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17146:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66590,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"17087:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17110:26:98","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":71257,"src":"17087:49:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":66598,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17087:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66599,"nodeType":"ExpressionStatement","src":"17087:73:98"},{"expression":{"arguments":[{"id":66601,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66600,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67429,"src":"17215:8:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17215:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66603,"nodeType":"ExpressionStatement","src":"17215:17:98"},{"eventCall":{"arguments":[{"id":66605,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66575,"src":"17265:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66604,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65797,"src":"17247:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":66606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17247:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66607,"nodeType":"EmitStatement","src":"17242:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"16920:17:98","parameters":{"id":66576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66575,"mutability":"mutable","name":"_member","nameLocation":"16946:7:98","nodeType":"VariableDeclaration","scope":66609,"src":"16938:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66574,"name":"address","nodeType":"ElementaryTypeName","src":"16938:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16937:17:98"},"returnParameters":{"id":66577,"nodeType":"ParameterList","parameters":[],"src":"16972:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":66700,"nodeType":"FunctionDefinition","src":"17286:1025:98","nodes":[],"body":{"id":66699,"nodeType":"Block","src":"17385:926:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66618,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"17440:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17440:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66620,"nodeType":"ExpressionStatement","src":"17440:23:98"},{"condition":{"id":66624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17477:27:98","subExpression":{"arguments":[{"id":66622,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17496:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66621,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"17478:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":66623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17478:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66629,"nodeType":"IfStatement","src":"17473:90:98","trueBody":{"id":66628,"nodeType":"Block","src":"17506:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66625,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"17527:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17527:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66627,"nodeType":"RevertStatement","src":"17520:32:98"}]}},{"assignments":[66631],"declarations":[{"constant":false,"id":66631,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17580:16:98","nodeType":"VariableDeclaration","scope":66699,"src":"17572:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66630,"name":"uint256","nodeType":"ElementaryTypeName","src":"17572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66633,"initialValue":{"hexValue":"30","id":66632,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17599:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17572:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66634,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17614:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66635,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17629:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66636,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17641:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"17629:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17614:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66645,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17744:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66646,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17759:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17771:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"17759:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17744:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66657,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"17877:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66658,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"17892:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17904:9:98","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"17892:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"17877:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66669,"nodeType":"IfStatement","src":"17873:133:98","trueBody":{"id":66668,"nodeType":"Block","src":"17915:91:98","statements":[{"expression":{"id":66666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66661,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17929:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66663,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17971:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66664,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17980:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66662,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66888,"src":"17948:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17948:47:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17929:66:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66667,"nodeType":"ExpressionStatement","src":"17929:66:98"}]}},"id":66670,"nodeType":"IfStatement","src":"17740:266:98","trueBody":{"id":66656,"nodeType":"Block","src":"17779:88:98","statements":[{"expression":{"id":66654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66649,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17793:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66651,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"17832:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66652,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17841:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66650,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66807,"src":"17812:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17812:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17793:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66655,"nodeType":"ExpressionStatement","src":"17793:63:98"}]}},"id":66671,"nodeType":"IfStatement","src":"17610:396:98","trueBody":{"id":66644,"nodeType":"Block","src":"17652:82:98","statements":[{"expression":{"id":66642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66638,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"17666:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66640,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"17708:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66639,"name":"increasePowerUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66764,"src":"17685:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17685:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17666:57:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ExpressionStatement","src":"17666:57:98"}]}},{"assignments":[66673],"declarations":[{"constant":false,"id":66673,"mutability":"mutable","name":"isActivated","nameLocation":"18020:11:98","nodeType":"VariableDeclaration","scope":66699,"src":"18015:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66672,"name":"bool","nodeType":"ElementaryTypeName","src":"18015:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":66683,"initialValue":{"arguments":[{"id":66677,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18085:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66680,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18102:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66679,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18094:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66678,"name":"address","nodeType":"ElementaryTypeName","src":"18094:7:98","typeDescriptions":{}}},"id":66681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18094:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66674,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"18034:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18057:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"18034:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18034:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"18015:93:98"},{"condition":{"id":66684,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66673,"src":"18122:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66690,"nodeType":"IfStatement","src":"18118:82:98","trueBody":{"id":66689,"nodeType":"Block","src":"18135:65:98","statements":[{"expression":{"id":66687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66685,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18149:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":66686,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18173:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18149:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66688,"nodeType":"ExpressionStatement","src":"18149:40:98"}]}},{"eventCall":{"arguments":[{"id":66692,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66611,"src":"18229:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66693,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"18238:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66694,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18254:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66691,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65805,"src":"18214:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18214:57:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66696,"nodeType":"EmitStatement","src":"18209:62:98"},{"expression":{"id":66697,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"18288:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66617,"id":66698,"nodeType":"Return","src":"18281:23:98"}]},"baseFunctions":[65520],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"17295:13:98","parameters":{"id":66614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66611,"mutability":"mutable","name":"_member","nameLocation":"17317:7:98","nodeType":"VariableDeclaration","scope":66700,"src":"17309:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66610,"name":"address","nodeType":"ElementaryTypeName","src":"17309:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66613,"mutability":"mutable","name":"_amountToStake","nameLocation":"17334:14:98","nodeType":"VariableDeclaration","scope":66700,"src":"17326:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66612,"name":"uint256","nodeType":"ElementaryTypeName","src":"17326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17308:41:98"},"returnParameters":{"id":66617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66616,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66700,"src":"17376:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66615,"name":"uint256","nodeType":"ElementaryTypeName","src":"17376:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17375:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66754,"nodeType":"FunctionDefinition","src":"18317:659:98","nodes":[],"body":{"id":66753,"nodeType":"Block","src":"18418:558:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66709,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66181,"src":"18428:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":66710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18428:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66711,"nodeType":"ExpressionStatement","src":"18428:23:98"},{"assignments":[66713],"declarations":[{"constant":false,"id":66713,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"18515:16:98","nodeType":"VariableDeclaration","scope":66753,"src":"18507:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66712,"name":"uint256","nodeType":"ElementaryTypeName","src":"18507:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66715,"initialValue":{"hexValue":"30","id":66714,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18534:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18507:28:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66716,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18549:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66717,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18564:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66718,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18576:9:98","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":65543,"src":"18564:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18549:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":66723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66720,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"18589:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":66721,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"18604:11:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":66722,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18616:6:98","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":65542,"src":"18604:18:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"18589:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"18549:73:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66739,"nodeType":"Block","src":"18720:93:98","statements":[{"expression":{"id":66737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66732,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18734:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66734,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18776:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66735,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18785:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66733,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66975,"src":"18753:22:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18753:49:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18734:68:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66738,"nodeType":"ExpressionStatement","src":"18734:68:98"}]},"id":66740,"nodeType":"IfStatement","src":"18545:268:98","trueBody":{"id":66731,"nodeType":"Block","src":"18624:90:98","statements":[{"expression":{"id":66729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66725,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18638:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66727,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18686:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66726,"name":"decreasePowerCappedUnlimited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66898,"src":"18657:28:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18657:46:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18638:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66730,"nodeType":"ExpressionStatement","src":"18638:65:98"}]}},{"expression":{"id":66743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66741,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"18822:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":66742,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18846:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18822:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66744,"nodeType":"ExpressionStatement","src":"18822:40:98"},{"eventCall":{"arguments":[{"id":66746,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66702,"src":"18892:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66747,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66704,"src":"18901:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66748,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18919:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66745,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65813,"src":"18877:14:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":66749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18877:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66750,"nodeType":"EmitStatement","src":"18872:64:98"},{"expression":{"id":66751,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66713,"src":"18953:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66708,"id":66752,"nodeType":"Return","src":"18946:23:98"}]},"baseFunctions":[65529],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"18326:13:98","parameters":{"id":66705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66702,"mutability":"mutable","name":"_member","nameLocation":"18348:7:98","nodeType":"VariableDeclaration","scope":66754,"src":"18340:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66701,"name":"address","nodeType":"ElementaryTypeName","src":"18340:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66704,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"18365:16:98","nodeType":"VariableDeclaration","scope":66754,"src":"18357:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66703,"name":"uint256","nodeType":"ElementaryTypeName","src":"18357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18339:43:98"},"returnParameters":{"id":66708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66707,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66754,"src":"18409:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66706,"name":"uint256","nodeType":"ElementaryTypeName","src":"18409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18408:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66764,"nodeType":"FunctionDefinition","src":"18982:134:98","nodes":[],"body":{"id":66763,"nodeType":"Block","src":"19078:38:98","nodes":[],"statements":[{"expression":{"id":66761,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"19095:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66760,"id":66762,"nodeType":"Return","src":"19088:21:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerUnlimited","nameLocation":"18991:22:98","parameters":{"id":66757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66756,"mutability":"mutable","name":"_amountToStake","nameLocation":"19022:14:98","nodeType":"VariableDeclaration","scope":66764,"src":"19014:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66755,"name":"uint256","nodeType":"ElementaryTypeName","src":"19014:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19013:24:98"},"returnParameters":{"id":66760,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66759,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66764,"src":"19069:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66758,"name":"uint256","nodeType":"ElementaryTypeName","src":"19069:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19068:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66807,"nodeType":"FunctionDefinition","src":"19122:637:98","nodes":[],"body":{"id":66806,"nodeType":"Block","src":"19232:527:98","nodes":[],"statements":[{"assignments":[66774],"declarations":[{"constant":false,"id":66774,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"19250:16:98","nodeType":"VariableDeclaration","scope":66806,"src":"19242:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66773,"name":"uint256","nodeType":"ElementaryTypeName","src":"19242:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66776,"initialValue":{"id":66775,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66768,"src":"19269:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19242:41:98"},{"assignments":[66778],"declarations":[{"constant":false,"id":66778,"mutability":"mutable","name":"memberPower","nameLocation":"19365:11:98","nodeType":"VariableDeclaration","scope":66806,"src":"19357:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66777,"name":"uint256","nodeType":"ElementaryTypeName","src":"19357:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66788,"initialValue":{"arguments":[{"id":66782,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66766,"src":"19427:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66785,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19444:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66784,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66783,"name":"address","nodeType":"ElementaryTypeName","src":"19436:7:98","typeDescriptions":{}}},"id":66786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19436:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66779,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19379:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19402:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"19379:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19379:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19357:93:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66789,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19516:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66790,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19530:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":66792,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19549:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19561:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19549:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19516:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66803,"nodeType":"IfStatement","src":"19512:139:98","trueBody":{"id":66802,"nodeType":"Block","src":"19572:79:98","statements":[{"expression":{"id":66800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66795,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19586:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66796,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"19605:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19617:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"19605:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66798,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66778,"src":"19629:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19605:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19586:54:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66801,"nodeType":"ExpressionStatement","src":"19586:54:98"}]}},{"expression":{"id":66804,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66774,"src":"19736:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66772,"id":66805,"nodeType":"Return","src":"19729:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"19131:19:98","parameters":{"id":66769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66766,"mutability":"mutable","name":"_member","nameLocation":"19159:7:98","nodeType":"VariableDeclaration","scope":66807,"src":"19151:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66765,"name":"address","nodeType":"ElementaryTypeName","src":"19151:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66768,"mutability":"mutable","name":"_amountToStake","nameLocation":"19176:14:98","nodeType":"VariableDeclaration","scope":66807,"src":"19168:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66767,"name":"uint256","nodeType":"ElementaryTypeName","src":"19168:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19150:41:98"},"returnParameters":{"id":66772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66771,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66807,"src":"19223:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66770,"name":"uint256","nodeType":"ElementaryTypeName","src":"19223:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19222:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66888,"nodeType":"FunctionDefinition","src":"19765:756:98","nodes":[],"body":{"id":66887,"nodeType":"Block","src":"19878:643:98","nodes":[],"statements":[{"assignments":[66817],"declarations":[{"constant":false,"id":66817,"mutability":"mutable","name":"totalStake","nameLocation":"19896:10:98","nodeType":"VariableDeclaration","scope":66887,"src":"19888:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66816,"name":"uint256","nodeType":"ElementaryTypeName","src":"19888:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66825,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66821,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"19954:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66818,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"19909:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19932:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"19909:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19909:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":66823,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66811,"src":"19965:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19909:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19888:91:98"},{"assignments":[66827],"declarations":[{"constant":false,"id":66827,"mutability":"mutable","name":"decimal","nameLocation":"19998:7:98","nodeType":"VariableDeclaration","scope":66887,"src":"19990:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66826,"name":"uint256","nodeType":"ElementaryTypeName","src":"19990:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66829,"initialValue":{"hexValue":"3138","id":66828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20008:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"19990:20:98"},{"clauses":[{"block":{"id":66851,"nodeType":"Block","src":"20113:52:98","statements":[{"expression":{"id":66849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66844,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20127:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66847,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"20145:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20137:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66845,"name":"uint256","nodeType":"ElementaryTypeName","src":"20137:7:98","typeDescriptions":{}}},"id":66848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20137:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20127:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66850,"nodeType":"ExpressionStatement","src":"20127:27:98"}]},"errorName":"","id":66852,"nodeType":"TryCatchClause","parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"_decimal","nameLocation":"20103:8:98","nodeType":"VariableDeclaration","scope":66852,"src":"20097:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66841,"name":"uint8","nodeType":"ElementaryTypeName","src":"20097:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20096:16:98"},"src":"20088:77:98"},{"block":{"id":66853,"nodeType":"Block","src":"20172:64:98","statements":[]},"errorName":"","id":66854,"nodeType":"TryCatchClause","src":"20166:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66833,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20038:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20061:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20038:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20038:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66832,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20030:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66831,"name":"address","nodeType":"ElementaryTypeName","src":"20030:7:98","typeDescriptions":{}}},"id":66837,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20030:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66830,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20024:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20024:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20024:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66855,"nodeType":"TryStatement","src":"20020:216:98"},{"assignments":[66857],"declarations":[{"constant":false,"id":66857,"mutability":"mutable","name":"newTotalPoints","nameLocation":"20253:14:98","nodeType":"VariableDeclaration","scope":66887,"src":"20245:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66856,"name":"uint256","nodeType":"ElementaryTypeName","src":"20245:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66866,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66864,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66860,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66817,"src":"20280:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20293:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66862,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66827,"src":"20299:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20293:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20280:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66858,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"20270:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20275:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"20270:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20270:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20245:62:98"},{"assignments":[66868],"declarations":[{"constant":false,"id":66868,"mutability":"mutable","name":"currentPoints","nameLocation":"20325:13:98","nodeType":"VariableDeclaration","scope":66887,"src":"20317:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66867,"name":"uint256","nodeType":"ElementaryTypeName","src":"20317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66878,"initialValue":{"arguments":[{"id":66872,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66809,"src":"20389:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66875,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20406:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20398:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66873,"name":"address","nodeType":"ElementaryTypeName","src":"20398:7:98","typeDescriptions":{}}},"id":66876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20398:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66869,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20341:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20364:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"20341:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66877,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20341:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20317:95:98"},{"assignments":[66880],"declarations":[{"constant":false,"id":66880,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20431:16:98","nodeType":"VariableDeclaration","scope":66887,"src":"20423:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66879,"name":"uint256","nodeType":"ElementaryTypeName","src":"20423:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66884,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66881,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66857,"src":"20450:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66882,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66868,"src":"20467:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20450:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"20423:57:98"},{"expression":{"id":66885,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66880,"src":"20498:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66815,"id":66886,"nodeType":"Return","src":"20491:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"19774:22:98","parameters":{"id":66812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66809,"mutability":"mutable","name":"_member","nameLocation":"19805:7:98","nodeType":"VariableDeclaration","scope":66888,"src":"19797:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66808,"name":"address","nodeType":"ElementaryTypeName","src":"19797:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66811,"mutability":"mutable","name":"_amountToStake","nameLocation":"19822:14:98","nodeType":"VariableDeclaration","scope":66888,"src":"19814:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66810,"name":"uint256","nodeType":"ElementaryTypeName","src":"19814:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19796:41:98"},"returnParameters":{"id":66815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66814,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66888,"src":"19869:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66813,"name":"uint256","nodeType":"ElementaryTypeName","src":"19869:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19868:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66898,"nodeType":"FunctionDefinition","src":"20527:144:98","nodes":[],"body":{"id":66897,"nodeType":"Block","src":"20631:40:98","nodes":[],"statements":[{"expression":{"id":66895,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66890,"src":"20648:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66894,"id":66896,"nodeType":"Return","src":"20641:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerCappedUnlimited","nameLocation":"20536:28:98","parameters":{"id":66891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66890,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20573:16:98","nodeType":"VariableDeclaration","scope":66898,"src":"20565:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66889,"name":"uint256","nodeType":"ElementaryTypeName","src":"20565:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20564:26:98"},"returnParameters":{"id":66894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66898,"src":"20622:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66892,"name":"uint256","nodeType":"ElementaryTypeName","src":"20622:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20621:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66975,"nodeType":"FunctionDefinition","src":"20677:882:98","nodes":[],"body":{"id":66974,"nodeType":"Block","src":"20828:731:98","nodes":[],"statements":[{"assignments":[66908],"declarations":[{"constant":false,"id":66908,"mutability":"mutable","name":"decimal","nameLocation":"20846:7:98","nodeType":"VariableDeclaration","scope":66974,"src":"20838:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66907,"name":"uint256","nodeType":"ElementaryTypeName","src":"20838:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66910,"initialValue":{"hexValue":"3138","id":66909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20856:2:98","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"20838:20:98"},{"clauses":[{"block":{"id":66932,"nodeType":"Block","src":"20961:52:98","statements":[{"expression":{"id":66930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66925,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"20975:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66928,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66923,"src":"20993:8:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":66927,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20985:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":66926,"name":"uint256","nodeType":"ElementaryTypeName","src":"20985:7:98","typeDescriptions":{}}},"id":66929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20975:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66931,"nodeType":"ExpressionStatement","src":"20975:27:98"}]},"errorName":"","id":66933,"nodeType":"TryCatchClause","parameters":{"id":66924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66923,"mutability":"mutable","name":"_decimal","nameLocation":"20951:8:98","nodeType":"VariableDeclaration","scope":66933,"src":"20945:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":66922,"name":"uint8","nodeType":"ElementaryTypeName","src":"20945:5:98","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"20944:16:98"},"src":"20936:77:98"},{"block":{"id":66934,"nodeType":"Block","src":"21020:64:98","statements":[]},"errorName":"","id":66935,"nodeType":"TryCatchClause","src":"21014:70:98"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66914,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"20886:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20909:11:98","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":70494,"src":"20886:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$56528_$","typeString":"function () view external returns (contract IERC20)"}},"id":66917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20886:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":66913,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20878:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66912,"name":"address","nodeType":"ElementaryTypeName","src":"20878:7:98","typeDescriptions":{}}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20878:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66911,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56450,"src":"20872:5:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$56450_$","typeString":"type(contract ERC20)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$56450","typeString":"contract ERC20"}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20925:8:98","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55938,"src":"20872:61:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20872:63:98","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":66936,"nodeType":"TryStatement","src":"20868:216:98"},{"assignments":[66938],"declarations":[{"constant":false,"id":66938,"mutability":"mutable","name":"newTotalStake","nameLocation":"21163:13:98","nodeType":"VariableDeclaration","scope":66974,"src":"21155:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66937,"name":"uint256","nodeType":"ElementaryTypeName","src":"21155:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66946,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66942,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21224:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66939,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21179:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21202:21:98","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71580,"src":"21179:44:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21179:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66944,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66902,"src":"21235:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21179:72:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21155:96:98"},{"assignments":[66948],"declarations":[{"constant":false,"id":66948,"mutability":"mutable","name":"newTotalPoints","nameLocation":"21325:14:98","nodeType":"VariableDeclaration","scope":66974,"src":"21317:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66947,"name":"uint256","nodeType":"ElementaryTypeName","src":"21317:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66957,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66951,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66938,"src":"21352:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":66952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21368:2:98","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":66953,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66908,"src":"21374:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21352:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66949,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58797,"src":"21342:4:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58797_$","typeString":"type(library Math)"}},"id":66950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21347:4:98","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":58301,"src":"21342:9:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":66956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21342:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21317:65:98"},{"assignments":[66959],"declarations":[{"constant":false,"id":66959,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21400:16:98","nodeType":"VariableDeclaration","scope":66974,"src":"21392:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66958,"name":"uint256","nodeType":"ElementaryTypeName","src":"21392:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":66971,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":66970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66963,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66900,"src":"21479:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21496:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":66965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21488:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66964,"name":"address","nodeType":"ElementaryTypeName","src":"21488:7:98","typeDescriptions":{}}},"id":66967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21488:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":66960,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"21431:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":66962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21454:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"21431:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":66968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21431:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":66969,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66948,"src":"21505:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21431:88:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21392:127:98"},{"expression":{"id":66972,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66959,"src":"21536:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66906,"id":66973,"nodeType":"Return","src":"21529:23:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"20686:22:98","parameters":{"id":66903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66900,"mutability":"mutable","name":"_member","nameLocation":"20717:7:98","nodeType":"VariableDeclaration","scope":66975,"src":"20709:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66899,"name":"address","nodeType":"ElementaryTypeName","src":"20709:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66902,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20734:16:98","nodeType":"VariableDeclaration","scope":66975,"src":"20726:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66901,"name":"uint256","nodeType":"ElementaryTypeName","src":"20726:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20708:43:98"},"returnParameters":{"id":66906,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66905,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66975,"src":"20815:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66904,"name":"uint256","nodeType":"ElementaryTypeName","src":"20815:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20814:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66984,"nodeType":"FunctionDefinition","src":"21565:107:98","nodes":[],"body":{"id":66983,"nodeType":"Block","src":"21627:45:98","nodes":[],"statements":[{"expression":{"expression":{"id":66980,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"21644:11:98","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66981,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21656:9:98","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":65613,"src":"21644:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":66979,"id":66982,"nodeType":"Return","src":"21637:28:98"}]},"functionSelector":"0ba95909","implemented":true,"kind":"function","modifiers":[],"name":"getMaxAmount","nameLocation":"21574:12:98","parameters":{"id":66976,"nodeType":"ParameterList","parameters":[],"src":"21586:2:98"},"returnParameters":{"id":66979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66978,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66984,"src":"21618:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66977,"name":"uint256","nodeType":"ElementaryTypeName","src":"21618:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21617:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66993,"nodeType":"FunctionDefinition","src":"21678:103:98","nodes":[],"body":{"id":66992,"nodeType":"Block","src":"21746:35:98","nodes":[],"statements":[{"expression":{"id":66990,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"21763:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"functionReturnParameters":66989,"id":66991,"nodeType":"Return","src":"21756:18:98"}]},"baseFunctions":[65535],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"21687:14:98","parameters":{"id":66985,"nodeType":"ParameterList","parameters":[],"src":"21701:2:98"},"returnParameters":{"id":66989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66993,"src":"21733:11:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":66987,"nodeType":"UserDefinedTypeName","pathNode":{"id":66986,"name":"PointSystem","nameLocations":["21733:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"21733:11:98"},"referencedDeclaration":65545,"src":"21733:11:98","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"21732:13:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67057,"nodeType":"FunctionDefinition","src":"22272:633:98","nodes":[],"body":{"id":67056,"nodeType":"Block","src":"22354:551:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67002,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22384:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67001,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66165,"src":"22364:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22364:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67004,"nodeType":"ExpressionStatement","src":"22364:28:98"},{"condition":{"id":67008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22406:27:98","subExpression":{"arguments":[{"id":67006,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22425:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67005,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66256,"src":"22407:17:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22407:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67013,"nodeType":"IfStatement","src":"22402:90:98","trueBody":{"id":67012,"nodeType":"Block","src":"22435:57:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67009,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65740,"src":"22456:23:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22456:25:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67011,"nodeType":"RevertStatement","src":"22449:32:98"}]}},{"assignments":[67015],"declarations":[{"constant":false,"id":67015,"mutability":"mutable","name":"isMemberActivatedPoints","nameLocation":"22552:23:98","nodeType":"VariableDeclaration","scope":67056,"src":"22547:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67014,"name":"bool","nodeType":"ElementaryTypeName","src":"22547:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67025,"initialValue":{"arguments":[{"id":67019,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67022,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22646:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22638:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67020,"name":"address","nodeType":"ElementaryTypeName","src":"22638:7:98","typeDescriptions":{}}},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22638:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67016,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"22578:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22601:27:98","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":70539,"src":"22578:50:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22578:74:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"22547:105:98"},{"condition":{"id":67027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"22666:24:98","subExpression":{"id":67026,"name":"isMemberActivatedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67015,"src":"22667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67032,"nodeType":"IfStatement","src":"22662:78:98","trueBody":{"id":67031,"nodeType":"Block","src":"22692:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67028,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65672,"src":"22713:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22713:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67030,"nodeType":"RevertStatement","src":"22706:23:98"}]}},{"assignments":[67037],"declarations":[{"constant":false,"id":67037,"mutability":"mutable","name":"pv","nameLocation":"22774:2:98","nodeType":"VariableDeclaration","scope":67056,"src":"22749:27:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67035,"nodeType":"UserDefinedTypeName","pathNode":{"id":67034,"name":"ProposalSupport","nameLocations":["22749:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"22749:15:98"},"referencedDeclaration":65611,"src":"22749:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67036,"nodeType":"ArrayTypeName","src":"22749:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67045,"initialValue":{"arguments":[{"id":67040,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66995,"src":"22790:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67041,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"22798:15:98","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67042,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"22798:17:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67043,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"22797:19:98","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67038,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"22779:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"22783:6:98","memberName":"decode","nodeType":"MemberAccess","src":"22779:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22779:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22749:68:98"},{"expression":{"arguments":[{"id":67047,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22852:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67048,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22861:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67046,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67777,"src":"22827:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22827:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67050,"nodeType":"ExpressionStatement","src":"22827:37:98"},{"expression":{"arguments":[{"id":67052,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66997,"src":"22886:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67053,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67037,"src":"22895:2:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67051,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"22874:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22874:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67055,"nodeType":"ExpressionStatement","src":"22874:24:98"}]},"baseFunctions":[65365],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"22281:9:98","overrides":{"id":66999,"nodeType":"OverrideSpecifier","overrides":[],"src":"22345:8:98"},"parameters":{"id":66998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66995,"mutability":"mutable","name":"_data","nameLocation":"22304:5:98","nodeType":"VariableDeclaration","scope":67057,"src":"22291:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66994,"name":"bytes","nodeType":"ElementaryTypeName","src":"22291:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":66997,"mutability":"mutable","name":"_sender","nameLocation":"22319:7:98","nodeType":"VariableDeclaration","scope":67057,"src":"22311:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66996,"name":"address","nodeType":"ElementaryTypeName","src":"22311:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22290:37:98"},"returnParameters":{"id":67000,"nodeType":"ParameterList","parameters":[],"src":"22354:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67220,"nodeType":"FunctionDefinition","src":"23161:1873:98","nodes":[],"body":{"id":67219,"nodeType":"Block","src":"23255:1779:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23314:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23320:6:98","memberName":"length","nodeType":"MemberAccess","src":"23314:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":67070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23330:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23314:17:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67076,"nodeType":"IfStatement","src":"23310:76:98","trueBody":{"id":67075,"nodeType":"Block","src":"23333:53:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67072,"name":"ProposalDataIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65708,"src":"23354:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23354:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67074,"nodeType":"RevertStatement","src":"23347:28:98"}]}},{"assignments":[67078],"declarations":[{"constant":false,"id":67078,"mutability":"mutable","name":"proposalId","nameLocation":"23404:10:98","nodeType":"VariableDeclaration","scope":67219,"src":"23396:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67077,"name":"uint256","nodeType":"ElementaryTypeName","src":"23396:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67086,"initialValue":{"arguments":[{"id":67081,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67062,"src":"23428:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23436:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67082,"name":"uint256","nodeType":"ElementaryTypeName","src":"23436:7:98","typeDescriptions":{}}}],"id":67084,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23435:9:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"expression":{"id":67079,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"23417:3:98","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23421:6:98","memberName":"decode","nodeType":"MemberAccess","src":"23417:10:98","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23417:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23396:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23460:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23474:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"23460:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67094,"nodeType":"IfStatement","src":"23456:77:98","trueBody":{"id":67093,"nodeType":"Block","src":"23477:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67090,"name":"ProposalIdCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65710,"src":"23498:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23498:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67092,"nodeType":"RevertStatement","src":"23491:31:98"}]}},{"assignments":[67097],"declarations":[{"constant":false,"id":67097,"mutability":"mutable","name":"proposal","nameLocation":"23559:8:98","nodeType":"VariableDeclaration","scope":67219,"src":"23542:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67096,"nodeType":"UserDefinedTypeName","pathNode":{"id":67095,"name":"Proposal","nameLocations":["23542:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"23542:8:98"},"referencedDeclaration":65606,"src":"23542:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67101,"initialValue":{"baseExpression":{"id":67098,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"23570:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67100,"indexExpression":{"id":67099,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23580:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23570:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"23542:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"id":67105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67102,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"23606:12:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67103,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"23622:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$65540_$","typeString":"type(enum ProposalType)"}},"id":67104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23635:7:98","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":65538,"src":"23622:20:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"23606:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67218,"nodeType":"IfStatement","src":"23602:1366:98","trueBody":{"id":67217,"nodeType":"Block","src":"23644:1324:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67106,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23662:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23671:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"23662:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67108,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23685:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23662:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67115,"nodeType":"IfStatement","src":"23658:108:98","trueBody":{"id":67114,"nodeType":"Block","src":"23697:69:98","statements":[{"errorCall":{"arguments":[{"id":67111,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"23722:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23722:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67113,"nodeType":"RevertStatement","src":"23715:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67116,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23784:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23793:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23784:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67118,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23811:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23784:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67128,"nodeType":"IfStatement","src":"23780:152:98","trueBody":{"id":67127,"nodeType":"Block","src":"23823:109:98","statements":[{"errorCall":{"arguments":[{"id":67121,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"23868:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67122,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23880:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23889:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"23880:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67124,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"23906:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67120,"name":"PoolAmountNotEnough","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65736,"src":"23848:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":67125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23848:69:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67126,"nodeType":"RevertStatement","src":"23841:76:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":67133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67129,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"23950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23959:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"23950:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67131,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"23977:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"23992:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"23977:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"23950:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67139,"nodeType":"IfStatement","src":"23946:123:98","trueBody":{"id":67138,"nodeType":"Block","src":"24000:69:98","statements":[{"errorCall":{"arguments":[{"id":67135,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24043:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67134,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"24025:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24025:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67137,"nodeType":"RevertStatement","src":"24018:36:98"}]}},{"assignments":[67141],"declarations":[{"constant":false,"id":67141,"mutability":"mutable","name":"convictionLast","nameLocation":"24091:14:98","nodeType":"VariableDeclaration","scope":67217,"src":"24083:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67140,"name":"uint256","nodeType":"ElementaryTypeName","src":"24083:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67145,"initialValue":{"arguments":[{"id":67143,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24133:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67142,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"24108:24:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24108:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24083:61:98"},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"threshold","nameLocation":"24166:9:98","nodeType":"VariableDeclaration","scope":67217,"src":"24158:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"24158:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67152,"initialValue":{"arguments":[{"expression":{"id":67149,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24197:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67150,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24206:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24197:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67148,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"24178:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24178:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"24158:64:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67153,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67141,"src":"24241:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67154,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"24258:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24241:26:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67156,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24271:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24280:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24271:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24298:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24271:28:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"24241:58:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67165,"nodeType":"IfStatement","src":"24237:137:98","trueBody":{"id":67164,"nodeType":"Block","src":"24301:73:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67161,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65726,"src":"24326:31:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24326:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67163,"nodeType":"RevertStatement","src":"24319:40:98"}]}},{"assignments":[67170],"declarations":[{"constant":false,"id":67170,"mutability":"mutable","name":"pool","nameLocation":"24406:4:98","nodeType":"VariableDeclaration","scope":67217,"src":"24388:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":67169,"nodeType":"UserDefinedTypeName","pathNode":{"id":67168,"name":"IAllo.Pool","nameLocations":["24388:5:98","24394:4:98"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"24388:10:98"},"referencedDeclaration":2319,"src":"24388:10:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"id":67175,"initialValue":{"arguments":[{"id":67173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"24426:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67171,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64873,"src":"24413:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24418:7:98","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"24413:12:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":67174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24413:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"nodeType":"VariableDeclarationStatement","src":"24388:45:98"},{"expression":{"id":67179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67176,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"24448:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"id":67177,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24462:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67178,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24471:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24462:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24448:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67180,"nodeType":"ExpressionStatement","src":"24448:38:98"},{"expression":{"arguments":[{"expression":{"id":67182,"name":"pool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67170,"src":"24524:4:98","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67183,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24529:5:98","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"24524:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67184,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24536:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67185,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24545:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24536:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67186,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24558:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67187,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24567:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24558:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67181,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"24508:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24508:75:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67189,"nodeType":"ExpressionStatement","src":"24508:75:98"},{"expression":{"id":67195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67190,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24598:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67192,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"24607:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"24598:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67193,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"24624:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":67194,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24639:8:98","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"24624:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"24598:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":67196,"nodeType":"ExpressionStatement","src":"24598:49:98"},{"expression":{"arguments":[{"id":67200,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24713:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67201,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24741:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24750:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"24741:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67203,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"24777:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67205,"indexExpression":{"id":67204,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"24795:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24777:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24827:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"24777:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67197,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"24661:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":67199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24677:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"24661:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24661:205:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67208,"nodeType":"ExpressionStatement","src":"24661:205:98"},{"eventCall":{"arguments":[{"id":67210,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67078,"src":"24898:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67211,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24910:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24919:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"24910:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67213,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67097,"src":"24932:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24941:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"24932:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67209,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[65783,2858],"referencedDeclaration":65783,"src":"24886:11:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24886:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67216,"nodeType":"EmitStatement","src":"24881:76:98"}]}}]},"baseFunctions":[65376],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"23170:11:98","overrides":{"id":67066,"nodeType":"OverrideSpecifier","overrides":[],"src":"23246:8:98"},"parameters":{"id":67065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23182:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67058,"name":"address","nodeType":"ElementaryTypeName","src":"23182:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67059,"nodeType":"ArrayTypeName","src":"23182:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67062,"mutability":"mutable","name":"_data","nameLocation":"23213:5:98","nodeType":"VariableDeclaration","scope":67220,"src":"23200:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67061,"name":"bytes","nodeType":"ElementaryTypeName","src":"23200:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67220,"src":"23220:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67063,"name":"address","nodeType":"ElementaryTypeName","src":"23220:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23181:47:98"},"returnParameters":{"id":67067,"nodeType":"ParameterList","parameters":[],"src":"23255:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67272,"nodeType":"FunctionDefinition","src":"25040:728:98","nodes":[],"body":{"id":67271,"nodeType":"Block","src":"25137:631:98","nodes":[],"statements":[{"assignments":[67229],"declarations":[{"constant":false,"id":67229,"mutability":"mutable","name":"proposal","nameLocation":"25164:8:98","nodeType":"VariableDeclaration","scope":67271,"src":"25147:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67228,"nodeType":"UserDefinedTypeName","pathNode":{"id":67227,"name":"Proposal","nameLocations":["25147:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"25147:8:98"},"referencedDeclaration":65606,"src":"25147:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67233,"initialValue":{"baseExpression":{"id":67230,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"25175:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67232,"indexExpression":{"id":67231,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67222,"src":"25185:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25175:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25147:49:98"},{"assignments":[67235,67237],"declarations":[{"constant":false,"id":67235,"mutability":"mutable","name":"convictionLast","nameLocation":"25290:14:98","nodeType":"VariableDeclaration","scope":67271,"src":"25282:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67234,"name":"uint256","nodeType":"ElementaryTypeName","src":"25282:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67237,"mutability":"mutable","name":"blockNumber","nameLocation":"25314:11:98","nodeType":"VariableDeclaration","scope":67271,"src":"25306:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67236,"name":"uint256","nodeType":"ElementaryTypeName","src":"25306:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67243,"initialValue":{"arguments":[{"id":67239,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25375:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25385:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25394:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"25385:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67238,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"25341:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25341:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"25281:126:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67244,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25422:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67245,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25440:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25422:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67249,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67247,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67237,"src":"25445:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25460:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25445:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25422:39:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67257,"nodeType":"IfStatement","src":"25418:110:98","trueBody":{"id":67256,"nodeType":"Block","src":"25463:65:98","statements":[{"expression":{"id":67254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67251,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25477:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67252,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25494:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67253,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25503:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"25494:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25477:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67255,"nodeType":"ExpressionStatement","src":"25477:40:98"}]}},{"assignments":[67259],"declarations":[{"constant":false,"id":67259,"mutability":"mutable","name":"threshold","nameLocation":"25545:9:98","nodeType":"VariableDeclaration","scope":67271,"src":"25537:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67258,"name":"uint256","nodeType":"ElementaryTypeName","src":"25537:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67264,"initialValue":{"arguments":[{"expression":{"id":67261,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67229,"src":"25576:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25585:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"25576:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67260,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"25557:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25557:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25537:64:98"},{"expression":{"id":67269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67265,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67225,"src":"25718:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67266,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67235,"src":"25734:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":67267,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67259,"src":"25752:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25734:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"25718:43:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67270,"nodeType":"ExpressionStatement","src":"25718:43:98"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"25049:18:98","parameters":{"id":67223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67222,"mutability":"mutable","name":"proposalId","nameLocation":"25076:10:98","nodeType":"VariableDeclaration","scope":67272,"src":"25068:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67221,"name":"uint256","nodeType":"ElementaryTypeName","src":"25068:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25067:20:98"},"returnParameters":{"id":67226,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67225,"mutability":"mutable","name":"canBeExecuted","nameLocation":"25122:13:98","nodeType":"VariableDeclaration","scope":67272,"src":"25117:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67224,"name":"bool","nodeType":"ElementaryTypeName","src":"25117:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"25116:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67282,"nodeType":"FunctionDefinition","src":"26058:231:98","nodes":[],"body":{"id":67281,"nodeType":"Block","src":"26157:132:98","nodes":[],"statements":[]},"baseFunctions":[65396],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"26067:19:98","overrides":{"id":67276,"nodeType":"OverrideSpecifier","overrides":[],"src":"26131:8:98"},"parameters":{"id":67275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67274,"mutability":"mutable","name":"_recipientId","nameLocation":"26095:12:98","nodeType":"VariableDeclaration","scope":67282,"src":"26087:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67273,"name":"address","nodeType":"ElementaryTypeName","src":"26087:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"26086:22:98"},"returnParameters":{"id":67280,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67279,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67282,"src":"26149:6:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":67278,"nodeType":"UserDefinedTypeName","pathNode":{"id":67277,"name":"Status","nameLocations":["26149:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"26149:6:98"},"referencedDeclaration":2815,"src":"26149:6:98","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"26148:8:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67301,"nodeType":"FunctionDefinition","src":"26418:287:98","nodes":[],"body":{"id":67300,"nodeType":"Block","src":"26528:177:98","nodes":[],"statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67297,"name":"NotImplemented","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65676,"src":"26682:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67299,"nodeType":"RevertStatement","src":"26675:23:98"}]},"baseFunctions":[65235],"documentation":{"id":67283,"nodeType":"StructuredDocumentation","src":"26295:118:98","text":"@return Input the values you would send to distribute(), get the amounts each recipient in the array would receive"},"functionSelector":"b2b878d0","implemented":true,"kind":"function","modifiers":[],"name":"getPayouts","nameLocation":"26427:10:98","overrides":{"id":67291,"nodeType":"OverrideSpecifier","overrides":[],"src":"26486:8:98"},"parameters":{"id":67290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26438:16:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67284,"name":"address","nodeType":"ElementaryTypeName","src":"26438:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67285,"nodeType":"ArrayTypeName","src":"26438:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26456:14:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":67287,"name":"bytes","nodeType":"ElementaryTypeName","src":"26456:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":67288,"nodeType":"ArrayTypeName","src":"26456:7:98","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"26437:34:98"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67295,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67301,"src":"26504:22:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":67293,"nodeType":"UserDefinedTypeName","pathNode":{"id":67292,"name":"PayoutSummary","nameLocations":["26504:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26504:13:98"},"referencedDeclaration":2820,"src":"26504:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":67294,"nodeType":"ArrayTypeName","src":"26504:15:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"26503:24:98"},"scope":69194,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":67313,"nodeType":"FunctionDefinition","src":"26711:286:98","nodes":[],"body":{"id":67312,"nodeType":"Block","src":"26879:118:98","nodes":[],"statements":[]},"baseFunctions":[65387],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"26720:10:98","overrides":{"id":67307,"nodeType":"OverrideSpecifier","overrides":[],"src":"26827:8:98"},"parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67303,"mutability":"mutable","name":"_recipientId","nameLocation":"26739:12:98","nodeType":"VariableDeclaration","scope":67313,"src":"26731:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67302,"name":"address","nodeType":"ElementaryTypeName","src":"26731:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67305,"mutability":"mutable","name":"_data","nameLocation":"26766:5:98","nodeType":"VariableDeclaration","scope":67313,"src":"26753:18:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67304,"name":"bytes","nodeType":"ElementaryTypeName","src":"26753:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26730:42:98"},"returnParameters":{"id":67311,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67310,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67313,"src":"26853:20:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":67309,"nodeType":"UserDefinedTypeName","pathNode":{"id":67308,"name":"PayoutSummary","nameLocations":["26853:13:98"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"26853:13:98"},"referencedDeclaration":2820,"src":"26853:13:98","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"26852:22:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67324,"nodeType":"FunctionDefinition","src":"27003:127:98","nodes":[],"body":{"id":67323,"nodeType":"Block","src":"27080:50:98","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":67320,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67315,"src":"27115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67319,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65793,"src":"27095:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":67321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27095:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67322,"nodeType":"EmitStatement","src":"27090:33:98"}]},"baseFunctions":[65410],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"27012:24:98","overrides":{"id":67317,"nodeType":"OverrideSpecifier","overrides":[],"src":"27071:8:98"},"parameters":{"id":67316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67315,"mutability":"mutable","name":"_amount","nameLocation":"27045:7:98","nodeType":"VariableDeclaration","scope":67324,"src":"27037:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67314,"name":"uint256","nodeType":"ElementaryTypeName","src":"27037:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27036:17:98"},"returnParameters":{"id":67318,"nodeType":"ParameterList","parameters":[],"src":"27080:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67333,"nodeType":"FunctionDefinition","src":"27225:143:98","nodes":[],"body":{"id":67332,"nodeType":"Block","src":"27318:50:98","nodes":[],"statements":[]},"baseFunctions":[65347],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"27234:17:98","overrides":{"id":67328,"nodeType":"OverrideSpecifier","overrides":[],"src":"27294:8:98"},"parameters":{"id":67327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67326,"mutability":"mutable","name":"_allocator","nameLocation":"27260:10:98","nodeType":"VariableDeclaration","scope":67333,"src":"27252:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"27252:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27251:20:98"},"returnParameters":{"id":67331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67330,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67333,"src":"27312:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67329,"name":"bool","nodeType":"ElementaryTypeName","src":"27312:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27311:6:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":67343,"nodeType":"FunctionDefinition","src":"27374:86:98","nodes":[],"body":{"id":67342,"nodeType":"Block","src":"27420:40:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67339,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67335,"src":"27445:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":67338,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65330,"src":"27430:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27430:23:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"27430:23:98"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"27383:13:98","parameters":{"id":67336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67335,"mutability":"mutable","name":"_active","nameLocation":"27402:7:98","nodeType":"VariableDeclaration","scope":67343,"src":"27397:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67334,"name":"bool","nodeType":"ElementaryTypeName","src":"27397:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"27396:14:98"},"returnParameters":{"id":67337,"nodeType":"ParameterList","parameters":[],"src":"27420:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":67429,"nodeType":"FunctionDefinition","src":"27466:829:98","nodes":[],"body":{"id":67428,"nodeType":"Block","src":"27518:777:98","nodes":[],"statements":[{"assignments":[67352],"declarations":[{"constant":false,"id":67352,"mutability":"mutable","name":"proposalsIds","nameLocation":"27593:12:98","nodeType":"VariableDeclaration","scope":67428,"src":"27576:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67350,"name":"uint256","nodeType":"ElementaryTypeName","src":"27576:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67351,"nodeType":"ArrayTypeName","src":"27576:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67356,"initialValue":{"baseExpression":{"id":67353,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"27608:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67355,"indexExpression":{"id":67354,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27629:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27608:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27576:61:98"},{"body":{"id":67426,"nodeType":"Block","src":"27697:592:98","statements":[{"assignments":[67369],"declarations":[{"constant":false,"id":67369,"mutability":"mutable","name":"proposalId","nameLocation":"27719:10:98","nodeType":"VariableDeclaration","scope":67426,"src":"27711:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67368,"name":"uint256","nodeType":"ElementaryTypeName","src":"27711:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67373,"initialValue":{"baseExpression":{"id":67370,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27732:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67372,"indexExpression":{"id":67371,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27745:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27732:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27711:36:98"},{"assignments":[67376],"declarations":[{"constant":false,"id":67376,"mutability":"mutable","name":"proposal","nameLocation":"27778:8:98","nodeType":"VariableDeclaration","scope":67426,"src":"27761:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67375,"nodeType":"UserDefinedTypeName","pathNode":{"id":67374,"name":"Proposal","nameLocations":["27761:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"27761:8:98"},"referencedDeclaration":65606,"src":"27761:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67380,"initialValue":{"baseExpression":{"id":67377,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"27789:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67379,"indexExpression":{"id":67378,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27799:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27789:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"27761:49:98"},{"condition":{"arguments":[{"id":67382,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"27843:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67381,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"27828:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27828:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67425,"nodeType":"IfStatement","src":"27824:455:98","trueBody":{"id":67424,"nodeType":"Block","src":"27856:423:98","statements":[{"assignments":[67385],"declarations":[{"constant":false,"id":67385,"mutability":"mutable","name":"stakedPoints","nameLocation":"27882:12:98","nodeType":"VariableDeclaration","scope":67424,"src":"27874:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67384,"name":"uint256","nodeType":"ElementaryTypeName","src":"27874:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67390,"initialValue":{"baseExpression":{"expression":{"id":67386,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27897:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27906:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27897:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67389,"indexExpression":{"id":67388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27924:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27897:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27874:58:98"},{"expression":{"id":67397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67391,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"27950:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27959:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"27950:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67395,"indexExpression":{"id":67393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"27977:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"27950:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67396,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27950:39:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67398,"nodeType":"ExpressionStatement","src":"27950:39:98"},{"expression":{"id":67403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67399,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28007:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"28016:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28007:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67402,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28032:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28007:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67404,"nodeType":"ExpressionStatement","src":"28007:37:98"},{"expression":{"id":67407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67405,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"28062:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67406,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28077:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28062:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67408,"nodeType":"ExpressionStatement","src":"28062:27:98"},{"expression":{"arguments":[{"id":67410,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28134:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":67411,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67385,"src":"28144:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67409,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"28107:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":67412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28107:50:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67413,"nodeType":"ExpressionStatement","src":"28107:50:98"},{"eventCall":{"arguments":[{"id":67415,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67345,"src":"28193:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67416,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67369,"src":"28202:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":67417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28214:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":67418,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28217:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28226:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"28217:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67420,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67376,"src":"28240:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28249:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"28240:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67414,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"28180:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":67422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28180:84:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67423,"nodeType":"EmitStatement","src":"28175:89:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67361,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27667:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67362,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67352,"src":"27671:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27684:6:98","memberName":"length","nodeType":"MemberAccess","src":"27671:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27667:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67427,"initializationExpression":{"assignments":[67358],"declarations":[{"constant":false,"id":67358,"mutability":"mutable","name":"i","nameLocation":"27660:1:98","nodeType":"VariableDeclaration","scope":67427,"src":"27652:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"27652:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67360,"initialValue":{"hexValue":"30","id":67359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27664:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"27652:13:98"},"loopExpression":{"expression":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"27692:3:98","subExpression":{"id":67365,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67358,"src":"27692:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67367,"nodeType":"ExpressionStatement","src":"27692:3:98"},"nodeType":"ForStatement","src":"27647:642:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"27475:8:98","parameters":{"id":67346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67345,"mutability":"mutable","name":"_member","nameLocation":"27492:7:98","nodeType":"VariableDeclaration","scope":67429,"src":"27484:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67344,"name":"address","nodeType":"ElementaryTypeName","src":"27484:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"27483:17:98"},"returnParameters":{"id":67347,"nodeType":"ParameterList","parameters":[],"src":"27518:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67505,"nodeType":"FunctionDefinition","src":"28979:1115:98","nodes":[],"body":{"id":67504,"nodeType":"Block","src":"29494:600:98","nodes":[],"statements":[{"assignments":[67460],"declarations":[{"constant":false,"id":67460,"mutability":"mutable","name":"proposal","nameLocation":"29521:8:98","nodeType":"VariableDeclaration","scope":67504,"src":"29504:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67459,"nodeType":"UserDefinedTypeName","pathNode":{"id":67458,"name":"Proposal","nameLocations":["29504:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"29504:8:98"},"referencedDeclaration":65606,"src":"29504:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67464,"initialValue":{"baseExpression":{"id":67461,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"29532:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67463,"indexExpression":{"id":67462,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67432,"src":"29542:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29532:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29504:50:98"},{"expression":{"id":67476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67465,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29565:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67466,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29577:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67467,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29586:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29577:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29605:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"29577:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":67472,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29632:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67473,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29641:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29632:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67471,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68248,"src":"29613:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29613:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"29577:80:98","trueExpression":{"hexValue":"30","id":67470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29609:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29565:92:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67477,"nodeType":"ExpressionStatement","src":"29565:92:98"},{"expression":{"components":[{"expression":{"id":67478,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29688:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29697:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"29688:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67480,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29720:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67481,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29729:11:98","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":65582,"src":"29720:20:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67482,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29754:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29763:14:98","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":65586,"src":"29754:23:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":67484,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29791:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29800:15:98","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":65576,"src":"29791:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67486,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29829:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29838:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"29829:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67488,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29864:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29873:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"29864:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},{"expression":{"id":67490,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29901:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29910:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"29901:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67492,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29933:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67493,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29942:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"29933:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67494,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"29970:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":67495,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"29993:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67496,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30002:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"29993:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67499,"indexExpression":{"expression":{"id":67497,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"30020:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67498,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30024:6:98","memberName":"sender","nodeType":"MemberAccess","src":"30020:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29993:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67500,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67460,"src":"30045:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30054:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"30045:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67502,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"29674:413:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$65565_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(address,address,address,uint256,uint256,enum ProposalStatus,uint256,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67457,"id":67503,"nodeType":"Return","src":"29667:420:98"}]},"documentation":{"id":67430,"nodeType":"StructuredDocumentation","src":"28301:673:98","text":" @dev Get proposal details\n @param _proposalId Proposal id\n @return submitter Proposal submitter\n @return beneficiary Proposal beneficiary\n @return requestedToken Proposal requested token\n @return requestedAmount Proposal requested amount\n @return stakedAmount Proposal staked points\n @return proposalStatus Proposal status\n @return blockLast Last block when conviction was calculated\n @return convictionLast Last conviction calculated\n @return threshold Proposal threshold\n @return voterStakedPoints Voter staked points\n @return arbitrableConfigVersion Proposal arbitrable config id"},"functionSelector":"c7f758a8","implemented":true,"kind":"function","modifiers":[],"name":"getProposal","nameLocation":"28988:11:98","parameters":{"id":67433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67432,"mutability":"mutable","name":"_proposalId","nameLocation":"29008:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29000:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67431,"name":"uint256","nodeType":"ElementaryTypeName","src":"29000:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28999:21:98"},"returnParameters":{"id":67457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67435,"mutability":"mutable","name":"submitter","nameLocation":"29105:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29097:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67434,"name":"address","nodeType":"ElementaryTypeName","src":"29097:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67437,"mutability":"mutable","name":"beneficiary","nameLocation":"29136:11:98","nodeType":"VariableDeclaration","scope":67505,"src":"29128:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67436,"name":"address","nodeType":"ElementaryTypeName","src":"29128:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67439,"mutability":"mutable","name":"requestedToken","nameLocation":"29169:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29161:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67438,"name":"address","nodeType":"ElementaryTypeName","src":"29161:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67441,"mutability":"mutable","name":"requestedAmount","nameLocation":"29205:15:98","nodeType":"VariableDeclaration","scope":67505,"src":"29197:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67440,"name":"uint256","nodeType":"ElementaryTypeName","src":"29197:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"stakedAmount","nameLocation":"29242:12:98","nodeType":"VariableDeclaration","scope":67505,"src":"29234:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"29234:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67446,"mutability":"mutable","name":"proposalStatus","nameLocation":"29283:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29268:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":67445,"nodeType":"UserDefinedTypeName","pathNode":{"id":67444,"name":"ProposalStatus","nameLocations":["29268:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"29268:14:98"},"referencedDeclaration":65565,"src":"29268:14:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":67448,"mutability":"mutable","name":"blockLast","nameLocation":"29319:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29311:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67447,"name":"uint256","nodeType":"ElementaryTypeName","src":"29311:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67450,"mutability":"mutable","name":"convictionLast","nameLocation":"29350:14:98","nodeType":"VariableDeclaration","scope":67505,"src":"29342:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67449,"name":"uint256","nodeType":"ElementaryTypeName","src":"29342:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67452,"mutability":"mutable","name":"threshold","nameLocation":"29386:9:98","nodeType":"VariableDeclaration","scope":67505,"src":"29378:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"29378:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67454,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"29417:17:98","nodeType":"VariableDeclaration","scope":67505,"src":"29409:25:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67453,"name":"uint256","nodeType":"ElementaryTypeName","src":"29409:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67456,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"29456:23:98","nodeType":"VariableDeclaration","scope":67505,"src":"29448:31:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67455,"name":"uint256","nodeType":"ElementaryTypeName","src":"29448:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"29083:406:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67524,"nodeType":"FunctionDefinition","src":"30100:191:98","nodes":[],"body":{"id":67523,"nodeType":"Block","src":"30190:101:98","nodes":[],"statements":[{"assignments":[67515],"declarations":[{"constant":false,"id":67515,"mutability":"mutable","name":"proposal","nameLocation":"30217:8:98","nodeType":"VariableDeclaration","scope":67523,"src":"30200:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67514,"nodeType":"UserDefinedTypeName","pathNode":{"id":67513,"name":"Proposal","nameLocations":["30200:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"30200:8:98"},"referencedDeclaration":65606,"src":"30200:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67519,"initialValue":{"baseExpression":{"id":67516,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30228:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67518,"indexExpression":{"id":67517,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67507,"src":"30238:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30228:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30200:50:98"},{"expression":{"expression":{"id":67520,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67515,"src":"30267:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30276:8:98","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":65598,"src":"30267:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"functionReturnParameters":67512,"id":67522,"nodeType":"Return","src":"30260:24:98"}]},"functionSelector":"a574cea4","implemented":true,"kind":"function","modifiers":[],"name":"getMetadata","nameLocation":"30109:11:98","parameters":{"id":67508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67507,"mutability":"mutable","name":"_proposalId","nameLocation":"30129:11:98","nodeType":"VariableDeclaration","scope":67524,"src":"30121:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67506,"name":"uint256","nodeType":"ElementaryTypeName","src":"30121:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30120:21:98"},"returnParameters":{"id":67512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67511,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67524,"src":"30173:15:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":67510,"nodeType":"UserDefinedTypeName","pathNode":{"id":67509,"name":"Metadata","nameLocations":["30173:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"30173:8:98"},"referencedDeclaration":3098,"src":"30173:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"30172:17:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67540,"nodeType":"FunctionDefinition","src":"30492:184:98","nodes":[],"body":{"id":67539,"nodeType":"Block","src":"30600:76:98","nodes":[],"statements":[{"expression":{"arguments":[{"id":67535,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67527,"src":"30649:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67536,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"30662:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":67534,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67625,"src":"30617:31:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":67537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30617:52:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67533,"id":67538,"nodeType":"Return","src":"30610:59:98"}]},"documentation":{"id":67525,"nodeType":"StructuredDocumentation","src":"30297:190:98","text":" @notice Get stake of voter `_voter` on proposal #`_proposalId`\n @param _proposalId Proposal id\n @param _voter Voter address\n @return Proposal voter stake"},"functionSelector":"e0dd2c38","implemented":true,"kind":"function","modifiers":[],"name":"getProposalVoterStake","nameLocation":"30501:21:98","parameters":{"id":67530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67527,"mutability":"mutable","name":"_proposalId","nameLocation":"30531:11:98","nodeType":"VariableDeclaration","scope":67540,"src":"30523:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67526,"name":"uint256","nodeType":"ElementaryTypeName","src":"30523:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67529,"mutability":"mutable","name":"_voter","nameLocation":"30552:6:98","nodeType":"VariableDeclaration","scope":67540,"src":"30544:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67528,"name":"address","nodeType":"ElementaryTypeName","src":"30544:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30522:37:98"},"returnParameters":{"id":67533,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67532,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67540,"src":"30591:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67531,"name":"uint256","nodeType":"ElementaryTypeName","src":"30591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30590:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67553,"nodeType":"FunctionDefinition","src":"30682:153:98","nodes":[],"body":{"id":67552,"nodeType":"Block","src":"30776:59:98","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":67547,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"30793:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67549,"indexExpression":{"id":67548,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67542,"src":"30803:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30793:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30816:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"30793:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67546,"id":67551,"nodeType":"Return","src":"30786:42:98"}]},"functionSelector":"dc96ff2d","implemented":true,"kind":"function","modifiers":[],"name":"getProposalStakedAmount","nameLocation":"30691:23:98","parameters":{"id":67543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67542,"mutability":"mutable","name":"_proposalId","nameLocation":"30723:11:98","nodeType":"VariableDeclaration","scope":67553,"src":"30715:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67541,"name":"uint256","nodeType":"ElementaryTypeName","src":"30715:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30714:21:98"},"returnParameters":{"id":67546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67553,"src":"30767:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67544,"name":"uint256","nodeType":"ElementaryTypeName","src":"30767:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30766:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67565,"nodeType":"FunctionDefinition","src":"30903:135:98","nodes":[],"body":{"id":67564,"nodeType":"Block","src":"30988:50:98","nodes":[],"statements":[{"expression":{"baseExpression":{"id":67560,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"31005:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67562,"indexExpression":{"id":67561,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67555,"src":"31024:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31005:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67559,"id":67563,"nodeType":"Return","src":"30998:33:98"}]},"functionSelector":"bcc5b93b","implemented":true,"kind":"function","modifiers":[],"name":"getTotalVoterStakePct","nameLocation":"30912:21:98","parameters":{"id":67556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67555,"mutability":"mutable","name":"_voter","nameLocation":"30942:6:98","nodeType":"VariableDeclaration","scope":67565,"src":"30934:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67554,"name":"address","nodeType":"ElementaryTypeName","src":"30934:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30933:16:98"},"returnParameters":{"id":67559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67565,"src":"30979:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67557,"name":"uint256","nodeType":"ElementaryTypeName","src":"30979:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30978:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67608,"nodeType":"FunctionDefinition","src":"31044:874:98","nodes":[],"body":{"id":67607,"nodeType":"Block","src":"31394:524:98","nodes":[],"statements":[{"expression":{"components":[{"expression":{"baseExpression":{"id":67581,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31425:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67583,"indexExpression":{"id":67582,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31443:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31425:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67584,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31475:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"31425:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":67585,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31499:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67587,"indexExpression":{"id":67586,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31517:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31499:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67588,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31549:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"31499:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67589,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31575:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67591,"indexExpression":{"id":67590,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31593:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31575:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31625:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"31575:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67593,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31664:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67595,"indexExpression":{"id":67594,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31682:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31664:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31714:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"31664:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67597,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31754:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67599,"indexExpression":{"id":67598,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31772:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31754:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31804:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"31754:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67601,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"31831:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67603,"indexExpression":{"id":67602,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"31849:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"31831:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67604,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31881:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"31831:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":67605,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"31411:500:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_contract$_IArbitrator_$75718_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"functionReturnParameters":67580,"id":67606,"nodeType":"Return","src":"31404:507:98"}]},"functionSelector":"059351cd","implemented":true,"kind":"function","modifiers":[],"name":"getArbitrableConfig","nameLocation":"31053:19:98","parameters":{"id":67566,"nodeType":"ParameterList","parameters":[],"src":"31072:2:98"},"returnParameters":{"id":67580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67569,"mutability":"mutable","name":"arbitrator","nameLocation":"31163:10:98","nodeType":"VariableDeclaration","scope":67608,"src":"31151:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"typeName":{"id":67568,"nodeType":"UserDefinedTypeName","pathNode":{"id":67567,"name":"IArbitrator","nameLocations":["31151:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75718,"src":"31151:11:98"},"referencedDeclaration":75718,"src":"31151:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":67571,"mutability":"mutable","name":"tribunalSafe","nameLocation":"31195:12:98","nodeType":"VariableDeclaration","scope":67608,"src":"31187:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67570,"name":"address","nodeType":"ElementaryTypeName","src":"31187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67573,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"31229:25:98","nodeType":"VariableDeclaration","scope":67608,"src":"31221:33:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67572,"name":"uint256","nodeType":"ElementaryTypeName","src":"31221:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67575,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"31276:26:98","nodeType":"VariableDeclaration","scope":67608,"src":"31268:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67574,"name":"uint256","nodeType":"ElementaryTypeName","src":"31268:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67577,"mutability":"mutable","name":"defaultRuling","nameLocation":"31324:13:98","nodeType":"VariableDeclaration","scope":67608,"src":"31316:21:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"31316:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67579,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"31359:20:98","nodeType":"VariableDeclaration","scope":67608,"src":"31351:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67578,"name":"uint256","nodeType":"ElementaryTypeName","src":"31351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31137:252:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":67625,"nodeType":"FunctionDefinition","src":"31924:226:98","nodes":[],"body":{"id":67624,"nodeType":"Block","src":"32078:72:98","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":67617,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32095:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67619,"indexExpression":{"id":67618,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67610,"src":"32105:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32118:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"32095:40:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67622,"indexExpression":{"id":67621,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67612,"src":"32136:6:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32095:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67616,"id":67623,"nodeType":"Return","src":"32088:55:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"31933:31:98","parameters":{"id":67613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67610,"mutability":"mutable","name":"_proposalId","nameLocation":"31973:11:98","nodeType":"VariableDeclaration","scope":67625,"src":"31965:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67609,"name":"uint256","nodeType":"ElementaryTypeName","src":"31965:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67612,"mutability":"mutable","name":"_voter","nameLocation":"31994:6:98","nodeType":"VariableDeclaration","scope":67625,"src":"31986:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67611,"name":"address","nodeType":"ElementaryTypeName","src":"31986:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"31964:37:98"},"returnParameters":{"id":67616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67615,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67625,"src":"32065:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67614,"name":"uint256","nodeType":"ElementaryTypeName","src":"32065:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32064:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67636,"nodeType":"FunctionDefinition","src":"32156:158:98","nodes":[],"body":{"id":67635,"nodeType":"Block","src":"32228:86:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67630,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"32245:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32268:20:98","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":71967,"src":"32245:43:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":67633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32245:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67629,"id":67634,"nodeType":"Return","src":"32238:52:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"32165:20:98","parameters":{"id":67626,"nodeType":"ParameterList","parameters":[],"src":"32185:2:98"},"returnParameters":{"id":67629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67636,"src":"32219:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67627,"name":"uint256","nodeType":"ElementaryTypeName","src":"32219:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32218:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67661,"nodeType":"FunctionDefinition","src":"32320:193:98","nodes":[],"body":{"id":67660,"nodeType":"Block","src":"32402:111:98","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67643,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32419:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67645,"indexExpression":{"id":67644,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32429:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32419:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67646,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32442:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"32419:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32455:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32419:37:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67649,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"32460:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67651,"indexExpression":{"id":67650,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67638,"src":"32470:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32460:22:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":67652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32483:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"32460:32:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32504:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":67654,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"32496:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67653,"name":"address","nodeType":"ElementaryTypeName","src":"32496:7:98","typeDescriptions":{}}},"id":67656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32496:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"32460:46:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32419:87:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":67642,"id":67659,"nodeType":"Return","src":"32412:94:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"32329:14:98","parameters":{"id":67639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67638,"mutability":"mutable","name":"_proposalID","nameLocation":"32352:11:98","nodeType":"VariableDeclaration","scope":67661,"src":"32344:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67637,"name":"uint256","nodeType":"ElementaryTypeName","src":"32344:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32343:21:98"},"returnParameters":{"id":67642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67641,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67661,"src":"32396:4:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67640,"name":"bool","nodeType":"ElementaryTypeName","src":"32396:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32395:6:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67680,"nodeType":"FunctionDefinition","src":"32519:191:98","nodes":[],"body":{"id":67679,"nodeType":"Block","src":"32622:88:98","nodes":[],"statements":[{"expression":{"id":67677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67668,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"32632:14:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67669,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"32649:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":67670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32658:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"32649:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67671,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"32669:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67673,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67663,"src":"32683:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":67674,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"32702:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32683:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32649:54:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"32632:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67678,"nodeType":"ExpressionStatement","src":"32632:71:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"32528:15:98","parameters":{"id":67664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67663,"mutability":"mutable","name":"_requestedAmount","nameLocation":"32552:16:98","nodeType":"VariableDeclaration","scope":67680,"src":"32544:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67662,"name":"uint256","nodeType":"ElementaryTypeName","src":"32544:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32543:26:98"},"returnParameters":{"id":67667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67666,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"32606:14:98","nodeType":"VariableDeclaration","scope":67680,"src":"32601:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67665,"name":"bool","nodeType":"ElementaryTypeName","src":"32601:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"32600:21:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67777,"nodeType":"FunctionDefinition","src":"32716:1526:98","nodes":[],"body":{"id":67776,"nodeType":"Block","src":"32819:1423:98","nodes":[],"statements":[{"assignments":[67690],"declarations":[{"constant":false,"id":67690,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"32836:15:98","nodeType":"VariableDeclaration","scope":67776,"src":"32829:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67689,"name":"int256","nodeType":"ElementaryTypeName","src":"32829:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67692,"initialValue":{"hexValue":"30","id":67691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32854:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32829:26:98"},{"body":{"id":67737,"nodeType":"Block","src":"32919:576:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67704,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32992:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67706,"indexExpression":{"id":67705,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33009:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32992:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67707,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33012:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"32992:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67708,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33026:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32992:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67712,"nodeType":"IfStatement","src":"32988:187:98","trueBody":{"id":67711,"nodeType":"Block","src":"33029:146:98","statements":[{"id":67710,"nodeType":"Continue","src":"33152:8:98"}]}},{"assignments":[67714],"declarations":[{"constant":false,"id":67714,"mutability":"mutable","name":"proposalId","nameLocation":"33196:10:98","nodeType":"VariableDeclaration","scope":67737,"src":"33188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67713,"name":"uint256","nodeType":"ElementaryTypeName","src":"33188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67719,"initialValue":{"expression":{"baseExpression":{"id":67715,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33209:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"indexExpression":{"id":67716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33226:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33209:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33229:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"33209:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33188:51:98"},{"condition":{"id":67723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"33257:27:98","subExpression":{"arguments":[{"id":67721,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33273:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67720,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67661,"src":"33258:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33258:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67729,"nodeType":"IfStatement","src":"33253:167:98","trueBody":{"id":67728,"nodeType":"Block","src":"33286:134:98","statements":[{"errorCall":{"arguments":[{"id":67725,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67714,"src":"33329:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67724,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"33311:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33311:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67727,"nodeType":"RevertStatement","src":"33304:36:98"}]}},{"expression":{"id":67735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67730,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33433:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":67731,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"33452:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67733,"indexExpression":{"id":67732,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"33469:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"33452:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33472:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"33452:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"33433:51:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":67736,"nodeType":"ExpressionStatement","src":"33433:51:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67697,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32885:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67698,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67686,"src":"32889:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32906:6:98","memberName":"length","nodeType":"MemberAccess","src":"32889:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32885:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67738,"initializationExpression":{"assignments":[67694],"declarations":[{"constant":false,"id":67694,"mutability":"mutable","name":"i","nameLocation":"32878:1:98","nodeType":"VariableDeclaration","scope":67738,"src":"32870:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67693,"name":"uint256","nodeType":"ElementaryTypeName","src":"32870:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67696,"initialValue":{"hexValue":"30","id":67695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32882:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"32870:13:98"},"loopExpression":{"expression":{"id":67702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"32914:3:98","subExpression":{"id":67701,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67694,"src":"32914:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67703,"nodeType":"ExpressionStatement","src":"32914:3:98"},"nodeType":"ForStatement","src":"32865:630:98"},{"assignments":[67740],"declarations":[{"constant":false,"id":67740,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"33599:21:98","nodeType":"VariableDeclaration","scope":67776,"src":"33591:29:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67739,"name":"uint256","nodeType":"ElementaryTypeName","src":"33591:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67747,"initialValue":{"arguments":[{"arguments":[{"id":67743,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33657:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67742,"name":"getTotalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67565,"src":"33635:21:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view returns (uint256)"}},"id":67744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33635:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67745,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67690,"src":"33667:15:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67741,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"33623:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33623:60:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33591:92:98"},{"assignments":[67749],"declarations":[{"constant":false,"id":67749,"mutability":"mutable","name":"participantBalance","nameLocation":"33773:18:98","nodeType":"VariableDeclaration","scope":67776,"src":"33765:26:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67748,"name":"uint256","nodeType":"ElementaryTypeName","src":"33765:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67759,"initialValue":{"arguments":[{"id":67753,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"33842:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67756,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"33859:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":67755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"33851:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67754,"name":"address","nodeType":"ElementaryTypeName","src":"33851:7:98","typeDescriptions":{}}},"id":67757,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33851:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67750,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"33794:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":67751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":67752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33817:24:98","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":71567,"src":"33794:47:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33794:71:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"33765:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67760,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34031:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67761,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34055:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34031:42:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67769,"nodeType":"IfStatement","src":"34027:147:98","trueBody":{"id":67768,"nodeType":"Block","src":"34075:99:98","statements":[{"errorCall":{"arguments":[{"id":67764,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34121:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67765,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67749,"src":"34144:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67763,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65706,"src":"34096:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34096:67:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67767,"nodeType":"RevertStatement","src":"34089:74:98"}]}},{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67770,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65953,"src":"34184:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67772,"indexExpression":{"id":67771,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67682,"src":"34203:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34184:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67773,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"34214:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34184:51:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"34184:51:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"32725:24:98","parameters":{"id":67687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67682,"mutability":"mutable","name":"_sender","nameLocation":"32758:7:98","nodeType":"VariableDeclaration","scope":67777,"src":"32750:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67681,"name":"address","nodeType":"ElementaryTypeName","src":"32750:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67686,"mutability":"mutable","name":"_proposalSupport","nameLocation":"32792:16:98","nodeType":"VariableDeclaration","scope":67777,"src":"32767:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"ProposalSupport","nameLocations":["32767:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"32767:15:98"},"referencedDeclaration":65611,"src":"32767:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67685,"nodeType":"ArrayTypeName","src":"32767:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"32749:60:98"},"returnParameters":{"id":67688,"nodeType":"ParameterList","parameters":[],"src":"32819:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68062,"nodeType":"FunctionDefinition","src":"34248:3457:98","nodes":[],"body":{"id":68061,"nodeType":"Block","src":"34346:3359:98","nodes":[],"statements":[{"assignments":[67790],"declarations":[{"constant":false,"id":67790,"mutability":"mutable","name":"proposalsIds","nameLocation":"34373:12:98","nodeType":"VariableDeclaration","scope":68061,"src":"34356:29:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67788,"name":"uint256","nodeType":"ElementaryTypeName","src":"34356:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67789,"nodeType":"ArrayTypeName","src":"34356:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67791,"nodeType":"VariableDeclarationStatement","src":"34356:29:98"},{"body":{"id":68059,"nodeType":"Block","src":"34449:3250:98","statements":[{"assignments":[67804],"declarations":[{"constant":false,"id":67804,"mutability":"mutable","name":"proposalId","nameLocation":"34471:10:98","nodeType":"VariableDeclaration","scope":68059,"src":"34463:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67803,"name":"uint256","nodeType":"ElementaryTypeName","src":"34463:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67809,"initialValue":{"expression":{"baseExpression":{"id":67805,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34484:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67807,"indexExpression":{"id":67806,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34501:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34484:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"34504:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"34484:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"34463:51:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67810,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34587:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34600:6:98","memberName":"length","nodeType":"MemberAccess","src":"34587:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34610:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"34587:24:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67912,"nodeType":"Block","src":"34739:764:98","statements":[{"assignments":[67830],"declarations":[{"constant":false,"id":67830,"mutability":"mutable","name":"exist","nameLocation":"34762:5:98","nodeType":"VariableDeclaration","scope":67912,"src":"34757:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67829,"name":"bool","nodeType":"ElementaryTypeName","src":"34757:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67832,"initialValue":{"hexValue":"66616c7365","id":67831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34770:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"34757:18:98"},{"body":{"id":67860,"nodeType":"Block","src":"34843:268:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":67844,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34894:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67846,"indexExpression":{"id":67845,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34907:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"34894:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":67847,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34913:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34894:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67859,"nodeType":"IfStatement","src":"34890:203:98","trueBody":{"id":67858,"nodeType":"Block","src":"34925:168:98","statements":[{"expression":{"id":67851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67849,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"34951:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"34959:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"34951:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"ExpressionStatement","src":"34951:12:98"},{"errorCall":{"arguments":[{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67855,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"35034:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67853,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65724,"src":"34996:25:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":67856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34996:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67857,"nodeType":"RevertStatement","src":"34989:47:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34813:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67838,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34817:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34830:6:98","memberName":"length","nodeType":"MemberAccess","src":"34817:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34813:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67861,"initializationExpression":{"assignments":[67834],"declarations":[{"constant":false,"id":67834,"mutability":"mutable","name":"j","nameLocation":"34806:1:98","nodeType":"VariableDeclaration","scope":67861,"src":"34798:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67833,"name":"uint256","nodeType":"ElementaryTypeName","src":"34798:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"hexValue":"30","id":67835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34810:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34798:13:98"},"loopExpression":{"expression":{"id":67842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34838:3:98","subExpression":{"id":67841,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67834,"src":"34838:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67843,"nodeType":"ExpressionStatement","src":"34838:3:98"},"nodeType":"ForStatement","src":"34793:318:98"},{"condition":{"id":67863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"35132:6:98","subExpression":{"id":67862,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67830,"src":"35133:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67911,"nodeType":"IfStatement","src":"35128:361:98","trueBody":{"id":67910,"nodeType":"Block","src":"35140:349:98","statements":[{"assignments":[67868],"declarations":[{"constant":false,"id":67868,"mutability":"mutable","name":"temp","nameLocation":"35179:4:98","nodeType":"VariableDeclaration","scope":67910,"src":"35162:21:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":67866,"name":"uint256","nodeType":"ElementaryTypeName","src":"35162:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67867,"nodeType":"ArrayTypeName","src":"35162:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":67877,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67872,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35200:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35213:6:98","memberName":"length","nodeType":"MemberAccess","src":"35200:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":67874,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"35200:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"35186:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67869,"name":"uint256","nodeType":"ElementaryTypeName","src":"35190:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67870,"nodeType":"ArrayTypeName","src":"35190:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35186:38:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35162:62:98"},{"body":{"id":67897,"nodeType":"Block","src":"35296:74:98","statements":[{"expression":{"id":67895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67889,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35322:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67891,"indexExpression":{"id":67890,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35327:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35322:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":67892,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35332:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67894,"indexExpression":{"id":67893,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35345:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35332:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35322:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67896,"nodeType":"ExpressionStatement","src":"35322:25:98"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67882,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35266:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67883,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35270:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35283:6:98","memberName":"length","nodeType":"MemberAccess","src":"35270:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35266:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67898,"initializationExpression":{"assignments":[67879],"declarations":[{"constant":false,"id":67879,"mutability":"mutable","name":"j","nameLocation":"35259:1:98","nodeType":"VariableDeclaration","scope":67898,"src":"35251:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67878,"name":"uint256","nodeType":"ElementaryTypeName","src":"35251:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67881,"initialValue":{"hexValue":"30","id":67880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35263:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"35251:13:98"},"loopExpression":{"expression":{"id":67887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"35291:3:98","subExpression":{"id":67886,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67879,"src":"35291:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67888,"nodeType":"ExpressionStatement","src":"35291:3:98"},"nodeType":"ForStatement","src":"35246:124:98"},{"expression":{"id":67904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67899,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35391:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67902,"indexExpression":{"expression":{"id":67900,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35396:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35409:6:98","memberName":"length","nodeType":"MemberAccess","src":"35396:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"35391:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35419:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35391:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67905,"nodeType":"ExpressionStatement","src":"35391:38:98"},{"expression":{"id":67908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67906,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"35451:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67907,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67868,"src":"35466:4:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"35451:19:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67909,"nodeType":"ExpressionStatement","src":"35451:19:98"}]}}]},"id":67913,"nodeType":"IfStatement","src":"34583:920:98","trueBody":{"id":67828,"nodeType":"Block","src":"34613:120:98","statements":[{"expression":{"id":67820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67814,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34631:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":67818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34660:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":67817,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"34646:13:98","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint256[] memory)"},"typeName":{"baseType":{"id":67815,"name":"uint256","nodeType":"ElementaryTypeName","src":"34650:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67816,"nodeType":"ArrayTypeName","src":"34650:9:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":67819,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34646:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"34631:31:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67821,"nodeType":"ExpressionStatement","src":"34631:31:98"},{"expression":{"id":67826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":67822,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67790,"src":"34680:12:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":67824,"indexExpression":{"hexValue":"30","id":67823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34693:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"34680:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67825,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"34698:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34680:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67827,"nodeType":"ExpressionStatement","src":"34680:28:98"}]}},{"assignments":[67915],"declarations":[{"constant":false,"id":67915,"mutability":"mutable","name":"delta","nameLocation":"35523:5:98","nodeType":"VariableDeclaration","scope":68059,"src":"35516:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":67914,"name":"int256","nodeType":"ElementaryTypeName","src":"35516:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":67920,"initialValue":{"expression":{"baseExpression":{"id":67916,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"35531:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67918,"indexExpression":{"id":67917,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"35548:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35531:19:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35551:12:98","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":65610,"src":"35531:32:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"35516:47:98"},{"assignments":[67923],"declarations":[{"constant":false,"id":67923,"mutability":"mutable","name":"proposal","nameLocation":"35595:8:98","nodeType":"VariableDeclaration","scope":68059,"src":"35578:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67922,"nodeType":"UserDefinedTypeName","pathNode":{"id":67921,"name":"Proposal","nameLocations":["35578:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"35578:8:98"},"referencedDeclaration":65606,"src":"35578:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67927,"initialValue":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"35606:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"35616:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35606:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"35578:49:98"},{"assignments":[67929],"declarations":[{"constant":false,"id":67929,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"35737:20:98","nodeType":"VariableDeclaration","scope":68059,"src":"35729:28:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67928,"name":"uint256","nodeType":"ElementaryTypeName","src":"35729:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67934,"initialValue":{"baseExpression":{"expression":{"id":67930,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"35760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35769:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"35760:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67933,"indexExpression":{"id":67932,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"35787:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35760:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35729:66:98"},{"assignments":[67936],"declarations":[{"constant":false,"id":67936,"mutability":"mutable","name":"stakedPoints","nameLocation":"35968:12:98","nodeType":"VariableDeclaration","scope":68059,"src":"35960:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67935,"name":"uint256","nodeType":"ElementaryTypeName","src":"35960:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67941,"initialValue":{"arguments":[{"id":67938,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"35995:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67939,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67915,"src":"36017:5:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67937,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68097,"src":"35983:11:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35983:40:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"35960:63:98"},{"expression":{"id":67948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":67942,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36158:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36167:17:98","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":65595,"src":"36158:26:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":67946,"indexExpression":{"id":67944,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36185:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"36158:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67947,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"36196:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36158:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67949,"nodeType":"ExpressionStatement","src":"36158:50:98"},{"assignments":[67951],"declarations":[{"constant":false,"id":67951,"mutability":"mutable","name":"hasProposal","nameLocation":"36447:11:98","nodeType":"VariableDeclaration","scope":68059,"src":"36442:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67950,"name":"bool","nodeType":"ElementaryTypeName","src":"36442:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67953,"initialValue":{"hexValue":"66616c7365","id":67952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36461:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"36442:24:98"},{"body":{"id":67982,"nodeType":"Block","src":"36547:179:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":67967,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36569:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67969,"indexExpression":{"id":67968,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36590:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67971,"indexExpression":{"id":67970,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36599:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36569:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67972,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36605:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67973,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36614:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36605:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36569:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67981,"nodeType":"IfStatement","src":"36565:147:98","trueBody":{"id":67980,"nodeType":"Block","src":"36626:86:98","statements":[{"expression":{"id":67977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67975,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36648:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":67976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"36662:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"36648:18:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67978,"nodeType":"ExpressionStatement","src":"36648:18:98"},{"id":67979,"nodeType":"Break","src":"36688:5:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67958,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36500:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67959,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36504:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67961,"indexExpression":{"id":67960,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36525:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36504:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36534:6:98","memberName":"length","nodeType":"MemberAccess","src":"36504:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36500:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67983,"initializationExpression":{"assignments":[67955],"declarations":[{"constant":false,"id":67955,"mutability":"mutable","name":"k","nameLocation":"36493:1:98","nodeType":"VariableDeclaration","scope":67983,"src":"36485:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67954,"name":"uint256","nodeType":"ElementaryTypeName","src":"36485:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67957,"initialValue":{"hexValue":"30","id":67956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36497:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36485:13:98"},"loopExpression":{"expression":{"id":67965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36542:3:98","subExpression":{"id":67964,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67955,"src":"36542:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67966,"nodeType":"ExpressionStatement","src":"36542:3:98"},"nodeType":"ForStatement","src":"36480:246:98"},{"condition":{"id":67985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36743:12:98","subExpression":{"id":67984,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67951,"src":"36744:11:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67995,"nodeType":"IfStatement","src":"36739:106:98","trueBody":{"id":67994,"nodeType":"Block","src":"36757:88:98","statements":[{"expression":{"arguments":[{"expression":{"id":67990,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"36810:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67991,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36819:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"36810:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":67986,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65958,"src":"36775:20:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":67988,"indexExpression":{"id":67987,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"36796:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36775:29:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36805:4:98","memberName":"push","nodeType":"MemberAccess","src":"36775:34:98","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_uint256_$dyn_storage_ptr_$_t_uint256_$returns$__$attached_to$_t_array$_t_uint256_$dyn_storage_ptr_$","typeString":"function (uint256[] storage pointer,uint256)"}},"id":67992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36775:55:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67993,"nodeType":"ExpressionStatement","src":"36775:55:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67996,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37000:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":67997,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37024:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37000:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68028,"nodeType":"Block","src":"37205:161:98","statements":[{"expression":{"id":68018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68014,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37223:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68015,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37238:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68016,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37261:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37238:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37223:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68019,"nodeType":"ExpressionStatement","src":"37223:50:98"},{"expression":{"id":68026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68020,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37291:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37300:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37291:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68023,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37316:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68024,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37339:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37316:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37291:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68027,"nodeType":"ExpressionStatement","src":"37291:60:98"}]},"id":68029,"nodeType":"IfStatement","src":"36996:370:98","trueBody":{"id":68013,"nodeType":"Block","src":"37038:161:98","statements":[{"expression":{"id":68003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67999,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65922,"src":"37056:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68000,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37071:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68001,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37086:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37071:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37056:50:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68004,"nodeType":"ExpressionStatement","src":"37056:50:98"},{"expression":{"id":68011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37124:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37133:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37124:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68008,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37149:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68009,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37164:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37149:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37124:60:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68012,"nodeType":"ExpressionStatement","src":"37124:60:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68030,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37383:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37392:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37383:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37405:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37383:23:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68057,"nodeType":"Block","src":"37480:209:98","statements":[{"expression":{"arguments":[{"id":68043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37525:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68044,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67929,"src":"37535:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68042,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"37498:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37498:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"37498:58:98"},{"eventCall":{"arguments":[{"id":68048,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67779,"src":"37592:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68049,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67804,"src":"37601:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68050,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67936,"src":"37613:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37627:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37636:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"37627:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68053,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37650:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68054,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"37659:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"37650:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68047,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65825,"src":"37579:12:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256,uint256,uint256)"}},"id":68055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37579:95:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68056,"nodeType":"EmitStatement","src":"37574:100:98"}]},"id":68058,"nodeType":"IfStatement","src":"37379:310:98","trueBody":{"id":68041,"nodeType":"Block","src":"37408:66:98","statements":[{"expression":{"id":68039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68034,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67923,"src":"37426:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"37435:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"37426:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68037,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"37447:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37453:6:98","memberName":"number","nodeType":"MemberAccess","src":"37447:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37426:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68040,"nodeType":"ExpressionStatement","src":"37426:33:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67796,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34415:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67797,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67783,"src":"34419:16:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34436:6:98","memberName":"length","nodeType":"MemberAccess","src":"34419:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"34415:27:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68060,"initializationExpression":{"assignments":[67793],"declarations":[{"constant":false,"id":67793,"mutability":"mutable","name":"i","nameLocation":"34408:1:98","nodeType":"VariableDeclaration","scope":68060,"src":"34400:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67792,"name":"uint256","nodeType":"ElementaryTypeName","src":"34400:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67795,"initialValue":{"hexValue":"30","id":67794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34412:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"34400:13:98"},"loopExpression":{"expression":{"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"34444:3:98","subExpression":{"id":67800,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67793,"src":"34444:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67802,"nodeType":"ExpressionStatement","src":"34444:3:98"},"nodeType":"ForStatement","src":"34395:3304:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"34257:11:98","parameters":{"id":67784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67779,"mutability":"mutable","name":"_sender","nameLocation":"34277:7:98","nodeType":"VariableDeclaration","scope":68062,"src":"34269:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67778,"name":"address","nodeType":"ElementaryTypeName","src":"34269:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67783,"mutability":"mutable","name":"_proposalSupport","nameLocation":"34311:16:98","nodeType":"VariableDeclaration","scope":68062,"src":"34286:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67781,"nodeType":"UserDefinedTypeName","pathNode":{"id":67780,"name":"ProposalSupport","nameLocations":["34286:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"34286:15:98"},"referencedDeclaration":65611,"src":"34286:15:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":67782,"nodeType":"ArrayTypeName","src":"34286:17:98","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"34268:60:98"},"returnParameters":{"id":67785,"nodeType":"ParameterList","parameters":[],"src":"34346:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68097,"nodeType":"FunctionDefinition","src":"37711:284:98","nodes":[],"body":{"id":68096,"nodeType":"Block","src":"37805:190:98","nodes":[],"statements":[{"assignments":[68072],"declarations":[{"constant":false,"id":68072,"mutability":"mutable","name":"result","nameLocation":"37822:6:98","nodeType":"VariableDeclaration","scope":68096,"src":"37815:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68071,"name":"int256","nodeType":"ElementaryTypeName","src":"37815:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68079,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68075,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37838:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37831:6:98","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68073,"name":"int256","nodeType":"ElementaryTypeName","src":"37831:6:98","typeDescriptions":{}}},"id":68076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37831:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68077,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37850:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"37831:25:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"37815:41:98"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68080,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37871:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37880:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"37871:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68090,"nodeType":"IfStatement","src":"37867:90:98","trueBody":{"id":68089,"nodeType":"Block","src":"37883:74:98","statements":[{"errorCall":{"arguments":[{"id":68084,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68064,"src":"37921:8:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68085,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68066,"src":"37931:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":68086,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37939:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68083,"name":"SupportUnderflow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65696,"src":"37904:16:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_int256_$_t_int256_$returns$__$","typeString":"function (uint256,int256,int256) pure"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37904:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"RevertStatement","src":"37897:49:98"}]}},{"expression":{"arguments":[{"id":68093,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68072,"src":"37981:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37973:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68091,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:98","typeDescriptions":{}}},"id":68094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37973:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68070,"id":68095,"nodeType":"Return","src":"37966:22:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"37720:11:98","parameters":{"id":68067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68064,"mutability":"mutable","name":"_support","nameLocation":"37740:8:98","nodeType":"VariableDeclaration","scope":68097,"src":"37732:16:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68063,"name":"uint256","nodeType":"ElementaryTypeName","src":"37732:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68066,"mutability":"mutable","name":"_delta","nameLocation":"37757:6:98","nodeType":"VariableDeclaration","scope":68097,"src":"37750:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68065,"name":"int256","nodeType":"ElementaryTypeName","src":"37750:6:98","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"37731:33:98"},"returnParameters":{"id":68070,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68069,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68097,"src":"37796:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68068,"name":"uint256","nodeType":"ElementaryTypeName","src":"37796:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"37795:9:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68155,"nodeType":"FunctionDefinition","src":"38412:644:98","nodes":[],"body":{"id":68154,"nodeType":"Block","src":"38575:481:98","nodes":[],"statements":[{"assignments":[68110],"declarations":[{"constant":false,"id":68110,"mutability":"mutable","name":"t","nameLocation":"38593:1:98","nodeType":"VariableDeclaration","scope":68154,"src":"38585:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68109,"name":"uint256","nodeType":"ElementaryTypeName","src":"38585:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68112,"initialValue":{"id":68111,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68100,"src":"38597:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38585:23:98"},{"assignments":[68114],"declarations":[{"constant":false,"id":68114,"mutability":"mutable","name":"atTWO_128","nameLocation":"38860:9:98","nodeType":"VariableDeclaration","scope":68154,"src":"38852:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68113,"name":"uint256","nodeType":"ElementaryTypeName","src":"38852:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68116,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"38878:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38887:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"38878:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38896:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38878:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68120,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38877:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68121,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38903:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38877:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68123,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68110,"src":"38906:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68115,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68348,"src":"38872:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38872:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"38852:56:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68126,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38928:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68127,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68102,"src":"38940:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38928:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68129,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38927:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68130,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68104,"src":"38955:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68131,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38968:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68133,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"38973:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68134,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68114,"src":"38983:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38973:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68136,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38972:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38955:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68138,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38954:40:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68139,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"38998:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68140,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"39002:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39011:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"39002:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38998:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68143,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38997:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38954:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68145,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38953:65:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38927:91:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38926:93:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68148,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"39022:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38926:103:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"38925:105:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39046:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"38925:124:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68108,"id":68153,"nodeType":"Return","src":"38918:131:98"}]},"documentation":{"id":68098,"nodeType":"StructuredDocumentation","src":"38001:406:98","text":" @dev Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a)\n Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\n @param _timePassed Number of blocks since last conviction record\n @param _lastConv Last conviction record\n @param _oldAmount Amount of tokens staked until now\n @return Current conviction"},"functionSelector":"346db8cb","implemented":true,"kind":"function","modifiers":[],"name":"calculateConviction","nameLocation":"38421:19:98","parameters":{"id":68105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68100,"mutability":"mutable","name":"_timePassed","nameLocation":"38449:11:98","nodeType":"VariableDeclaration","scope":68155,"src":"38441:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68099,"name":"uint256","nodeType":"ElementaryTypeName","src":"38441:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68102,"mutability":"mutable","name":"_lastConv","nameLocation":"38470:9:98","nodeType":"VariableDeclaration","scope":68155,"src":"38462:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68101,"name":"uint256","nodeType":"ElementaryTypeName","src":"38462:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68104,"mutability":"mutable","name":"_oldAmount","nameLocation":"38489:10:98","nodeType":"VariableDeclaration","scope":68155,"src":"38481:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68103,"name":"uint256","nodeType":"ElementaryTypeName","src":"38481:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38440:60:98"},"returnParameters":{"id":68108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68155,"src":"38562:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68106,"name":"uint256","nodeType":"ElementaryTypeName","src":"38562:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"38561:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68248,"nodeType":"FunctionDefinition","src":"39637:1549:98","nodes":[],"body":{"id":68247,"nodeType":"Block","src":"39740:1446:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68163,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"39874:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39888:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"39874:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68170,"nodeType":"IfStatement","src":"39870:66:98","trueBody":{"id":68169,"nodeType":"Block","src":"39891:45:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68166,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65674,"src":"39912:11:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39912:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68168,"nodeType":"RevertStatement","src":"39905:20:98"}]}},{"condition":{"arguments":[{"id":68172,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40392:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68171,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67680,"src":"40376:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40376:33:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68178,"nodeType":"IfStatement","src":"40372:91:98","trueBody":{"id":68177,"nodeType":"Block","src":"40411:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68174,"name":"AmountOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65682,"src":"40432:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40432:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68176,"nodeType":"RevertStatement","src":"40425:27:98"}]}},{"assignments":[68180],"declarations":[{"constant":false,"id":68180,"mutability":"mutable","name":"denom","nameLocation":"40619:5:98","nodeType":"VariableDeclaration","scope":68247,"src":"40611:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"40611:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68199,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68181,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40628:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68182,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40637:8:98","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":65630,"src":"40628:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68185,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40648:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40653:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40648:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40628:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68187,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40627:29:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68188,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40659:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68190,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68158,"src":"40664:16:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40683:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68192,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40688:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40683:7:98","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"40664:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68195,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40663:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68196,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64881,"src":"40694:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40663:41:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40627:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"40611:93:98"},{"expression":{"id":68234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68200,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"40714:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68201,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40755:6:98","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":65632,"src":"40746:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40765:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"40746:22:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68205,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40745:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68206,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40772:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40745:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68208,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68209,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40779:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68210,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"40787:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40779:13:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68212,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40778:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68213,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40797:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40778:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68215,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40777:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40744:56:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68217,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40743:58:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68218,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40804:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40743:62:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68220,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40742:64:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68221,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"40810:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68222,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"40814:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40823:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"40814:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40810:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68225,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40809:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40742:87:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40741:89:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68228,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68356,"src":"40849:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68229,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40849:28:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40741:136:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68231,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"40727:160:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40891:2:98","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"40727:166:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40714:179:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68235,"nodeType":"ExpressionStatement","src":"40714:179:98"},{"expression":{"id":68245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68236,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41083:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68237,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41096:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68238,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41109:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41118:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41109:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41096:40:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":68242,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"41152:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41161:18:98","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":65636,"src":"41152:27:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"41096:83:98","trueExpression":{"id":68241,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68161,"src":"41139:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41083:96:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68246,"nodeType":"ExpressionStatement","src":"41083:96:98"}]},"documentation":{"id":68156,"nodeType":"StructuredDocumentation","src":"39062:570:98","text":" @dev Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2\n For the Solidity implementation we amplify ρ and β and simplify the formula:\n weight = ρ * D\n maxRatio = β * D\n decay = a * D\n threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\n @param _requestedAmount Requested amount of tokens on certain proposal\n @return _threshold Threshold a proposal's conviction should surpass in order to be able to\n executed it."},"functionSelector":"59a5db8b","implemented":true,"kind":"function","modifiers":[],"name":"calculateThreshold","nameLocation":"39646:18:98","parameters":{"id":68159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68158,"mutability":"mutable","name":"_requestedAmount","nameLocation":"39673:16:98","nodeType":"VariableDeclaration","scope":68248,"src":"39665:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68157,"name":"uint256","nodeType":"ElementaryTypeName","src":"39665:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39664:26:98"},"returnParameters":{"id":68162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68161,"mutability":"mutable","name":"_threshold","nameLocation":"39728:10:98","nodeType":"VariableDeclaration","scope":68248,"src":"39720:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68160,"name":"uint256","nodeType":"ElementaryTypeName","src":"39720:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"39719:20:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68283,"nodeType":"FunctionDefinition","src":"41447:277:98","nodes":[],"body":{"id":68282,"nodeType":"Block","src":"41533:191:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68259,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41551:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68260,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41557:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41551:13:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":68262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41566:42:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""},"value":"_a should be less than or equal to 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_44e2d05298e19dba9341288d7967f4ffbb5a083f725e2470963d4d2d80484153","typeString":"literal_string \"_a should be less than or equal to 2^128\""}],"id":68258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41543:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41543:66:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68264,"nodeType":"ExpressionStatement","src":"41543:66:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68266,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41627:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68267,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"41632:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41627:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":68269,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"41641:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""},"value":"_b should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_94029ed39d36fd1673853e0d61636cb1f54d05801d9baceb39b21e0f4420d664","typeString":"literal_string \"_b should be less than 2^128\""}],"id":68265,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"41619:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41619:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68271,"nodeType":"ExpressionStatement","src":"41619:53:98"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68272,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68251,"src":"41691:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68273,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68253,"src":"41696:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41691:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68275,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41690:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68276,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65896,"src":"41702:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41690:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68278,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"41689:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41714:3:98","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"41689:28:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68257,"id":68281,"nodeType":"Return","src":"41682:35:98"}]},"documentation":{"id":68249,"nodeType":"StructuredDocumentation","src":"41192:250:98","text":" Multiply _a by _b / 2^128. Parameter _a should be less than or equal to\n 2^128 and parameter _b should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result _a * _b / 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"41456:4:98","parameters":{"id":68254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68251,"mutability":"mutable","name":"_a","nameLocation":"41469:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41461:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68250,"name":"uint256","nodeType":"ElementaryTypeName","src":"41461:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68253,"mutability":"mutable","name":"_b","nameLocation":"41481:2:98","nodeType":"VariableDeclaration","scope":68283,"src":"41473:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68252,"name":"uint256","nodeType":"ElementaryTypeName","src":"41473:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41460:24:98"},"returnParameters":{"id":68257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_result","nameLocation":"41524:7:98","nodeType":"VariableDeclaration","scope":68283,"src":"41516:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"41516:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41515:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68348,"nodeType":"FunctionDefinition","src":"41952:455:98","nodes":[],"body":{"id":68347,"nodeType":"Block","src":"42038:369:98","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68294,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42056:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":68295,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42061:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42056:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":68297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"42070:30:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""},"value":"_a should be less than 2^128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8cb59667c527f8a0ca0170161b6ece5e9864e8aa2d080a486f0167056517515f","typeString":"literal_string \"_a should be less than 2^128\""}],"id":68293,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"42048:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":68298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42048:53:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68299,"nodeType":"ExpressionStatement","src":"42048:53:98"},{"assignments":[68301],"declarations":[{"constant":false,"id":68301,"mutability":"mutable","name":"a","nameLocation":"42119:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42111:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68300,"name":"uint256","nodeType":"ElementaryTypeName","src":"42111:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68303,"initialValue":{"id":68302,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"42123:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42111:14:98"},{"assignments":[68305],"declarations":[{"constant":false,"id":68305,"mutability":"mutable","name":"b","nameLocation":"42143:1:98","nodeType":"VariableDeclaration","scope":68347,"src":"42135:9:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68304,"name":"uint256","nodeType":"ElementaryTypeName","src":"42135:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68307,"initialValue":{"id":68306,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68288,"src":"42147:2:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42135:14:98"},{"expression":{"id":68310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68308,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42159:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68309,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65893,"src":"42169:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42159:17:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68311,"nodeType":"ExpressionStatement","src":"42159:17:98"},{"body":{"id":68345,"nodeType":"Block","src":"42200:201:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68315,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42218:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42222:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42218:5:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42227:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42218:10:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68343,"nodeType":"Block","src":"42308:83:98","statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68332,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42326:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68334,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68291,"src":"42341:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68335,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42350:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68333,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42336:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42336:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42326:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68338,"nodeType":"ExpressionStatement","src":"42326:26:98"},{"expression":{"id":68341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68339,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42370:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":68340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42375:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42370:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68342,"nodeType":"ExpressionStatement","src":"42370:6:98"}]},"id":68344,"nodeType":"IfStatement","src":"42214:177:98","trueBody":{"id":68331,"nodeType":"Block","src":"42230:72:98","statements":[{"expression":{"id":68325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68320,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42248:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68322,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42257:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68323,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68301,"src":"42260:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68321,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68283,"src":"42252:4:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42252:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42248:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68326,"nodeType":"ExpressionStatement","src":"42248:14:98"},{"expression":{"id":68329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68327,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42280:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":68328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42286:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"42280:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68330,"nodeType":"ExpressionStatement","src":"42280:7:98"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68312,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68305,"src":"42193:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42197:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42193:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68346,"nodeType":"WhileStatement","src":"42186:215:98"}]},"documentation":{"id":68284,"nodeType":"StructuredDocumentation","src":"41736:211:98","text":" Calculate (_a / 2^128)^_b * 2^128. Parameter _a should be less than 2^128.\n @param _a left argument\n @param _b right argument\n @return _result (_a / 2^128)^_b * 2^128"},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"41961:4:98","parameters":{"id":68289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68286,"mutability":"mutable","name":"_a","nameLocation":"41974:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41966:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68285,"name":"uint256","nodeType":"ElementaryTypeName","src":"41966:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68288,"mutability":"mutable","name":"_b","nameLocation":"41986:2:98","nodeType":"VariableDeclaration","scope":68348,"src":"41978:10:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68287,"name":"uint256","nodeType":"ElementaryTypeName","src":"41978:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41965:24:98"},"returnParameters":{"id":68292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68291,"mutability":"mutable","name":"_result","nameLocation":"42029:7:98","nodeType":"VariableDeclaration","scope":68348,"src":"42021:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68290,"name":"uint256","nodeType":"ElementaryTypeName","src":"42021:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42020:17:98"},"scope":69194,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68356,"nodeType":"FunctionDefinition","src":"42413:120:98","nodes":[],"body":{"id":68355,"nodeType":"Block","src":"42489:44:98","nodes":[],"statements":[{"expression":{"id":68353,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65924,"src":"42506:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68352,"id":68354,"nodeType":"Return","src":"42499:27:98"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"42422:26:98","parameters":{"id":68349,"nodeType":"ParameterList","parameters":[],"src":"42448:2:98"},"returnParameters":{"id":68352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68351,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68356,"src":"42480:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68350,"name":"uint256","nodeType":"ElementaryTypeName","src":"42480:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42479:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68397,"nodeType":"FunctionDefinition","src":"42723:389:98","nodes":[],"body":{"id":68396,"nodeType":"Block","src":"42824:288:98","nodes":[],"statements":[{"assignments":[68366,68368],"declarations":[{"constant":false,"id":68366,"mutability":"mutable","name":"conviction","nameLocation":"42843:10:98","nodeType":"VariableDeclaration","scope":68396,"src":"42835:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68365,"name":"uint256","nodeType":"ElementaryTypeName","src":"42835:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68368,"mutability":"mutable","name":"blockNumber","nameLocation":"42863:11:98","nodeType":"VariableDeclaration","scope":68396,"src":"42855:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68367,"name":"uint256","nodeType":"ElementaryTypeName","src":"42855:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68373,"initialValue":{"arguments":[{"id":68370,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"42912:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68371,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68362,"src":"42923:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68369,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68444,"src":"42878:33:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":68372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42878:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"42834:100:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68374,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"42948:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42962:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42948:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68377,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"42967:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68378,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42982:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"42967:16:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"42948:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"42944:72:98","trueBody":{"id":68382,"nodeType":"Block","src":"42985:31:98","statements":[{"functionReturnParameters":68364,"id":68381,"nodeType":"Return","src":"42999:7:98"}]}},{"expression":{"id":68388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68384,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43025:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43035:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43025:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68387,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68368,"src":"43047:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43025:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68389,"nodeType":"ExpressionStatement","src":"43025:33:98"},{"expression":{"id":68394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68390,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"43068:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"43078:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43068:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68393,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68366,"src":"43095:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43068:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68395,"nodeType":"ExpressionStatement","src":"43068:37:98"}]},"documentation":{"id":68357,"nodeType":"StructuredDocumentation","src":"42539:179:98","text":" @dev Calculate conviction and store it on the proposal\n @param _proposal Proposal\n @param _oldStaked Amount of tokens staked on a proposal until now"},"implemented":true,"kind":"function","modifiers":[],"name":"_calculateAndSetConviction","nameLocation":"42732:26:98","parameters":{"id":68363,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68360,"mutability":"mutable","name":"_proposal","nameLocation":"42776:9:98","nodeType":"VariableDeclaration","scope":68397,"src":"42759:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68359,"nodeType":"UserDefinedTypeName","pathNode":{"id":68358,"name":"Proposal","nameLocations":["42759:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"42759:8:98"},"referencedDeclaration":65606,"src":"42759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68362,"mutability":"mutable","name":"_oldStaked","nameLocation":"42795:10:98","nodeType":"VariableDeclaration","scope":68397,"src":"42787:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68361,"name":"uint256","nodeType":"ElementaryTypeName","src":"42787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42758:48:98"},"returnParameters":{"id":68364,"nodeType":"ParameterList","parameters":[],"src":"42824:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68444,"nodeType":"FunctionDefinition","src":"43118:830:98","nodes":[],"body":{"id":68443,"nodeType":"Block","src":"43317:631:98","nodes":[],"statements":[{"expression":{"id":68412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68409,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43327:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68410,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"43341:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43347:6:98","memberName":"number","nodeType":"MemberAccess","src":"43341:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43327:26:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68413,"nodeType":"ExpressionStatement","src":"43327:26:98"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68415,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43370:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68416,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43380:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43370:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68417,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43393:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43370:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68414,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"43363:6:98","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":68419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43363:42:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68420,"nodeType":"ExpressionStatement","src":"43363:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68421,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43419:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43429:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43419:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68423,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43442:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43419:34:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68430,"nodeType":"IfStatement","src":"43415:173:98","trueBody":{"id":68429,"nodeType":"Block","src":"43455:133:98","statements":[{"expression":{"components":[{"hexValue":"30","id":68425,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43543:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":68426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43546:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":68427,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"43542:6:98","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":68408,"id":68428,"nodeType":"Return","src":"43535:13:98"}]}},{"expression":{"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68431,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68405,"src":"43641:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68433,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68407,"src":"43797:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68434,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43811:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68435,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43821:9:98","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":65588,"src":"43811:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43797:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68437,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68400,"src":"43883:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68438,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"43893:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"43883:24:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68439,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68402,"src":"43921:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68432,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68155,"src":"43654:19:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43654:287:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"43641:300:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68442,"nodeType":"ExpressionStatement","src":"43641:300:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"43127:33:98","parameters":{"id":68403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68400,"mutability":"mutable","name":"_proposal","nameLocation":"43178:9:98","nodeType":"VariableDeclaration","scope":68444,"src":"43161:26:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68399,"nodeType":"UserDefinedTypeName","pathNode":{"id":68398,"name":"Proposal","nameLocations":["43161:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"43161:8:98"},"referencedDeclaration":65606,"src":"43161:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":68402,"mutability":"mutable","name":"_oldStaked","nameLocation":"43197:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43189:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68401,"name":"uint256","nodeType":"ElementaryTypeName","src":"43189:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43160:48:98"},"returnParameters":{"id":68408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68405,"mutability":"mutable","name":"conviction","nameLocation":"43280:10:98","nodeType":"VariableDeclaration","scope":68444,"src":"43272:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68404,"name":"uint256","nodeType":"ElementaryTypeName","src":"43272:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68407,"mutability":"mutable","name":"blockNumber","nameLocation":"43300:11:98","nodeType":"VariableDeclaration","scope":68444,"src":"43292:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68406,"name":"uint256","nodeType":"ElementaryTypeName","src":"43292:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43271:41:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68596,"nodeType":"FunctionDefinition","src":"43954:2357:98","nodes":[],"body":{"id":68595,"nodeType":"Block","src":"44065:2246:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68453,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44092:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68454,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44110:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44092:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44134:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68456,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44126:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68455,"name":"address","nodeType":"ElementaryTypeName","src":"44126:7:98","typeDescriptions":{}}},"id":68458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44126:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44092:44:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68462,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44148:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44166:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44148:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44140:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68460,"name":"address","nodeType":"ElementaryTypeName","src":"44140:7:98","typeDescriptions":{}}},"id":68464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44140:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44189:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"44181:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68465,"name":"address","nodeType":"ElementaryTypeName","src":"44181:7:98","typeDescriptions":{}}},"id":68468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44181:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44140:51:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:99:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44233:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68472,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44251:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44233:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68473,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44267:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68475,"indexExpression":{"id":68474,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44285:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44267:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68476,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44317:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"44267:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"44233:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"id":68484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68478,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44357:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44375:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44357:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68480,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44389:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68482,"indexExpression":{"id":68481,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44407:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44389:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44439:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"44389:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"src":"44357:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:216:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68486,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44477:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44495:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44477:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68488,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44552:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68490,"indexExpression":{"id":68489,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44570:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44552:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68491,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44602:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"44552:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44477:150:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:394:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68494,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44655:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68495,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44673:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44655:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68496,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44731:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68498,"indexExpression":{"id":68497,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44749:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44731:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44781:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"44731:76:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44655:152:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:574:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68502,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44835:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68503,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44853:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44835:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68504,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"44870:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68506,"indexExpression":{"id":68505,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"44888:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"44870:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44920:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"44870:63:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44835:98:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:700:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68510,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"44961:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44979:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"44961:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":68512,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45031:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68514,"indexExpression":{"id":68513,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45049:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45031:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45081:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"45031:70:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44961:140:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44233:868:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":68518,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44211:908:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"44092:1027:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68586,"nodeType":"IfStatement","src":"44075:2158:98","trueBody":{"id":68585,"nodeType":"Block","src":"45130:1103:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68520,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45165:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68522,"indexExpression":{"id":68521,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45183:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45165:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45215:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45165:62:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68524,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45231:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45249:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45231:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"45165:96:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},"id":68533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68527,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45285:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68529,"indexExpression":{"id":68528,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45303:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"45285:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68530,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45335:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45285:60:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68531,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45349:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45367:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45349:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"src":"45285:92:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"45165:212:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68559,"nodeType":"IfStatement","src":"45144:522:98","trueBody":{"id":68558,"nodeType":"Block","src":"45392:274:98","statements":[{"expression":{"arguments":[{"expression":{"id":68540,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45452:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45470:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45452:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":68535,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45410:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45428:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45410:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"id":68539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45439:12:98","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":75717,"src":"45410:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45410:73:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68543,"nodeType":"ExpressionStatement","src":"45410:73:98"},{"eventCall":{"arguments":[{"arguments":[{"id":68547,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"45557:4:98","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69194","typeString":"contract CVStrategyV0_0"}],"id":68546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45549:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68545,"name":"address","nodeType":"ElementaryTypeName","src":"45549:7:98","typeDescriptions":{}}},"id":68548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45549:13:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":68551,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45572:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45590:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45572:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"45564:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68549,"name":"address","nodeType":"ElementaryTypeName","src":"45564:7:98","typeDescriptions":{}}},"id":68553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45564:37:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68554,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45603:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45621:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45603:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68544,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65863,"src":"45506:21:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":68556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45506:145:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68557,"nodeType":"EmitStatement","src":"45501:150:98"}]}},{"expression":{"id":68561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"45680:32:98","subExpression":{"id":68560,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45680:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68562,"nodeType":"ExpressionStatement","src":"45680:32:98"},{"expression":{"id":68567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68563,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"45726:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68565,"indexExpression":{"id":68564,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45744:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"45726:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68566,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45778:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"45726:69:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":68568,"nodeType":"ExpressionStatement","src":"45726:69:98"},{"eventCall":{"arguments":[{"id":68570,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"45856:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68571,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45904:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45922:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"45904:28:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"expression":{"id":68573,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45950:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"45968:12:98","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":65619,"src":"45950:30:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"45998:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46016:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"45998:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68577,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46059:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68578,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46077:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"46059:44:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68579,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46121:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46139:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"46121:31:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68581,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68447,"src":"46170:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46188:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"46170:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68569,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65884,"src":"45815:23:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$75718_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45815:407:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68584,"nodeType":"EmitStatement","src":"45810:412:98"}]}},{"expression":{"id":68589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68587,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"46243:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68588,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46254:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},"src":"46243:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68590,"nodeType":"ExpressionStatement","src":"46243:20:98"},{"eventCall":{"arguments":[{"id":68592,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68450,"src":"46294:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68591,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65830,"src":"46278:15:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":68593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46278:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68594,"nodeType":"EmitStatement","src":"46273:31:98"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"43963:14:98","parameters":{"id":68451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68447,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"44002:17:98","nodeType":"VariableDeclaration","scope":68596,"src":"43978:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68446,"nodeType":"UserDefinedTypeName","pathNode":{"id":68445,"name":"ArbitrableConfig","nameLocations":["43978:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"43978:16:98"},"referencedDeclaration":65628,"src":"43978:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68450,"mutability":"mutable","name":"_cvParams","nameLocation":"44037:9:98","nodeType":"VariableDeclaration","scope":68596,"src":"44021:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68449,"nodeType":"UserDefinedTypeName","pathNode":{"id":68448,"name":"CVParams","nameLocations":["44021:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"44021:8:98"},"referencedDeclaration":65637,"src":"44021:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"43977:70:98"},"returnParameters":{"id":68452,"nodeType":"ParameterList","parameters":[],"src":"44065:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68630,"nodeType":"FunctionDefinition","src":"46317:609:98","nodes":[],"body":{"id":68629,"nodeType":"Block","src":"46404:522:98","nodes":[],"statements":[{"assignments":[68605],"declarations":[{"constant":false,"id":68605,"mutability":"mutable","name":"proposal","nameLocation":"46431:8:98","nodeType":"VariableDeclaration","scope":68629,"src":"46414:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68604,"nodeType":"UserDefinedTypeName","pathNode":{"id":68603,"name":"Proposal","nameLocations":["46414:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"46414:8:98"},"referencedDeclaration":65606,"src":"46414:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68609,"initialValue":{"baseExpression":{"id":68606,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"46442:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68608,"indexExpression":{"id":68607,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46452:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"46442:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"46414:49:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68610,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46478:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46487:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"46478:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68612,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46501:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46478:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68619,"nodeType":"IfStatement","src":"46474:100:98","trueBody":{"id":68618,"nodeType":"Block","src":"46513:61:98","statements":[{"errorCall":{"arguments":[{"id":68615,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68598,"src":"46552:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68614,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"46534:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46534:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68617,"nodeType":"RevertStatement","src":"46527:36:98"}]}},{"expression":{"arguments":[{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46847:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":68622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46857:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46866:12:98","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":65578,"src":"46857:21:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68620,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68397,"src":"46820:26:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$65606_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46820:59:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68625,"nodeType":"ExpressionStatement","src":"46820:59:98"},{"expression":{"expression":{"id":68626,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68605,"src":"46896:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46905:14:98","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":65580,"src":"46896:23:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68602,"id":68628,"nodeType":"Return","src":"46889:30:98"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"46326:24:98","parameters":{"id":68599,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68598,"mutability":"mutable","name":"proposalId","nameLocation":"46359:10:98","nodeType":"VariableDeclaration","scope":68630,"src":"46351:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68597,"name":"uint256","nodeType":"ElementaryTypeName","src":"46351:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46350:20:98"},"returnParameters":{"id":68602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68630,"src":"46395:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68600,"name":"uint256","nodeType":"ElementaryTypeName","src":"46395:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46394:9:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":68650,"nodeType":"FunctionDefinition","src":"46932:141:98","nodes":[],"body":{"id":68649,"nodeType":"Block","src":"47012:61:98","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68632,"src":"47031:6:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68638,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47040:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47031:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68640,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47030:12:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68641,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65890,"src":"47046:1:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68642,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65927,"src":"47050:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage","typeString":"struct CVParams storage ref"}},"id":68643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47059:5:98","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":65634,"src":"47050:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47046:18:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68645,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47045:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47030:35:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47029:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68636,"id":68648,"nodeType":"Return","src":"47022:44:98"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"46941:16:98","parameters":{"id":68633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68632,"mutability":"mutable","name":"amount","nameLocation":"46966:6:98","nodeType":"VariableDeclaration","scope":68650,"src":"46958:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68631,"name":"uint256","nodeType":"ElementaryTypeName","src":"46958:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46957:16:98"},"returnParameters":{"id":68636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68635,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68650,"src":"47003:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68634,"name":"uint256","nodeType":"ElementaryTypeName","src":"47003:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47002:9:98"},"scope":69194,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68669,"nodeType":"FunctionDefinition","src":"47424:189:98","nodes":[],"body":{"id":68668,"nodeType":"Block","src":"47487:126:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68655,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47497:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47497:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68657,"nodeType":"ExpressionStatement","src":"47497:17:98"},{"expression":{"arguments":[{"id":68659,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47543:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68658,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66197,"src":"47524:18:98","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":68660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47524:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68661,"nodeType":"ExpressionStatement","src":"47524:32:98"},{"expression":{"id":68666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68662,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"47566:11:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68664,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68652,"src":"47593:12:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68663,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"47580:12:98","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":68665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47580:26:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"47566:40:98","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":68667,"nodeType":"ExpressionStatement","src":"47566:40:98"}]},"functionSelector":"ac1ed7b9","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"47433:14:98","parameters":{"id":68653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68652,"mutability":"mutable","name":"_sybilScorer","nameLocation":"47456:12:98","nodeType":"VariableDeclaration","scope":68669,"src":"47448:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68651,"name":"address","nodeType":"ElementaryTypeName","src":"47448:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"47447:22:98"},"returnParameters":{"id":68654,"nodeType":"ParameterList","parameters":[],"src":"47487:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68687,"nodeType":"FunctionDefinition","src":"47619:198:98","nodes":[],"body":{"id":68686,"nodeType":"Block","src":"47729:88:98","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68678,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"47739:15:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":68679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47739:17:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68680,"nodeType":"ExpressionStatement","src":"47739:17:98"},{"expression":{"arguments":[{"id":68682,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68672,"src":"47781:17:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":68683,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68675,"src":"47800:9:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"id":68681,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68596,"src":"47766:14:98","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":68684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47766:44:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68685,"nodeType":"ExpressionStatement","src":"47766:44:98"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47628:13:98","parameters":{"id":68676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68672,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47666:17:98","nodeType":"VariableDeclaration","scope":68687,"src":"47642:41:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68671,"nodeType":"UserDefinedTypeName","pathNode":{"id":68670,"name":"ArbitrableConfig","nameLocations":["47642:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"47642:16:98"},"referencedDeclaration":65628,"src":"47642:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":68675,"mutability":"mutable","name":"_cvParams","nameLocation":"47701:9:98","nodeType":"VariableDeclaration","scope":68687,"src":"47685:25:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":68674,"nodeType":"UserDefinedTypeName","pathNode":{"id":68673,"name":"CVParams","nameLocations":["47685:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"47685:8:98"},"referencedDeclaration":65637,"src":"47685:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47641:70:98"},"returnParameters":{"id":68677,"nodeType":"ParameterList","parameters":[],"src":"47729:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":68874,"nodeType":"FunctionDefinition","src":"47823:2345:98","nodes":[],"body":{"id":68873,"nodeType":"Block","src":"48009:2159:98","nodes":[],"statements":[{"assignments":[68700],"declarations":[{"constant":false,"id":68700,"mutability":"mutable","name":"proposal","nameLocation":"48036:8:98","nodeType":"VariableDeclaration","scope":68873,"src":"48019:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68699,"nodeType":"UserDefinedTypeName","pathNode":{"id":68698,"name":"Proposal","nameLocations":["48019:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"48019:8:98"},"referencedDeclaration":65606,"src":"48019:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68704,"initialValue":{"baseExpression":{"id":68701,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"48047:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68703,"indexExpression":{"id":68702,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48057:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48047:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48019:49:98"},{"assignments":[68707],"declarations":[{"constant":false,"id":68707,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"48102:16:98","nodeType":"VariableDeclaration","scope":68873,"src":"48078:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68706,"nodeType":"UserDefinedTypeName","pathNode":{"id":68705,"name":"ArbitrableConfig","nameLocations":["48078:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"48078:16:98"},"referencedDeclaration":65628,"src":"48078:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68712,"initialValue":{"baseExpression":{"id":68708,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"48121:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68711,"indexExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48139:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48148:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"48139:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48121:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"48078:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":68715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48195:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48212:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"48195:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48187:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68713,"name":"address","nodeType":"ElementaryTypeName","src":"48187:7:98","typeDescriptions":{}}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48187:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":68720,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"48235:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":68719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"48227:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68718,"name":"address","nodeType":"ElementaryTypeName","src":"48227:7:98","typeDescriptions":{}}},"id":68721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48227:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48187:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68727,"nodeType":"IfStatement","src":"48183:112:98","trueBody":{"id":68726,"nodeType":"Block","src":"48239:56:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68723,"name":"ArbitratorCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65754,"src":"48260:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48260:24:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"RevertStatement","src":"48253:31:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68728,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48472:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68729,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48481:10:98","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65574,"src":"48472:19:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":68730,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48495:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48472:33:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68737,"nodeType":"IfStatement","src":"48468:100:98","trueBody":{"id":68736,"nodeType":"Block","src":"48507:61:98","statements":[{"errorCall":{"arguments":[{"id":68733,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48546:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68732,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"48528:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48528:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"RevertStatement","src":"48521:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68738,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48581:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48590:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"48581:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68740,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"48608:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"48623:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"48608:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"48581:48:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68748,"nodeType":"IfStatement","src":"48577:115:98","trueBody":{"id":68747,"nodeType":"Block","src":"48631:61:98","statements":[{"errorCall":{"arguments":[{"id":68744,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"48670:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68743,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"48652:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48652:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68746,"nodeType":"RevertStatement","src":"48645:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68749,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48705:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48709:5:98","memberName":"value","nodeType":"MemberAccess","src":"48705:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68751,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48717:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48734:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48717:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48705:55:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68762,"nodeType":"IfStatement","src":"48701:171:98","trueBody":{"id":68761,"nodeType":"Block","src":"48762:110:98","statements":[{"errorCall":{"arguments":[{"expression":{"id":68755,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"48806:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"48810:5:98","memberName":"value","nodeType":"MemberAccess","src":"48806:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68757,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"48817:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48834:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"48817:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68754,"name":"InsufficientCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65746,"src":"48783:22:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"48783:78:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68760,"nodeType":"RevertStatement","src":"48776:85:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68763,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"48991:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68764,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"48991:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68765,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"49025:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"48991:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49046:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49055:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49046:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68769,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49079:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":68771,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49102:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49108:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49102:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49046:71:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48991:126:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68787,"nodeType":"IfStatement","src":"48974:325:98","trueBody":{"id":68786,"nodeType":"Block","src":"49128:171:98","statements":[{"errorCall":{"arguments":[{"id":68776,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49191:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68777,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49203:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49212:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"49203:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68779,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65908,"src":"49236:20:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68781,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49259:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49265:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49259:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49203:71:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68775,"name":"DisputeCooldownNotPassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65768,"src":"49149:24:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49149:139:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68785,"nodeType":"RevertStatement","src":"49142:146:98"}]}},{"assignments":[68789],"declarations":[{"constant":false,"id":68789,"mutability":"mutable","name":"arbitrationFee","nameLocation":"49317:14:98","nodeType":"VariableDeclaration","scope":68873,"src":"49309:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68788,"name":"uint256","nodeType":"ElementaryTypeName","src":"49309:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68795,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68794,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68790,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49334:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49338:5:98","memberName":"value","nodeType":"MemberAccess","src":"49334:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68792,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49346:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49363:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49346:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49334:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"49309:80:98"},{"expression":{"arguments":[{"id":68802,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49486:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68803,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49498:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49502:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49498:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68796,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"49400:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":68798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49416:17:98","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":75730,"src":"49400:33:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":68801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":68799,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49441:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49458:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"49441:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49400:85:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":68805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49400:109:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68806,"nodeType":"ExpressionStatement","src":"49400:109:98"},{"expression":{"id":68816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68807,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49520:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":68813,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65905,"src":"49597:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68814,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68693,"src":"49613:10:98","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"expression":{"expression":{"id":68808,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49532:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49549:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49532:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},"id":68810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49560:13:98","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":75665,"src":"49532:41:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":68811,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68789,"src":"49581:14:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"49532:64:98","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_uint256_$value","typeString":"function (uint256,bytes memory) payable external returns (uint256)"}},"id":68815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49532:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49520:104:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68817,"nodeType":"ExpressionStatement","src":"49520:104:98"},{"expression":{"id":68823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49635:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49644:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"49635:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"49661:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"49676:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"49661:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"49635:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68824,"nodeType":"ExpressionStatement","src":"49635:49:98"},{"expression":{"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68825,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49694:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68828,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49703:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49694:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49715:9:98","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":65567,"src":"49694:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68830,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49727:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49694:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68832,"nodeType":"ExpressionStatement","src":"49694:42:98"},{"expression":{"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68833,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49746:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49755:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49746:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49767:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"49746:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68838,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"49786:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49792:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"49786:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49746:55:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68841,"nodeType":"ExpressionStatement","src":"49746:55:98"},{"expression":{"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":68842,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"49811:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68845,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"49811:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"49832:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"49811:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68847,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"49845:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49849:6:98","memberName":"sender","nodeType":"MemberAccess","src":"49845:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"49811:44:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68850,"nodeType":"ExpressionStatement","src":"49811:44:98"},{"expression":{"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68851,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"49865:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68853,"indexExpression":{"id":68852,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"49887:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49865:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"49900:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"49865:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68856,"nodeType":"ExpressionStatement","src":"49865:45:98"},{"expression":{"id":68858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49921:14:98","subExpression":{"id":68857,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"49921:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":68859,"nodeType":"ExpressionStatement","src":"49921:14:98"},{"eventCall":{"arguments":[{"expression":{"id":68861,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68707,"src":"49981:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68862,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49998:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"49981:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"id":68863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68689,"src":"50022:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68864,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68696,"src":"50046:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68865,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50069:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50073:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50069:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68867,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68691,"src":"50093:7:98","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":68868,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68700,"src":"50114:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68869,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50123:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50114:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50135:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50114:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68860,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65855,"src":"49951:16:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75718_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":68871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49951:210:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68872,"nodeType":"EmitStatement","src":"49946:215:98"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"47832:15:98","parameters":{"id":68694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68689,"mutability":"mutable","name":"proposalId","nameLocation":"47856:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47848:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68688,"name":"uint256","nodeType":"ElementaryTypeName","src":"47848:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68691,"mutability":"mutable","name":"context","nameLocation":"47884:7:98","nodeType":"VariableDeclaration","scope":68874,"src":"47868:23:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":68690,"name":"string","nodeType":"ElementaryTypeName","src":"47868:6:98","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":68693,"mutability":"mutable","name":"_extraData","nameLocation":"47908:10:98","nodeType":"VariableDeclaration","scope":68874,"src":"47893:25:98","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":68692,"name":"bytes","nodeType":"ElementaryTypeName","src":"47893:5:98","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"47847:72:98"},"returnParameters":{"id":68697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68696,"mutability":"mutable","name":"disputeId","nameLocation":"47994:9:98","nodeType":"VariableDeclaration","scope":68874,"src":"47986:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68695,"name":"uint256","nodeType":"ElementaryTypeName","src":"47986:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"47985:19:98"},"scope":69194,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69123,"nodeType":"FunctionDefinition","src":"50174:2899:98","nodes":[],"body":{"id":69122,"nodeType":"Block","src":"50251:2822:98","nodes":[],"statements":[{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"proposalId","nameLocation":"50269:10:98","nodeType":"VariableDeclaration","scope":69122,"src":"50261:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"50261:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68887,"initialValue":{"baseExpression":{"id":68884,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65962,"src":"50282:21:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":68886,"indexExpression":{"id":68885,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"50304:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50282:33:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"50261:54:98"},{"assignments":[68890],"declarations":[{"constant":false,"id":68890,"mutability":"mutable","name":"proposal","nameLocation":"50342:8:98","nodeType":"VariableDeclaration","scope":69122,"src":"50325:25:98","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68889,"nodeType":"UserDefinedTypeName","pathNode":{"id":68888,"name":"Proposal","nameLocations":["50325:8:98"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"50325:8:98"},"referencedDeclaration":65606,"src":"50325:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68894,"initialValue":{"baseExpression":{"id":68891,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"50353:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68893,"indexExpression":{"id":68892,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50363:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50353:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50325:49:98"},{"assignments":[68897],"declarations":[{"constant":false,"id":68897,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"50408:16:98","nodeType":"VariableDeclaration","scope":69122,"src":"50384:40:98","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":68896,"nodeType":"UserDefinedTypeName","pathNode":{"id":68895,"name":"ArbitrableConfig","nameLocations":["50384:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"50384:16:98"},"referencedDeclaration":65628,"src":"50384:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":68902,"initialValue":{"baseExpression":{"id":68898,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"50427:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":68901,"indexExpression":{"expression":{"id":68899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50445:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50454:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"50445:32:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50427:51:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50384:94:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68903,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50493:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68904,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50507:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50493:15:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68911,"nodeType":"IfStatement","src":"50489:82:98","trueBody":{"id":68910,"nodeType":"Block","src":"50510:61:98","statements":[{"errorCall":{"arguments":[{"id":68907,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50549:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68906,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65718,"src":"50531:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50531:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68909,"nodeType":"RevertStatement","src":"50524:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":68916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68912,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50584:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50593:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"50584:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":68914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"50611:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"50626:8:98","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":65563,"src":"50611:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"50584:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68922,"nodeType":"IfStatement","src":"50580:119:98","trueBody":{"id":68921,"nodeType":"Block","src":"50636:63:98","statements":[{"errorCall":{"arguments":[{"id":68918,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"50677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68917,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65752,"src":"50657:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50657:31:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68920,"nodeType":"RevertStatement","src":"50650:38:98"}]}},{"assignments":[68924],"declarations":[{"constant":false,"id":68924,"mutability":"mutable","name":"isTimeOut","nameLocation":"50714:9:98","nodeType":"VariableDeclaration","scope":69122,"src":"50709:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68923,"name":"bool","nodeType":"ElementaryTypeName","src":"50709:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68934,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"50726:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50732:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"50726:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":68927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"50744:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50753:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"50744:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":68929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50765:16:98","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":65569,"src":"50744:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":68930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50784:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50801:20:98","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":65627,"src":"50784:37:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50744:77:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50726:95:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"50709:112:98"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"50836:10:98","subExpression":{"id":68935,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50837:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68937,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"50850:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"50854:6:98","memberName":"sender","nodeType":"MemberAccess","src":"50850:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":68941,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"50872:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50889:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"50872:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}],"id":68940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"50864:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68939,"name":"address","nodeType":"ElementaryTypeName","src":"50864:7:98","typeDescriptions":{}}},"id":68943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50864:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"50850:50:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50836:64:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68950,"nodeType":"IfStatement","src":"50832:118:98","trueBody":{"id":68949,"nodeType":"Block","src":"50902:48:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68946,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65748,"src":"50923:14:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50923:16:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68948,"nodeType":"RevertStatement","src":"50916:23:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68951,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68924,"src":"50964:9:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68952,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"50977:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"50988:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"50977:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"50964:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69013,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"51731:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51742:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51731:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69042,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"52093:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69043,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52104:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52093:12:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69102,"nodeType":"IfStatement","src":"52089:824:98","trueBody":{"id":69101,"nodeType":"Block","src":"52107:806:98","statements":[{"expression":{"id":69050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69045,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52121:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52130:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"52121:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69048,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"52147:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69049,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"52162:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"52147:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"52121:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69051,"nodeType":"ExpressionStatement","src":"52121:49:98"},{"expression":{"arguments":[{"id":69055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52236:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69056,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52248:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69057,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52257:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52248:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69058,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52269:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52248:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69059,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52281:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52298:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52281:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69052,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52184:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52200:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"52184:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52184:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69062,"nodeType":"ExpressionStatement","src":"52184:154:98"},{"expression":{"arguments":[{"id":69066,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52407:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69067,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52435:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52444:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52435:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69071,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"52479:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69073,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52502:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"52479:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75844_$","typeString":"function () view external returns (contract ISafe)"}},"id":69074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52479:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":69070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52471:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69069,"name":"address","nodeType":"ElementaryTypeName","src":"52471:7:98","typeDescriptions":{}}},"id":69075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52471:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69076,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52534:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69078,"indexExpression":{"id":69077,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52552:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52534:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69079,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52584:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52534:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52612:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52534:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69063,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52352:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52368:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75750,"src":"52352:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52352:275:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69083,"nodeType":"ExpressionStatement","src":"52352:275:98"},{"expression":{"arguments":[{"id":69087,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"52696:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69088,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52724:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52733:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"52724:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52760:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52769:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"52760:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52781:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"52760:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69093,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"52809:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69095,"indexExpression":{"id":69094,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65920,"src":"52827:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"52809:49:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52859:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"52809:75:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52887:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"52809:79:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69084,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"52641:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52657:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75750,"src":"52641:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52641:261:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69100,"nodeType":"ExpressionStatement","src":"52641:261:98"}]}},"id":69103,"nodeType":"IfStatement","src":"51727:1186:98","trueBody":{"id":69041,"nodeType":"Block","src":"51745:338:98","statements":[{"expression":{"id":69021,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69016,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51759:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69018,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51768:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51759:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69019,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51785:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69020,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51800:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51785:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51759:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69022,"nodeType":"ExpressionStatement","src":"51759:47:98"},{"expression":{"arguments":[{"id":69026,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51875:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69027,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51903:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51912:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51903:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51924:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51903:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69032,"name":"getRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65978,"src":"51960:20:98","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"function () view returns (contract RegistryCommunityV0_0)"}},"id":69033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:22:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":69034,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51983:11:98","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70498,"src":"51960:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$75844_$","typeString":"function () view external returns (contract ISafe)"}},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51960:36:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":69031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51952:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69030,"name":"address","nodeType":"ElementaryTypeName","src":"51952:7:98","typeDescriptions":{}}},"id":69036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51952:45:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69037,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"52015:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69038,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"52032:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"52015:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69023,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51820:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51836:21:98","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":75750,"src":"51820:37:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51820:252:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69040,"nodeType":"ExpressionStatement","src":"51820:252:98"}]}},"id":69104,"nodeType":"IfStatement","src":"50960:1953:98","trueBody":{"id":69012,"nodeType":"Block","src":"50991:730:98","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68956,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51009:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51026:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51009:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51043:1:98","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51009:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68964,"nodeType":"IfStatement","src":"51005:102:98","trueBody":{"id":68963,"nodeType":"Block","src":"51046:61:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68960,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65762,"src":"51071:19:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51071:21:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68962,"nodeType":"RevertStatement","src":"51064:28:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51124:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51141:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51124:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":68967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51158:1:98","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"51124:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68977,"nodeType":"IfStatement","src":"51120:121:98","trueBody":{"id":68976,"nodeType":"Block","src":"51161:80:98","statements":[{"expression":{"id":68974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68969,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51179:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68971,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51188:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51179:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68972,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51205:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51220:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"51205:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51179:47:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68975,"nodeType":"ExpressionStatement","src":"51179:47:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68978,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51258:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68979,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51275:13:98","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":65625,"src":"51258:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51292:1:98","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"51258:35:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69000,"nodeType":"IfStatement","src":"51254:289:98","trueBody":{"id":68999,"nodeType":"Block","src":"51295:248:98","statements":[{"expression":{"id":68987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68982,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51313:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68984,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"51322:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"51313:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68985,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"51339:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":68986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"51354:8:98","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"51339:23:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"51313:49:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":68988,"nodeType":"ExpressionStatement","src":"51313:49:98"},{"expression":{"arguments":[{"id":68992,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51436:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68993,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51448:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51457:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"51448:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68995,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51468:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":68996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51485:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"51468:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":68989,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51380:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":68991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51396:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"51380:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":68997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51380:148:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68998,"nodeType":"ExpressionStatement","src":"51380:148:98"}]}},{"expression":{"arguments":[{"id":69004,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"51608:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69005,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"51620:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69006,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51629:11:98","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":65601,"src":"51620:20:98","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$65572_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51641:10:98","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":65571,"src":"51620:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69008,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"51653:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"51670:26:98","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65623,"src":"51653:43:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69001,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"51556:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51572:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"51556:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51556:154:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69011,"nodeType":"ExpressionStatement","src":"51556:154:98"}]}},{"expression":{"id":69106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"52923:14:98","subExpression":{"id":69105,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65916,"src":"52923:12:98","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69107,"nodeType":"ExpressionStatement","src":"52923:14:98"},{"expression":{"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69108,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68890,"src":"52947:8:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"52956:21:98","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":65603,"src":"52947:30:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"52980:5:98","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52986:9:98","memberName":"timestamp","nodeType":"MemberAccess","src":"52980:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"52947:48:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69114,"nodeType":"ExpressionStatement","src":"52947:48:98"},{"eventCall":{"arguments":[{"expression":{"id":69116,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68897,"src":"53017:16:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53034:10:98","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":65617,"src":"53017:27:98","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"}},{"id":69118,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68876,"src":"53046:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69119,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68878,"src":"53058:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$75718","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69115,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75605,"src":"53010:6:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$75718_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53010:56:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69121,"nodeType":"EmitStatement","src":"53005:61:98"}]},"baseFunctions":[75613],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"50183:4:98","overrides":{"id":68880,"nodeType":"OverrideSpecifier","overrides":[],"src":"50242:8:98"},"parameters":{"id":68879,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68876,"mutability":"mutable","name":"_disputeID","nameLocation":"50196:10:98","nodeType":"VariableDeclaration","scope":69123,"src":"50188:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68875,"name":"uint256","nodeType":"ElementaryTypeName","src":"50188:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68878,"mutability":"mutable","name":"_ruling","nameLocation":"50216:7:98","nodeType":"VariableDeclaration","scope":69123,"src":"50208:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68877,"name":"uint256","nodeType":"ElementaryTypeName","src":"50208:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50187:37:98"},"returnParameters":{"id":68881,"nodeType":"ParameterList","parameters":[],"src":"50251:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69189,"nodeType":"FunctionDefinition","src":"53079:702:98","nodes":[],"body":{"id":69188,"nodeType":"Block","src":"53140:641:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69128,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53154:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69130,"indexExpression":{"id":69129,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53164:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53154:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53176:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53154:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69132,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53194:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53209:6:98","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":65559,"src":"53194:21:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53154:61:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69140,"nodeType":"IfStatement","src":"53150:128:98","trueBody":{"id":69139,"nodeType":"Block","src":"53217:61:98","statements":[{"errorCall":{"arguments":[{"id":69136,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53256:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69135,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65714,"src":"53238:17:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53238:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69138,"nodeType":"RevertStatement","src":"53231:36:98"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69141,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53292:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69143,"indexExpression":{"id":69142,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53302:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53292:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53314:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53292:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69145,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53327:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53331:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53327:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"53292:45:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69158,"nodeType":"IfStatement","src":"53288:141:98","trueBody":{"id":69157,"nodeType":"Block","src":"53339:90:98","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":69149,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53374:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69151,"indexExpression":{"id":69150,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53384:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53374:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53396:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53374:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69153,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53407:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53411:6:98","memberName":"sender","nodeType":"MemberAccess","src":"53407:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69148,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65760,"src":"53360:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":69155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53360:58:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69156,"nodeType":"RevertStatement","src":"53353:65:98"}]}},{"expression":{"arguments":[{"id":69162,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53487:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":69163,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53511:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69165,"indexExpression":{"id":69164,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53521:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53511:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53533:9:98","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":65584,"src":"53511:31:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":69167,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65967,"src":"53556:17:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$65628_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69172,"indexExpression":{"expression":{"baseExpression":{"id":69168,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53574:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69170,"indexExpression":{"id":69169,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53584:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53574:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69171,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53596:23:98","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":65605,"src":"53574:45:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53556:64:98","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69173,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53621:25:98","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":65621,"src":"53556:90:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69159,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"53439:15:98","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53455:18:98","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":75739,"src":"53439:34:98","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53439:217:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69175,"nodeType":"ExpressionStatement","src":"53439:217:98"},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":69176,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"53667:9:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69178,"indexExpression":{"id":69177,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53677:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53667:21:98","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"53689:14:98","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"53667:36:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69180,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"53706:14:98","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53721:9:98","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"53706:24:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"53667:63:98","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"id":69183,"nodeType":"ExpressionStatement","src":"53667:63:98"},{"eventCall":{"arguments":[{"id":69185,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69125,"src":"53763:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69184,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65867,"src":"53745:17:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53745:29:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69187,"nodeType":"EmitStatement","src":"53740:34:98"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"53088:14:98","parameters":{"id":69126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69125,"mutability":"mutable","name":"proposalId","nameLocation":"53111:10:98","nodeType":"VariableDeclaration","scope":69189,"src":"53103:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69124,"name":"uint256","nodeType":"ElementaryTypeName","src":"53103:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53102:20:98"},"returnParameters":{"id":69127,"nodeType":"ParameterList","parameters":[],"src":"53140:0:98"},"scope":69194,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69193,"nodeType":"VariableDeclaration","src":"53787:25:98","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"53807:5:98","scope":69194,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":69190,"name":"uint256","nodeType":"ElementaryTypeName","src":"53787:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69192,"length":{"hexValue":"3530","id":69191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"53795:2:98","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"53787:11:98","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":65659,"name":"BaseStrategyUpgradeable","nameLocations":["3809:23:98"],"nodeType":"IdentifierPath","referencedDeclaration":65471,"src":"3809:23:98"},"id":65660,"nodeType":"InheritanceSpecifier","src":"3809:23:98"},{"baseName":{"id":65661,"name":"IArbitrable","nameLocations":["3834:11:98"],"nodeType":"IdentifierPath","referencedDeclaration":75614,"src":"3834:11:98"},"id":65662,"nodeType":"InheritanceSpecifier","src":"3834:11:98"},{"baseName":{"id":65663,"name":"IPointStrategy","nameLocations":["3847:14:98"],"nodeType":"IdentifierPath","referencedDeclaration":65536,"src":"3847:14:98"},"id":65664,"nodeType":"InheritanceSpecifier","src":"3847:14:98"},{"baseName":{"id":65665,"name":"ERC165","nameLocations":["3863:6:98"],"nodeType":"IdentifierPath","referencedDeclaration":57725,"src":"3863:6:98"},"id":65666,"nodeType":"InheritanceSpecifier","src":"3863:6:98"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":65658,"nodeType":"StructuredDocumentation","src":"3738:44:98","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69194,57725,57931,65536,75614,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_0","nameLocation":"3791:14:98","scope":69195,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,70122]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file diff --git a/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json b/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json index bf83295c..1259464d 100644 --- a/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json +++ b/pkg/contracts/out/CVStrategyV0_1.sol/CVStrategyV0_1.json @@ -1 +1 @@ -{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addToAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunityV0_1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_1"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeFromAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"membersToAdd","type":"address[]","internalType":"address[]"},{"name":"membersToRemove","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AllowlistMembersAdded","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"AllowlistMembersRemoved","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"InitializedCV2","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalInvalidForAllocation","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_proposalStatus","type":"uint8","internalType":"enum ProposalStatus"}]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161709d6200004d600039600081816118cc0152818161190c015281816119ab015281816119eb0152611a63015261709d6000f3fe6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220557ff5daa084b7da9aa590fc5a07cc075a1aa0a776bb9d04803a6f648f78d3ca64736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;1088:4:64;1045:48;;1164:5287:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220557ff5daa084b7da9aa590fc5a07cc075a1aa0a776bb9d04803a6f648f78d3ca64736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45:98;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:131;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:131;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:131;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:131;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9901:25:131;;;9889:2;9874:18;21565:107:98;9755:177:131;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;11197:25:131;;;11253:2;11238:18;;11231:34;;;;11281:18;;;11274:34;11339:2;11324:18;;11317:34;11184:3;11169:19;8833:24:98;10966:391:131;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;5083:125:99:-;;;;;;;;;;-1:-1:-1;5083:125:99;;;;;:::i;:::-;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;3906:332:99:-;;;;;;;;;;-1:-1:-1;3906:332:99;;;;;:::i;:::-;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;17209:31:131;;;17191:50;;17179:2;17164:18;8639:26:98;17047:200:131;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;5866:137:99;;;;;;;;;;-1:-1:-1;5866:137:99;;;;;:::i;:::-;;:::i;30100:191:98:-;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:103;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;2648:879:99:-;;;;;;;;;;-1:-1:-1;2648:879:99;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;24276:2:131;3325:201:47;;;24258:21:131;24315:2;24295:18;;;24288:30;24354:34;24334:18;;;24327:62;-1:-1:-1;;;24405:18:131;;;24398:44;24459:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;24641:36:131;;3721:14:47;;24629:2:131;24614:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9901:25:131;;;9874:18;;46534:29:98;9755:177:131;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9901:25:131;;;9874:18;;50531:29:98;9755:177:131;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9901:25:131;;;9874:18;;50657:31:98;9755:177:131;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9901:25:131;;9889:2;9874:18;;9755:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28272:2:131;2064:92:64;;;28254:21:131;28311:2;28291:18;;;28284:30;28350:34;28330:18;;;28323:62;-1:-1:-1;;;28401:18:131;;;28394:54;28465:19;;2064:92:64;28070:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;5083:125:99:-:0;5150:17;:15;:17::i;:::-;5177:24;5193:7;5177:15;:24::i;17286:1025:98:-;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;3906:332:99:-;4129:17;:15;:17::i;:::-;4156:75;4171:17;4190:9;4201:12;4215:15;4156:14;:75::i;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;5866:137:99:-;5940:17;:15;:17::i;:::-;5967:29;5988:7;5967:20;:29::i;30100:191:98:-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9901:25:131;;;9874:18;;48528:29:98;9755:177:131;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9901:25:131;;;9874:18;;48652:29:98;9755:177:131;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9901:25:131;;;9874:18;;53238:29:98;9755:177:131;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9901:25:131;;;53745:29:98;;-1:-1:-1;9874:18:131;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;2648:879:99;2435:16:97;:14;:16::i;:::-;2742:28:99::1;2762:7;2742:19;:28::i;:::-;2834:23;::::0;2859:10:::1;:12:::0;;2816:56:::1;::::0;-1:-1:-1;;;;;2834:23:99::1;::::0;::::1;2859:12;::::0;::::1;:::i;:::-;;;;;2816:17;:56::i;:::-;2781:15;:92:::0;;-1:-1:-1;;;;;;2781:92:99::1;-1:-1:-1::0;;;;;2781:92:99;;;::::1;::::0;;::::1;::::0;;2883:28:::1;::::0;;-1:-1:-1;;;2883:28:99;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;2883:28:99;;;;;;;;-1:-1:-1;2781:92:99;2883:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2922:40;2976:5;2965:51;;;;;;;;;;;;:::i;:::-;3031:20;::::0;::::1;::::0;2922:94;;-1:-1:-1;;;;;;3031:34:99::1;3027:94;;3088:22;;-1:-1:-1::0;;;3088:22:99::1;;;;;;;;;;;3027:94;3195:20;::::0;::::1;::::0;3175:17:::1;:40:::0;;-1:-1:-1;;;;;;3175:40:99::1;-1:-1:-1::0;;;;;3175:40:99;;::::1;::::0;;;::::1;::::0;;3241:15:::1;::::0;::::1;::::0;3226:12:::1;:30:::0;;-1:-1:-1;;3226:30:99::1;-1:-1:-1::0;3241:15:99;3226:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3280:14:99::1;::::0;::::1;::::0;3266:11:::1;:28:::0;;-1:-1:-1;;3266:28:99::1;;3280:14:::0;3266:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3318:14:99::1;::::0;::::1;::::0;3304:28;:11:::1;:28:::0;3369:14:::1;::::0;::::1;::::0;3342:11:::1;:42:::0;;-1:-1:-1;;;;;;3342:42:99::1;-1:-1:-1::0;;;;;3342:42:99;;::::1;::::0;;;::::1;::::0;;3409:19:::1;::::0;::::1;::::0;3430:11;;3443:16:::1;::::0;;-1:-1:-1;3443:16:99;;;::::1;::::0;::::1;3461::::0;;;;;;;;;3394:84:::1;::::0;3409:19;3430:11;3394:14:::1;:84::i;:::-;3493:27;3508:7;3517:2;3493:27;;;;;;;:::i;:::-;;;;;;;;2732:795;2648:879:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7014:31:::2;7030:5;7037:7;7014:15;:31::i;:::-;7055:25;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;38780:2:131;2415:73:45::1;::::0;::::1;38762:21:131::0;38819:2;38799:18;;;38792:30;38858:34;38838:18;;;38831:62;-1:-1:-1;;;38909:18:131;;;38902:36;38955:19;;2415:73:45::1;38578:402:131::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;39243:15:131;;;39225:34;;39295:15;;;39290:2;39275:18;;39268:43;39347:15;;;39342:2;39327:18;;39320:43;39175:2;39160:18;;38985:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;39710:25:131;;;39789:18;;;39782:43;;;;39841:18;;;39834:43;;;;39893:18;;39886:34;39936:19;;;39929:35;39980:19;;;39973:35;;;;40039:3;40024:19;;40017:35;;;;45815:407:98;;39697:3:131;39682:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9901:25:131;;;9874:18;;23722:29:98;9755:177:131;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9901:25:131;;;9874:18;;24025:29:98;9755:177:131;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9901:25:131;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9874:18:131;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9901:25:131;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9874:18:131;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;48077:2:131;42048:53:98;;;48059:21:131;48116:2;48096:18;;;48089:30;-1:-1:-1;;;48135:18:131;;;48128:58;48203:18;;42048:53:98;47875:352:131;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;48623:2:131;3262:56:60;;;48605:21:131;48662:2;48642:18;;;48635:30;48701:34;48681:18;;;48674:62;-1:-1:-1;;;48752:18:131;;;48745:44;48806:19;;3262:56:60;48421:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;49038:2:131;3140:82:60;;;49020:21:131;49077:2;49057:18;;;49050:30;49116:34;49096:18;;;49089:62;-1:-1:-1;;;49167:18:131;;;49160:39;49216:19;;3140:82:60;48836:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;49448:2:131;1675:68:45;;;49430:21:131;;;49467:18;;;49460:30;49526:34;49506:18;;;49499:62;49578:18;;1675:68:45;49246:356:131;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;5214:646:99:-;5284:21;5348:6;;5318:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5308:48;;;;;;5284:72;;5371:26;:24;:26::i;:::-;-1:-1:-1;;;;;5371:34:99;;5406:13;5429:1;5371:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5367:156;;;5448:26;:24;:26::i;:::-;-1:-1:-1;;;;;5448:37:99;;5486:13;5509:1;5448:64;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5367:156;5537:9;5532:268;5556:7;:14;5552:1;:18;5532:268;;;5596:26;:24;:26::i;:::-;-1:-1:-1;;;;;5596:34:99;;5631:13;5646:7;5654:1;5646:10;;;;;;;;:::i;:::-;;;;;;;5596:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5591:199;;5677:26;:24;:26::i;:::-;-1:-1:-1;;;;;5677:36:99;;5754:6;;5724:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5714:48;;;;;;5764:7;5772:1;5764:10;;;;;;;;:::i;:::-;;;;;;;5677:98;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5591:199;5572:3;;;;:::i;:::-;;;;5532:268;;;;5815:38;5837:6;;5845:7;5815:38;;;;;;;:::i;4551:526::-;4653:11;;4625:4;;-1:-1:-1;;;;;4653:11:99;4641:363;;4695:21;4759:6;;4729:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;4719:48;;;;;;4695:72;;4785:26;:24;:26::i;:::-;-1:-1:-1;;;;;4785:34:99;;4820:13;4843:1;4785:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4781:213;;;-1:-1:-1;4873:4:99;;4551:526;-1:-1:-1;;4551:526:99:o;4781:213::-;4923:26;:24;:26::i;:::-;-1:-1:-1;;;;;4923:34:99;;4958:13;4973:5;4923:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;4641:363::-;5020:11;;:50;;-1:-1:-1;;;5020:50:99;;-1:-1:-1;;;;;5020:11:99;;;;:28;;:50;;5049:5;;5064:4;;5020:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637:98:-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;3533:367:99:-;3757:50;3778:17;3797:9;3757:20;:50::i;:::-;3817:29;3833:12;3817:15;:29::i;:::-;3856:37;3877:15;6009:440;6089:9;6084:303;6108:7;:14;6104:1;:18;6084:303;;;6147:26;:24;:26::i;:::-;-1:-1:-1;;;;;6147:34:99;;6222:6;;6192:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6182:48;;;;;;6232:7;6240:1;6232:10;;;;;;;;:::i;:::-;;;;;;;6147:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6143:234;;;6263:26;:24;:26::i;:::-;-1:-1:-1;;;;;6263:37:99;;6341:6;;6311:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6301:48;;;;;;6351:7;6359:1;6351:10;;;;;;;;:::i;:::-;;;;;;;6263:99;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6143:234;6124:3;;;;:::i;:::-;;;;6084:303;;;;6402:40;6426:6;;6434:7;6402:40;;;;;;;:::i;12473:141:98:-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:131;;;11071:19:97;;3276:2:131;3261:18;11071:19:97;3148:187:131;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;51018:2:131;50989:15;50985:45;4867:36:6;;;50973:58:131;51047:12;;;51040:28;;;4823:7:6;;;;51084:12:131;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;4244:301:99:-;4347:27;4388:5;4377:38;;;;;;;;;;;;:::i;:::-;4347:68;;4430:9;4425:114;4449:2;:9;4445:1;:13;4425:114;;;4479:49;4511:2;4514:1;4511:5;;;;;;;;:::i;:::-;;;;;;;:16;;;4479:31;:49::i;:::-;4460:3;;;;:::i;:::-;;;;4425:114;;22272:633:98;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9901:25:131;;;27095:28:98;;9889:2:131;9874:18;27095:28:98;9755:177:131;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;53001:2:131;41543:66:98;;;52983:21:131;53040:2;53020:18;;;53013:30;53079:34;53059:18;;;53052:62;-1:-1:-1;;;53130:18:131;;;53123:38;53178:19;;41543:66:98;52799:404:131;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;53410:2:131;41619:53:98;;;53392:21:131;53449:2;53429:18;;;53422:30;-1:-1:-1;;;53468:18:131;;;53461:58;53536:18;;41619:53:98;53208:352:131;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;53767:2:131;1479:95:60;;;53749:21:131;53806:2;53786:18;;;53779:30;53845:34;53825:18;;;53818:62;-1:-1:-1;;;53896:18:131;;;53889:43;53949:19;;1479:95:60;53565:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;54181:2:131;2847:58:46;;;54163:21:131;54220:2;54200:18;;;54193:30;-1:-1:-1;;;54239:18:131;;;54232:53;54302:18;;2847:58:46;53979:347:131;2019:473:99;2113:18;2134:22;;;:9;:22;;;;;;2183:16;;;;;;:43;;;;;;;;:::i;:::-;;:91;;;-1:-1:-1;2250:24:99;2230:16;;;;;;:44;;;;;;;;:::i;:::-;;2183:91;:154;;;-1:-1:-1;2314:23:99;2294:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:154;:201;;;-1:-1:-1;2361:23:99;2341:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:201;2166:320;;;2458:16;;;;2416:59;;-1:-1:-1;;;2416:59:99;;;;2445:11;;2458:16;;;;;2416:59;;;:::i;11899:391:98:-;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9901:25:131;;;9874:18;;33311:29:98;9755:177:131;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;56184:2:131;8113:60:76;;;56166:21:131;56223:2;56203:18;;;56196:30;56262:31;56242:18;;;56235:59;56311:18;;8113:60:76;55982:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:131:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:131;;14:180;-1:-1:-1;14:180:131:o;199:104::-;-1:-1:-1;;;;;265:31:131;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:131;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:131;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:131:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:131;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:131:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:131;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:131;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:131;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:255::-;4677:2;4671:9;4719:6;4707:19;;-1:-1:-1;;;;;4741:34:131;;4777:22;;;4738:62;4735:88;;;4803:18;;:::i;4865:257::-;4937:4;4931:11;;;4969:17;;-1:-1:-1;;;;;5001:34:131;;5037:22;;;4998:62;4995:88;;;5063:18;;:::i;5127:253::-;5199:2;5193:9;5241:4;5229:17;;-1:-1:-1;;;;;5261:34:131;;5297:22;;;5258:62;5255:88;;;5323:18;;:::i;5385:275::-;5456:2;5450:9;5521:2;5502:13;;-1:-1:-1;;5498:27:131;5486:40;;-1:-1:-1;;;;;5541:34:131;;5577:22;;;5538:62;5535:88;;;5603:18;;:::i;:::-;5639:2;5632:22;5385:275;;-1:-1:-1;5385:275:131:o;5665:144::-;-1:-1:-1;;;;;5753:31:131;;5743:42;;5733:70;;5799:1;5796;5789:12;5814:727;5877:5;5925:4;5913:9;5908:3;5904:19;5900:30;5897:50;;;5943:1;5940;5933:12;5897:50;5965:22;;:::i;:::-;5956:31;;6024:9;6011:23;6043:46;6081:7;6043:46;:::i;:::-;6098:22;;6172:2;6157:18;;6144:32;6185:46;6144:32;6185:46;:::i;:::-;6263:7;6258:2;6251:5;6247:14;6240:31;;6331:2;6320:9;6316:18;6303:32;6298:2;6291:5;6287:14;6280:56;6396:2;6385:9;6381:18;6368:32;6363:2;6356:5;6352:14;6345:56;6462:3;6451:9;6447:19;6434:33;6428:3;6421:5;6417:15;6410:58;6529:3;6518:9;6514:19;6501:33;6495:3;6488:5;6484:15;6477:58;5814:727;;;;:::o;6546:413::-;6601:5;6649:4;6637:9;6632:3;6628:19;6624:30;6621:50;;;6667:1;6664;6657:12;6621:50;6689:22;;:::i;:::-;6680:31;;6747:9;6734:23;6727:5;6720:38;6818:2;6807:9;6803:18;6790:32;6785:2;6778:5;6774:14;6767:56;6883:2;6872:9;6868:18;6855:32;6850:2;6843:5;6839:14;6832:56;6948:2;6937:9;6933:18;6920:32;6915:2;6908:5;6904:14;6897:56;6546:413;;;;:::o;6964:366::-;7094:6;7102;7155:3;7143:9;7134:7;7130:23;7126:33;7123:53;;;7172:1;7169;7162:12;7123:53;7195:54;7241:7;7230:9;7195:54;:::i;:::-;7185:64;;7268:56;7316:7;7310:3;7299:9;7295:19;7268:56;:::i;:::-;7258:66;;6964:366;;;;;:::o;7335:183::-;7395:4;-1:-1:-1;;;;;7417:30:131;;7414:56;;;7450:18;;:::i;:::-;-1:-1:-1;7495:1:131;7491:14;7507:4;7487:25;;7335:183::o;7523:750::-;7577:5;7630:3;7623:4;7615:6;7611:17;7607:27;7597:55;;7648:1;7645;7638:12;7597:55;7684:6;7671:20;7710:4;7734:60;7750:43;7790:2;7750:43;:::i;:::-;7734:60;:::i;:::-;7828:15;;;7914:1;7910:10;;;;7898:23;;7894:32;;;7859:12;;;;7938:15;;;7935:35;;;7966:1;7963;7956:12;7935:35;8002:2;7994:6;7990:15;8014:230;8030:6;8025:3;8022:15;8014:230;;;8110:3;8097:17;8127:44;8165:5;8127:44;:::i;:::-;8184:18;;8222:12;;;;8047;;8014:230;;;-1:-1:-1;8262:5:131;7523:750;-1:-1:-1;;;;;;7523:750:131:o;8278:186::-;8326:4;-1:-1:-1;;;;;8348:30:131;;8345:56;;;8381:18;;:::i;:::-;-1:-1:-1;8447:2:131;8426:15;-1:-1:-1;;8422:29:131;8453:4;8418:40;;8278:186::o;8469:336::-;8533:5;8562:52;8578:35;8606:6;8578:35;:::i;8562:52::-;8553:61;;8637:6;8630:5;8623:21;8677:3;8668:6;8663:3;8659:16;8656:25;8653:45;;;8694:1;8691;8684:12;8653:45;8743:6;8738:3;8731:4;8724:5;8720:16;8707:43;8797:1;8790:4;8781:6;8774:5;8770:18;8766:29;8759:40;8469:336;;;;;:::o;8810:220::-;8852:5;8905:3;8898:4;8890:6;8886:17;8882:27;8872:55;;8923:1;8920;8913:12;8872:55;8945:79;9020:3;9011:6;8998:20;8991:4;8983:6;8979:17;8945:79;:::i;9035:715::-;9146:6;9154;9162;9215:2;9203:9;9194:7;9190:23;9186:32;9183:52;;;9231:1;9228;9221:12;9183:52;9258:23;;-1:-1:-1;;;;;9330:14:131;;;9327:34;;;9357:1;9354;9347:12;9327:34;9380:61;9433:7;9424:6;9413:9;9409:22;9380:61;:::i;:::-;9370:71;;9494:2;9483:9;9479:18;9466:32;9450:48;;9523:2;9513:8;9510:16;9507:36;;;9539:1;9536;9529:12;9507:36;;9562:51;9605:7;9594:8;9583:9;9579:24;9562:51;:::i;:::-;9552:61;;;9663:2;9652:9;9648:18;9635:32;9676:44;9714:5;9676:44;:::i;:::-;9739:5;9729:15;;;9035:715;;;;;:::o;9937:229::-;-1:-1:-1;;;;;10127:32:131;;;;10109:51;;10097:2;10082:18;;9937:229::o;10393:568::-;10470:6;10478;10486;10539:2;10527:9;10518:7;10514:23;10510:32;10507:52;;;10555:1;10552;10545:12;10507:52;10594:9;10581:23;10613:44;10651:5;10613:44;:::i;:::-;10676:5;-1:-1:-1;10733:2:131;10718:18;;10705:32;10746:46;10705:32;10746:46;:::i;:::-;10811:7;-1:-1:-1;10870:2:131;10855:18;;10842:32;10883:46;10842:32;10883:46;:::i;11362:468::-;11439:6;11447;11500:2;11488:9;11479:7;11475:23;11471:32;11468:52;;;11516:1;11513;11506:12;11468:52;11543:23;;-1:-1:-1;;;;;11578:30:131;;11575:50;;;11621:1;11618;11611:12;11575:50;11644:49;11685:7;11676:6;11665:9;11661:22;11644:49;:::i;:::-;11634:59;;;11743:2;11732:9;11728:18;11715:32;11756:44;11794:5;11756:44;:::i;:::-;11819:5;11809:15;;;11362:468;;;;;:::o;12043:142::-;12126:1;12119:5;12116:12;12106:46;;12132:18;;:::i;:::-;12161;;12043:142::o;12190:213::-;12339:2;12324:18;;12351:46;12328:9;12379:6;12351:46;:::i;12408:328::-;12476:6;12484;12537:2;12525:9;12516:7;12512:23;12508:32;12505:52;;;12553:1;12550;12543:12;12505:52;12592:9;12579:23;12611:44;12649:5;12611:44;:::i;:::-;12674:5;12726:2;12711:18;;;;12698:32;;-1:-1:-1;;;12408:328:131:o;12741:248::-;12809:6;12817;12870:2;12858:9;12849:7;12845:23;12841:32;12838:52;;;12886:1;12883;12876:12;12838:52;-1:-1:-1;;12909:23:131;;;12979:2;12964:18;;;12951:32;;-1:-1:-1;12741:248:131:o;12994:316::-;13071:6;13079;13087;13140:2;13128:9;13119:7;13115:23;13111:32;13108:52;;;13156:1;13153;13146:12;13108:52;-1:-1:-1;;13179:23:131;;;13249:2;13234:18;;13221:32;;-1:-1:-1;13300:2:131;13285:18;;;13272:32;;12994:316;-1:-1:-1;12994:316:131:o;13315:143::-;13399:1;13392:5;13389:12;13379:46;;13405:18;;:::i;13463:215::-;13613:2;13598:18;;13625:47;13602:9;13654:6;13625:47;:::i;13683:260::-;13742:6;13795:2;13783:9;13774:7;13770:23;13766:32;13763:52;;;13811:1;13808;13801:12;13763:52;13850:9;13837:23;13869:44;13907:5;13869:44;:::i;14369:468::-;14446:6;14454;14507:2;14495:9;14486:7;14482:23;14478:32;14475:52;;;14523:1;14520;14513:12;14475:52;14562:9;14549:23;14581:44;14619:5;14581:44;:::i;:::-;14644:5;-1:-1:-1;14700:2:131;14685:18;;14672:32;-1:-1:-1;;;;;14716:30:131;;14713:50;;;14759:1;14756;14749:12;14713:50;14782:49;14823:7;14814:6;14803:9;14799:22;14782:49;:::i;:::-;14772:59;;;14369:468;;;;;:::o;14842:752::-;14929:6;14937;14945;14998:2;14986:9;14977:7;14973:23;14969:32;14966:52;;;15014:1;15011;15004:12;14966:52;15053:9;15040:23;15072:44;15110:5;15072:44;:::i;:::-;15135:5;-1:-1:-1;15191:2:131;15176:18;;15163:32;-1:-1:-1;;;;;15207:30:131;;15204:50;;;15250:1;15247;15240:12;15204:50;15273:22;;15326:4;15318:13;;15314:27;-1:-1:-1;15304:55:131;;15355:1;15352;15345:12;15304:55;15378:73;15443:7;15438:2;15425:16;15420:2;15416;15412:11;15378:73;:::i;15838:348::-;15922:6;15975:2;15963:9;15954:7;15950:23;15946:32;15943:52;;;15991:1;15988;15981:12;15943:52;16018:23;;-1:-1:-1;;;;;16053:30:131;;16050:50;;;16096:1;16093;16086:12;16050:50;16119:61;16172:7;16163:6;16152:9;16148:22;16119:61;:::i;16191:851::-;16389:6;16397;16405;16413;16466:3;16454:9;16445:7;16441:23;16437:33;16434:53;;;16483:1;16480;16473:12;16434:53;16506:54;16552:7;16541:9;16506:54;:::i;:::-;16496:64;;16579:56;16627:7;16621:3;16610:9;16606:19;16579:56;:::i;:::-;16569:66;-1:-1:-1;16686:3:131;16671:19;;16658:33;-1:-1:-1;;;;;16740:14:131;;;16737:34;;;16767:1;16764;16757:12;16737:34;16790:61;16843:7;16834:6;16823:9;16819:22;16790:61;:::i;:::-;16780:71;;16904:3;16893:9;16889:19;16876:33;16860:49;;16934:2;16924:8;16921:16;16918:36;;;16950:1;16947;16940:12;16918:36;;16973:63;17028:7;17017:8;17006:9;17002:24;16973:63;:::i;:::-;16963:73;;;16191:851;;;;;;;:::o;17252:261::-;17433:2;17422:9;17415:21;17396:4;17453:54;17503:2;17492:9;17488:18;17480:6;17453:54;:::i;17518:1357::-;17645:6;17653;17706:2;17694:9;17685:7;17681:23;17677:32;17674:52;;;17722:1;17719;17712:12;17674:52;17749:23;;-1:-1:-1;;;;;17821:14:131;;;17818:34;;;17848:1;17845;17838:12;17818:34;17871:61;17924:7;17915:6;17904:9;17900:22;17871:61;:::i;:::-;17861:71;;17951:2;17941:12;;18006:2;17995:9;17991:18;17978:32;18035:2;18025:8;18022:16;18019:36;;;18051:1;18048;18041:12;18019:36;18074:24;;18129:4;18121:13;;18117:27;-1:-1:-1;18107:55:131;;18158:1;18155;18148:12;18107:55;18194:2;18181:16;18217:60;18233:43;18273:2;18233:43;:::i;18217:60::-;18311:15;;;18393:1;18389:10;;;;18381:19;;18377:28;;;18342:12;;;;18417:19;;;18414:39;;;18449:1;18446;18439:12;18414:39;18481:2;18477;18473:11;18493:352;18509:6;18504:3;18501:15;18493:352;;;18595:3;18582:17;18631:2;18618:11;18615:19;18612:109;;;18675:1;18704:2;18700;18693:14;18612:109;18746:56;18794:7;18789:2;18775:11;18771:2;18767:20;18763:29;18746:56;:::i;:::-;18734:69;;-1:-1:-1;18823:12:131;;;;18526;;18493:352;;;18497:3;18864:5;18854:15;;;;;;;;17518:1357;;;;;:::o;18880:826::-;19113:2;19165:21;;;19235:13;;19138:18;;;19257:22;;;19084:4;;19113:2;19298;;19316:18;;;;19357:15;;;19084:4;19400:280;19414:6;19411:1;19408:13;19400:280;;;19473:13;;19515:9;;-1:-1:-1;;;;;19511:35:131;19499:48;;19587:11;;19581:18;19567:12;;;19560:40;19620:12;;;;19655:15;;;;19543:1;19429:9;19400:280;;;-1:-1:-1;19697:3:131;;18880:826;-1:-1:-1;;;;;;;18880:826:131:o;19711:348::-;19763:8;19773:6;19827:3;19820:4;19812:6;19808:17;19804:27;19794:55;;19845:1;19842;19835:12;19794:55;-1:-1:-1;19868:20:131;;-1:-1:-1;;;;;19900:30:131;;19897:50;;;19943:1;19940;19933:12;19897:50;19980:4;19972:6;19968:17;19956:29;;20032:3;20025:4;20016:6;20008;20004:19;20000:30;19997:39;19994:59;;;20049:1;20046;20039:12;20064:788;20164:6;20172;20180;20188;20196;20249:2;20237:9;20228:7;20224:23;20220:32;20217:52;;;20265:1;20262;20255:12;20217:52;20288:23;;;-1:-1:-1;20362:2:131;20347:18;;20334:32;-1:-1:-1;;;;;20415:14:131;;;20412:34;;;20442:1;20439;20432:12;20412:34;20481:59;20532:7;20523:6;20512:9;20508:22;20481:59;:::i;:::-;20559:8;;-1:-1:-1;20455:85:131;-1:-1:-1;20647:2:131;20632:18;;20619:32;;-1:-1:-1;20663:16:131;;;20660:36;;;20692:1;20689;20682:12;20660:36;;20731:61;20784:7;20773:8;20762:9;20758:24;20731:61;:::i;:::-;20064:788;;;;-1:-1:-1;20064:788:131;;-1:-1:-1;20811:8:131;;20705:87;20064:788;-1:-1:-1;;;20064:788:131:o;20857:118::-;20943:5;20936:13;20929:21;20922:5;20919:32;20909:60;;20965:1;20962;20955:12;20980:241;21036:6;21089:2;21077:9;21068:7;21064:23;21060:32;21057:52;;;21105:1;21102;21095:12;21057:52;21144:9;21131:23;21163:28;21185:5;21163:28;:::i;21456:1033::-;-1:-1:-1;;;;;21958:15:131;;;21940:34;;22010:15;;;22005:2;21990:18;;21983:43;22062:15;;22057:2;22042:18;;22035:43;22109:2;22094:18;;22087:34;;;22152:3;22137:19;;22130:35;;;21889:3;21874:19;;22174:44;22211:6;22174:44;:::i;:::-;22255:6;22249:3;22238:9;22234:19;22227:35;22299:6;22293:3;22282:9;22278:19;22271:35;22343:6;22337:3;22326:9;22322:19;22315:35;22387:6;22381:3;22370:9;22366:19;22359:35;22431:6;22425:3;22414:9;22410:19;22403:35;22475:7;22469:3;22458:9;22454:19;22447:36;21456:1033;;;;;;;;;;;;;;:::o;22494:328::-;22562:6;22570;22623:2;22611:9;22602:7;22598:23;22594:32;22591:52;;;22639:1;22636;22629:12;22591:52;22675:9;22662:23;22652:33;;22735:2;22724:9;22720:18;22707:32;22748:44;22786:5;22748:44;:::i;22827:239::-;22970:2;22955:18;;22982:44;23019:6;22982:44;:::i;:::-;23035:25;;;22827:239;:::o;23071:388::-;23148:6;23156;23209:2;23197:9;23188:7;23184:23;23180:32;23177:52;;;23225:1;23222;23215:12;23177:52;23248:23;;;-1:-1:-1;23322:2:131;23307:18;;23294:32;-1:-1:-1;;;;;23338:30:131;;23335:50;;;23381:1;23378;23371:12;23464:220;23613:2;23602:9;23595:21;23576:4;23633:45;23674:2;23663:9;23659:18;23651:6;23633:45;:::i;23689:380::-;23768:1;23764:12;;;;23811;;;23832:61;;23886:4;23878:6;23874:17;23864:27;;23832:61;23939:2;23931:6;23928:14;23908:18;23905:38;23902:161;;23985:10;23980:3;23976:20;23973:1;23966:31;24020:4;24017:1;24010:15;24048:4;24045:1;24038:15;24688:127;24749:10;24744:3;24740:20;24737:1;24730:31;24780:4;24777:1;24770:15;24804:4;24801:1;24794:15;24820:128;24887:9;;;24908:11;;;24905:37;;;24922:18;;:::i;24953:345::-;-1:-1:-1;;;;;25173:32:131;;;;25155:51;;25237:2;25222:18;;25215:34;;;;25280:2;25265:18;;25258:34;25143:2;25128:18;;24953:345::o;25303:125::-;25368:9;;;25389:10;;;25386:36;;;25402:18;;:::i;25433:345::-;25635:25;;;-1:-1:-1;;;;;25696:32:131;;;;25691:2;25676:18;;25669:60;25760:2;25745:18;;25738:34;25623:2;25608:18;;25433:345::o;25783:279::-;25868:6;25921:2;25909:9;25900:7;25896:23;25892:32;25889:52;;;25937:1;25934;25927:12;25889:52;25969:9;25963:16;25988:44;26026:5;25988:44;:::i;26067:447::-;26298:25;;;-1:-1:-1;;;;;26397:15:131;;;26392:2;26377:18;;26370:43;26449:15;;26444:2;26429:18;;26422:43;26496:2;26481:18;;26474:34;26285:3;26270:19;;26067:447::o;26519:127::-;26580:10;26575:3;26571:20;26568:1;26561:31;26611:4;26608:1;26601:15;26635:4;26632:1;26625:15;26651:217;26691:1;26717;26707:132;;26761:10;26756:3;26752:20;26749:1;26742:31;26796:4;26793:1;26786:15;26824:4;26821:1;26814:15;26707:132;-1:-1:-1;26853:9:131;;26651:217::o;26873:193::-;26911:3;-1:-1:-1;;;;;26944:30:131;;;26983:41;;27004:18;;:::i;:::-;-1:-1:-1;;27040:20:131;;26873:193;-1:-1:-1;;26873:193:131:o;27071:168::-;27144:9;;;27175;;27192:15;;;27186:22;;27172:37;27162:71;;27213:18;;:::i;27244:408::-;27446:2;27428:21;;;27485:2;27465:18;;;27458:30;-1:-1:-1;;;;;;;;;;;27519:2:131;27504:18;;27497:62;-1:-1:-1;;;27590:2:131;27575:18;;27568:42;27642:3;27627:19;;27244:408::o;27657:::-;27859:2;27841:21;;;27898:2;27878:18;;;27871:30;-1:-1:-1;;;;;;;;;;;27932:2:131;27917:18;;27910:62;-1:-1:-1;;;28003:2:131;27988:18;;27981:42;28055:3;28040:19;;27657:408::o;28495:407::-;28697:2;28679:21;;;28736:2;28716:18;;;28709:30;28775:34;28770:2;28755:18;;28748:62;-1:-1:-1;;;28841:2:131;28826:18;;28819:41;28892:3;28877:19;;28495:407::o;28907:304::-;-1:-1:-1;;;;;29137:15:131;;;29119:34;;29189:15;;29184:2;29169:18;;29162:43;29069:2;29054:18;;28907:304::o;29216:245::-;29283:6;29336:2;29324:9;29315:7;29311:23;29307:32;29304:52;;;29352:1;29349;29342:12;29304:52;29384:9;29378:16;29403:28;29425:5;29403:28;:::i;29466:184::-;29536:6;29589:2;29577:9;29568:7;29564:23;29560:32;29557:52;;;29605:1;29602;29595:12;29557:52;-1:-1:-1;29628:16:131;;29466:184;-1:-1:-1;29466:184:131:o;29655:151::-;29734:13;;29756:44;29734:13;29756:44;:::i;:::-;29655:151;;;:::o;30080:248::-;30254:25;;;30310:2;30295:18;;30288:34;30242:2;30227:18;;30080:248::o;30333:274::-;30507:25;;;-1:-1:-1;;;;;30568:32:131;30563:2;30548:18;;30541:60;30495:2;30480:18;;30333:274::o;30612:266::-;30700:6;30695:3;30688:19;30752:6;30745:5;30738:4;30733:3;30729:14;30716:43;-1:-1:-1;30804:1:131;30779:16;;;30797:4;30775:27;;;30768:38;;;;30860:2;30839:15;;;-1:-1:-1;;30835:29:131;30826:39;;;30822:50;;30612:266::o;30883:315::-;31068:6;31057:9;31050:25;31111:2;31106;31095:9;31091:18;31084:30;31031:4;31131:61;31188:2;31177:9;31173:18;31165:6;31157;31131:61;:::i;:::-;31123:69;30883:315;-1:-1:-1;;;;;30883:315:131:o;31203:209::-;31241:3;-1:-1:-1;;;;;31311:14:131;;;-1:-1:-1;;;;;;31337:15:131;;31334:41;;31355:18;;:::i;:::-;31404:1;31391:15;;31203:209;-1:-1:-1;;;31203:209:131:o;31417:682::-;-1:-1:-1;;;;;31775:15:131;;;31757:34;;31822:2;31807:18;;31800:34;;;31865:2;31850:18;;31843:34;;;31913:15;;31908:2;31893:18;;31886:43;31966:3;31960;31945:19;;31938:32;;;31700:4;;31987:62;;32029:19;;32021:6;32013;31987:62;:::i;:::-;31979:70;;32086:6;32080:3;32069:9;32065:19;32058:35;31417:682;;;;;;;;;;:::o;32104:135::-;32143:3;32164:17;;;32161:43;;32184:18;;:::i;:::-;-1:-1:-1;32231:1:131;32220:13;;32104:135::o;32244:396::-;32310:5;32358:4;32346:9;32341:3;32337:19;32333:30;32330:50;;;32376:1;32373;32366:12;32330:50;32398:22;;:::i;:::-;32389:31;;32449:9;32443:16;32436:5;32429:31;32513:2;32502:9;32498:18;32492:25;32487:2;32480:5;32476:14;32469:49;32571:2;32560:9;32556:18;32550:25;32545:2;32538:5;32534:14;32527:49;32629:2;32618:9;32614:18;32608:25;32603:2;32596:5;32592:14;32585:49;32244:396;;;;:::o;32645:157::-;32734:13;;32776:1;32766:12;;32756:40;;32792:1;32789;32782:12;32807:156;32895:13;;32937:1;32927:12;;32917:40;;32953:1;32950;32943:12;32968:420;33043:5;33091:4;33079:9;33074:3;33070:19;33066:30;33063:50;;;33109:1;33106;33099:12;33063:50;33142:2;33136:9;33184:4;33172:17;;-1:-1:-1;;;;;33204:34:131;;33240:22;;;33201:62;33198:88;;;33266:18;;:::i;:::-;33302:2;33295:22;33365:16;;33350:32;;-1:-1:-1;33335:6:131;32968:420;-1:-1:-1;32968:420:131:o;33393:696::-;33467:5;33515:4;33503:9;33498:3;33494:19;33490:30;33487:50;;;33533:1;33530;33523:12;33487:50;33555:22;;:::i;:::-;33546:31;;33607:9;33601:16;33626:46;33664:7;33626:46;:::i;:::-;33681:22;;33748:2;33733:18;;33727:25;33761:46;33727:25;33761:46;:::i;:::-;33839:7;33834:2;33827:5;33823:14;33816:31;;33900:2;33889:9;33885:18;33879:25;33874:2;33867:5;33863:14;33856:49;33958:2;33947:9;33943:18;33937:25;33932:2;33925:5;33921:14;33914:49;34017:3;34006:9;34002:19;33996:26;33990:3;33983:5;33979:15;33972:51;34077:3;34066:9;34062:19;34056:26;34050:3;34043:5;34039:15;34032:51;33393:696;;;;:::o;34094:747::-;34159:5;34212:3;34205:4;34197:6;34193:17;34189:27;34179:55;;34230:1;34227;34220:12;34179:55;34259:6;34253:13;34285:4;34309:60;34325:43;34365:2;34325:43;:::i;34309:60::-;34403:15;;;34489:1;34485:10;;;;34473:23;;34469:32;;;34434:12;;;;34513:15;;;34510:35;;;34541:1;34538;34531:12;34510:35;34577:2;34569:6;34565:15;34589:223;34605:6;34600:3;34597:15;34589:223;;;34678:3;34672:10;34695:44;34733:5;34695:44;:::i;:::-;34752:18;;34790:12;;;;34622;;34589:223;;34846:1281;34965:6;35018:2;35006:9;34997:7;34993:23;34989:32;34986:52;;;35034:1;35031;35024:12;34986:52;35061:16;;-1:-1:-1;;;;;35126:14:131;;;35123:34;;;35153:1;35150;35143:12;35123:34;35176:22;;;;35232:6;35214:16;;;35210:29;35207:49;;;35252:1;35249;35242:12;35207:49;35278:22;;:::i;:::-;35323:50;35365:7;35361:2;35323:50;:::i;:::-;35316:5;35309:65;35406:53;35454:3;35450:2;35446:12;35406:53;:::i;:::-;35401:2;35394:5;35390:14;35383:77;35494:52;35541:3;35537:2;35533:12;35494:52;:::i;:::-;35487:4;35480:5;35476:16;35469:78;35581:69;35642:7;35636:3;35632:2;35628:12;35581:69;:::i;:::-;35574:4;35567:5;35563:16;35556:95;35684:68;35744:7;35738:3;35734:2;35730:12;35684:68;:::i;:::-;35678:3;35671:5;35667:15;35660:93;35786:43;35824:3;35820:2;35816:12;35786:43;:::i;:::-;35780:3;35773:5;35769:15;35762:68;35863:43;35901:3;35897:2;35893:12;35863:43;:::i;:::-;35857:3;35850:5;35846:15;35839:68;35946:3;35942:2;35938:12;35932:19;35976:2;35966:8;35963:16;35960:36;;;35992:1;35989;35982:12;35960:36;36029:67;36088:7;36077:8;36073:2;36069:17;36029:67;:::i;:::-;36023:3;36012:15;;36005:92;-1:-1:-1;36016:5:131;34846:1281;-1:-1:-1;;;;;34846:1281:131:o;36132:261::-;36212:5;36206:12;36201:3;36194:25;36268:4;36261:5;36257:16;36251:23;36244:4;36239:3;36235:14;36228:47;36324:4;36317:5;36313:16;36307:23;36300:4;36295:3;36291:14;36284:47;36380:4;36373:5;36369:16;36363:23;36356:4;36351:3;36347:14;36340:47;;;36132:261::o;36840:461::-;36893:3;36931:5;36925:12;36958:6;36953:3;36946:19;36984:4;37013:2;37008:3;37004:12;36997:19;;37050:2;37043:5;37039:14;37071:1;37081:195;37095:6;37092:1;37089:13;37081:195;;;37160:13;;-1:-1:-1;;;;;37156:39:131;37144:52;;37216:12;;;;37251:15;;;;37192:1;37110:9;37081:195;;;-1:-1:-1;37292:3:131;;36840:461;-1:-1:-1;;;;;36840:461:131:o;37306:1267::-;37561:6;37550:9;37543:25;37604:2;37599;37588:9;37584:18;37577:30;37616:61;37673:2;37662:9;37658:18;37649:6;37643:13;37616:61;:::i;:::-;37524:4;37724:2;37716:6;37712:15;37706:22;37737:63;37795:3;37784:9;37780:19;37766:12;37737:63;:::i;:::-;;37849:2;37841:6;37837:15;37831:22;37862:64;37921:3;37910:9;37906:19;37890:14;37862:64;:::i;:::-;-1:-1:-1;37987:4:131;37975:17;;;37969:24;37963:31;37957:3;37942:19;;37935:60;38044:4;38032:17;;;38026:24;36522:12;;-1:-1:-1;;;;;36518:21:131;;;38125:3;38110:19;;36506:34;36593:4;36582:16;;36576:23;36572:32;36556:14;;;36549:56;36654:4;36643:16;;36637:23;36621:14;;;36614:47;36699:16;;;36693:23;36677:14;;;36670:47;36755:16;;36749:23;36733:14;;;36726:47;36486:3;36811:16;;;36805:23;36789:14;;;36782:47;38167:17;;38161:24;38194:55;38244:3;38229:19;;38161:24;38194:55;:::i;:::-;;38298:3;38290:6;38286:16;38280:23;38322:6;38337:54;38387:2;38376:9;38372:18;38356:14;38337:54;:::i;:::-;38440:3;38432:6;38428:16;38422:23;38400:45;;38482:2;38476:3;38465:9;38461:19;38454:31;;38502:65;38562:3;38551:9;38547:19;38531:14;38502:65;:::i;40063:252::-;40251:3;40236:19;;40264:45;40240:9;40291:6;40264:45;:::i;40320:319::-;40522:25;;;40578:2;40563:18;;40556:34;;;;40621:2;40606:18;;40599:34;40510:2;40495:18;;40320:319::o;40644:726::-;40710:5;40758:4;40746:9;40741:3;40737:19;40733:30;40730:50;;;40776:1;40773;40766:12;40730:50;40798:22;;:::i;:::-;40843:16;;40829:31;;40904:2;40889:18;;40883:25;40789:31;;-1:-1:-1;;;;;;40920:30:131;;40917:50;;;40963:1;40960;40953:12;40917:50;40986:22;;41039:4;41031:13;;41027:23;-1:-1:-1;41017:51:131;;41064:1;41061;41054:12;41017:51;41093:2;41087:9;41118:48;41134:31;41162:2;41134:31;:::i;41118:48::-;41189:2;41182:5;41175:17;41229:3;41224:2;41219;41215;41211:11;41207:20;41204:29;41201:49;;;41246:1;41243;41236:12;41201:49;41259:67;41323:2;41318;41311:5;41307:14;41302:2;41298;41294:11;41259:67;:::i;:::-;41353:2;41342:14;;41335:29;-1:-1:-1;41346:5:131;;40644:726;-1:-1:-1;;;40644:726:131:o;41375:1054::-;41467:6;41520:2;41508:9;41499:7;41495:23;41491:32;41488:52;;;41536:1;41533;41526:12;41488:52;41563:16;;-1:-1:-1;;;;;41628:14:131;;;41625:34;;;41655:1;41652;41645:12;41625:34;41678:22;;;;41734:4;41716:16;;;41712:27;41709:47;;;41752:1;41749;41742:12;41709:47;41778:22;;:::i;:::-;41829:2;41823:9;41816:5;41809:24;41871:2;41867;41863:11;41857:18;41884:46;41922:7;41884:46;:::i;:::-;41957:2;41946:14;;41939:31;42008:2;42000:11;;41994:18;42021:46;41994:18;42021:46;:::i;:::-;42094:2;42083:14;;42076:31;42146:2;42138:11;;42132:18;42162:16;;;42159:36;;;42191:1;42188;42181:12;42159:36;42227:65;42284:7;42273:8;42269:2;42265:17;42227:65;:::i;:::-;42222:2;42215:5;42211:14;42204:89;;42340:3;42336:2;42332:12;42326:19;42320:3;42313:5;42309:15;42302:44;42393:3;42389:2;42385:12;42379:19;42373:3;42366:5;42362:15;42355:44;42418:5;42408:15;;;;;41375:1054;;;;:::o;42434:1012::-;42537:6;42590:2;42578:9;42569:7;42565:23;42561:32;42558:52;;;42606:1;42603;42596:12;42558:52;42633:16;;-1:-1:-1;;;;;42698:14:131;;;42695:34;;;42725:1;42722;42715:12;42695:34;42748:22;;;;42804:4;42786:16;;;42782:27;42779:47;;;42822:1;42819;42812:12;42779:47;42848:22;;:::i;:::-;42899:2;42893:9;42886:5;42879:24;42941:2;42937;42933:11;42927:18;42954:46;42992:7;42954:46;:::i;:::-;43027:2;43016:14;;43009:31;43086:2;43078:11;;;43072:18;43056:14;;;43049:42;43129:2;43121:11;;43115:18;43142:46;43115:18;43142:46;:::i;:::-;43215:2;43204:14;;43197:31;43267:3;43259:12;;43253:19;43284:16;;;43281:36;;;43313:1;43310;43303:12;43281:36;43350:65;43407:7;43396:8;43392:2;43388:17;43350:65;:::i;:::-;43344:3;43333:15;;43326:90;-1:-1:-1;43337:5:131;42434:1012;-1:-1:-1;;;;;42434:1012:131:o;43860:545::-;43962:2;43957:3;43954:11;43951:448;;;43998:1;44023:5;44019:2;44012:17;44068:4;44064:2;44054:19;44138:2;44126:10;44122:19;44119:1;44115:27;44109:4;44105:38;44174:4;44162:10;44159:20;44156:47;;;-1:-1:-1;44197:4:131;44156:47;44252:2;44247:3;44243:12;44240:1;44236:20;44230:4;44226:31;44216:41;;44307:82;44325:2;44318:5;44315:13;44307:82;;;44370:17;;;44351:1;44340:13;44307:82;;;44311:3;;;43860:545;;;:::o;44581:1352::-;44701:10;;-1:-1:-1;;;;;44723:30:131;;44720:56;;;44756:18;;:::i;:::-;44785:97;44875:6;44835:38;44867:4;44861:11;44835:38;:::i;:::-;44829:4;44785:97;:::i;:::-;44937:4;;45001:2;44990:14;;45018:1;45013:663;;;;45720:1;45737:6;45734:89;;;-1:-1:-1;45789:19:131;;;45783:26;45734:89;-1:-1:-1;;44538:1:131;44534:11;;;44530:24;44526:29;44516:40;44562:1;44558:11;;;44513:57;45836:81;;44983:944;;45013:663;43807:1;43800:14;;;43844:4;43831:18;;-1:-1:-1;;45049:20:131;;;45167:236;45181:7;45178:1;45175:14;45167:236;;;45270:19;;;45264:26;45249:42;;45362:27;;;;45330:1;45318:14;;;;45197:19;;45167:236;;;45171:3;45431:6;45422:7;45419:19;45416:201;;;45492:19;;;45486:26;-1:-1:-1;;45575:1:131;45571:14;;;45587:3;45567:24;45563:37;45559:42;45544:58;45529:74;;45416:201;-1:-1:-1;;;;;45663:1:131;45647:14;;;45643:22;45630:36;;-1:-1:-1;44581:1352:131:o;46223:273::-;46291:6;46344:2;46332:9;46323:7;46319:23;46315:32;46312:52;;;46360:1;46357;46350:12;46312:52;46392:9;46386:16;46442:4;46435:5;46431:16;46424:5;46421:27;46411:55;;46462:1;46459;46452:12;46501:422;46590:1;46633:5;46590:1;46647:270;46668:7;46658:8;46655:21;46647:270;;;46727:4;46723:1;46719:6;46715:17;46709:4;46706:27;46703:53;;;46736:18;;:::i;:::-;46786:7;46776:8;46772:22;46769:55;;;46806:16;;;;46769:55;46885:22;;;;46845:15;;;;46647:270;;;46651:3;46501:422;;;;;:::o;46928:806::-;46977:5;47007:8;46997:80;;-1:-1:-1;47048:1:131;47062:5;;46997:80;47096:4;47086:76;;-1:-1:-1;47133:1:131;47147:5;;47086:76;47178:4;47196:1;47191:59;;;;47264:1;47259:130;;;;47171:218;;47191:59;47221:1;47212:10;;47235:5;;;47259:130;47296:3;47286:8;47283:17;47280:43;;;47303:18;;:::i;:::-;-1:-1:-1;;47359:1:131;47345:16;;47374:5;;47171:218;;47473:2;47463:8;47460:16;47454:3;47448:4;47445:13;47441:36;47435:2;47425:8;47422:16;47417:2;47411:4;47408:12;47404:35;47401:77;47398:159;;;-1:-1:-1;47510:19:131;;;47542:5;;47398:159;47589:34;47614:8;47608:4;47589:34;:::i;:::-;47659:6;47655:1;47651:6;47647:19;47638:7;47635:32;47632:58;;;47670:18;;:::i;:::-;47708:20;;46928:806;-1:-1:-1;;;46928:806:131:o;47739:131::-;47799:5;47828:36;47855:8;47849:4;47828:36;:::i;49607:324::-;-1:-1:-1;;;49837:24:131;;49886:1;49877:11;;49870:27;;;;49922:2;49913:12;;49607:324::o;50215:127::-;50276:10;50271:3;50267:20;50264:1;50257:31;50307:4;50304:1;50297:15;50331:4;50328:1;50321:15;50347:332;50554:6;50543:9;50536:25;50597:2;50592;50581:9;50577:18;50570:30;50517:4;50617:56;50669:2;50658:9;50654:18;50646:6;50617:56;:::i;50684:127::-;50745:10;50740:3;50736:20;50733:1;50726:31;50776:4;50773:1;50766:15;50800:4;50797:1;50790:15;51107:1185;51236:6;51267:2;51310;51298:9;51289:7;51285:23;51281:32;51278:52;;;51326:1;51323;51316:12;51278:52;51353:16;;-1:-1:-1;;;;;51381:30:131;;51378:50;;;51424:1;51421;51414:12;51378:50;51447:22;;51500:4;51492:13;;51488:27;-1:-1:-1;51478:55:131;;51529:1;51526;51519:12;51478:55;51558:2;51552:9;51581:60;51597:43;51637:2;51597:43;:::i;51581:60::-;51675:15;;;51757:1;51753:10;;;;51745:19;;51741:28;;;51706:12;;;;51781:19;;;51778:39;;;51813:1;51810;51803:12;51778:39;51837:11;;;;51857:405;51873:6;51868:3;51865:15;51857:405;;;51955:4;51949:3;51940:7;51936:17;51932:28;51929:118;;;52001:1;52030:2;52026;52019:14;51929:118;52073:22;;:::i;:::-;52122:10;;52108:25;;52175:12;;;52169:19;52153:14;;;52146:43;52202:18;;51899:4;51890:14;;;;52240:12;;;;51857:405;;52297:497;-1:-1:-1;;;;;52582:32:131;;;;52564:51;;52646:2;52631:18;;52624:34;;;;52689:2;52674:18;;52667:34;;;;52732:2;52717:18;;52710:34;52775:3;52760:19;;52753:35;52551:3;52536:19;;52297:497::o;54331:319::-;54523:25;;;54511:2;54496:18;;54557:44;54594:6;54557:44;:::i;:::-;54637:6;54632:2;54621:9;54617:18;54610:34;54331:319;;;;;:::o;54655:216::-;54719:9;;;54747:11;;;54694:3;54777:9;;54805:10;;54801:19;;54830:10;;54822:19;;54798:44;54795:70;;;54845:18;;:::i;55690:287::-;55819:3;55857:6;55851:13;55873:66;55932:6;55927:3;55920:4;55912:6;55908:17;55873:66;:::i;:::-;55955:16;;;;;55690:287;-1:-1:-1;;55690:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6348,"length":32},{"start":6412,"length":32},{"start":6571,"length":32},{"start":6635,"length":32},{"start":6755,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","addToAllowList(address[])":"7263cfe2","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getRegistryCommunityV0_1()":"6a6f69b4","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","removeFromAllowList(address[])":"a51312c8","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256),address[],address[])":"948e7a59","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"_proposalStatus\",\"type\":\"uint8\"}],\"name\":\"ProposalInvalidForAllocation\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV2\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"addToAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunityV0_1\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_1\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"removeFromAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"membersToAdd\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"membersToRemove\",\"type\":\"address[]\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":\"CVStrategyV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"enum ProposalStatus","name":"_proposalStatus","type":"uint8"}],"type":"error","name":"ProposalInvalidForAllocation"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersAdded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersRemoved","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}],"indexed":false}],"type":"event","name":"InitializedCV2","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"addToAllowList"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunityV0_1","outputs":[{"internalType":"contract RegistryCommunityV0_1","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"removeFromAllowList"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"address[]","name":"membersToAdd","type":"address[]"},{"internalType":"address[]","name":"membersToRemove","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":"CVStrategyV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)75152"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70106"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)75119":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)75152":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70106":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)75119"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","id":69757,"exportedSymbols":{"ArbitrableConfig":[65628],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"Clone":[3002],"CreateProposal":[65557],"IArbitrator":[75119],"ICollateralVault":[75152],"ISybilScorer":[70106],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:6410:99","nodes":[{"id":69196,"nodeType":"PragmaDirective","src":"42:24:99","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":69208,"nodeType":"ImportDirective","src":"68:263:99","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"./CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":69197,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"81:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69198,"name":"CVParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65637,"src":"101:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69199,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"115:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69200,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"133:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69201,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"150:17:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69202,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"173:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69203,"name":"Proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65606,"src":"195:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69204,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"209:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69205,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"229:15:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69206,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"250:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69207,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"270:30:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69211,"nodeType":"ImportDirective","src":"333:63:99","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":69209,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"341:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69210,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"355:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69213,"nodeType":"ImportDirective","src":"397:85:99","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":69212,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"405:21:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69215,"nodeType":"ImportDirective","src":"483:65:99","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":69214,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"491:5:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69217,"nodeType":"ImportDirective","src":"549:68:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":75153,"symbolAliases":[{"foreign":{"id":69216,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"557:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69219,"nodeType":"ImportDirective","src":"618:58:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":75120,"symbolAliases":[{"foreign":{"id":69218,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75119,"src":"626:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69242,"nodeType":"StructDefinition","src":"832:286:99","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":69222,"mutability":"mutable","name":"cvParams","nameLocation":"885:8:99","nodeType":"VariableDeclaration","scope":69242,"src":"876:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":69221,"nodeType":"UserDefinedTypeName","pathNode":{"id":69220,"name":"CVParams","nameLocations":["876:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"876:8:99"},"referencedDeclaration":65637,"src":"876:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69225,"mutability":"mutable","name":"proposalType","nameLocation":"912:12:99","nodeType":"VariableDeclaration","scope":69242,"src":"899:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":69224,"nodeType":"UserDefinedTypeName","pathNode":{"id":69223,"name":"ProposalType","nameLocations":["899:12:99"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"899:12:99"},"referencedDeclaration":65540,"src":"899:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":69228,"mutability":"mutable","name":"pointSystem","nameLocation":"942:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"930:23:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":69227,"nodeType":"UserDefinedTypeName","pathNode":{"id":69226,"name":"PointSystem","nameLocations":["930:11:99"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"930:11:99"},"referencedDeclaration":65545,"src":"930:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":69231,"mutability":"mutable","name":"pointConfig","nameLocation":"977:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"959:29:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":69230,"nodeType":"UserDefinedTypeName","pathNode":{"id":69229,"name":"PointSystemConfig","nameLocations":["959:17:99"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"959:17:99"},"referencedDeclaration":65614,"src":"959:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":69234,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"1011:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"994:33:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69233,"nodeType":"UserDefinedTypeName","pathNode":{"id":69232,"name":"ArbitrableConfig","nameLocations":["994:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"994:16:99"},"referencedDeclaration":65628,"src":"994:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69236,"mutability":"mutable","name":"registryCommunity","nameLocation":"1041:17:99","nodeType":"VariableDeclaration","scope":69242,"src":"1033:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69235,"name":"address","nodeType":"ElementaryTypeName","src":"1033:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69238,"mutability":"mutable","name":"sybilScorer","nameLocation":"1072:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"1064:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69237,"name":"address","nodeType":"ElementaryTypeName","src":"1064:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69241,"mutability":"mutable","name":"initialAllowlist","nameLocation":"1099:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"1089:26:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69239,"name":"address","nodeType":"ElementaryTypeName","src":"1089:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69240,"nodeType":"ArrayTypeName","src":"1089:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"839:30:99","scope":69757,"visibility":"public"},{"id":69756,"nodeType":"ContractDefinition","src":"1164:5287:99","nodes":[{"id":69252,"nodeType":"EventDefinition","src":"1377:65:99","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"1383:23:99","parameters":{"id":69251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69247,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1415:6:99","nodeType":"VariableDeclaration","scope":69252,"src":"1407:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69246,"name":"uint256","nodeType":"ElementaryTypeName","src":"1407:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69250,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1433:7:99","nodeType":"VariableDeclaration","scope":69252,"src":"1423:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69248,"name":"address","nodeType":"ElementaryTypeName","src":"1423:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69249,"nodeType":"ArrayTypeName","src":"1423:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1406:35:99"}},{"id":69259,"nodeType":"EventDefinition","src":"1447:63:99","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"1453:21:99","parameters":{"id":69258,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69254,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1483:6:99","nodeType":"VariableDeclaration","scope":69259,"src":"1475:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69253,"name":"uint256","nodeType":"ElementaryTypeName","src":"1475:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69257,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1501:7:99","nodeType":"VariableDeclaration","scope":69259,"src":"1491:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69255,"name":"address","nodeType":"ElementaryTypeName","src":"1491:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69256,"nodeType":"ArrayTypeName","src":"1491:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1474:35:99"}},{"id":69266,"nodeType":"EventDefinition","src":"1515:74:99","nodes":[],"anonymous":false,"eventSelector":"a489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf","name":"InitializedCV2","nameLocation":"1521:14:99","parameters":{"id":69265,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69261,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1544:6:99","nodeType":"VariableDeclaration","scope":69266,"src":"1536:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69260,"name":"uint256","nodeType":"ElementaryTypeName","src":"1536:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69264,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"1583:4:99","nodeType":"VariableDeclaration","scope":69266,"src":"1552:35:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69263,"nodeType":"UserDefinedTypeName","pathNode":{"id":69262,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1552:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1552:30:99"},"referencedDeclaration":69242,"src":"1552:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"1535:53:99"}},{"id":69273,"nodeType":"ErrorDefinition","src":"1760:88:99","nodes":[],"errorSelector":"94d57ead","name":"ProposalInvalidForAllocation","nameLocation":"1766:28:99","parameters":{"id":69272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69268,"mutability":"mutable","name":"_proposalId","nameLocation":"1803:11:99","nodeType":"VariableDeclaration","scope":69273,"src":"1795:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69267,"name":"uint256","nodeType":"ElementaryTypeName","src":"1795:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69271,"mutability":"mutable","name":"_proposalStatus","nameLocation":"1831:15:99","nodeType":"VariableDeclaration","scope":69273,"src":"1816:30:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":69270,"nodeType":"UserDefinedTypeName","pathNode":{"id":69269,"name":"ProposalStatus","nameLocations":["1816:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"1816:14:99"},"referencedDeclaration":65565,"src":"1816:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"}],"src":"1794:53:99"}},{"id":69317,"nodeType":"FunctionDefinition","src":"2019:473:99","nodes":[],"body":{"id":69316,"nodeType":"Block","src":"2103:389:99","nodes":[],"statements":[{"assignments":[69280],"declarations":[{"constant":false,"id":69280,"mutability":"mutable","name":"p","nameLocation":"2130:1:99","nodeType":"VariableDeclaration","scope":69316,"src":"2113:18:99","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69279,"nodeType":"UserDefinedTypeName","pathNode":{"id":69278,"name":"Proposal","nameLocations":["2113:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"2113:8:99"},"referencedDeclaration":65606,"src":"2113:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69284,"initialValue":{"baseExpression":{"id":69281,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"2134:9:99","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69283,"indexExpression":{"id":69282,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2144:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2134:22:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2113:43:99"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69301,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69295,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69285,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2183:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69286,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2185:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2183:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69287,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2203:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69288,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2218:8:99","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":65558,"src":"2203:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2183:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69290,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2230:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69291,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2232:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2230:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69292,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2250:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2265:9:99","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"2250:24:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2230:44:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:91:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69296,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2294:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2296:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2294:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69298,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2314:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69299,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2329:8:99","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"2314:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2294:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:154:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69306,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69302,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2341:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69303,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2343:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2341:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69304,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2361:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69305,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2376:8:99","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"2361:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2341:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:201:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69315,"nodeType":"IfStatement","src":"2166:320:99","trueBody":{"id":69314,"nodeType":"Block","src":"2395:91:99","statements":[{"errorCall":{"arguments":[{"id":69309,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2445:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69310,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2458:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69311,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2460:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2458:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}],"id":69308,"name":"ProposalInvalidForAllocation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69273,"src":"2416:28:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_enum$_ProposalStatus_$65565_$returns$__$","typeString":"function (uint256,enum ProposalStatus) pure"}},"id":69312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2416:59:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69313,"nodeType":"RevertStatement","src":"2409:66:99"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkProposalAllocationValidity","nameLocation":"2028:31:99","parameters":{"id":69276,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69275,"mutability":"mutable","name":"_proposalId","nameLocation":"2068:11:99","nodeType":"VariableDeclaration","scope":69317,"src":"2060:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69274,"name":"uint256","nodeType":"ElementaryTypeName","src":"2060:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2059:21:99"},"returnParameters":{"id":69277,"nodeType":"ParameterList","parameters":[],"src":"2103:0:99"},"scope":69756,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":69328,"nodeType":"FunctionDefinition","src":"2498:144:99","nodes":[],"body":{"id":69327,"nodeType":"Block","src":"2578:64:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69324,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"2617:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69323,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"2595:21:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":69325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2595:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"functionReturnParameters":69322,"id":69326,"nodeType":"Return","src":"2588:47:99"}]},"functionSelector":"6a6f69b4","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunityV0_1","nameLocation":"2507:24:99","parameters":{"id":69318,"nodeType":"ParameterList","parameters":[],"src":"2531:2:99"},"returnParameters":{"id":69322,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69321,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69328,"src":"2555:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":69320,"nodeType":"UserDefinedTypeName","pathNode":{"id":69319,"name":"RegistryCommunityV0_1","nameLocations":["2555:21:99"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"2555:21:99"},"referencedDeclaration":72403,"src":"2555:21:99","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"src":"2554:23:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":69430,"nodeType":"FunctionDefinition","src":"2648:879:99","nodes":[],"body":{"id":69429,"nodeType":"Block","src":"2732:795:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69339,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"2762:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69338,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"2742:19:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2742:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69341,"nodeType":"ExpressionStatement","src":"2742:28:99"},{"expression":{"id":69351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69342,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2781:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":69346,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"2834:23:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2859:12:99","subExpression":{"id":69347,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"2859:10:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69344,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"2816:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":69345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2822:11:99","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"2816:17:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":69349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2816:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69343,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75152,"src":"2799:16:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75152_$","typeString":"type(contract ICollateralVault)"}},"id":69350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2799:74:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"src":"2781:92:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69352,"nodeType":"ExpressionStatement","src":"2781:92:99"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69353,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2883:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75152","typeString":"contract ICollateralVault"}},"id":69355,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2899:10:99","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75124,"src":"2883:26:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":69356,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2883:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69357,"nodeType":"ExpressionStatement","src":"2883:28:99"},{"assignments":[69360],"declarations":[{"constant":false,"id":69360,"mutability":"mutable","name":"ip","nameLocation":"2960:2:99","nodeType":"VariableDeclaration","scope":69429,"src":"2922:40:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69359,"nodeType":"UserDefinedTypeName","pathNode":{"id":69358,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2922:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2922:30:99"},"referencedDeclaration":69242,"src":"2922:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":69367,"initialValue":{"arguments":[{"id":69363,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69332,"src":"2976:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":69364,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"2984:30:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":69365,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2983:32:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":69361,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2965:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69362,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2969:6:99","memberName":"decode","nodeType":"MemberAccess","src":"2965:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69366,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2965:51:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"2922:94:99"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69368,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3031:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69369,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3034:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3031:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69372,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3063:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69371,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3055:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69370,"name":"address","nodeType":"ElementaryTypeName","src":"3055:7:99","typeDescriptions":{}}},"id":69373,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3055:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3031:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69379,"nodeType":"IfStatement","src":"3027:94:99","trueBody":{"id":69378,"nodeType":"Block","src":"3067:54:99","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69375,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"3088:20:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69376,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3088:22:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69377,"nodeType":"RevertStatement","src":"3081:29:99"}]}},{"expression":{"id":69383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69380,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"3175:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69381,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3195:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3198:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3195:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3175:40:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69384,"nodeType":"ExpressionStatement","src":"3175:40:99"},{"expression":{"id":69388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69385,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"3226:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69386,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3241:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3244:12:99","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"3241:15:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"3226:30:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":69389,"nodeType":"ExpressionStatement","src":"3226:30:99"},{"expression":{"id":69393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69390,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"3266:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69391,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3280:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3283:11:99","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"3280:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"3266:28:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":69394,"nodeType":"ExpressionStatement","src":"3266:28:99"},{"expression":{"id":69398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69395,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"3304:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69396,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3318:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69397,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3321:11:99","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"3318:14:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"3304:28:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":69399,"nodeType":"ExpressionStatement","src":"3304:28:99"},{"expression":{"id":69405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69400,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"3342:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":69402,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3369:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69403,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3372:11:99","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"3369:14:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69401,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"3356:12:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":69404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3356:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"3342:42:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":69406,"nodeType":"ExpressionStatement","src":"3342:42:99"},{"expression":{"arguments":[{"expression":{"id":69408,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3409:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69409,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3412:16:99","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"3409:19:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":69410,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3430:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69411,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3433:8:99","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"3430:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":69415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3457:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69414,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3443:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69412,"name":"address","nodeType":"ElementaryTypeName","src":"3447:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69413,"nodeType":"ArrayTypeName","src":"3447:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69416,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3443:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":69420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3475:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3461:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69417,"name":"address","nodeType":"ElementaryTypeName","src":"3465:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69418,"nodeType":"ArrayTypeName","src":"3465:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69421,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3461:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69407,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"3394:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3394:84:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69423,"nodeType":"ExpressionStatement","src":"3394:84:99"},{"eventCall":{"arguments":[{"id":69425,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"3508:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69426,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3517:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":69424,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69266,"src":"3493:14:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":69427,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3493:27:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69428,"nodeType":"EmitStatement","src":"3488:32:99"}]},"baseFunctions":[66093],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":69336,"kind":"modifierInvocation","modifierName":{"id":69335,"name":"onlyAllo","nameLocations":["2723:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"2723:8:99"},"nodeType":"ModifierInvocation","src":"2723:8:99"}],"name":"initialize","nameLocation":"2657:10:99","overrides":{"id":69334,"nodeType":"OverrideSpecifier","overrides":[],"src":"2714:8:99"},"parameters":{"id":69333,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69330,"mutability":"mutable","name":"_poolId","nameLocation":"2676:7:99","nodeType":"VariableDeclaration","scope":69430,"src":"2668:15:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69329,"name":"uint256","nodeType":"ElementaryTypeName","src":"2668:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69332,"mutability":"mutable","name":"_data","nameLocation":"2698:5:99","nodeType":"VariableDeclaration","scope":69430,"src":"2685:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69331,"name":"bytes","nodeType":"ElementaryTypeName","src":"2685:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2667:37:99"},"returnParameters":{"id":69337,"nodeType":"ParameterList","parameters":[],"src":"2732:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69461,"nodeType":"FunctionDefinition","src":"3533:367:99","nodes":[],"body":{"id":69460,"nodeType":"Block","src":"3747:153:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69448,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69433,"src":"3778:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69449,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69436,"src":"3797:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"expression":{"id":69445,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"3757:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_1_$69756_$","typeString":"type(contract super CVStrategyV0_1)"}},"id":69447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3763:14:99","memberName":"_setPoolParams","nodeType":"MemberAccess","referencedDeclaration":68596,"src":"3757:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69450,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3757:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69451,"nodeType":"ExpressionStatement","src":"3757:50:99"},{"expression":{"arguments":[{"id":69453,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69439,"src":"3833:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69452,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"3817:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69454,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3817:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69455,"nodeType":"ExpressionStatement","src":"3817:29:99"},{"expression":{"arguments":[{"id":69457,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69442,"src":"3877:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69456,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"3856:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69458,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3856:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69459,"nodeType":"ExpressionStatement","src":"3856:37:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"3542:14:99","parameters":{"id":69443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69433,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3590:17:99","nodeType":"VariableDeclaration","scope":69461,"src":"3566:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69432,"nodeType":"UserDefinedTypeName","pathNode":{"id":69431,"name":"ArbitrableConfig","nameLocations":["3566:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3566:16:99"},"referencedDeclaration":65628,"src":"3566:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69436,"mutability":"mutable","name":"_cvParams","nameLocation":"3633:9:99","nodeType":"VariableDeclaration","scope":69461,"src":"3617:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69435,"nodeType":"UserDefinedTypeName","pathNode":{"id":69434,"name":"CVParams","nameLocations":["3617:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3617:8:99"},"referencedDeclaration":65637,"src":"3617:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69439,"mutability":"mutable","name":"membersToAdd","nameLocation":"3669:12:99","nodeType":"VariableDeclaration","scope":69461,"src":"3652:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69437,"name":"address","nodeType":"ElementaryTypeName","src":"3652:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69438,"nodeType":"ArrayTypeName","src":"3652:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69442,"mutability":"mutable","name":"membersToRemove","nameLocation":"3708:15:99","nodeType":"VariableDeclaration","scope":69461,"src":"3691:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69440,"name":"address","nodeType":"ElementaryTypeName","src":"3691:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69441,"nodeType":"ArrayTypeName","src":"3691:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3556:173:99"},"returnParameters":{"id":69444,"nodeType":"ParameterList","parameters":[],"src":"3747:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69487,"nodeType":"FunctionDefinition","src":"3906:332:99","nodes":[],"body":{"id":69486,"nodeType":"Block","src":"4119:119:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69476,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"4129:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4129:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69478,"nodeType":"ExpressionStatement","src":"4129:17:99"},{"expression":{"arguments":[{"id":69480,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"4171:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69481,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"4190:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"id":69482,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69470,"src":"4201:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":69483,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69473,"src":"4215:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69479,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"4156:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69484,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4156:75:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69485,"nodeType":"ExpressionStatement","src":"4156:75:99"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"3915:13:99","parameters":{"id":69474,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69464,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3962:17:99","nodeType":"VariableDeclaration","scope":69487,"src":"3938:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69463,"nodeType":"UserDefinedTypeName","pathNode":{"id":69462,"name":"ArbitrableConfig","nameLocations":["3938:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3938:16:99"},"referencedDeclaration":65628,"src":"3938:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69467,"mutability":"mutable","name":"_cvParams","nameLocation":"4005:9:99","nodeType":"VariableDeclaration","scope":69487,"src":"3989:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69466,"nodeType":"UserDefinedTypeName","pathNode":{"id":69465,"name":"CVParams","nameLocations":["3989:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3989:8:99"},"referencedDeclaration":65637,"src":"3989:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69470,"mutability":"mutable","name":"membersToAdd","nameLocation":"4041:12:99","nodeType":"VariableDeclaration","scope":69487,"src":"4024:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69468,"name":"address","nodeType":"ElementaryTypeName","src":"4024:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69469,"nodeType":"ArrayTypeName","src":"4024:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69473,"mutability":"mutable","name":"membersToRemove","nameLocation":"4080:15:99","nodeType":"VariableDeclaration","scope":69487,"src":"4063:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69471,"name":"address","nodeType":"ElementaryTypeName","src":"4063:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69472,"nodeType":"ArrayTypeName","src":"4063:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3928:173:99"},"returnParameters":{"id":69475,"nodeType":"ParameterList","parameters":[],"src":"4119:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69529,"nodeType":"FunctionDefinition","src":"4244:301:99","nodes":[],"body":{"id":69528,"nodeType":"Block","src":"4337:208:99","nodes":[],"statements":[{"assignments":[69499],"declarations":[{"constant":false,"id":69499,"mutability":"mutable","name":"pv","nameLocation":"4372:2:99","nodeType":"VariableDeclaration","scope":69528,"src":"4347:27:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":69497,"nodeType":"UserDefinedTypeName","pathNode":{"id":69496,"name":"ProposalSupport","nameLocations":["4347:15:99"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"4347:15:99"},"referencedDeclaration":65611,"src":"4347:15:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":69498,"nodeType":"ArrayTypeName","src":"4347:17:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":69507,"initialValue":{"arguments":[{"id":69502,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69489,"src":"4388:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":69503,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"4396:15:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":69504,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"4396:17:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":69505,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"4395:19:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":69500,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4377:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69501,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4381:6:99","memberName":"decode","nodeType":"MemberAccess","src":"4377:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4377:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4347:68:99"},{"body":{"id":69526,"nodeType":"Block","src":"4465:74:99","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":69520,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4511:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69522,"indexExpression":{"id":69521,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4514:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4511:5:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":69523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4517:10:99","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"4511:16:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69519,"name":"checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69317,"src":"4479:31:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":69524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4479:49:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69525,"nodeType":"ExpressionStatement","src":"4479:49:99"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69512,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4445:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69513,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4449:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69514,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4452:6:99","memberName":"length","nodeType":"MemberAccess","src":"4449:9:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4445:13:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69527,"initializationExpression":{"assignments":[69509],"declarations":[{"constant":false,"id":69509,"mutability":"mutable","name":"i","nameLocation":"4438:1:99","nodeType":"VariableDeclaration","scope":69527,"src":"4430:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69508,"name":"uint256","nodeType":"ElementaryTypeName","src":"4430:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69511,"initialValue":{"hexValue":"30","id":69510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4442:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"4430:13:99"},"loopExpression":{"expression":{"id":69517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4460:3:99","subExpression":{"id":69516,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4460:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69518,"nodeType":"ExpressionStatement","src":"4460:3:99"},"nodeType":"ForStatement","src":"4425:114:99"}]},"baseFunctions":[65437],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"4253:15:99","overrides":{"id":69493,"nodeType":"OverrideSpecifier","overrides":[],"src":"4328:8:99"},"parameters":{"id":69492,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69489,"mutability":"mutable","name":"_data","nameLocation":"4282:5:99","nodeType":"VariableDeclaration","scope":69529,"src":"4269:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69488,"name":"bytes","nodeType":"ElementaryTypeName","src":"4269:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":69491,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69529,"src":"4290:7:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69490,"name":"address","nodeType":"ElementaryTypeName","src":"4290:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4268:42:99"},"returnParameters":{"id":69494,"nodeType":"ParameterList","parameters":[],"src":"4337:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69589,"nodeType":"FunctionDefinition","src":"4551:526:99","nodes":[],"body":{"id":69588,"nodeType":"Block","src":"4631:446:99","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":69539,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"4653:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":69538,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4645:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69537,"name":"address","nodeType":"ElementaryTypeName","src":"4645:7:99","typeDescriptions":{}}},"id":69540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4645:20:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69543,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4677:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69542,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4669:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69541,"name":"address","nodeType":"ElementaryTypeName","src":"4669:7:99","typeDescriptions":{}}},"id":69544,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4669:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4645:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69578,"nodeType":"IfStatement","src":"4641:363:99","trueBody":{"id":69577,"nodeType":"Block","src":"4681:323:99","statements":[{"assignments":[69547],"declarations":[{"constant":false,"id":69547,"mutability":"mutable","name":"allowlistRole","nameLocation":"4703:13:99","nodeType":"VariableDeclaration","scope":69577,"src":"4695:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69546,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4695:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69555,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4746:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69552,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"4759:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69549,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4729:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4733:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"4729:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4729:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69548,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"4719:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69554,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4719:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"4695:72:99"},{"condition":{"arguments":[{"id":69559,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4820:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4843:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69561,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4835:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69560,"name":"address","nodeType":"ElementaryTypeName","src":"4835:7:99","typeDescriptions":{}}},"id":69563,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4835:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69556,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4785:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4812:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4785:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":69575,"nodeType":"Block","src":"4898:96:99","statements":[{"expression":{"arguments":[{"id":69571,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4958:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":69572,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"4973:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69568,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4923:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4950:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4923:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69574,"nodeType":"Return","src":"4916:63:99"}]},"id":69576,"nodeType":"IfStatement","src":"4781:213:99","trueBody":{"id":69567,"nodeType":"Block","src":"4848:44:99","statements":[{"expression":{"hexValue":"74727565","id":69565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4873:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":69536,"id":69566,"nodeType":"Return","src":"4866:11:99"}]}}]}},{"expression":{"arguments":[{"id":69581,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"5049:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":69584,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"5064:4:99","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}],"id":69583,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5056:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69582,"name":"address","nodeType":"ElementaryTypeName","src":"5056:7:99","typeDescriptions":{}}},"id":69585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5056:13:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":69579,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"5020:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":69580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5032:16:99","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"5020:28:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":69586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5020:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69587,"nodeType":"Return","src":"5013:57:99"}]},"baseFunctions":[66256],"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"4560:17:99","overrides":{"id":69533,"nodeType":"OverrideSpecifier","overrides":[],"src":"4607:8:99"},"parameters":{"id":69532,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69531,"mutability":"mutable","name":"_user","nameLocation":"4586:5:99","nodeType":"VariableDeclaration","scope":69589,"src":"4578:13:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69530,"name":"address","nodeType":"ElementaryTypeName","src":"4578:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4577:15:99"},"returnParameters":{"id":69536,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69535,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69589,"src":"4625:4:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69534,"name":"bool","nodeType":"ElementaryTypeName","src":"4625:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4624:6:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":69603,"nodeType":"FunctionDefinition","src":"5083:125:99","nodes":[],"body":{"id":69602,"nodeType":"Block","src":"5140:68:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69595,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5150:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69596,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5150:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69597,"nodeType":"ExpressionStatement","src":"5150:17:99"},{"expression":{"arguments":[{"id":69599,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69592,"src":"5193:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69598,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"5177:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69600,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5177:24:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69601,"nodeType":"ExpressionStatement","src":"5177:24:99"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"5092:14:99","parameters":{"id":69593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69592,"mutability":"mutable","name":"members","nameLocation":"5124:7:99","nodeType":"VariableDeclaration","scope":69603,"src":"5107:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69590,"name":"address","nodeType":"ElementaryTypeName","src":"5107:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69591,"nodeType":"ArrayTypeName","src":"5107:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5106:26:99"},"returnParameters":{"id":69594,"nodeType":"ParameterList","parameters":[],"src":"5140:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":69685,"nodeType":"FunctionDefinition","src":"5214:646:99","nodes":[],"body":{"id":69684,"nodeType":"Block","src":"5274:586:99","nodes":[],"statements":[{"assignments":[69610],"declarations":[{"constant":false,"id":69610,"mutability":"mutable","name":"allowlistRole","nameLocation":"5292:13:99","nodeType":"VariableDeclaration","scope":69684,"src":"5284:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69609,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5284:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69618,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69614,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5335:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69615,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5348:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69612,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5318:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69613,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5322:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5318:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5318:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69611,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5308:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5308:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"5284:72:99"},{"condition":{"arguments":[{"id":69622,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5406:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69625,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5429:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69624,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5421:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69623,"name":"address","nodeType":"ElementaryTypeName","src":"5421:7:99","typeDescriptions":{}}},"id":69626,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5421:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69619,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5371:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69620,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69621,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5398:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5371:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69639,"nodeType":"IfStatement","src":"5367:156:99","trueBody":{"id":69638,"nodeType":"Block","src":"5434:89:99","statements":[{"expression":{"arguments":[{"id":69631,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5486:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69634,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5509:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69633,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5501:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69632,"name":"address","nodeType":"ElementaryTypeName","src":"5501:7:99","typeDescriptions":{}}},"id":69635,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5501:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69628,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5448:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5475:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"5448:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69636,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:64:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69637,"nodeType":"ExpressionStatement","src":"5448:64:99"}]}},{"body":{"id":69677,"nodeType":"Block","src":"5577:223:99","statements":[{"condition":{"id":69659,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"5595:62:99","subExpression":{"arguments":[{"id":69654,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5631:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69655,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5646:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69657,"indexExpression":{"id":69656,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5654:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5646:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69651,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5596:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69652,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5623:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5596:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69658,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69676,"nodeType":"IfStatement","src":"5591:199:99","trueBody":{"id":69675,"nodeType":"Block","src":"5659:131:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69666,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5741:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69667,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5754:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69664,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5724:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69665,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5728:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5724:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69668,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5724:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69663,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5714:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5714:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69670,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5764:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69672,"indexExpression":{"id":69671,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5772:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5764:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69660,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5677:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69661,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5704:9:99","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":52543,"src":"5677:36:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:98:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69674,"nodeType":"ExpressionStatement","src":"5677:98:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69644,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5552:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69645,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5556:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5564:6:99","memberName":"length","nodeType":"MemberAccess","src":"5556:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5552:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69678,"initializationExpression":{"assignments":[69641],"declarations":[{"constant":false,"id":69641,"mutability":"mutable","name":"i","nameLocation":"5545:1:99","nodeType":"VariableDeclaration","scope":69678,"src":"5537:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69640,"name":"uint256","nodeType":"ElementaryTypeName","src":"5537:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69643,"initialValue":{"hexValue":"30","id":69642,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5549:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5537:13:99"},"loopExpression":{"expression":{"id":69649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5572:3:99","subExpression":{"id":69648,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5572:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69650,"nodeType":"ExpressionStatement","src":"5572:3:99"},"nodeType":"ForStatement","src":"5532:268:99"},{"eventCall":{"arguments":[{"id":69680,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5837:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69681,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5845:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69679,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69259,"src":"5815:21:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5815:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69683,"nodeType":"EmitStatement","src":"5810:43:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"5223:15:99","parameters":{"id":69607,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69606,"mutability":"mutable","name":"members","nameLocation":"5256:7:99","nodeType":"VariableDeclaration","scope":69685,"src":"5239:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69604,"name":"address","nodeType":"ElementaryTypeName","src":"5239:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69605,"nodeType":"ArrayTypeName","src":"5239:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5238:26:99"},"returnParameters":{"id":69608,"nodeType":"ParameterList","parameters":[],"src":"5274:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":69699,"nodeType":"FunctionDefinition","src":"5866:137:99","nodes":[],"body":{"id":69698,"nodeType":"Block","src":"5930:73:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69691,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5940:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5940:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69693,"nodeType":"ExpressionStatement","src":"5940:17:99"},{"expression":{"arguments":[{"id":69695,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69688,"src":"5988:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69694,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"5967:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69696,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5967:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69697,"nodeType":"ExpressionStatement","src":"5967:29:99"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"5875:19:99","parameters":{"id":69689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69688,"mutability":"mutable","name":"members","nameLocation":"5912:7:99","nodeType":"VariableDeclaration","scope":69699,"src":"5895:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69686,"name":"address","nodeType":"ElementaryTypeName","src":"5895:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69687,"nodeType":"ArrayTypeName","src":"5895:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5894:26:99"},"returnParameters":{"id":69690,"nodeType":"ParameterList","parameters":[],"src":"5930:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69755,"nodeType":"FunctionDefinition","src":"6009:440:99","nodes":[],"body":{"id":69754,"nodeType":"Block","src":"6074:375:99","nodes":[],"statements":[{"body":{"id":69747,"nodeType":"Block","src":"6129:258:99","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6209:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69723,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6222:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69720,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6192:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69721,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6196:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6192:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6192:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69719,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6182:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6182:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69726,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6232:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69728,"indexExpression":{"id":69727,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6240:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6232:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69716,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6147:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6174:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"6147:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69729,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:96:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69746,"nodeType":"IfStatement","src":"6143:234:99","trueBody":{"id":69745,"nodeType":"Block","src":"6245:132:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69736,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6328:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69737,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6341:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69734,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6311:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69735,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6315:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6311:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69738,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6311:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69733,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6301:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69739,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6301:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69740,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6351:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69742,"indexExpression":{"id":69741,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6359:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6351:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69730,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6263:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6290:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"6263:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:99:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69744,"nodeType":"ExpressionStatement","src":"6263:99:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69709,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6104:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69710,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6108:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6116:6:99","memberName":"length","nodeType":"MemberAccess","src":"6108:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6104:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69748,"initializationExpression":{"assignments":[69706],"declarations":[{"constant":false,"id":69706,"mutability":"mutable","name":"i","nameLocation":"6097:1:99","nodeType":"VariableDeclaration","scope":69748,"src":"6089:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69705,"name":"uint256","nodeType":"ElementaryTypeName","src":"6089:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69708,"initialValue":{"hexValue":"30","id":69707,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6101:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"6089:13:99"},"loopExpression":{"expression":{"id":69714,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"6124:3:99","subExpression":{"id":69713,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6124:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69715,"nodeType":"ExpressionStatement","src":"6124:3:99"},"nodeType":"ForStatement","src":"6084:303:99"},{"eventCall":{"arguments":[{"id":69750,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6426:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69751,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6434:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69749,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69252,"src":"6402:23:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6402:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69753,"nodeType":"EmitStatement","src":"6397:45:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"6018:20:99","parameters":{"id":69703,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69702,"mutability":"mutable","name":"members","nameLocation":"6056:7:99","nodeType":"VariableDeclaration","scope":69755,"src":"6039:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69700,"name":"address","nodeType":"ElementaryTypeName","src":"6039:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69701,"nodeType":"ArrayTypeName","src":"6039:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"6038:26:99"},"returnParameters":{"id":69704,"nodeType":"ParameterList","parameters":[],"src":"6074:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":69244,"name":"CVStrategyV0_0","nameLocations":["1191:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":69194,"src":"1191:14:99"},"id":69245,"nodeType":"InheritanceSpecifier","src":"1191:14:99"}],"canonicalName":"CVStrategyV0_1","contractDependencies":[],"contractKind":"contract","documentation":{"id":69243,"nodeType":"StructuredDocumentation","src":"1120:44:99","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69756,69194,57725,57931,65536,75015,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_1","nameLocation":"1173:14:99","scope":69757,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,69273,70122]}],"license":"AGPL-3.0-only"},"id":99} \ No newline at end of file +{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"D","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"DISPUTE_COOLDOWN_SEC","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_STAKED_PROPOSALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"RULING_OPTIONS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"activatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addToAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allocate","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"arbitrableConfigs","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateConviction","inputs":[{"name":"_timePassed","type":"uint256","internalType":"uint256"},{"name":"_lastConv","type":"uint256","internalType":"uint256"},{"name":"_oldAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"calculateThreshold","inputs":[{"name":"_requestedAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"_threshold","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"canExecuteProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"canBeExecuted","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"cancelProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVault","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ICollateralVault"}],"stateMutability":"view"},{"type":"function","name":"currentArbitrableConfigVersion","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"cvParams","inputs":[],"outputs":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"deactivatePoints","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"deactivatePoints","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToUnstake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"disputeCount","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"disputeIdToProposalId","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"disputeProposal","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"context","type":"string","internalType":"string"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeId","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"distribute","inputs":[{"name":"_recipientIds","type":"address[]","internalType":"address[]"},{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"getAllo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IAllo"}],"stateMutability":"view"},{"type":"function","name":"getArbitrableConfig","inputs":[],"outputs":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDecay","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMetadata","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"stateMutability":"view"},{"type":"function","name":"getPayouts","inputs":[{"name":"","type":"address[]","internalType":"address[]"},{"name":"","type":"bytes[]","internalType":"bytes[]"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct IStrategy.PayoutSummary[]","components":[{"name":"recipientAddress","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}]}],"stateMutability":"pure"},{"type":"function","name":"getPointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"getPoolAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getPoolId","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposal","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"voterStakedPoints","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalStakedAmount","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getProposalVoterStake","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRecipientStatus","inputs":[{"name":"_recipientId","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint8","internalType":"enum IStrategy.Status"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_0"}],"stateMutability":"view"},{"type":"function","name":"getRegistryCommunityV0_1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract RegistryCommunityV0_1"}],"stateMutability":"view"},{"type":"function","name":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getTotalVoterStakePct","inputs":[{"name":"_voter","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"increasePoolAmount","inputs":[{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increasePower","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_amountToStake","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"init","inputs":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_name","type":"string","internalType":"string"},{"name":"owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_poolId","type":"uint256","internalType":"uint256"},{"name":"_data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isPoolActive","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isValidAllocator","inputs":[{"name":"_allocator","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pointConfig","inputs":[],"outputs":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"pointSystem","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum PointSystem"}],"stateMutability":"view"},{"type":"function","name":"proposalCounter","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proposalType","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"enum ProposalType"}],"stateMutability":"view"},{"type":"function","name":"proposals","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"requestedAmount","type":"uint256","internalType":"uint256"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"convictionLast","type":"uint256","internalType":"uint256"},{"name":"beneficiary","type":"address","internalType":"address"},{"name":"submitter","type":"address","internalType":"address"},{"name":"requestedToken","type":"address","internalType":"address"},{"name":"blockLast","type":"uint256","internalType":"uint256"},{"name":"proposalStatus","type":"uint8","internalType":"enum ProposalStatus"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"disputeInfo","type":"tuple","internalType":"struct ProposalDisputeInfo","components":[{"name":"disputeId","type":"uint256","internalType":"uint256"},{"name":"disputeTimestamp","type":"uint256","internalType":"uint256"},{"name":"challenger","type":"address","internalType":"address"}]},{"name":"lastDisputeCompletion","type":"uint256","internalType":"uint256"},{"name":"arbitrableConfigVersion","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerRecipient","inputs":[{"name":"_data","type":"bytes","internalType":"bytes"},{"name":"_sender","type":"address","internalType":"address"}],"outputs":[{"name":"recipientId","type":"address","internalType":"address"}],"stateMutability":"payable"},{"type":"function","name":"registryCommunity","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeFromAllowList","inputs":[{"name":"members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"rule","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolActive","inputs":[{"name":"_active","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolParams","inputs":[{"name":"_arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"_cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"membersToAdd","type":"address[]","internalType":"address[]"},{"name":"membersToRemove","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"sybilScorer","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISybilScorer"}],"stateMutability":"view"},{"type":"function","name":"totalEffectiveActivePoints","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalPointsActivated","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalStaked","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalVoterStakePct","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProposalConviction","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"voterStakedProposals","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Allocated","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"token","type":"address","indexed":false,"internalType":"address"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AllowlistMembersAdded","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"AllowlistMembersRemoved","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"members","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"ArbitrableConfigUpdated","inputs":[{"name":"currentArbitrableConfigVersion","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRuling","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CVParamsUpdated","inputs":[{"name":"cvParams","type":"tuple","indexed":false,"internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]}],"anonymous":false},{"type":"event","name":"DisputeRequest","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_arbitrableDisputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_externalDisputeID","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_templateUri","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"beneficiary","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"recipientAddress","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"InitializedCV","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]}],"anonymous":false},{"type":"event","name":"InitializedCV2","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"data","type":"tuple","indexed":false,"internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"anonymous":false},{"type":"event","name":"MinThresholdPointsUpdated","inputs":[{"name":"before","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PointsDeactivated","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolActive","inputs":[{"name":"active","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"PoolAmountIncreased","inputs":[{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerDecreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensUnStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToDecrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"PowerIncreased","inputs":[{"name":"member","type":"address","indexed":false,"internalType":"address"},{"name":"tokensStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCancelled","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalCreated","inputs":[{"name":"poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"ProposalDisputed","inputs":[{"name":"arbitrator","type":"address","indexed":false,"internalType":"contract IArbitrator"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"disputeId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"challenger","type":"address","indexed":false,"internalType":"address"},{"name":"context","type":"string","indexed":false,"internalType":"string"},{"name":"timestamp","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"recipientId","type":"address","indexed":true,"internalType":"address"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"sender","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RegistryUpdated","inputs":[{"name":"registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrator","type":"address","indexed":true,"internalType":"contract IArbitrator"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SupportAdded","inputs":[{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"totalStakedAmount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"convictionLast","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"TribunaSafeRegistered","inputs":[{"name":"strategy","type":"address","indexed":false,"internalType":"address"},{"name":"arbitrator","type":"address","indexed":false,"internalType":"address"},{"name":"tribunalSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"AmountOverMaxRatio","inputs":[]},{"type":"error","name":"ArbitratorCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantIncreaseFixedSystem","inputs":[]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","inputs":[]},{"type":"error","name":"DisputeCooldownNotPassed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_remainingSec","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"sentAmount","type":"uint256","internalType":"uint256"},{"name":"requiredAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"MaxPointsReached","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"NotImplemented","inputs":[]},{"type":"error","name":"OnlyArbitrator","inputs":[]},{"type":"error","name":"OnlyCommunityAllowed","inputs":[]},{"type":"error","name":"OnlyCouncilSafe","inputs":[]},{"type":"error","name":"OnlySubmitter","inputs":[{"name":"submitter","type":"address","internalType":"address"},{"name":"sender","type":"address","internalType":"address"}]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"PoolAmountNotEnough","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_requestedAmount","type":"uint256","internalType":"uint256"},{"name":"_poolAmount","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PoolIdCannotBeZero","inputs":[]},{"type":"error","name":"PoolIsEmpty","inputs":[]},{"type":"error","name":"ProposalDataIsEmpty","inputs":[]},{"type":"error","name":"ProposalIdCannotBeZero","inputs":[]},{"type":"error","name":"ProposalInvalidForAllocation","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_proposalStatus","type":"uint8","internalType":"enum ProposalStatus"}]},{"type":"error","name":"ProposalNotActive","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotDisputed","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalNotInList","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ProposalSupportDuplicated","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SupportUnderflow","inputs":[{"name":"_support","type":"uint256","internalType":"uint256"},{"name":"_delta","type":"int256","internalType":"int256"},{"name":"_result","type":"int256","internalType":"int256"}]},{"type":"error","name":"TokenCannotBeZero","inputs":[]},{"type":"error","name":"TokenNotAllowed","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotBeZero","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161709d6200004d600039600081816118cc0152818161190c015281816119ab015281816119eb0152611a63015261709d6000f3fe6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212201bd6ac52010068b79761b1006302aeb829e13b155c63266d810eba53b8eb9b1264736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;1088:4:64;1045:48;;1164:5287:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106103795760003560e01c8063013cf08b1461038257806301ffc9a7146103c4578063059351cd146103f4578063062f9ece146104815780630a6f0ee9146104a15780630ba95909146104c15780630bece79c146104e05780630c0512e91461050d5780630f529ba214610523578063125fd1d91461053a57806315cc481e14610550578063184b95591461056e5780631aa91a9e1461058e5780631ddf1e23146105ae5780632506b870146105c3578063255ffb38146106065780632bbe0cae146106335780632dbd6fdd146106465780632ed04b2b14610672578063311a6c561461069257806333960459146106b2578063346db8cb146106c8578063351d9f96146106e85780633659cfe61461070f57806338fff2d01461072f578063406244d81461074457806341bb76051461075957806342fda9c7146107b657806348f19c1d146107cb5780634ab4ba42146107e05780634d31d087146107f55780634f1ef2861461081557806352d1902d1461082857806359a5db8b1461083d5780635db64b991461085d5780636003e4141461088a57806360d5dedc146108aa578063626c47e8146108ca5780636453d9c4146108df5780636a6f69b4146107cb578063715018a6146108ff5780637263cfe214610914578063782aadff14610934578063814516ad14610954578063817b1cd214610969578063824ea8ed1461097f578063868c57b81461099f5780638da5cb5b146109bf578063948e7a59146109d4578063950559d7146109f45780639a1c157c14610a14578063a0cf0aea14610a29578063a28889e114610a51578063a47ff7e514610a89578063a51312c814610aa0578063a574cea414610ac0578063aba9ffee14610aed578063ac1ed7b914610b03578063b0d3713a14610b23578063b2b878d014610b43578063b41596ec14610b70578063b5f620ce14610b83578063b6c61f3114610ba3578063bcc5b93b14610bc3578063c329217114610be3578063c4d66de814610c00578063c7f758a814610c20578063d1e3623214610c57578063dc96ff2d14610c6c578063df868ed314610c9c578063e0a8f6f514610cb1578063e0dd2c3814610cd1578063eb11af9314610cf1578063edd146cc14610d19578063ef2920fc14610d39578063f2fde38b14610d4c578063f5b0dfb714610d6c578063f5be3f7c14610d8c578063ffa1ad7414610da257005b3661038057005b005b34801561038e57600080fd5b506103a261039d3660046157fb565b610dde565b6040516103bb9d9c9b9a999897969594939291906158b6565b60405180910390f35b3480156103d057600080fd5b506103e46103df366004615958565b610f2c565b60405190151581526020016103bb565b34801561040057600080fd5b50610449606f546000908152607f60205260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169694909316949193909290565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c0016103bb565b34801561048d57600080fd5b5061038061049c366004615b3e565b610f63565b3480156104ad57600080fd5b506103806104bc366004615c8b565b610f79565b3480156104cd57600080fd5b506077545b6040519081526020016103bb565b3480156104ec57600080fd5b50607954610500906001600160a01b031681565b6040516103bb9190615d02565b34801561051957600080fd5b506104d2606e5481565b34801561052f57600080fd5b506104d26298968081565b34801561054657600080fd5b506104d2606f5481565b34801561055c57600080fd5b506065546001600160a01b0316610500565b34801561057a57600080fd5b50610380610589366004615d16565b610f99565b34801561059a57600080fd5b506104d26105a93660046157fb565b6110f9565b3480156105ba57600080fd5b50610380611143565b3480156105cf57600080fd5b506072546073546074546075546105e69392919084565b6040805194855260208501939093529183015260608201526080016103bb565b34801561061257600080fd5b506104d26106213660046157fb565b607e6020526000908152604090205481565b610500610641366004615d56565b61114e565b34801561065257600080fd5b5060765461066590610100900460ff1681565b6040516103bb9190615dbb565b34801561067e57600080fd5b506104d261068d366004615dc9565b611171565b34801561069e57600080fd5b506103806106ad366004615df5565b611235565b3480156106be57600080fd5b506104d2606c5481565b3480156106d457600080fd5b506104d26106e3366004615e17565b611827565b3480156106f457600080fd5b506076546107029060ff1681565b6040516103bb9190615e53565b34801561071b57600080fd5b5061038061072a366004615e61565b6118c2565b34801561073b57600080fd5b506068546104d2565b34801561075057600080fd5b506104d2600a81565b34801561076557600080fd5b506104496107743660046157fb565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b3480156107c257600080fd5b506066546104d2565b3480156107d757600080fd5b5061050061198a565b3480156107ec57600080fd5b506069546104d2565b34801561080157600080fd5b506103e4610810366004615e61565b611999565b610380610823366004615e7e565b6119a1565b34801561083457600080fd5b506104d2611a56565b34801561084957600080fd5b506104d26108583660046157fb565b611b04565b34801561086957600080fd5b506104d2610878366004615e61565b607c6020526000908152604090205481565b34801561089657600080fd5b50607854610500906001600160a01b031681565b3480156108b657600080fd5b506103806108c5366004615ecd565b611c1e565b3480156108d657600080fd5b506104d2600381565b3480156108eb57600080fd5b506103806108fa366004615e61565b611c9a565b34801561090b57600080fd5b50610380611cab565b34801561092057600080fd5b5061038061092f366004615f28565b611cbd565b34801561094057600080fd5b506104d261094f366004615dc9565b611cce565b34801561096057600080fd5b50610380611e64565b34801561097557600080fd5b506104d260705481565b34801561098b57600080fd5b506103e461099a3660046157fb565b611f81565b3480156109ab57600080fd5b506104d26109ba366004615dc9565b611fde565b3480156109cb57600080fd5b5061050061200f565b3480156109e057600080fd5b506103806109ef366004615f5c565b6120a0565b348015610a0057600080fd5b506104d2610a0f3660046157fb565b6120b4565b348015610a2057600080fd5b506074546104d2565b348015610a3557600080fd5b5061050073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a5d57600080fd5b50606d54610a71906001600160401b031681565b6040516001600160401b0390911681526020016103bb565b348015610a9557600080fd5b506077546104d29081565b348015610aac57600080fd5b50610380610abb366004615f28565b6120de565b348015610acc57600080fd5b50610ae0610adb3660046157fb565b6120ef565b6040516103bb9190615fe5565b348015610af957600080fd5b506104d260715481565b348015610b0f57600080fd5b50610380610b1e366004615e61565b6121ce565b348015610b2f57600080fd5b50610380610b3e366004615e61565b612201565b348015610b4f57600080fd5b50610b63610b5e366004615ff8565b61222b565b6040516103bb91906160cc565b6104d2610b7e366004616165565b612246565b348015610b8f57600080fd5b50610380610b9e3660046161ec565b612598565b348015610baf57600080fd5b50607a54610500906001600160a01b031681565b348015610bcf57600080fd5b506104d2610bde366004615e61565b6125a1565b348015610bef57600080fd5b50607654610100900460ff16610665565b348015610c0c57600080fd5b50610380610c1b366004615e61565b6125bc565b348015610c2c57600080fd5b50610c40610c3b3660046157fb565b6125ec565b6040516103bb9b9a99989796959493929190616209565b348015610c6357600080fd5b506071546104d2565b348015610c7857600080fd5b506104d2610c873660046157fb565b6000908152607b602052604090206002015490565b348015610ca857600080fd5b506103e46126f8565b348015610cbd57600080fd5b50610380610ccc3660046157fb565b61270b565b348015610cdd57600080fd5b506104d2610cec366004616278565b612890565b348015610cfd57600080fd5b50610d0c610810366004615e61565b6040516103bb919061629d565b348015610d2557600080fd5b50610380610d343660046162b0565b6128bb565b610380610d47366004615d56565b612aac565b348015610d5857600080fd5b50610380610d67366004615e61565b612ad0565b348015610d7857600080fd5b50610380610d873660046157fb565b612b3d565b348015610d9857600080fd5b506104d2611c2081565b348015610dae57600080fd5b50610dd1604051806040016040528060038152602001620302e360ec1b81525081565b6040516103bb91906162e0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610e65906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054610e91906162f3565b8015610ede5780601f10610eb357610100808354040283529160200191610ede565b820191906000526020600020905b815481529060010190602001808311610ec157829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610f5d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b610f6b612b66565b610f758282612c00565b5050565b610f81612f75565b610f89612fa0565b610f94838383612fc3565b505050565b600054610100900460ff1615808015610fb95750600054600160ff909116105b80610fda5750610fc8306132cd565b158015610fda575060005460ff166001145b6110425760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff191660011790558015611065576000805461ff0019166101001790555b611092846040518060400160405280600a8152602001694356537472617465677960b01b81525084611c1e565b606a80546001600160a01b0319166001600160a01b03851617905580156110f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050565b6000818152607b602052604081208054831461112b5760405163c1d17bef60e01b815260048101849052602401611039565b6111398182600201546132dc565b6003015492915050565b61114c33613317565b565b6000611158612f75565b611160612fa0565b61116a8383613443565b9392505050565b600061117b613831565b60006002607654610100900460ff16600381111561119b5761119b615821565b14806111c257506001607654610100900460ff1660038111156111c0576111c0615821565b145b156111ce5750816111db565b6111d8848461385c565b90505b80607160008282546111ed919061633d565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc19061122690869086908590616350565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112d55760405163c1d17bef60e01b815260048101849052602401611039565b6005600883015460ff1660068111156112f0576112f0615821565b1461131157604051634b011ca960e11b815260048101849052602401611039565b60a0810151600d83015460009161132791616371565b42119050801581611342575081516001600160a01b03163314155b1561136057604051631777988560e11b815260040160405180910390fd5b808061136a575084155b156114b357816080015160000361139457604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036113b05760088301805460ff191660011790555b816080015160020361143d5760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b09361140a938a939290911691600401616384565b600060405180830381600087803b15801561142457600080fd5b505af1158015611438573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b09361147c938a939290911691600401616384565b600060405180830381600087803b15801561149657600080fd5b505af11580156114aa573d6000803e3d6000fd5b50505050611790565b846001036115745760088301805460ff19166001179055607954600e8401546001600160a01b0391821691638969ab53918791166114ef61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561152c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155091906163a3565b86606001516040518563ffffffff1660e01b815260040161147c94939291906163c0565b846002036117905760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936115ca938a939290911691600401616384565b600060405180830381600087803b1580156115e457600080fd5b505af11580156115f8573d6000803e3d6000fd5b505060795460058601546001600160a01b039182169350638969ab53925087911661162161198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561165e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168291906163a3565b606f546000908152607f602052604090206002908101546116a391906163fb565b6040518563ffffffff1660e01b81526004016116c294939291906163c0565b600060405180830381600087803b1580156116dc57600080fd5b505af11580156116f0573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a94938416939092169161173e91906163fb565b6040518563ffffffff1660e01b815260040161175d94939291906163c0565b600060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006117a98361641d565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161181791815260200190565b60405180910390a3505050505050565b6074546000908490829061184c9061184690629896809060801b6163fb565b83613a5f565b905060806001607f1b60726002015462989680611869919061633d565b61187784600160801b61633d565b6118846298968089616440565b61188e9190616440565b61189891906163fb565b6118a28885616440565b6118ac9190616371565b6118b69190616371565b901c9695505050505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361190a5760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661193c613b07565b6001600160a01b0316146119625760405162461bcd60e51b815260040161103990616491565b61196b81613b23565b6040805160008082526020820190925261198791839190613b5e565b50565b6078546001600160a01b031690565b600080610f5d565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036119e95760405162461bcd60e51b815260040161103990616457565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a1b613b07565b6001600160a01b031614611a415760405162461bcd60e51b815260040161103990616491565b611a4a82613b23565b610f7582826001613b5e565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611af15760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401611039565b5060008051602061700183398151915290565b60008060695411611b285760405163ed4421ad60e01b815260040160405180910390fd5b611b3182613cc9565b15611b4f57604051630efd728560e21b815260040160405180910390fd5b606954600090611b6384600160401b616440565b611b6d91906163fb565b6072546298968090611b8390600160401b616440565b611b8d91906163fb565b611b97919061633d565b90506040611ba460715490565b607454611bb4906298968061633d565b629896806040611bc48680616440565b607354911c90611bdb90629896809060801b6163fb565b611be591906163fb565b611bef9190616440565b611bf991906163fb565b611c039190616440565b607554911c92508211611c185760755461116a565b50919050565b600054610100900460ff16611c455760405162461bcd60e51b8152600401611039906164cb565b611c4e816125bc565b606580546001600160a01b0319166001600160a01b038516179055604051611c7a9083906020016162e0565b60408051601f198184030181529190528051602090910120606655505050565b611ca2613831565b61198781613317565b611cb3613cf0565b61114c6000613d4f565b611cc5612b66565b61198781613da1565b6000611cd8613831565b611ce183614041565b611cfe57604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611d1e57611d1e615821565b03611d2c57825b9050611d89565b6001607654610100900460ff166003811115611d4a57611d4a615821565b03611d5957611d2584846141ef565b6003607654610100900460ff166003811115611d7757611d77615821565b03611d8957611d868484614298565b90505b6000611d9361198a565b6001600160a01b031663477a5cc086306040518363ffffffff1660e01b8152600401611dc0929190616516565b602060405180830381865afa158015611ddd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e019190616530565b90508015611e21578160716000828254611e1b9190616371565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611e5493929190616350565b60405180910390a1509392505050565b33611e6e81614041565b611e8b57604051630b72d6b160e31b815260040160405180910390fd5b611e9361198a565b6001600160a01b0316630d4a8b4982306040518363ffffffff1660e01b8152600401611ec0929190616516565b600060405180830381600087803b158015611eda57600080fd5b505af1158015611eee573d6000803e3d6000fd5b50505050611efa61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b8152600401611f27929190616516565b602060405180830381865afa158015611f44573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f68919061654d565b60716000828254611f799190616371565b909155505050565b6000818152607b60205260408120600281015482908190611fa3908490614499565b91509150816000148015611fb5575080155b15611fc257826003015491505b6000611fd18460010154611b04565b9092101595945050505050565b607d6020528160005260406000208181548110611ffa57600080fd5b90600052602060002001600091509150505481565b6000806120246033546001600160a01b031690565b9050806001600160a01b03163b60000361203d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612097575060408051601f3d908101601f19168201909252612094918101906163a3565b60015b610f5d57919050565b6120a8612b66565b6110f3848484846144f1565b6074546000906120c7906298968061633d565b6120d46298968084616440565b610f5d91906163fb565b6120e6612b66565b61198781614509565b6040805180820190915260008152606060208201526000607b6000848152602001908152602001600020905080600a0160405180604001604052908160008201548152602001600182018054612144906162f3565b80601f0160208091040260200160405190810160405280929190818152602001828054612170906162f3565b80156121bd5780601f10612192576101008083540402835291602001916121bd565b820191906000526020600020905b8154815290600101906020018083116121a057829003601f168201915b505050505081525050915050919050565b6121d6612b66565b6121df816146c0565b607a80546001600160a01b0319166001600160a01b0392909216919091179055565b612209613cf0565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b606060405163d623472560e01b815260040160405180910390fd5b6000858152607b6020908152604080832060108101548452607f8352818420825160c08101845281546001600160a01b0390811680835260018401549091169582019590955260028201549381019390935260038101546060840152600481015460808401526005015460a0830152916122d357604051636c291fd360e01b815260040160405180910390fd5b815488146122f75760405163c1d17bef60e01b815260048101899052602401611039565b6001600883015460ff16600681111561231257612312615821565b14612333576040516344980d8f60e01b815260048101899052602401611039565b806060015134101561235f576060810151604051632c1f8ef160e21b8152611039913491600401616576565b600f82015415801590612382575042611c2083600f01546123809190616371565b115b156123c0578742611c2084600f015461239b9190616371565b6123a5919061633d565b604051638d2f6c3160e01b8152600401611039929190616576565b60008160600151346123d2919061633d565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a919061240d908d903390600401616584565b6000604051808303818588803b15801561242657600080fd5b505af115801561243a573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e19250849150612475906003908b908b906004016165c4565b60206040518083038185885af1158015612493573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124b8919061654d565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612519836165e7565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516125849796959493929190616615565b60405180910390a150505095945050505050565b611987816146e7565b6001600160a01b03166000908152607c602052604090205490565b600054610100900460ff166125e35760405162461bcd60e51b8152600401611039906164cb565b61198781613d4f565b600080600080600080600080600080600080607b60008e8152602001908152602001600020905080600101546000146126315761262c8160010154611b04565b612634565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b600061270660675460ff1690565b905090565b60016000828152607b602052604090206008015460ff16600681111561273357612733615821565b14612754576040516344980d8f60e01b815260048101829052602401611039565b6000818152607b60205260409020600501546001600160a01b031633146127ad576000818152607b602052604090819020600501549051634544dc9160e11b8152611039916001600160a01b0316903390600401616516565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b09361280a938793921691600401616384565b600060405180830381600087803b15801561282457600080fd5b505af1158015612838573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b038516845260090190915281205461116a565b6128c3612f75565b6128cc82614728565b606a54606c80546128f5926001600160a01b03169160006128ec83616664565b91905055614777565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561294b57600080fd5b505af115801561295f573d6000803e3d6000fd5b5050505060008180602001905181019061297991906167f0565b60a08101519091506001600160a01b03166129a757604051635df4b1ef60e01b815260040160405180910390fd5b60a0810151607880546001600160a01b0319166001600160a01b0390921691909117905560208101516076805460ff191660018360028111156129ec576129ec615821565b021790555060408101516076805461ff001916610100836003811115612a1457612a14615821565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556080810151815160408051600080825260208201908152818301909252612a6e9392916144f1565b7fa489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf8382604051612a9f929190616944565b60405180910390a1505050565b612ab4612f75565b612abc612fa0565b612ac682826147c6565b610f758282614822565b612ad8613cf0565b6001600160a01b0381166125e35760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401611039565b612b45612f75565b8060696000828254612b579190616371565b90915550611987905081614915565b612b6e61198a565b6001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bcf91906163a3565b6001600160a01b0316336001600160a01b03161461114c57604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c25575081516001600160a01b031615155b8015612d0e5750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612c815750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612ca55750606f546000908152607f602052604090819020600201549083015114155b80612cc85750606f546000908152607f6020526040902060030154606083015114155b80612ceb5750606f546000908152607f6020526040902060040154608083015114155b80612d0e5750606f546000908152607f602052604090206005015460a083015114155b15612f1d57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d6857508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e31578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612d9f91600401615d02565b600060405180830381600087803b158015612db957600080fd5b505af1158015612dcd573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e289350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e4183616664565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b03199081166001600160a01b03928316908117845588850151600185018054909316931692831790915587850151600284018190556060808a0151600386018190556080808c01516004880181905560a0808e015160059099018990559a548a519081529889019590955297870194909452850152938301529281019190915260c08101919091527fe677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d539060e00160405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc90612f69908390616a23565b60405180910390a15050565b6065546001600160a01b0316331461114c5760405163075fd2b160e01b815260040160405180910390fd5b60685460000361114c57604051630f68fe6360e21b815260040160405180910390fd5b6000825111612fe557604051630317df1360e61b815260040160405180910390fd5b600082806020019051810190612ffb919061654d565b90508060000361301e5760405163f881a10d60e01b815260040160405180910390fd5b6000818152607b60205260409020600160765460ff16600281111561304557613045615821565b036132c6578054821461306e5760405163c1d17bef60e01b815260048101839052602401611039565b606954816001015411156130a157818160010154606954604051632c31d85b60e11b815260040161103993929190616a31565b6001600882015460ff1660068111156130bc576130bc615821565b146130dd576040516344980d8f60e01b815260048101839052602401611039565b60006130e8836110f9565b905060006130f98360010154611b04565b9050808210801561310e575060008360010154115b1561312c5760405163199cf26160e31b815260040160405180910390fd5b60655460685460405163068bcd8d60e01b815260048101919091526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561317a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131a29190810190616ad4565b90508360010154606960008282546131ba919061633d565b90915550506040810151600485015460018601546131e292916001600160a01b031690614945565b60088401805460ff191660049081179091556079546005860154606f546000908152607f60205260409081902060020154905163099ea56b60e41b81526001600160a01b03938416946399ea56b094613242948c94911692909101616384565b600060405180830381600087803b15801561325c57600080fd5b505af1158015613270573d6000803e3d6000fd5b505050600485015460018601546040517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132ba9289926001600160a01b0390911691616384565b60405180910390a15050505b5050505050565b6001600160a01b03163b151590565b6000806132e98484614499565b915091508160001480156132fb575080155b156133065750505050565b600784015560039092019190915550565b61331f61198a565b6001600160a01b0316637817ee4f82306040518363ffffffff1660e01b815260040161334c929190616516565b602060405180830381865afa158015613369573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338d919061654d565b6071600082825461339e919061633d565b909155506133ac905061198a565b6001600160a01b03166322bcf99982306040518363ffffffff1660e01b81526004016133d9929190616516565b600060405180830381600087803b1580156133f357600080fd5b505af1158015613407573d6000803e3d6000fd5b505050506134148161497f565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516128859190615d02565b600061344e82614041565b61346b57604051630b72d6b160e31b815260040160405180910390fd5b6000838060200190518101906134819190616b87565b80519091506000036134a65760405163273c8bc360e11b815260040160405180910390fd5b600160765460ff1660028111156134bf576134bf615821565b03613640576134d181602001516146c0565b60608101516001600160a01b03166134fc5760405163165a825360e21b815260040160405180910390fd5b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561353c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061356091906163a3565b825160405163068bcd8d60e01b815260048101919091529091506000906001600160a01b0383169063068bcd8d90602401600060405180830381865afa1580156135ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135d69190810190616ad4565b905080604001516001600160a01b031683606001516001600160a01b0316146136125760405163514e24c360e11b815260040160405180910390fd5b61361f8360400151613cc9565b1561363d57604051630efd728560e21b815260040160405180910390fd5b50505b606f546000908152607f60205260409020546001600160a01b03161580159061367c5750606f546000908152607f602052604090206002015434105b156136b257606f546000908152607f602052604090819020600201549051632c1f8ef160e21b8152611039913491600401616576565b6000606e600081546136c390616664565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137779082616c7b565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a9234926137bb9288921690600401616584565b6000604051808303818588803b1580156137d457600080fd5b505af11580156137e8573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b60685483604051613820929190616576565b60405180910390a150949350505050565b6078546001600160a01b0316331461114c576040516357848b5160e11b815260040160405180910390fd5b6000601261386861198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138c991906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613922575060408051601f3d908101601f1916820190925261391f91810190616d3a565b60015b1561392d5760ff1690505b60008361393861198a565b6001600160a01b0316632c611c4a876040518263ffffffff1660e01b81526004016139639190615d02565b602060405180830381865afa158015613980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139a4919061654d565b6139ae919061633d565b905060006139cf6139c084600a616e41565b6139ca9084616440565b614ae0565b90506000816139dc61198a565b6001600160a01b0316637817ee4f89306040518363ffffffff1660e01b8152600401613a09929190616516565b602060405180830381865afa158015613a26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a4a919061654d565b613a54919061633d565b979650505050505050565b6000600160801b8310613ab35760405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b50600160801b82825b8015613aff5780600116600003613ae157613ad78283614bc8565b915060011c613abc565b613aeb8383614bc8565b9250613af860018261633d565b9050613abc565b505092915050565b600080516020617001833981519152546001600160a01b031690565b33613b2c61200f565b6001600160a01b0316146119875733613b4361200f565b60405163163678e960e01b8152600401611039929190616516565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b9157610f9483614ca5565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613beb575060408051601f3d908101601f19168201909252613be89181019061654d565b60015b613c4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401611039565b6000805160206170018339815191528114613cbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401611039565b50610f94838383614d3f565b6000613cd86298968083616440565b606954607254613ce89190616440565b111592915050565b33613cf961200f565b6001600160a01b03161461114c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611039565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613db69190616e4d565b604051602081830303815290604052805190602001209050613dd661198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b8152600401613e04929190616584565b602060405180830381865afa158015613e21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e459190616530565b15613eb357613e5261198a565b6001600160a01b031663d547741f8260006040518363ffffffff1660e01b8152600401613e80929190616584565b600060405180830381600087803b158015613e9a57600080fd5b505af1158015613eae573d6000803e3d6000fd5b505050505b60005b825181101561400d57613ec761198a565b6001600160a01b03166391d1485483858481518110613ee857613ee8616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613f0d929190616584565b602060405180830381865afa158015613f2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f4e9190616530565b613ffb57613f5a61198a565b6001600160a01b0316632f2ff15d606854604051602001613f7b9190616e4d565b60405160208183030381529060405280519060200120858481518110613fa357613fa3616e6a565b60200260200101516040518363ffffffff1660e01b8152600401613fc8929190616584565b600060405180830381600087803b158015613fe257600080fd5b505af1158015613ff6573d6000803e3d6000fd5b505050505b8061400581616664565b915050613eb6565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a60685483604051612f69929190616e80565b607a546000906001600160a01b031661417c5760006068546040516020016140699190616e4d565b60405160208183030381529060405280519060200120905061408961198a565b6001600160a01b03166391d148548260006040518363ffffffff1660e01b81526004016140b7929190616584565b602060405180830381865afa1580156140d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f89190616530565b156141065750600192915050565b61410e61198a565b6001600160a01b03166391d1485482856040518363ffffffff1660e01b815260040161413b929190616584565b602060405180830381865afa158015614158573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116a9190616530565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906141ae9085903090600401616516565b602060405180830381865afa1580156141cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f5d9190616530565b600081816141fb61198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b8152600401614228929190616516565b602060405180830381865afa158015614245573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614269919061654d565b6077549091506142798383616371565b11156142905760775461428d90829061633d565b91505b509392505050565b600080826142a461198a565b6001600160a01b0316632c611c4a866040518263ffffffff1660e01b81526004016142cf9190615d02565b602060405180830381865afa1580156142ec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614310919061654d565b61431a9190616371565b9050601261432661198a565b6001600160a01b031663db61d65c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015614363573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438791906163a3565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156143e0575060408051601f3d908101601f191682019092526143dd91810190616d3a565b60015b156143eb5760ff1690505b60006144056143fb83600a616e41565b6139ca9085616440565b9050600061441161198a565b6001600160a01b0316637817ee4f88306040518363ffffffff1660e01b815260040161443e929190616516565b602060405180830381865afa15801561445b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061447f919061654d565b9050600061448d828461633d565b98975050505050505050565b60008043905080846007015411156144b3576144b3616e99565b808460070154036144c9575060009050806144ea565b6144e78460070154826144dc919061633d565b856003015485611827565b91505b9250929050565b6144fb8484612c00565b61450482613da1565b6110f3815b60005b815181101561468c5761451d61198a565b6001600160a01b03166391d1485460685460405160200161453e9190616e4d565b6040516020818303038152906040528051906020012084848151811061456657614566616e6a565b60200260200101516040518363ffffffff1660e01b815260040161458b929190616584565b602060405180830381865afa1580156145a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906145cc9190616530565b1561467a576145d961198a565b6001600160a01b031663d547741f6068546040516020016145fa9190616e4d565b6040516020818303038152906040528051906020012084848151811061462257614622616e6a565b60200260200101516040518363ffffffff1660e01b8152600401614647929190616584565b600060405180830381600087803b15801561466157600080fd5b505af1158015614675573d6000803e3d6000fd5b505050505b8061468481616664565b91505061450c565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e60685482604051612885929190616e80565b6001600160a01b038116611987576040516303988b8160e61b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae090602001612885565b614730612f75565b606854156147515760405163439a74c960e01b815260040160405180910390fd5b8060000361477257604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506147be8482614d64565b949350505050565b6000828060200190518101906147dc9190616eaf565b905060005b81518110156110f3576148108282815181106147ff576147ff616e6a565b602002602001015160000151614dfb565b8061481a81616664565b9150506147e1565b61482b81614eb8565b61483481614041565b61485157604051630b72d6b160e31b815260040160405180910390fd5b600061485b61198a565b6001600160a01b031663477a5cc083306040518363ffffffff1660e01b8152600401614888929190616516565b602060405180830381865afa1580156148a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906148c99190616530565b9050806148e957604051635fccb67f60e01b815260040160405180910390fd5b6000838060200190518101906148ff9190616eaf565b905061490b8382614f99565b6110f3838261512e565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f7633990602001612885565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b0384160161497457610f948282615506565b610f94838383615522565b6001600160a01b0381166000908152607d60209081526040808320805482518185028101850190935280835291929091908301828280156149df57602002820191906000526020600020905b8154815260200190600101908083116149cb575b5050505050905060005b8151811015610f94576000828281518110614a0657614a06616e6a565b602002602001015190506000607b60008381526020019081526020016000209050614a3082615568565b15614acb576001600160a01b0385166000908152600982016020526040812080549082905560028301805491928392614a6a90849061633d565b925050819055508060706000828254614a83919061633d565b90915550614a93905082826132dc565b6000805160206170218339815191528684600085600201548660030154604051614ac1959493929190616f59565b60405180910390a1505b50508080614ad890616664565b9150506149e9565b600081600003614af257506000919050565b60006001614aff846155a1565b901c6001901b90506001818481614b1857614b186163e5565b048201901c90506001818481614b3057614b306163e5565b048201901c90506001818481614b4857614b486163e5565b048201901c90506001818481614b6057614b606163e5565b048201901c90506001818481614b7857614b786163e5565b048201901c90506001818481614b9057614b906163e5565b048201901c90506001818481614ba857614ba86163e5565b048201901c905061116a81828581614bc257614bc26163e5565b04615635565b6000600160801b831115614c2f5760405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608401611039565b600160801b8210614c815760405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606401611039565b60806001607f1b614c928486616440565b614c9c9190616371565b901c9392505050565b614cae816132cd565b614d105760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401611039565b60008051602061700183398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614d488361564b565b600082511180614d555750805b15610f94576110f3838361568b565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610f5d5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401611039565b6000818152607b6020526040812090600882015460ff166006811115614e2357614e23615821565b1480614e4757506003600882015460ff166006811115614e4557614e45615821565b145b80614e6a57506004600882015460ff166006811115614e6857614e68615821565b145b80614e8d57506006600882015460ff166006811115614e8b57614e8b615821565b145b15610f755760088101546040516394d57ead60e01b815261103991849160ff90911690600401616f87565b6001600160a01b038116614edf57604051631a3e505160e31b815260040160405180910390fd5b6078546001600160a01b0316614f0857604051635df4b1ef60e01b815260040160405180910390fd5b614f1061198a565b6001600160a01b031663a230c524826040518263ffffffff1660e01b8152600401614f3b9190615d02565b602060405180830381865afa158015614f58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614f7c9190616530565b61198757604051636a5cfb6d60e01b815260040160405180910390fd5b6000805b825181101561505657828181518110614fb857614fb8616e6a565b60200260200101516000015160000315615044576000838281518110614fe057614fe0616e6a565b6020026020010151600001519050614ff781615568565b6150175760405163c1d17bef60e01b815260048101829052602401611039565b83828151811061502957615029616e6a565b602002602001015160200151836150409190616fa4565b9250505b8061504e81616664565b915050614f9d565b50600061506b615065856125a1565b836156b0565b9050600061507761198a565b6001600160a01b0316637817ee4f86306040518363ffffffff1660e01b81526004016150a4929190616516565b602060405180830381865afa1580156150c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906150e5919061654d565b90508082111561510c578181604051636b20c17f60e11b8152600401611039929190616576565b506001600160a01b039093166000908152607c60205260409020929092555050565b606060005b82518110156110f357600083828151811061515057615150616e6a565b602002602001015160000151905082516000036151ac576040805160018082528183019092529060208083019080368337019050509250808360008151811061519b5761519b616e6a565b6020026020010181815250506152df565b6000805b845181101561520c57828582815181106151cc576151cc616e6a565b6020026020010151036151fa57600191508281604051632b7aec5560e21b8152600401611039929190616576565b8061520481616664565b9150506151b0565b50806152dd576000845160016152229190616371565b6001600160401b0381111561523957615239615982565b604051908082528060200260200182016040528015615262578160200160208202803683370190505b50905060005b85518110156152ba5785818151811061528357615283616e6a565b602002602001015182828151811061529d5761529d616e6a565b6020908102919091010152806152b281616664565b915050615268565b5082818651815181106152cf576152cf616e6a565b602090810291909101015293505b505b60008483815181106152f3576152f3616e6a565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b1683526009810190945281205491935061533382856156b0565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156153cc5784546001600160a01b038c166000908152607d602052604090208054839081106153a1576153a1616e6a565b9060005260206000200154036153ba57600191506153cc565b806153c481616664565b915050615355565b5080615402576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b81831161545257615413838361633d565b607060008282546154249190616371565b909155506154349050838361633d565b8460020160008282546154479190616371565b909155506154969050565b61545c828461633d565b6070600082825461546d919061633d565b9091555061547d9050828461633d565b846002016000828254615490919061633d565b90915550505b83600701546000036154ad574360078501556154ed565b6154b784846132dc565b6000805160206170218339815191528a8784876002015488600301546040516154e4959493929190616f59565b60405180910390a15b50505050505080806154fe90616664565b915050615133565b60008060008084865af1610f755763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d15600160005114171661555e576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610f5d5750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c156155b657608092831c92015b604083901c156155c857604092831c92015b602083901c156155da57602092831c92015b601083901c156155ec57601092831c92015b600883901c156155fe57600892831c92015b600483901c1561561057600492831c92015b600283901c1561562257600292831c92015b600183901c15610f5d5760010192915050565b6000818310615644578161116a565b5090919050565b61565481614ca5565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061116a8383604051806060016040528060278152602001617041602791396156e7565b6000806156bd8385616fa4565b9050600081121561116a57838382604051631dde38a160e11b815260040161103993929190616a31565b6060600080856001600160a01b0316856040516157049190616fc4565b600060405180830381855af49150503d806000811461573f576040519150601f19603f3d011682016040523d82523d6000602084013e615744565b606091505b50915091506157558683838761575f565b9695505050505050565b606083156157cc5782516000036157c557615779856132cd565b6157c55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401611039565b50816147be565b6147be83838151156157e15781518083602001fd5b8060405162461bcd60e51b815260040161103991906162e0565b60006020828403121561580d57600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b6007811061198757611987615821565b60005b8381101561586257818101518382015260200161584a565b50506000910152565b60008151808452615883816020860160208601615847565b601f01601f19169290920160200192915050565b8051825260006020820151604060208501526147be604085018261586b565b60006101e08f83528e60208401528d60408401528c606084015260018060a01b03808d166080850152808c1660a0850152808b1660c08501528960e08501526158fe89615837565b886101008501528161012085015261591882850189615897565b875161014086015260208801516101608601526040909701511661018084015250506101a08101929092526101c0909101529a9950505050505050505050565b60006020828403121561596a57600080fd5b81356001600160e01b03198116811461116a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156159ba576159ba615982565b60405290565b604051608081016001600160401b03811182821017156159ba576159ba615982565b60405161010081016001600160401b03811182821017156159ba576159ba615982565b604080519081016001600160401b03811182821017156159ba576159ba615982565b60405160a081016001600160401b03811182821017156159ba576159ba615982565b604051601f8201601f191681016001600160401b0381118282101715615a7157615a71615982565b604052919050565b6001600160a01b038116811461198757600080fd5b600060c08284031215615aa057600080fd5b615aa8615998565b90508135615ab581615a79565b81526020820135615ac581615a79565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615b0c57600080fd5b615b146159c0565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615b5257600080fd5b615b5c8484615a8e565b9150615b6b8460c08501615afa565b90509250929050565b60006001600160401b03821115615b8d57615b8d615982565b5060051b60200190565b600082601f830112615ba857600080fd5b81356020615bbd615bb883615b74565b615a49565b82815260059290921b84018101918181019086841115615bdc57600080fd5b8286015b84811015615c00578035615bf381615a79565b8352918301918301615be0565b509695505050505050565b60006001600160401b03821115615c2457615c24615982565b50601f01601f191660200190565b6000615c40615bb884615c0b565b9050828152838383011115615c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112615c7c57600080fd5b61116a83833560208501615c32565b600080600060608486031215615ca057600080fd5b83356001600160401b0380821115615cb757600080fd5b615cc387838801615b97565b94506020860135915080821115615cd957600080fd5b50615ce686828701615c6b565b9250506040840135615cf781615a79565b809150509250925092565b6001600160a01b0391909116815260200190565b600080600060608486031215615d2b57600080fd5b8335615d3681615a79565b92506020840135615d4681615a79565b91506040840135615cf781615a79565b60008060408385031215615d6957600080fd5b82356001600160401b03811115615d7f57600080fd5b615d8b85828601615c6b565b9250506020830135615d9c81615a79565b809150509250929050565b60048110615db757615db7615821565b9052565b60208101610f5d8284615da7565b60008060408385031215615ddc57600080fd5b8235615de781615a79565b946020939093013593505050565b60008060408385031215615e0857600080fd5b50508035926020909101359150565b600080600060608486031215615e2c57600080fd5b505081359360208301359350604090920135919050565b60038110615db757615db7615821565b60208101610f5d8284615e43565b600060208284031215615e7357600080fd5b813561116a81615a79565b60008060408385031215615e9157600080fd5b8235615e9c81615a79565b915060208301356001600160401b03811115615eb757600080fd5b615ec385828601615c6b565b9150509250929050565b600080600060608486031215615ee257600080fd5b8335615eed81615a79565b925060208401356001600160401b03811115615f0857600080fd5b8401601f81018613615f1957600080fd5b615ce686823560208401615c32565b600060208284031215615f3a57600080fd5b81356001600160401b03811115615f5057600080fd5b6147be84828501615b97565b6000806000806101808587031215615f7357600080fd5b615f7d8686615a8e565b9350615f8c8660c08701615afa565b92506101408501356001600160401b0380821115615fa957600080fd5b615fb588838901615b97565b9350610160870135915080821115615fcc57600080fd5b50615fd987828801615b97565b91505092959194509250565b60208152600061116a6020830184615897565b6000806040838503121561600b57600080fd5b82356001600160401b038082111561602257600080fd5b61602e86838701615b97565b935060209150818501358181111561604557600080fd5b8501601f8101871361605657600080fd5b8035616064615bb882615b74565b81815260059190911b8201840190848101908983111561608357600080fd5b8584015b838110156160bb5780358681111561609f5760008081fd5b6160ad8c8983890101615c6b565b845250918601918601616087565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b8281101561611757815180516001600160a01b031685528601518685015292840192908501906001016160e9565b5091979650505050505050565b60008083601f84011261613657600080fd5b5081356001600160401b0381111561614d57600080fd5b6020830191508360208285010111156144ea57600080fd5b60008060008060006060868803121561617d57600080fd5b8535945060208601356001600160401b038082111561619b57600080fd5b6161a789838a01616124565b909650945060408801359150808211156161c057600080fd5b506161cd88828901616124565b969995985093965092949392505050565b801515811461198757600080fd5b6000602082840312156161fe57600080fd5b813561116a816161de565b6001600160a01b038c811682528b811660208301528a1660408201526060810189905260808101889052610160810161624188615837565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561628b57600080fd5b823591506020830135615d9c81615a79565b602081016162aa83615837565b91905290565b600080604083850312156162c357600080fd5b8235915060208301356001600160401b03811115615eb757600080fd5b60208152600061116a602083018461586b565b600181811c9082168061630757607f821691505b602082108103611c1857634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610f5d57610f5d616327565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610f5d57610f5d616327565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156163b557600080fd5b815161116a81615a79565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261641857634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061643657616436616327565b6000190192915050565b8082028115828204841417610f5d57610f5d616327565b6020808252602c90820152600080516020616fe183398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020616fe183398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561654257600080fd5b815161116a816161de565b60006020828403121561655f57600080fd5b5051919050565b805161657181615a79565b919050565b918252602082015260400190565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006165de60408301848661659b565b95945050505050565b60006001600160401b038281166002600160401b0319810161660b5761660b616327565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c060808201819052600090616650908301858761659b565b90508260a083015298975050505050505050565b60006001820161667657616676616327565b5060010190565b60006080828403121561668f57600080fd5b6166976159c0565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061657157600080fd5b80516004811061657157600080fd5b6000602082840312156166f157600080fd5b604051602081016001600160401b038111828210171561671357616713615982565b6040529151825250919050565b600060c0828403121561673257600080fd5b61673a615998565b9050815161674781615a79565b8152602082015161675781615a79565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f83011261679d57600080fd5b815160206167ad615bb883615b74565b82815260059290921b840181019181810190868411156167cc57600080fd5b8286015b84811015615c005780516167e381615a79565b83529183019183016167d0565b60006020828403121561680257600080fd5b81516001600160401b038082111561681957600080fd5b90830190610200828603121561682e57600080fd5b6168366159e2565b616840868461667d565b815261684e608084016166c1565b602082015261685f60a084016166d0565b60408201526168718660c085016166df565b60608201526168838660e08501616720565b60808201526168956101a08401616566565b60a08201526168a76101c08401616566565b60c08201526101e0830151828111156168bf57600080fd5b6168cb8782860161678c565b60e08301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b838110156169395781516001600160a01b031687529582019590820190600101616914565b509495945050505050565b8281526040602082015261695c6040820183516168da565b6000602083015161697060c0840182615e43565b50604083015161698360e0840182615da7565b506060838101515161010084015260808085015180516001600160a01b039081166101208701526020820151166101408601526040810151610160860152918201516101808501528101516101a084015260a0908101516101c08401528301516169f16101e0840182615814565b5060c0830151610200616a0681850183615814565b60e0850151915080610220850152506165de610240840182616900565b60808101610f5d82846168da565b9283526020830191909152604082015260600190565b600060408284031215616a5957600080fd5b616a61615a05565b8251815260208301519091506001600160401b03811115616a8157600080fd5b8201601f81018413616a9257600080fd5b8051616aa0615bb882615c0b565b818152856020838501011115616ab557600080fd5b616ac6826020830160208601615847565b602084015250909392505050565b600060208284031215616ae657600080fd5b81516001600160401b0380821115616afd57600080fd5b9083019060c08286031215616b1157600080fd5b616b19615998565b825181526020830151616b2b81615a79565b60208201526040830151616b3e81615a79565b6040820152606083015182811115616b5557600080fd5b616b6187828601616a47565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616b9957600080fd5b81516001600160401b0380821115616bb057600080fd5b9083019060a08286031215616bc457600080fd5b616bcc615a27565b825181526020830151616bde81615a79565b6020820152604083810151908201526060830151616bfb81615a79565b6060820152608083015182811115616c1257600080fd5b616c1e87828601616a47565b60808301525095945050505050565b601f821115610f9457600081815260208120601f850160051c81016020861015616c545750805b601f850160051c820191505b81811015616c7357828155600101616c60565b505050505050565b81516001600160401b03811115616c9457616c94615982565b616ca881616ca284546162f3565b84616c2d565b602080601f831160018114616cdd5760008415616cc55750858301515b600019600386901b1c1916600185901b178555616c73565b600085815260208120601f198616915b82811015616d0c57888601518255948401946001909101908401616ced565b5085821015616d2a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616d4c57600080fd5b815160ff8116811461116a57600080fd5b600181815b80851115616d98578160001904821115616d7e57616d7e616327565b80851615616d8b57918102915b93841c9390800290616d62565b509250929050565b600082616daf57506001610f5d565b81616dbc57506000610f5d565b8160018114616dd25760028114616ddc57616df8565b6001915050610f5d565b60ff841115616ded57616ded616327565b50506001821b610f5d565b5060208310610133831016604e8410600b8410161715616e1b575081810a610f5d565b616e258383616d5d565b8060001904821115616e3957616e39616327565b029392505050565b600061116a8383616da0565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006147be6040830184616900565b634e487b7160e01b600052600160045260246000fd5b60006020808385031215616ec257600080fd5b82516001600160401b03811115616ed857600080fd5b8301601f81018513616ee957600080fd5b8051616ef7615bb882615b74565b81815260069190911b82018301908381019087831115616f1657600080fd5b928401925b82841015613a545760408489031215616f345760008081fd5b616f3c615a05565b845181528585015186820152825260409093019290840190616f1b565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b82815260408101616f9783615837565b8260208301529392505050565b8082018281126000831280158216821582161715613aff57613aff616327565b60008251616fd6818460208701615847565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212201bd6ac52010068b79761b1006302aeb829e13b155c63266d810eba53b8eb9b1264736f6c63430008130033","sourceMap":"1164:5287:99:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9282:45:98;;;;;;;;;;-1:-1:-1;9282:45:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;11518:210;;;;;;;;;;-1:-1:-1;11518:210:98;;;;;:::i;:::-;;:::i;:::-;;;3313:14:136;;3306:22;3288:41;;3276:2;3261:18;11518:210:98;3148:187:136;31044:874:98;;;;;;;;;;;;31443:30;;31151:22;31425:49;;;:17;:49;;;;;:60;;;31499:62;;;31575:75;;;;31664:76;;;;31754:63;;;;31831:70;;;;;-1:-1:-1;;;;;31425:60:98;;;;31499:62;;;;;31575:75;;31664:76;;31831:70;31044:874;;;;;-1:-1:-1;;;;;3704:15:136;;;3686:34;;3756:15;;;;3751:2;3736:18;;3729:43;3788:18;;;3781:34;;;;3846:2;3831:18;;3824:34;3889:3;3874:19;;3867:35;3666:3;3918:19;;3911:35;3635:3;3620:19;31044:874:98;3340:612:136;47619:198:98;;;;;;;;;;-1:-1:-1;47619:198:98;;;;;:::i;:::-;;:::i;7520:325:97:-;;;;;;;;;;-1:-1:-1;7520:325:97;;;;;:::i;:::-;;:::i;21565:107:98:-;;;;;;;;;;-1:-1:-1;21644:11:98;:21;21565:107;;;9901:25:136;;;9889:2;9874:18;21565:107:98;9755:177:136;9139:39:98;;;;;;;;;;-1:-1:-1;9139:39:98;;;;-1:-1:-1;;;;;9139:39:98;;;;;;;;;;:::i;8671:30::-;;;;;;;;;;;;;;;;7893:36;;;;;;;;;;;;7921:8;7893:36;;8707:45;;;;;;;;;;;;;;;;3560:86:97;;;;;;;;;;-1:-1:-1;3635:4:97;;-1:-1:-1;;;;;3635:4:97;3560:86;;10090:222:98;;;;;;;;;;-1:-1:-1;10090:222:98;;;;;:::i;:::-;;:::i;46317:609::-;;;;;;;;;;-1:-1:-1;46317:609:98;;;;;:::i;:::-;;:::i;16674:89::-;;;;;;;;;;;;;:::i;8833:24::-;;;;;;;;;;-1:-1:-1;8833:24:98;;;;;;;;;;;;;;;;;;;11197:25:136;;;11253:2;11238:18;;11231:34;;;;11281:18;;;11274:34;11339:2;11324:18;;11317:34;11184:3;11169:19;8833:24:98;10966:391:136;9569:56:98;;;;;;;;;;-1:-1:-1;9569:56:98;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:97;;;;;;:::i;:::-;;:::i;8995:30:98:-;;;;;;;;;;-1:-1:-1;8995:30:98;;;;;;;;;;;;;;;;;;:::i;18317:659::-;;;;;;;;;;-1:-1:-1;18317:659:98;;;;;:::i;:::-;;:::i;50174:2899::-;;;;;;;;;;-1:-1:-1;50174:2899:98;;;;;:::i;:::-;;:::i;8608:25::-;;;;;;;;;;;;;;;;38412:644;;;;;;;;;;-1:-1:-1;38412:644:98;;;;;:::i;:::-;;:::i;8904:32::-;;;;;;;;;;-1:-1:-1;8904:32:98;;;;;;;;;;;;;;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3728:92:97:-;;;;;;;;;;-1:-1:-1;3807:6:97;;3728:92;;8185:49:98;;;;;;;;;;;;8232:2;8185:49;;9631:61;;;;;;;;;;-1:-1:-1;9631:61:98;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9631:61:98;;;;;;;;;;;;;;;3910:100:97;;;;;;;;;;-1:-1:-1;3993:10:97;;3910:100;;9699:140:98;;;;;;;;;;;;;:::i;4101:108:97:-;;;;;;;;;;-1:-1:-1;4192:10:97;;4101:108;;9210:145;;;;;;;;;;-1:-1:-1;9210:145:97;;;;;:::i;:::-;;:::i;3657:220:64:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;39637:1549:98:-;;;;;;;;;;-1:-1:-1;39637:1549:98;;;;;:::i;:::-;;:::i;9383:53::-;;;;;;;;;;-1:-1:-1;9383:53:98;;;;;:::i;:::-;;;;;;;;;;;;;;9100:32;;;;;;;;;;-1:-1:-1;9100:32:98;;;;-1:-1:-1;;;;;9100:32:98;;;1724:217:97;;;;;;;;;;-1:-1:-1;1724:217:97;;;;;:::i;:::-;;:::i;8320:42:98:-;;;;;;;;;;;;8361:1;8320:42;;16769:136;;;;;;;;;;-1:-1:-1;16769:136:98;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;5083:125:99:-;;;;;;;;;;-1:-1:-1;5083:125:99;;;;;:::i;:::-;;:::i;17286:1025:98:-;;;;;;;;;;-1:-1:-1;17286:1025:98;;;;;:::i;:::-;;:::i;16299:369::-;;;;;;;;;;;;;:::i;8759:26::-;;;;;;;;;;;;;;;;25040:728;;;;;;;;;;-1:-1:-1;25040:728:98;;;;;:::i;:::-;;:::i;9474:57::-;;;;;;;;;;-1:-1:-1;9474:57:98;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;3906:332:99:-;;;;;;;;;;-1:-1:-1;3906:332:99;;;;;:::i;:::-;;:::i;46932:141:98:-;;;;;;;;;;-1:-1:-1;46932:141:98;;;;;:::i;:::-;;:::i;16195:98::-;;;;;;;;;;-1:-1:-1;16272:14:98;;16195:98;;4412:75:9;;;;;;;;;;;;4445:42;4412:75;;8639:26:98;;;;;;;;;;-1:-1:-1;8639:26:98;;;;-1:-1:-1;;;;;8639:26:98;;;;;;-1:-1:-1;;;;;17209:31:136;;;17191:50;;17179:2;17164:18;8639:26:98;17047:200:136;9031:36:98;;;;;;;;;;-1:-1:-1;9031:36:98;;;;;;5866:137:99;;;;;;;;;;-1:-1:-1;5866:137:99;;;;;:::i;:::-;;:::i;30100:191:98:-;;;;;;;;;;-1:-1:-1;30100:191:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;8791:35::-;;;;;;;;;;;;;;;;47424:189;;;;;;;;;;-1:-1:-1;47424:189:98;;;;;:::i;:::-;;:::i;13107:132::-;;;;;;;;;;-1:-1:-1;13107:132:98;;;;;:::i;:::-;;:::i;26418:287::-;;;;;;;;;;-1:-1:-1;26418:287:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;47823:2345::-;;;;;;:::i;:::-;;:::i;27374:86::-;;;;;;;;;;-1:-1:-1;27374:86:98;;;;;:::i;:::-;;:::i;9184:31::-;;;;;;;;;;-1:-1:-1;9184:31:98;;;;-1:-1:-1;;;;;9184:31:98;;;30903:135;;;;;;;;;;-1:-1:-1;30903:135:98;;;;;:::i;:::-;;:::i;21678:103::-;;;;;;;;;;-1:-1:-1;21763:11:98;;;;;;;21678:103;;404:115:103;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;28979:1115:98:-;;;;;;;;;;-1:-1:-1;28979:1115:98;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;42413:120::-;;;;;;;;;;-1:-1:-1;42506:20:98;;42413:120;;30682:153;;;;;;;;;;-1:-1:-1;30682:153:98;;;;;:::i;:::-;30767:7;30793:22;;;:9;:22;;;;;:35;;;;30682:153;4341:101:97;;;;;;;;;;;;;:::i;53079:702:98:-;;;;;;;;;;-1:-1:-1;53079:702:98;;;;;:::i;:::-;;:::i;30492:184::-;;;;;;;;;;-1:-1:-1;30492:184:98;;;;;:::i;:::-;;:::i;4598:146:97:-;;;;;;;;;;-1:-1:-1;4598:146:97;;;;;:::i;:::-;;;;;;;:::i;2648:879:99:-;;;;;;;;;;-1:-1:-1;2648:879:99;;;;;:::i;:::-;;:::i;6907:220:97:-;;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;5631:197:97:-;;;;;;;;;;-1:-1:-1;5631:197:97;;;;;:::i;:::-;;:::i;8368:54:98:-;;;;;;;;;;;;8415:7;8368:54;;7849:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7849:38:98;;;;;;;;;;;;:::i;9282:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9282:45:98;;;;-1:-1:-1;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9282:45:98;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9282:45:98;:::o;11518:210::-;11611:4;-1:-1:-1;;;;;;11634:47:98;;-1:-1:-1;;;11634:47:98;;:87;;-1:-1:-1;;;;;;;;;;937:40:80;;;11685:36:98;11627:94;11518:210;-1:-1:-1;;11518:210:98:o;47619:198::-;47739:17;:15;:17::i;:::-;47766:44;47781:17;47800:9;47766:14;:44::i;:::-;47619:198;;:::o;7520:325:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7739:42:::2;7751:13;7766:5;7773:7;7739:11;:42::i;:::-;7520:325:::0;;;:::o;10090:222:98:-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;24276:2:136;3325:201:47;;;24258:21:136;24315:2;24295:18;;;24288:30;24354:34;24334:18;;;24327:62;-1:-1:-1;;;24405:18:136;;;24398:44;24459:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10207:38:98::1;10218:5;10207:38;;;;;;;;;;;;;-1:-1:-1::0;;;10207:38:98::1;;::::0;10239:5:::1;10207:10;:38::i;:::-;10255:23;:50:::0;;-1:-1:-1;;;;;;10255:50:98::1;-1:-1:-1::0;;;;;10255:50:98;::::1;;::::0;;3647:99:47;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;24641:36:136;;3721:14:47;;24629:2:136;24614:18;3721:14:47;;;;;;;3647:99;3269:483;10090:222:98;;;:::o;46317:609::-;46395:7;46442:21;;;:9;:21;;;;;46478:19;;:33;;46474:100;;46534:29;;-1:-1:-1;;;46534:29:98;;;;;9901:25:136;;;9874:18;;46534:29:98;9755:177:136;46474:100:98;46820:59;46847:8;46857;:21;;;46820:26;:59::i;:::-;46896:23;;;;46317:609;-1:-1:-1;;46317:609:98:o;16674:89::-;16727:29;16745:10;16727:17;:29::i;:::-;16674:89::o;6244:344:97:-;6399:19;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;6498:34:::2;6517:5;6524:7;6498:18;:34::i;:::-;6484:48:::0;6244:344;-1:-1:-1;;;6244:344:97:o;18317:659:98:-;18409:7;18428:23;:21;:23::i;:::-;18507:24;18564:21;18549:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;18604:18:98;18589:11;;;;;;;:33;;;;;;;;:::i;:::-;;18549:73;18545:268;;;-1:-1:-1;18686:16:98;18545:268;;;18753:49;18776:7;18785:16;18753:22;:49::i;:::-;18734:68;;18545:268;18846:16;18822:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18877:59:98;;;;;;18892:7;;18901:16;;18919;;18877:59;:::i;:::-;;;;;;;;18953:16;18317:659;-1:-1:-1;;;18317:659:98:o;50174:2899::-;50261:18;50282:33;;;:21;:33;;;;;;;;;50353:21;;;:9;:21;;;;;50445:32;;;;50427:51;;:17;:51;;;;;50384:94;;;;;;;;;-1:-1:-1;;;;;50384:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50282:33;50353:21;;50384:94;50493:15;;;50489:82;;50531:29;;-1:-1:-1;;;50531:29:98;;;;;9901:25:136;;;9874:18;;50531:29:98;9755:177:136;50489:82:98;50611:23;50584;;;;;;:50;;;;;;;;:::i;:::-;;50580:119;;50657:31;;-1:-1:-1;;;50657:31:98;;;;;9901:25:136;;;9874:18;;50657:31:98;9755:177:136;50580:119:98;50784:37;;;;50744;;;;50709:14;;50744:77;;;:::i;:::-;50726:15;:95;;-1:-1:-1;50836:10:98;;50726:95;50836:64;;-1:-1:-1;50872:27:98;;-1:-1:-1;;;;;50850:50:98;:10;:50;;50836:64;50832:118;;;50923:16;;-1:-1:-1;;;50923:16:98;;;;;;;;;;;50832:118;50964:9;:25;;;-1:-1:-1;50977:12:98;;50964:25;50960:1953;;;51009:16;:30;;;51043:1;51009:35;51005:102;;51071:21;;-1:-1:-1;;;51071:21:98;;;;;;;;;;;51005:102;51124:16;:30;;;51158:1;51124:35;51120:121;;51179:23;;;:47;;-1:-1:-1;;51179:47:98;51205:21;51179:47;;;51120:121;51258:16;:30;;;51292:1;51258:35;51254:289;;51313:23;;;:49;;-1:-1:-1;;51313:49:98;51339:23;51313:49;;;51380:15;;51448:18;;;;51468:42;;;;;51380:148;;-1:-1:-1;;;51380:148:98;;-1:-1:-1;;;;;51380:15:98;;;;:34;;:148;;51436:10;;51448:18;;;;;51380:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51254:289;51556:15;;51620:31;;;;51653:43;;;;51556:154;;-1:-1:-1;;;51556:154:98;;-1:-1:-1;;;;;51556:15:98;;;;:34;;:154;;51608:10;;51620:31;;;;;51556:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;50960:1953;;;51731:7;51742:1;51731:12;51727:1186;;51759:23;;;:47;;-1:-1:-1;;51759:47:98;51785:21;51759:47;;;51820:15;;51903:31;;;;-1:-1:-1;;;;;51820:15:98;;;;:37;;51875:10;;51903:31;51960:22;:20;:22::i;:::-;-1:-1:-1;;;;;51960:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52015:16;:43;;;51820:252;;;;;;;;;;;;;;;;;;:::i;51727:1186::-;52093:7;52104:1;52093:12;52089:824;;52121:23;;;:49;;-1:-1:-1;;52121:49:98;52147:23;52121:49;;;52184:15;;52248:31;;;;52281:43;;;;52184:154;;-1:-1:-1;;;52184:154:98;;-1:-1:-1;;;;;52184:15:98;;;;:34;;:154;;52236:10;;52248:31;;;;;52184:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52352:15:98;;52435:18;;;;-1:-1:-1;;;;;52352:15:98;;;;-1:-1:-1;52352:37:98;;-1:-1:-1;52407:10:98;;52435:18;52479:22;:20;:22::i;:::-;-1:-1:-1;;;;;52479:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;52552:30;;52534:49;;;;:17;:49;;;;;52612:1;52534:75;;;;:79;;52612:1;52534:79;:::i;:::-;52352:275;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;52641:15:98;;52724:18;;;;52760:31;;;;52827:30;;52641:15;52809:49;;;:17;:49;;;;;52760:31;52809:75;;;;-1:-1:-1;;;;;52641:15:98;;;;-1:-1:-1;52641:37:98;;-1:-1:-1;52696:10:98;;52724:18;;;;52760:31;;;;52809:79;;52760:31;52809:79;:::i;:::-;52641:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;52089:824;52923:12;:14;;-1:-1:-1;;;;;52923:14:98;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;52923:14:98;;;;;-1:-1:-1;;;;;52923:14:98;;;;;;;52980:15;52947:8;:30;;:48;;;;53046:10;53017:16;:27;;;-1:-1:-1;;;;;53010:56:98;;53058:7;53010:56;;;;9901:25:136;;9889:2;9874:18;;9755:177;53010:56:98;;;;;;;;50251:2822;;;;50174:2899;;:::o;38412:644::-;38878:14;;38562:7;;38597:11;;38562:7;;38872:36;;38877:27;;7921:8;;38896:3;38878:21;38877:27;:::i;:::-;38906:1;38872:4;:36::i;:::-;38852:56;;39046:3;-1:-1:-1;;;39002:8:98;:14;;;7921:8;38998:18;;;;:::i;:::-;38973:19;38983:9;-1:-1:-1;;;38973:19:98;:::i;:::-;38955:14;7921:8;38955:10;:14;:::i;:::-;:38;;;;:::i;:::-;38954:63;;;;:::i;:::-;38928:21;38940:9;38928;:21;:::i;:::-;38927:91;;;;:::i;:::-;38926:103;;;;:::i;:::-;38925:124;;;38412:644;-1:-1:-1;;;;;;38412:644:98:o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;9699:140:98:-;9814:17;;-1:-1:-1;;;;;9814:17:98;;9699:140::o;9210:145:97:-;9296:4;;9319:29;27225:143:98;3657:220:64;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;2762:131::-:0;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28272:2:136;2064:92:64;;;28254:21:136;28311:2;28291:18;;;28284:30;28350:34;28330:18;;;28323:62;-1:-1:-1;;;28401:18:136;;;28394:54;28465:19;;2064:92:64;28070:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;39637:1549:98:-;39720:18;39888:1;39874:10;;:15;39870:66;;39912:13;;-1:-1:-1;;;39912:13:98;;;;;;;;;;;39870:66;40376:33;40392:16;40376:15;:33::i;:::-;40372:91;;;40432:20;;-1:-1:-1;;;40432:20:98;;;;;;;;;;;40372:91;40694:10;;40611:13;;40664:26;:16;-1:-1:-1;;;40664:26:98;:::i;:::-;40663:41;;;;:::i;:::-;40628:8;:17;7921:8;;40628:27;;-1:-1:-1;;;40628:27:98;:::i;:::-;40627:33;;;;:::i;:::-;:77;;;;:::i;:::-;40611:93;;40891:2;40849:28;42506:20;;;42413:120;40849:28;40814:14;;40810:18;;7921:8;40810:18;:::i;:::-;7921:8;40797:2;40779:13;40787:5;;40779:13;:::i;:::-;40746:15;;40778:21;;;40745:28;;7921:8;;40765:3;40746:22;40745:28;:::i;:::-;40744:56;;;;:::i;:::-;40743:62;;;;:::i;:::-;40742:87;;;;:::i;:::-;40741:136;;;;:::i;:::-;41109:27;;40727:166;;;-1:-1:-1;41096:40:98;;:83;;41152:27;;41096:83;;;-1:-1:-1;41139:10:98;41083:96;-1:-1:-1;39637:1549:98:o;1724:217:97:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1831:23:97::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:97::1;-1:-1:-1::0;;;;;1864:19:97;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:97;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:97:o;16769:136:98:-;16839:23;:21;:23::i;:::-;16872:26;16890:7;16872:17;:26::i;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;5083:125:99:-:0;5150:17;:15;:17::i;:::-;5177:24;5193:7;5177:15;:24::i;17286:1025:98:-;17376:7;17440:23;:21;:23::i;:::-;17478:26;17496:7;17478:17;:26::i;:::-;17473:90;;17527:25;;-1:-1:-1;;;17527:25:98;;;;;;;;;;;17473:90;17572:24;17629:21;17614:11;;;;;;;:36;;;;;;;;:::i;:::-;;17610:396;;17708:14;17685:38;17666:57;;17610:396;;;17759:18;17744:11;;;;;;;:33;;;;;;;;:::i;:::-;;17740:266;;17812:44;17832:7;17841:14;17812:19;:44::i;17740:266::-;17892:21;17877:11;;;;;;;:36;;;;;;;;:::i;:::-;;17873:133;;17948:47;17971:7;17980:14;17948:22;:47::i;:::-;17929:66;;17873:133;18015:16;18034:22;:20;:22::i;:::-;-1:-1:-1;;;;;18034:50:98;;18085:7;18102:4;18034:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18015:93;;18122:11;18118:82;;;18173:16;18149:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;18118:82:98;18214:57;18229:7;18238:14;18254:16;18214:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;18288:16:98;17286:1025;-1:-1:-1;;;17286:1025:98:o;16299:369::-;16369:10;16394:25;16369:10;16394:17;:25::i;:::-;16389:89;;16442:25;;-1:-1:-1;;;16442:25:98;;;;;;;;;;;16389:89;16487:22;:20;:22::i;:::-;-1:-1:-1;;;;;16487:47:98;;16535:6;16551:4;16487:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16591:22;:20;:22::i;:::-;-1:-1:-1;;;;;16591:47:98;;16639:6;16655:4;16591:70;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16567:20;;:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;16299:369:98:o;25040:728::-;25117:18;25175:21;;;:9;:21;;;;;25385;;;;25117:18;;;;25341:66;;25175:21;;25341:33;:66::i;:::-;25281:126;;;;25422:14;25440:1;25422:19;:39;;;;-1:-1:-1;25445:16:98;;25422:39;25418:110;;;25494:8;:23;;;25477:40;;25418:110;25537:17;25557:44;25576:8;:24;;;25557:18;:44::i;:::-;25734:27;;;;;25040:728;-1:-1:-1;;;;;25040:728:98:o;9474:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;3906:332:99:-;4129:17;:15;:17::i;:::-;4156:75;4171:17;4190:9;4201:12;4215:15;4156:14;:75::i;46932:141:98:-;47050:14;;47003:7;;47046:18;;7921:8;47046:18;:::i;:::-;47031:10;7921:8;47031:6;:10;:::i;:::-;47030:35;;;;:::i;5866:137:99:-;5940:17;:15;:17::i;:::-;5967:29;5988:7;5967:20;:29::i;30100:191:98:-;-1:-1:-1;;;;;;;;;;;;;;;;;30200:25:98;30228:9;:22;30238:11;30228:22;;;;;;;;;;;30200:50;;30267:8;:17;;30260:24;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30100:191;;;:::o;47424:189::-;47497:17;:15;:17::i;:::-;47524:32;47543:12;47524:18;:32::i;:::-;47566:11;:40;;-1:-1:-1;;;;;;47566:40:98;-1:-1:-1;;;;;47566:40:98;;;;;;;;;;47424:189::o;13107:132::-;1355:13:45;:11;:13::i;:::-;13198:23:98::1;:34:::0;;-1:-1:-1;;;;;;13198:34:98::1;-1:-1:-1::0;;;;;13198:34:98;;;::::1;::::0;;;::::1;::::0;;13107:132::o;26418:287::-;26504:22;26682:16;;-1:-1:-1;;;26682:16:98;;;;;;;;;;;47823:2345;47986:17;48047:21;;;:9;:21;;;;;;;;48139:32;;;;48121:51;;:17;:51;;;;;48078:94;;;;;;;;;-1:-1:-1;;;;;48078:94:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48047:21;48183:112;;48260:24;;-1:-1:-1;;;48260:24:98;;;;;;;;;;;48183:112;48472:19;;:33;;48468:100;;48528:29;;-1:-1:-1;;;48528:29:98;;;;;9901:25:136;;;9874:18;;48528:29:98;9755:177:136;48468:100:98;48608:21;48581:23;;;;;;:48;;;;;;;;:::i;:::-;;48577:115;;48652:29;;-1:-1:-1;;;48652:29:98;;;;;9901:25:136;;;9874:18;;48652:29:98;9755:177:136;48577:115:98;48717:16;:43;;;48705:9;:55;48701:171;;;48817:43;;;;48783:78;;-1:-1:-1;;;48783:78:98;;;;48806:9;;48783:78;;;:::i;48701:171::-;48991:30;;;;:35;;;;:126;;;49102:15;8415:7;49046:8;:30;;;:53;;;;:::i;:::-;:71;48991:126;48974:325;;;49191:10;49259:15;8415:7;49203:8;:30;;;:53;;;;:::i;:::-;:71;;;;:::i;:::-;49149:139;;-1:-1:-1;;;49149:139:98;;;;;;;;;:::i;48974:325::-;49309:22;49346:16;:43;;;49334:9;:55;;;;:::i;:::-;49400:15;;49441:43;;;;49400:109;;-1:-1:-1;;;49400:109:98;;49309:80;;-1:-1:-1;;;;;;49400:15:98;;;;:33;;49441:43;49400:109;;49486:10;;49498;;49400:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49532:27:98;;:92;;-1:-1:-1;;;49532:92:98;;-1:-1:-1;;;;;49532:41:98;;;;-1:-1:-1;49532:41:98;;-1:-1:-1;49581:14:98;;-1:-1:-1;49532:92:98;;8361:1;;49613:10;;;;49532:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;49635:23;;;:49;;49520:104;;-1:-1:-1;49661:23:98;;-1:-1:-1;;49635:49:98;;49661:23;49635:49;;;;-1:-1:-1;49694:20:98;;;:42;;;49786:15;49746:37;;;:55;49811:31;;;:44;;-1:-1:-1;;;;;;49811:44:98;49845:10;49811:44;;;49694:30;49865:32;;;:21;:32;;;;;:45;;;49921:12;:14;;-1:-1:-1;;;;;49921:14:98;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;49921:14:98;;;;;-1:-1:-1;;;;;49921:14:98;;;;;;;49951:210;49981:16;:27;;;50022:10;50046:9;50069:10;50093:7;;50114:8;:20;;:37;;;49951:210;;;;;;;;;;;;:::i;:::-;;;;;;;;48009:2159;;;47823:2345;;;;;;;:::o;27374:86::-;27430:23;27445:7;27430:14;:23::i;30903:135::-;-1:-1:-1;;;;;31005:26:98;30979:7;31005:26;;;:18;:26;;;;;;;30903:135::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;28979:1115:98:-:0;29097:17;29128:19;29161:22;29197:23;29234:20;29268:29;29311:17;29342:22;29378:17;29409:25;29448:31;29504:25;29532:9;:22;29542:11;29532:22;;;;;;;;;;;29504:50;;29577:8;:24;;;29605:1;29577:29;:80;;29613:44;29632:8;:24;;;29613:18;:44::i;:::-;29577:80;;;29609:1;29577:80;29565:92;;29688:8;:18;;;;;;;;;;-1:-1:-1;;;;;29688:18:98;29720:8;:20;;;;;;;;;;-1:-1:-1;;;;;29720:20:98;29754:8;:23;;;;;;;;;;-1:-1:-1;;;;;29754:23:98;29791:8;:24;;;29829:8;:21;;;29864:8;:23;;;;;;;;;;;;29901:8;:18;;;29933:8;:23;;;29970:9;29993:8;:26;;:38;30020:10;-1:-1:-1;;;;;29993:38:98;-1:-1:-1;;;;;29993:38:98;;;;;;;;;;;;;30045:8;:32;;;29667:420;;;;;;;;;;;;;;;;;;;;;;;28979:1115;;;;;;;;;;;;;:::o;4341:101:97:-;4397:4;4420:15;11342:10;;;;;11263:96;4420:15;4413:22;;4341:101;:::o;53079:702:98:-;53194:21;53154;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;53150:128;;53238:29;;-1:-1:-1;;;53238:29:98;;;;;9901:25:136;;;9874:18;;53238:29:98;9755:177:136;53150:128:98;53292:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;53292:31:98;53327:10;53292:45;53288:141;;53374:21;;;;:9;:21;;;;;;;:31;;;53360:58;;-1:-1:-1;;;53360:58:98;;;;-1:-1:-1;;;;;53374:31:98;;53407:10;;53360:58;;;:::i;53288:141::-;53439:15;;;53511:21;;;:9;:21;;;;;;;;:31;;;;53574:45;;;;;53556:64;;:17;:64;;;;;;;:90;;;53439:217;;-1:-1:-1;;;53439:217:98;;-1:-1:-1;;;;;53439:15:98;;;;:34;;:217;;53487:10;;53511:31;;;53439:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;53667:21:98;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;53667:63:98;53706:24;53667:63;;;53745:29;;9901:25:136;;;53745:29:98;;-1:-1:-1;9874:18:136;53745:29:98;;;;;;;;53079:702;:::o;30492:184::-;30591:7;32095:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;32095:48:98;;;;:40;;:48;;;;;;30617:52;31924:226;2648:879:99;2435:16:97;:14;:16::i;:::-;2742:28:99::1;2762:7;2742:19;:28::i;:::-;2834:23;::::0;2859:10:::1;:12:::0;;2816:56:::1;::::0;-1:-1:-1;;;;;2834:23:99::1;::::0;::::1;2859:12;::::0;::::1;:::i;:::-;;;;;2816:17;:56::i;:::-;2781:15;:92:::0;;-1:-1:-1;;;;;;2781:92:99::1;-1:-1:-1::0;;;;;2781:92:99;;;::::1;::::0;;::::1;::::0;;2883:28:::1;::::0;;-1:-1:-1;;;2883:28:99;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;2883:28:99;;;;;;;;-1:-1:-1;2781:92:99;2883:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;2922:40;2976:5;2965:51;;;;;;;;;;;;:::i;:::-;3031:20;::::0;::::1;::::0;2922:94;;-1:-1:-1;;;;;;3031:34:99::1;3027:94;;3088:22;;-1:-1:-1::0;;;3088:22:99::1;;;;;;;;;;;3027:94;3195:20;::::0;::::1;::::0;3175:17:::1;:40:::0;;-1:-1:-1;;;;;;3175:40:99::1;-1:-1:-1::0;;;;;3175:40:99;;::::1;::::0;;;::::1;::::0;;3241:15:::1;::::0;::::1;::::0;3226:12:::1;:30:::0;;-1:-1:-1;;3226:30:99::1;-1:-1:-1::0;3241:15:99;3226:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3280:14:99::1;::::0;::::1;::::0;3266:11:::1;:28:::0;;-1:-1:-1;;3266:28:99::1;;3280:14:::0;3266:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;3318:14:99::1;::::0;::::1;::::0;3304:28;:11:::1;:28:::0;3369:14:::1;::::0;::::1;::::0;3342:11:::1;:42:::0;;-1:-1:-1;;;;;;3342:42:99::1;-1:-1:-1::0;;;;;3342:42:99;;::::1;::::0;;;::::1;::::0;;3409:19:::1;::::0;::::1;::::0;3430:11;;3443:16:::1;::::0;;-1:-1:-1;3443:16:99;;;::::1;::::0;::::1;3461::::0;;;;;;;;;3394:84:::1;::::0;3409:19;3430:11;3394:14:::1;:84::i;:::-;3493:27;3508:7;3517:2;3493:27;;;;;;;:::i;:::-;;;;;;;;2732:795;2648:879:::0;;:::o;6907:220:97:-;2435:16;:14;:16::i;:::-;3307:23:::1;:21;:23::i;:::-;7014:31:::2;7030:5;7037:7;7014:15;:31::i;:::-;7055:25;7065:5;7072:7;7055:9;:25::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;38780:2:136;2415:73:45::1;::::0;::::1;38762:21:136::0;38819:2;38799:18;;;38792:30;38858:34;38838:18;;;38831:62;-1:-1:-1;;;38909:18:136;;;38902:36;38955:19;;2415:73:45::1;38578:402:136::0;5631:197:97;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:97::1;::::0;-1:-1:-1;5813:7:97;5788:24:::1;:33::i;12620:179:98:-:0;12705:22;:20;:22::i;:::-;-1:-1:-1;;;;;12705:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12683:59:98;:10;-1:-1:-1;;;;;12683:59:98;;12679:114;;12765:17;;-1:-1:-1;;;12765:17:98;;;;;;;;;;;43954:2357;44092:30;;;;-1:-1:-1;;;;;44092:44:98;;;;;:99;;-1:-1:-1;44148:28:98;;-1:-1:-1;;;;;44140:51:98;;;44092:99;:1027;;;;-1:-1:-1;44285:30:98;;44267:49;;;;:17;:49;;;;;;;;:62;;;44233:30;;;;-1:-1:-1;;;;;44233:96:98;;;44267:62;;44233:96;;;:216;;-1:-1:-1;44407:30:98;;44389:49;;;;:17;:49;;;;;:60;44357:28;;-1:-1:-1;;;;;44357:92:98;;;44389:60;;44357:92;;44233:216;:394;;;-1:-1:-1;44570:30:98;;44552:49;;;;:17;:49;;;;;;;:75;;;44477:43;;;;:150;;44233:394;:574;;;-1:-1:-1;44749:30:98;;44731:49;;;;:17;:49;;;;;:76;;;44655:44;;;;:152;;44233:574;:700;;;-1:-1:-1;44888:30:98;;44870:49;;;;:17;:49;;;;;:63;;;44835:31;;;;:98;;44233:700;:868;;;-1:-1:-1;45049:30:98;;45031:49;;;;:17;:49;;;;;:70;;;44961:38;;;;:140;;44233:868;44075:2158;;;45231:30;;;;;45183;;45165:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;45165:62:98;;;:96;;;;;:212;;-1:-1:-1;45349:28:98;;45303:30;;45349:28;45285:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;45285:60:98;;;:92;;;;45165:212;45144:522;;;45410:28;;45452:30;;;;45410:73;;-1:-1:-1;;;45410:73:98;;-1:-1:-1;;;;;45410:41:98;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;45572:28:98;;45603:30;;;;45506:145;;;;-1:-1:-1;45506:145:98;;-1:-1:-1;45557:4:98;;45572:28;45603:30;-1:-1:-1;;;;;39243:15:136;;;39225:34;;39295:15;;;39290:2;39275:18;;39268:43;39347:15;;;39342:2;39327:18;;39320:43;39175:2;39160:18;;38985:384;45506:145:98;;;;;;;;45144:522;45680:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;45744:30:98;;;45726:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;;45726:69:98;;;-1:-1:-1;;;;;45726:69:98;;;;;;;;;;;;-1:-1:-1;45726:69:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;45856:30;;45815:407;;39710:25:136;;;39789:18;;;39782:43;;;;39841:18;;;39834:43;;;;39893:18;;39886:34;39936:19;;;39929:35;39980:19;;;39973:35;;;;40039:3;40024:19;;40017:35;;;;45815:407:98;;39697:3:136;39682:19;45815:407:98;;;;;;;44075:2158;46243:20;;:8;:20;;;;;;;;;;;;;;;;;;;;46278:26;;;;;46254:9;;46278:26;:::i;:::-;;;;;;;;43954:2357;;:::o;9629:119:97:-;9713:4;;-1:-1:-1;;;;;9713:4:97;9691:10;:27;9687:54;;9727:14;;-1:-1:-1;;;9727:14:97;;;;;;;;;;;10618:113;10687:6;;10697:1;10687:11;10683:41;;10707:17;;-1:-1:-1;;;10707:17:97;;;;;;;;;;;23161:1873:98;23330:1;23314:5;:12;:17;23310:76;;23354:21;;-1:-1:-1;;;23354:21:98;;;;;;;;;;;23310:76;23396:18;23428:5;23417:28;;;;;;;;;;;;:::i;:::-;23396:49;;23460:10;23474:1;23460:15;23456:77;;23498:24;;-1:-1:-1;;;23498:24:98;;;;;;;;;;;23456:77;23542:25;23570:21;;;:9;:21;;;;;23622:20;23606:12;;;;:36;;;;;;;;:::i;:::-;;23602:1366;;23662:19;;:33;;23658:108;;23722:29;;-1:-1:-1;;;23722:29:98;;;;;9901:25:136;;;9874:18;;23722:29:98;9755:177:136;23658:108:98;23811:10;;23784:8;:24;;;:37;23780:152;;;23868:10;23880:8;:24;;;23906:10;;23848:69;;-1:-1:-1;;;23848:69:98;;;;;;;;;;:::i;23780:152::-;23977:21;23950:23;;;;;;:48;;;;;;;;:::i;:::-;;23946:123;;24025:29;;-1:-1:-1;;;24025:29:98;;;;;9901:25:136;;;9874:18;;24025:29:98;9755:177:136;23946:123:98;24083:22;24108:36;24133:10;24108:24;:36::i;:::-;24083:61;;24158:17;24178:44;24197:8;:24;;;24178:18;:44::i;:::-;24158:64;;24258:9;24241:14;:26;:58;;;;;24298:1;24271:8;:24;;;:28;24241:58;24237:137;;;24326:33;;-1:-1:-1;;;24326:33:98;;;;;;;;;;;24237:137;24413:4;;24426:6;;24413:20;;-1:-1:-1;;;24413:20:98;;;;;9901:25:136;;;;24388:22:98;;-1:-1:-1;;;;;24413:4:98;;:12;;9874:18:136;;24413:20:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24413:20:98;;;;;;;;;;;;:::i;:::-;24388:45;;24462:8;:24;;;24448:10;;:38;;;;;;;:::i;:::-;;;;-1:-1:-1;;24524:10:98;;;;24536:20;;;;;24558:24;;;24508:75;;24524:10;-1:-1:-1;;;;;24536:20:98;;24508:15;:75::i;:::-;24598:23;;;:49;;-1:-1:-1;;24598:49:98;24624:23;24598:49;;;;;;24661:15;;24741:18;;;;24795:30;;-1:-1:-1;24777:49:98;;;:17;:49;;;;;;;:75;;;24661:205;;-1:-1:-1;;;24661:205:98;;-1:-1:-1;;;;;24661:15:98;;;;:34;;:205;;24713:10;;24741:18;;;24777:75;;24661:205;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;24910:20:98;;;;;24932:24;;;24886:71;;;;-1:-1:-1;24886:71:98;;24898:10;;-1:-1:-1;;;;;24910:20:98;;;;24886:71;:::i;:::-;;;;;;;;23644:1324;;;23602:1366;23255:1779;;23161:1873;;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;42723:389:98:-;42835:18;42855:19;42878:56;42912:9;42923:10;42878:33;:56::i;:::-;42834:100;;;;42948:10;42962:1;42948:15;:35;;;;-1:-1:-1;42967:16:98;;42948:35;42944:72;;;42999:7;;42723:389;;:::o;42944:72::-;43025:19;;;:33;43068:24;;;;:37;;;;-1:-1:-1;42723:389:98:o;16911:369::-;17006:22;:20;:22::i;:::-;-1:-1:-1;;;;;17006:47:98;;17054:7;17071:4;17006:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16982:20;;:95;;;;;;;:::i;:::-;;;;-1:-1:-1;17087:22:98;;-1:-1:-1;17087:20:98;:22::i;:::-;-1:-1:-1;;;;;17087:49:98;;17137:7;17154:4;17087:73;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17215:17;17224:7;17215:8;:17::i;:::-;17247:26;17265:7;17247:26;;;;;;:::i;13565:2624::-;13665:7;13689:26;13707:7;13689:17;:26::i;:::-;13684:90;;13738:25;;-1:-1:-1;;;13738:25:98;;;;;;;;;;;13684:90;13843:30;13887:5;13876:35;;;;;;;;;;;;:::i;:::-;14026:15;;13843:68;;-1:-1:-1;14026:15:98;:20;14022:78;;14069:20;;-1:-1:-1;;;14069:20:98;;;;;;;;;;;14022:78;14192:20;14176:12;;;;:36;;;;;;;;:::i;:::-;;14172:749;;14228:40;14247:8;:20;;;14228:18;:40::i;:::-;14334:23;;;;-1:-1:-1;;;;;14334:37:98;14330:102;;14398:19;;-1:-1:-1;;;14398:19:98;;;;;;;;;;;14330:102;14445:11;14459:4;-1:-1:-1;;;;;14459:12:98;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14526:15;;14512:30;;-1:-1:-1;;;14512:30:98;;;;;9901:25:136;;;;14445:28:98;;-1:-1:-1;14487:22:98;;-1:-1:-1;;;;;14512:13:98;;;;;9874:18:136;;14512:30:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;14512:30:98;;;;;;;;;;;;:::i;:::-;14487:55;;14587:4;:10;;;-1:-1:-1;;;;;14560:37:98;:8;:23;;;-1:-1:-1;;;;;14560:37:98;;14556:235;;14759:17;;-1:-1:-1;;;14759:17:98;;;;;;;;;;;14556:235;14808:41;14824:8;:24;;;14808:15;:41::i;:::-;14804:107;;;14876:20;;-1:-1:-1;;;14876:20:98;;;;;;;;;;;14804:107;14214:707;;14172:749;14974:30;;15029:1;14956:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;14956:60:98;14948:83;;;;:190;;-1:-1:-1;15081:30:98;;15063:49;;;;:17;:49;;;;;:75;;;15051:9;:87;14948:190;14931:390;;;15239:30;;15221:49;;;;:17;:49;;;;;;;:75;;;15170:140;;-1:-1:-1;;;15170:140:98;;;;15210:9;;15170:140;;;:::i;14931:390::-;15331:18;15354:15;;15352:17;;;;;:::i;:::-;;;;;-1:-1:-1;15379:18:98;15400:21;;;:9;:21;;;;;;;;15432:25;;;15467:11;;;:21;;-1:-1:-1;;;;;15467:21:98;;;-1:-1:-1;;;;;;15467:21:98;;;;;;;15514:20;;;;15498:13;;;:36;;;;;;;;;;;;;;15563:23;;;;15544:16;;;:42;;;;;;;;;;;15616:24;;;;-1:-1:-1;15596:17:98;;;:44;;;;15701:16;;;:40;;-1:-1:-1;;15701:40:98;;;;;;15765:12;15751:11;;;:26;-1:-1:-1;15787:16:98;;:20;;;;15866:17;;;;15853:30;;:10;;;:30;;;;;;;15352:17;;-1:-1:-1;15400:21:98;;15853:30;;;;;;;;:::i;:::-;-1:-1:-1;;15921:30:98;;15893:25;;;:58;-1:-1:-1;15961:15:98;;16025:11;;;;15961:76;;-1:-1:-1;;;15961:76:98;;-1:-1:-1;;;;;15961:15:98;;;;:33;;16002:9;;15961:76;;16013:10;;16025:11;;15961:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16053:35;16069:6;;16077:10;16053:35;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;16170:10:98;13565:2624;-1:-1:-1;;;;13565:2624:98:o;12296:171::-;12387:17;;-1:-1:-1;;;;;12387:17:98;12365:10;:40;12361:100;;12428:22;;-1:-1:-1;;;12428:22:98;;;;;;;;;;;20677:882;20815:7;20856:2;20886:22;:20;:22::i;:::-;-1:-1:-1;;;;;20886:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20872:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20872:63:98;;;;;;;;-1:-1:-1;;20872:63:98;;;;;;;;;;;;:::i;:::-;;;20868:216;;;20985:17;;;-1:-1:-1;20868:216:98;21155:21;21235:16;21179:22;:20;:22::i;:::-;-1:-1:-1;;;;;21179:44:98;;21224:7;21179:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:72;;;;:::i;:::-;21155:96;-1:-1:-1;21317:22:98;21342:40;21368:13;21374:7;21368:2;:13;:::i;:::-;21352:29;;:13;:29;:::i;:::-;21342:9;:40::i;:::-;21317:65;;21392:24;21505:14;21431:22;:20;:22::i;:::-;-1:-1:-1;;;;;21431:47:98;;21479:7;21496:4;21431:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:88;;;;:::i;:::-;21392:127;20677:882;-1:-1:-1;;;;;;;20677:882:98:o;41952:455::-;42021:15;-1:-1:-1;;;42056:2:98;:12;42048:53;;;;-1:-1:-1;;;42048:53:98;;48077:2:136;42048:53:98;;;48059:21:136;48116:2;48096:18;;;48089:30;-1:-1:-1;;;48135:18:136;;;48128:58;48203:18;;42048:53:98;47875:352:136;42048:53:98;-1:-1:-1;;;;42123:2:98;42147;42186:215;42193:5;;42186:215;;42218:1;42222;42218:5;42227:1;42218:10;42214:177;;42252:10;42257:1;42260;42252:4;:10::i;:::-;42248:14;-1:-1:-1;42286:1:98;42280:7;42186:215;;42214:177;42336:16;42341:7;42350:1;42336:4;:16::i;:::-;42326:26;-1:-1:-1;42370:6:98;42375:1;42370:6;;:::i;:::-;;;42186:215;;;42038:369;;41952:455;;;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;48623:2:136;3262:56:60;;;48605:21:136;48662:2;48642:18;;;48635:30;48701:34;48681:18;;;48674:62;-1:-1:-1;;;48752:18:136;;;48745:44;48806:19;;3262:56:60;48421:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;49038:2:136;3140:82:60;;;49020:21:136;49077:2;49057:18;;;49050:30;49116:34;49096:18;;;49089:62;-1:-1:-1;;;49167:18:136;;;49160:39;49216:19;;3140:82:60;48836:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;32519:191:98:-;32601:19;32683:20;7921:8;32683:16;:20;:::i;:::-;32669:10;;32649:8;:17;:30;;32669:10;32649:30;:::i;:::-;:54;;;32519:191;-1:-1:-1;;32519:191:98:o;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;49448:2:136;1675:68:45;;;49430:21:136;;;49467:18;;;49460:30;49526:34;49506:18;;;49499:62;49578:18;;1675:68:45;49246:356:136;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;5214:646:99:-;5284:21;5348:6;;5318:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5308:48;;;;;;5284:72;;5371:26;:24;:26::i;:::-;-1:-1:-1;;;;;5371:34:99;;5406:13;5429:1;5371:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5367:156;;;5448:26;:24;:26::i;:::-;-1:-1:-1;;;;;5448:37:99;;5486:13;5509:1;5448:64;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5367:156;5537:9;5532:268;5556:7;:14;5552:1;:18;5532:268;;;5596:26;:24;:26::i;:::-;-1:-1:-1;;;;;5596:34:99;;5631:13;5646:7;5654:1;5646:10;;;;;;;;:::i;:::-;;;;;;;5596:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5591:199;;5677:26;:24;:26::i;:::-;-1:-1:-1;;;;;5677:36:99;;5754:6;;5724:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;5714:48;;;;;;5764:7;5772:1;5764:10;;;;;;;;:::i;:::-;;;;;;;5677:98;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5591:199;5572:3;;;;:::i;:::-;;;;5532:268;;;;5815:38;5837:6;;5845:7;5815:38;;;;;;;:::i;4551:526::-;4653:11;;4625:4;;-1:-1:-1;;;;;4653:11:99;4641:363;;4695:21;4759:6;;4729:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;4719:48;;;;;;4695:72;;4785:26;:24;:26::i;:::-;-1:-1:-1;;;;;4785:34:99;;4820:13;4843:1;4785:61;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4781:213;;;-1:-1:-1;4873:4:99;;4551:526;-1:-1:-1;;4551:526:99:o;4781:213::-;4923:26;:24;:26::i;:::-;-1:-1:-1;;;;;4923:34:99;;4958:13;4973:5;4923:56;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;4641:363::-;5020:11;;:50;;-1:-1:-1;;;5020:50:99;;-1:-1:-1;;;;;5020:11:99;;;;:28;;:50;;5049:5;;5064:4;;5020:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19122:637:98:-;19223:7;19269:14;19223:7;19379:22;:20;:22::i;:::-;-1:-1:-1;;;;;19379:47:98;;19427:7;19444:4;19379:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19549:11;:21;19357:93;;-1:-1:-1;19516:30:98;19530:16;19357:93;19516:30;:::i;:::-;:54;19512:139;;;19605:11;:21;:35;;19629:11;;19605:35;:::i;:::-;19586:54;;19512:139;-1:-1:-1;19736:16:98;19122:637;-1:-1:-1;;;19122:637:98:o;19765:756::-;19869:7;19888:18;19965:14;19909:22;:20;:22::i;:::-;-1:-1:-1;;;;;19909:44:98;;19954:7;19909:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:70;;;;:::i;:::-;19888:91;-1:-1:-1;20008:2:98;20038:22;:20;:22::i;:::-;-1:-1:-1;;;;;20038:34:98;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20024:61:98;;:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20024:63:98;;;;;;;;-1:-1:-1;;20024:63:98;;;;;;;;;;;;:::i;:::-;;;20020:216;;;20137:17;;;-1:-1:-1;20020:216:98;20245:22;20270:37;20293:13;20299:7;20293:2;:13;:::i;:::-;20280:26;;:10;:26;:::i;20270:37::-;20245:62;;20317:21;20341:22;:20;:22::i;:::-;-1:-1:-1;;;;;20341:47:98;;20389:7;20406:4;20341:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20317:95;-1:-1:-1;20423:24:98;20450:30;20317:95;20450:14;:30;:::i;:::-;20423:57;19765:756;-1:-1:-1;;;;;;;;19765:756:98:o;43118:830::-;43272:18;43292:19;43341:12;43327:26;;43393:11;43370:9;:19;;;:34;;43363:42;;;;:::i;:::-;43442:11;43419:9;:19;;;:34;43415:173;;-1:-1:-1;43543:1:98;;-1:-1:-1;43543:1:98;43535:13;;43415:173;43654:287;43811:9;:19;;;43797:11;:33;;;;:::i;:::-;43883:9;:24;;;43921:10;43654:19;:287::i;:::-;43641:300;;43118:830;;;;;;:::o;3533:367:99:-;3757:50;3778:17;3797:9;3757:20;:50::i;:::-;3817:29;3833:12;3817:15;:29::i;:::-;3856:37;3877:15;6009:440;6089:9;6084:303;6108:7;:14;6104:1;:18;6084:303;;;6147:26;:24;:26::i;:::-;-1:-1:-1;;;;;6147:34:99;;6222:6;;6192:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6182:48;;;;;;6232:7;6240:1;6232:10;;;;;;;;:::i;:::-;;;;;;;6147:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6143:234;;;6263:26;:24;:26::i;:::-;-1:-1:-1;;;;;6263:37:99;;6341:6;;6311:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;6301:48;;;;;;6351:7;6359:1;6351:10;;;;;;;;:::i;:::-;;;;;;;6263:99;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6143:234;6124:3;;;;:::i;:::-;;;;6084:303;;;;6402:40;6426:6;;6434:7;6402:40;;;;;;;:::i;12473:141:98:-;-1:-1:-1;;;;;12555:22:98;;12551:56;;12586:21;;-1:-1:-1;;;12586:21:98;;;;;;;;;;;10971:126:97;11036:10;:20;;-1:-1:-1;;11036:20:97;;;;;;;;;;11071:19;;3288:41:136;;;11071:19:97;;3276:2:136;3261:18;11071:19:97;3148:187:136;5044:390:97;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:97::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:97::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:6:-;4867:36;;-1:-1:-1;;;;;;4884:10:6;51018:2:136;50989:15;50985:45;4867:36:6;;;50973:58:136;51047:12;;;51040:28;;;4823:7:6;;;;51084:12:136;;4867:36:6;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:6:o;4244:301:99:-;4347:27;4388:5;4377:38;;;;;;;;;;;;:::i;:::-;4347:68;;4430:9;4425:114;4449:2;:9;4445:1;:13;4425:114;;;4479:49;4511:2;4514:1;4511:5;;;;;;;;:::i;:::-;;;;;;;:16;;;4479:31;:49::i;:::-;4460:3;;;;:::i;:::-;;;;4425:114;;22272:633:98;22364:28;22384:7;22364:19;:28::i;:::-;22407:26;22425:7;22407:17;:26::i;:::-;22402:90;;22456:25;;-1:-1:-1;;;22456:25:98;;;;;;;;;;;22402:90;22547:28;22578:22;:20;:22::i;:::-;-1:-1:-1;;;;;22578:50:98;;22629:7;22646:4;22578:74;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22547:105;;22667:23;22662:78;;22713:16;;-1:-1:-1;;;22713:16:98;;;;;;;;;;;22662:78;22749:27;22790:5;22779:38;;;;;;;;;;;;:::i;:::-;22749:68;;22827:37;22852:7;22861:2;22827:24;:37::i;:::-;22874:24;22886:7;22895:2;22874:11;:24::i;27003:127::-;27095:28;;9901:25:136;;;27095:28:98;;9889:2:136;9874:18;27095:28:98;9755:177:136;6721:269:10;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;27466:829:98:-;-1:-1:-1;;;;;27608:29:98;;27576;27608;;;:20;:29;;;;;;;;27576:61;;;;;;;;;;;;;;;;;;;27608:29;;27576:61;;;27608:29;27576:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27652:9;27647:642;27671:12;:19;27667:1;:23;27647:642;;;27711:18;27732:12;27745:1;27732:15;;;;;;;;:::i;:::-;;;;;;;27711:36;;27761:25;27789:9;:21;27799:10;27789:21;;;;;;;;;;;27761:49;;27828:26;27843:10;27828:14;:26::i;:::-;27824:455;;;-1:-1:-1;;;;;27897:35:98;;27874:20;27897:35;;;:26;;;:35;;;;;;;27950:39;;;;28007:21;;;:37;;27897:35;;;;28007:37;;27897:35;;28007:37;:::i;:::-;;;;;;;;28077:12;28062:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;28107:50:98;;-1:-1:-1;28134:8:98;28144:12;28107:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;28193:7:98;28202:10;28214:1;28217:8;:21;;;28240:8;:23;;;28180:84;;;;;;;;;;:::i;:::-;;;;;;;;27856:423;27824:455;27697:592;;27692:3;;;;;:::i;:::-;;;;27647:642;;6530:1642:83;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:83;;6530:1642;-1:-1:-1;6530:1642:83:o;6597:45::-;7321:14;7355:1;7344:7;7349:1;7344:4;:7::i;:::-;:12;;7338:1;:19;;7321:36;;7816:1;7805:6;7801:1;:10;;;;;:::i;:::-;;7792:6;:19;7791:26;;7782:35;;7865:1;7854:6;7850:1;:10;;;;;:::i;:::-;;7841:6;:19;7840:26;;7831:35;;7914:1;7903:6;7899:1;:10;;;;;:::i;:::-;;7890:6;:19;7889:26;;7880:35;;7963:1;7952:6;7948:1;:10;;;;;:::i;:::-;;7939:6;:19;7938:26;;7929:35;;8012:1;8001:6;7997:1;:10;;;;;:::i;:::-;;7988:6;:19;7987:26;;7978:35;;8061:1;8050:6;8046:1;:10;;;;;:::i;:::-;;8037:6;:19;8036:26;;8027:35;;8110:1;8099:6;8095:1;:10;;;;;:::i;:::-;;8086:6;:19;8085:26;;8076:35;;8132:23;8136:6;8148;8144:1;:10;;;;;:::i;:::-;;8132:3;:23::i;41447:277:98:-;41516:15;-1:-1:-1;;;41551:2:98;:13;;41543:66;;;;-1:-1:-1;;;41543:66:98;;53001:2:136;41543:66:98;;;52983:21:136;53040:2;53020:18;;;53013:30;53079:34;53059:18;;;53052:62;-1:-1:-1;;;53130:18:136;;;53123:38;53178:19;;41543:66:98;52799:404:136;41543:66:98;-1:-1:-1;;;41627:2:98;:12;41619:53;;;;-1:-1:-1;;;41619:53:98;;53410:2:136;41619:53:98;;;53392:21:136;53449:2;53429:18;;;53422:30;-1:-1:-1;;;53468:18:136;;;53461:58;53536:18;;41619:53:98;53208:352:136;41619:53:98;41714:3;-1:-1:-1;;;41691:7:98;41696:2;41691;:7;:::i;:::-;41690:19;;;;:::i;:::-;41689:28;;;41447:277;-1:-1:-1;;;41447:277:98:o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;53767:2:136;1479:95:60;;;53749:21:136;53806:2;53786:18;;;53779:30;53845:34;53825:18;;;53818:62;-1:-1:-1;;;53896:18:136;;;53889:43;53949:19;;1479:95:60;53565:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;2118:794:46:-;2202:16;2534:48;2516:14;2510:4;2506:25;2500:4;2496:36;2493:90;2487:4;2480:104;2741:32;2724:14;2718:4;2714:25;2711:63;2705:4;2698:77;2823:4;2817;2811;2808:1;2800:28;2788:40;-1:-1:-1;;;;;;2855:22:46;;2847:58;;;;-1:-1:-1;;;2847:58:46;;54181:2:136;2847:58:46;;;54163:21:136;54220:2;54200:18;;;54193:30;-1:-1:-1;;;54239:18:136;;;54232:53;54302:18;;2847:58:46;53979:347:136;2019:473:99;2113:18;2134:22;;;:9;:22;;;;;;2183:16;;;;;;:43;;;;;;;;:::i;:::-;;:91;;;-1:-1:-1;2250:24:99;2230:16;;;;;;:44;;;;;;;;:::i;:::-;;2183:91;:154;;;-1:-1:-1;2314:23:99;2294:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:154;:201;;;-1:-1:-1;2361:23:99;2341:16;;;;;;:43;;;;;;;;:::i;:::-;;2183:201;2166:320;;;2458:16;;;;2416:59;;-1:-1:-1;;;2416:59:99;;;;2445:11;;2458:16;;;;;2416:59;;;:::i;11899:391:98:-;-1:-1:-1;;;;;11981:21:98;;11977:77;;12025:18;;-1:-1:-1;;;12025:18:98;;;;;;;;;;;11977:77;12075:17;;-1:-1:-1;;;;;12075:17:98;12063:100;;12130:22;;-1:-1:-1;;;12130:22:98;;;;;;;;;;;12063:100;12177:22;:20;:22::i;:::-;-1:-1:-1;;;;;12177:31:98;;12209:7;12177:40;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12172:98;;12240:19;;-1:-1:-1;;;12240:19:98;;;;;;;;;;;32716:1526;32829:22;32870:9;32865:630;32889:16;:23;32885:1;:27;32865:630;;;32992:16;33009:1;32992:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33026:1;32992:35;32988:187;33152:8;32988:187;33188:18;33209:16;33226:1;33209:19;;;;;;;;:::i;:::-;;;;;;;:30;;;33188:51;;33258:26;33273:10;33258:14;:26::i;:::-;33253:167;;33311:29;;-1:-1:-1;;;33311:29:98;;;;;9901:25:136;;;9874:18;;33311:29:98;9755:177:136;33253:167:98;33452:16;33469:1;33452:19;;;;;;;;:::i;:::-;;;;;;;:32;;;33433:51;;;;;:::i;:::-;;;32919:576;32865:630;32914:3;;;;:::i;:::-;;;;32865:630;;;;33591:29;33623:60;33635:30;33657:7;33635:21;:30::i;:::-;33667:15;33623:11;:60::i;:::-;33591:92;;33765:26;33794:22;:20;:22::i;:::-;-1:-1:-1;;;;;33794:47:98;;33842:7;33859:4;33794:71;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;33765:100;;34055:18;34031:21;:42;34027:147;;;34121:21;34144:18;34096:67;;-1:-1:-1;;;34096:67:98;;;;;;;;;:::i;34027:147::-;-1:-1:-1;;;;;;34184:27:98;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;32716:1526:98:o;34248:3457::-;34356:29;34400:9;34395:3304;34419:16;:23;34415:1;:27;34395:3304;;;34463:18;34484:16;34501:1;34484:19;;;;;;;;:::i;:::-;;;;;;;:30;;;34463:51;;34587:12;:19;34610:1;34587:24;34583:920;;34646:16;;;34660:1;34646:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;34646:16:98;34631:31;;34698:10;34680:12;34693:1;34680:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;34583:920;;;34757:10;34798:9;34793:318;34817:12;:19;34813:1;:23;34793:318;;;34913:10;34894:12;34907:1;34894:15;;;;;;;;:::i;:::-;;;;;;;:29;34890:203;;34959:4;34951:12;;35022:10;35034:1;34996:40;;-1:-1:-1;;;34996:40:98;;;;;;;;;:::i;34890:203::-;34838:3;;;;:::i;:::-;;;;34793:318;;;;35133:5;35128:361;;35162:21;35200:12;:19;35222:1;35200:23;;;;:::i;:::-;-1:-1:-1;;;;;35186:38:98;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;35186:38:98;;35162:62;;35251:9;35246:124;35270:12;:19;35266:1;:23;35246:124;;;35332:12;35345:1;35332:15;;;;;;;;:::i;:::-;;;;;;;35322:4;35327:1;35322:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;35291:3;;;;:::i;:::-;;;;35246:124;;;;35419:10;35391:4;35396:12;:19;35391:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;35466:4;-1:-1:-1;35128:361:98;34739:764;34583:920;35516:12;35531:16;35548:1;35531:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;35578:25;35606:21;;;:9;:21;;;;;;-1:-1:-1;;;;;35760:35:98;;;;:26;;;:35;;;;;;35531:32;;-1:-1:-1;35983:40:98;35760:35;35531:32;35983:11;:40::i;:::-;-1:-1:-1;;;;;36158:35:98;;;;;;:26;;;:35;;;;;:50;;;35960:63;;-1:-1:-1;36158:35:98;36480:246;-1:-1:-1;;;;;36504:29:98;;;;;;:20;:29;;;;;:36;36500:40;;36480:246;;;36605:19;;-1:-1:-1;;;;;36569:29:98;;36605:19;36569:29;;;:20;:29;;;;;:32;;36599:1;;36569:32;;;;;;:::i;:::-;;;;;;;;;:55;36565:147;;36662:4;36648:18;;36688:5;;36565:147;36542:3;;;;:::i;:::-;;;;36480:246;;;;36744:11;36739:106;;-1:-1:-1;;;;;36775:29:98;;;;;;:20;:29;;;;;;;36810:19;;36775:55;;;;;;;;;;;;;;;;;;36739:106;37024:12;37000:20;:36;36996:370;;37071:35;37086:20;37071:12;:35;:::i;:::-;37056:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37149:35:98;;-1:-1:-1;37164:20:98;37149:12;:35;:::i;:::-;37124:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;36996:370:98;;-1:-1:-1;36996:370:98;;37238:35;37261:12;37238:20;:35;:::i;:::-;37223:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;37316:35:98;;-1:-1:-1;37339:12:98;37316:20;:35;:::i;:::-;37291:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;36996:370:98;37383:8;:18;;;37405:1;37383:23;37379:310;;37447:12;37426:18;;;:33;37379:310;;;37498:58;37525:8;37535:20;37498:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;37592:7:98;37601:10;37613:12;37627:8;:21;;;37650:8;:23;;;37579:95;;;;;;;;;;:::i;:::-;;;;;;;;37379:310;34449:3250;;;;;;34444:3;;;;;:::i;:::-;;;;34395:3304;;2455:490:14;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;32320:193:98:-;32396:4;32419:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;32504:1:98;32460:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;32460:32:98;:46;;;32320:193::o;8633:983:83:-;8685:7;;8769:3;8760:12;;;:16;8756:99;;8806:3;8796:13;;;;8827;8756:99;8881:2;8872:11;;;:15;8868:96;;8917:2;8907:12;;;;8937;8868:96;8990:2;8981:11;;;:15;8977:96;;9026:2;9016:12;;;;9046;8977:96;9099:2;9090:11;;;:15;9086:96;;9135:2;9125:12;;;;9155;9086:96;9208:1;9199:10;;;:14;9195:93;;9243:1;9233:11;;;;9262;9195:93;9314:1;9305:10;;;:14;9301:93;;9349:1;9339:11;;;;9368;9301:93;9420:1;9411:10;;;:14;9407:93;;9455:1;9445:11;;;;9474;9407:93;9526:1;9517:10;;;:14;9513:64;;9561:1;9551:11;9603:6;8633:983;-1:-1:-1;;8633:983:83:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:83;;588:104;-1:-1:-1;588:104:83:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;37711:284:98:-;37796:7;;37831:25;37850:6;37838:8;37831:25;:::i;:::-;37815:41;;37880:1;37871:6;:10;37867:90;;;37921:8;37931:6;37939;37904:42;;-1:-1:-1;;;37904:42:98;;;;;;;;;;:::i;7058:325:76:-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;56184:2:136;8113:60:76;;;56166:21:136;56223:2;56203:18;;;56196:30;56262:31;56242:18;;;56235:59;56311:18;;8113:60:76;55982:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;14:180:136:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:136;;14:180;-1:-1:-1;14:180:136:o;199:104::-;-1:-1:-1;;;;;265:31:136;253:44;;199:104::o;308:127::-;369:10;364:3;360:20;357:1;350:31;400:4;397:1;390:15;424:4;421:1;414:15;440:119;527:1;520:5;517:12;507:46;;533:18;;:::i;564:250::-;649:1;659:113;673:6;670:1;667:13;659:113;;;749:11;;;743:18;730:11;;;723:39;695:2;688:10;659:113;;;-1:-1:-1;;806:1:136;788:16;;781:27;564:250::o;819:271::-;861:3;899:5;893:12;926:6;921:3;914:19;942:76;1011:6;1004:4;999:3;995:14;988:4;981:5;977:16;942:76;:::i;:::-;1072:2;1051:15;-1:-1:-1;;1047:29:136;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:136:o;1095:252::-;1182:5;1176:12;1171:3;1164:25;1146:3;1235:4;1228:5;1224:16;1218:23;1273:4;1266;1261:3;1257:14;1250:28;1294:47;1335:4;1330:3;1326:14;1312:12;1294:47;:::i;1352:1500::-;1929:4;1958:3;1988:6;1977:9;1970:25;2031:6;2026:2;2015:9;2011:18;2004:34;2074:6;2069:2;2058:9;2054:18;2047:34;2117:6;2112:2;2101:9;2097:18;2090:34;2160:1;2156;2151:3;2147:11;2143:19;2211:2;2203:6;2199:15;2193:3;2182:9;2178:19;2171:44;2264:2;2256:6;2252:15;2246:3;2235:9;2231:19;2224:44;2317:2;2309:6;2305:15;2299:3;2288:9;2284:19;2277:44;2358:6;2352:3;2341:9;2337:19;2330:35;2374:44;2411:6;2374:44;:::i;:::-;2455:6;2449:3;2438:9;2434:19;2427:35;2499:2;2493:3;2482:9;2478:19;2471:31;2519:54;2569:2;2558:9;2554:18;2546:6;2519:54;:::i;:::-;2610:14;;2604:3;2589:19;;2582:43;2681:2;2668:16;;2662:23;2656:3;2641:19;;2634:52;2746:2;2733:16;;;2727:23;2723:32;2717:3;2702:19;;2695:61;-1:-1:-1;;2787:3:136;2772:19;;2765:36;;;;2832:3;2817:19;;;2810:36;2511:62;1352:1500;-1:-1:-1;;;;;;;;;;1352:1500:136:o;2857:286::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;3010:23;;-1:-1:-1;;;;;;3062:32:136;;3052:43;;3042:71;;3109:1;3106;3099:12;3957:127;4018:10;4013:3;4009:20;4006:1;3999:31;4049:4;4046:1;4039:15;4073:4;4070:1;4063:15;4089:253;4161:2;4155:9;4203:4;4191:17;;-1:-1:-1;;;;;4223:34:136;;4259:22;;;4220:62;4217:88;;;4285:18;;:::i;:::-;4321:2;4314:22;4089:253;:::o;4347:::-;4419:2;4413:9;4461:4;4449:17;;-1:-1:-1;;;;;4481:34:136;;4517:22;;;4478:62;4475:88;;;4543:18;;:::i;4605:255::-;4677:2;4671:9;4719:6;4707:19;;-1:-1:-1;;;;;4741:34:136;;4777:22;;;4738:62;4735:88;;;4803:18;;:::i;4865:257::-;4937:4;4931:11;;;4969:17;;-1:-1:-1;;;;;5001:34:136;;5037:22;;;4998:62;4995:88;;;5063:18;;:::i;5127:253::-;5199:2;5193:9;5241:4;5229:17;;-1:-1:-1;;;;;5261:34:136;;5297:22;;;5258:62;5255:88;;;5323:18;;:::i;5385:275::-;5456:2;5450:9;5521:2;5502:13;;-1:-1:-1;;5498:27:136;5486:40;;-1:-1:-1;;;;;5541:34:136;;5577:22;;;5538:62;5535:88;;;5603:18;;:::i;:::-;5639:2;5632:22;5385:275;;-1:-1:-1;5385:275:136:o;5665:144::-;-1:-1:-1;;;;;5753:31:136;;5743:42;;5733:70;;5799:1;5796;5789:12;5814:727;5877:5;5925:4;5913:9;5908:3;5904:19;5900:30;5897:50;;;5943:1;5940;5933:12;5897:50;5965:22;;:::i;:::-;5956:31;;6024:9;6011:23;6043:46;6081:7;6043:46;:::i;:::-;6098:22;;6172:2;6157:18;;6144:32;6185:46;6144:32;6185:46;:::i;:::-;6263:7;6258:2;6251:5;6247:14;6240:31;;6331:2;6320:9;6316:18;6303:32;6298:2;6291:5;6287:14;6280:56;6396:2;6385:9;6381:18;6368:32;6363:2;6356:5;6352:14;6345:56;6462:3;6451:9;6447:19;6434:33;6428:3;6421:5;6417:15;6410:58;6529:3;6518:9;6514:19;6501:33;6495:3;6488:5;6484:15;6477:58;5814:727;;;;:::o;6546:413::-;6601:5;6649:4;6637:9;6632:3;6628:19;6624:30;6621:50;;;6667:1;6664;6657:12;6621:50;6689:22;;:::i;:::-;6680:31;;6747:9;6734:23;6727:5;6720:38;6818:2;6807:9;6803:18;6790:32;6785:2;6778:5;6774:14;6767:56;6883:2;6872:9;6868:18;6855:32;6850:2;6843:5;6839:14;6832:56;6948:2;6937:9;6933:18;6920:32;6915:2;6908:5;6904:14;6897:56;6546:413;;;;:::o;6964:366::-;7094:6;7102;7155:3;7143:9;7134:7;7130:23;7126:33;7123:53;;;7172:1;7169;7162:12;7123:53;7195:54;7241:7;7230:9;7195:54;:::i;:::-;7185:64;;7268:56;7316:7;7310:3;7299:9;7295:19;7268:56;:::i;:::-;7258:66;;6964:366;;;;;:::o;7335:183::-;7395:4;-1:-1:-1;;;;;7417:30:136;;7414:56;;;7450:18;;:::i;:::-;-1:-1:-1;7495:1:136;7491:14;7507:4;7487:25;;7335:183::o;7523:750::-;7577:5;7630:3;7623:4;7615:6;7611:17;7607:27;7597:55;;7648:1;7645;7638:12;7597:55;7684:6;7671:20;7710:4;7734:60;7750:43;7790:2;7750:43;:::i;:::-;7734:60;:::i;:::-;7828:15;;;7914:1;7910:10;;;;7898:23;;7894:32;;;7859:12;;;;7938:15;;;7935:35;;;7966:1;7963;7956:12;7935:35;8002:2;7994:6;7990:15;8014:230;8030:6;8025:3;8022:15;8014:230;;;8110:3;8097:17;8127:44;8165:5;8127:44;:::i;:::-;8184:18;;8222:12;;;;8047;;8014:230;;;-1:-1:-1;8262:5:136;7523:750;-1:-1:-1;;;;;;7523:750:136:o;8278:186::-;8326:4;-1:-1:-1;;;;;8348:30:136;;8345:56;;;8381:18;;:::i;:::-;-1:-1:-1;8447:2:136;8426:15;-1:-1:-1;;8422:29:136;8453:4;8418:40;;8278:186::o;8469:336::-;8533:5;8562:52;8578:35;8606:6;8578:35;:::i;8562:52::-;8553:61;;8637:6;8630:5;8623:21;8677:3;8668:6;8663:3;8659:16;8656:25;8653:45;;;8694:1;8691;8684:12;8653:45;8743:6;8738:3;8731:4;8724:5;8720:16;8707:43;8797:1;8790:4;8781:6;8774:5;8770:18;8766:29;8759:40;8469:336;;;;;:::o;8810:220::-;8852:5;8905:3;8898:4;8890:6;8886:17;8882:27;8872:55;;8923:1;8920;8913:12;8872:55;8945:79;9020:3;9011:6;8998:20;8991:4;8983:6;8979:17;8945:79;:::i;9035:715::-;9146:6;9154;9162;9215:2;9203:9;9194:7;9190:23;9186:32;9183:52;;;9231:1;9228;9221:12;9183:52;9258:23;;-1:-1:-1;;;;;9330:14:136;;;9327:34;;;9357:1;9354;9347:12;9327:34;9380:61;9433:7;9424:6;9413:9;9409:22;9380:61;:::i;:::-;9370:71;;9494:2;9483:9;9479:18;9466:32;9450:48;;9523:2;9513:8;9510:16;9507:36;;;9539:1;9536;9529:12;9507:36;;9562:51;9605:7;9594:8;9583:9;9579:24;9562:51;:::i;:::-;9552:61;;;9663:2;9652:9;9648:18;9635:32;9676:44;9714:5;9676:44;:::i;:::-;9739:5;9729:15;;;9035:715;;;;;:::o;9937:229::-;-1:-1:-1;;;;;10127:32:136;;;;10109:51;;10097:2;10082:18;;9937:229::o;10393:568::-;10470:6;10478;10486;10539:2;10527:9;10518:7;10514:23;10510:32;10507:52;;;10555:1;10552;10545:12;10507:52;10594:9;10581:23;10613:44;10651:5;10613:44;:::i;:::-;10676:5;-1:-1:-1;10733:2:136;10718:18;;10705:32;10746:46;10705:32;10746:46;:::i;:::-;10811:7;-1:-1:-1;10870:2:136;10855:18;;10842:32;10883:46;10842:32;10883:46;:::i;11362:468::-;11439:6;11447;11500:2;11488:9;11479:7;11475:23;11471:32;11468:52;;;11516:1;11513;11506:12;11468:52;11543:23;;-1:-1:-1;;;;;11578:30:136;;11575:50;;;11621:1;11618;11611:12;11575:50;11644:49;11685:7;11676:6;11665:9;11661:22;11644:49;:::i;:::-;11634:59;;;11743:2;11732:9;11728:18;11715:32;11756:44;11794:5;11756:44;:::i;:::-;11819:5;11809:15;;;11362:468;;;;;:::o;12043:142::-;12126:1;12119:5;12116:12;12106:46;;12132:18;;:::i;:::-;12161;;12043:142::o;12190:213::-;12339:2;12324:18;;12351:46;12328:9;12379:6;12351:46;:::i;12408:328::-;12476:6;12484;12537:2;12525:9;12516:7;12512:23;12508:32;12505:52;;;12553:1;12550;12543:12;12505:52;12592:9;12579:23;12611:44;12649:5;12611:44;:::i;:::-;12674:5;12726:2;12711:18;;;;12698:32;;-1:-1:-1;;;12408:328:136:o;12741:248::-;12809:6;12817;12870:2;12858:9;12849:7;12845:23;12841:32;12838:52;;;12886:1;12883;12876:12;12838:52;-1:-1:-1;;12909:23:136;;;12979:2;12964:18;;;12951:32;;-1:-1:-1;12741:248:136:o;12994:316::-;13071:6;13079;13087;13140:2;13128:9;13119:7;13115:23;13111:32;13108:52;;;13156:1;13153;13146:12;13108:52;-1:-1:-1;;13179:23:136;;;13249:2;13234:18;;13221:32;;-1:-1:-1;13300:2:136;13285:18;;;13272:32;;12994:316;-1:-1:-1;12994:316:136:o;13315:143::-;13399:1;13392:5;13389:12;13379:46;;13405:18;;:::i;13463:215::-;13613:2;13598:18;;13625:47;13602:9;13654:6;13625:47;:::i;13683:260::-;13742:6;13795:2;13783:9;13774:7;13770:23;13766:32;13763:52;;;13811:1;13808;13801:12;13763:52;13850:9;13837:23;13869:44;13907:5;13869:44;:::i;14369:468::-;14446:6;14454;14507:2;14495:9;14486:7;14482:23;14478:32;14475:52;;;14523:1;14520;14513:12;14475:52;14562:9;14549:23;14581:44;14619:5;14581:44;:::i;:::-;14644:5;-1:-1:-1;14700:2:136;14685:18;;14672:32;-1:-1:-1;;;;;14716:30:136;;14713:50;;;14759:1;14756;14749:12;14713:50;14782:49;14823:7;14814:6;14803:9;14799:22;14782:49;:::i;:::-;14772:59;;;14369:468;;;;;:::o;14842:752::-;14929:6;14937;14945;14998:2;14986:9;14977:7;14973:23;14969:32;14966:52;;;15014:1;15011;15004:12;14966:52;15053:9;15040:23;15072:44;15110:5;15072:44;:::i;:::-;15135:5;-1:-1:-1;15191:2:136;15176:18;;15163:32;-1:-1:-1;;;;;15207:30:136;;15204:50;;;15250:1;15247;15240:12;15204:50;15273:22;;15326:4;15318:13;;15314:27;-1:-1:-1;15304:55:136;;15355:1;15352;15345:12;15304:55;15378:73;15443:7;15438:2;15425:16;15420:2;15416;15412:11;15378:73;:::i;15838:348::-;15922:6;15975:2;15963:9;15954:7;15950:23;15946:32;15943:52;;;15991:1;15988;15981:12;15943:52;16018:23;;-1:-1:-1;;;;;16053:30:136;;16050:50;;;16096:1;16093;16086:12;16050:50;16119:61;16172:7;16163:6;16152:9;16148:22;16119:61;:::i;16191:851::-;16389:6;16397;16405;16413;16466:3;16454:9;16445:7;16441:23;16437:33;16434:53;;;16483:1;16480;16473:12;16434:53;16506:54;16552:7;16541:9;16506:54;:::i;:::-;16496:64;;16579:56;16627:7;16621:3;16610:9;16606:19;16579:56;:::i;:::-;16569:66;-1:-1:-1;16686:3:136;16671:19;;16658:33;-1:-1:-1;;;;;16740:14:136;;;16737:34;;;16767:1;16764;16757:12;16737:34;16790:61;16843:7;16834:6;16823:9;16819:22;16790:61;:::i;:::-;16780:71;;16904:3;16893:9;16889:19;16876:33;16860:49;;16934:2;16924:8;16921:16;16918:36;;;16950:1;16947;16940:12;16918:36;;16973:63;17028:7;17017:8;17006:9;17002:24;16973:63;:::i;:::-;16963:73;;;16191:851;;;;;;;:::o;17252:261::-;17433:2;17422:9;17415:21;17396:4;17453:54;17503:2;17492:9;17488:18;17480:6;17453:54;:::i;17518:1357::-;17645:6;17653;17706:2;17694:9;17685:7;17681:23;17677:32;17674:52;;;17722:1;17719;17712:12;17674:52;17749:23;;-1:-1:-1;;;;;17821:14:136;;;17818:34;;;17848:1;17845;17838:12;17818:34;17871:61;17924:7;17915:6;17904:9;17900:22;17871:61;:::i;:::-;17861:71;;17951:2;17941:12;;18006:2;17995:9;17991:18;17978:32;18035:2;18025:8;18022:16;18019:36;;;18051:1;18048;18041:12;18019:36;18074:24;;18129:4;18121:13;;18117:27;-1:-1:-1;18107:55:136;;18158:1;18155;18148:12;18107:55;18194:2;18181:16;18217:60;18233:43;18273:2;18233:43;:::i;18217:60::-;18311:15;;;18393:1;18389:10;;;;18381:19;;18377:28;;;18342:12;;;;18417:19;;;18414:39;;;18449:1;18446;18439:12;18414:39;18481:2;18477;18473:11;18493:352;18509:6;18504:3;18501:15;18493:352;;;18595:3;18582:17;18631:2;18618:11;18615:19;18612:109;;;18675:1;18704:2;18700;18693:14;18612:109;18746:56;18794:7;18789:2;18775:11;18771:2;18767:20;18763:29;18746:56;:::i;:::-;18734:69;;-1:-1:-1;18823:12:136;;;;18526;;18493:352;;;18497:3;18864:5;18854:15;;;;;;;;17518:1357;;;;;:::o;18880:826::-;19113:2;19165:21;;;19235:13;;19138:18;;;19257:22;;;19084:4;;19113:2;19298;;19316:18;;;;19357:15;;;19084:4;19400:280;19414:6;19411:1;19408:13;19400:280;;;19473:13;;19515:9;;-1:-1:-1;;;;;19511:35:136;19499:48;;19587:11;;19581:18;19567:12;;;19560:40;19620:12;;;;19655:15;;;;19543:1;19429:9;19400:280;;;-1:-1:-1;19697:3:136;;18880:826;-1:-1:-1;;;;;;;18880:826:136:o;19711:348::-;19763:8;19773:6;19827:3;19820:4;19812:6;19808:17;19804:27;19794:55;;19845:1;19842;19835:12;19794:55;-1:-1:-1;19868:20:136;;-1:-1:-1;;;;;19900:30:136;;19897:50;;;19943:1;19940;19933:12;19897:50;19980:4;19972:6;19968:17;19956:29;;20032:3;20025:4;20016:6;20008;20004:19;20000:30;19997:39;19994:59;;;20049:1;20046;20039:12;20064:788;20164:6;20172;20180;20188;20196;20249:2;20237:9;20228:7;20224:23;20220:32;20217:52;;;20265:1;20262;20255:12;20217:52;20288:23;;;-1:-1:-1;20362:2:136;20347:18;;20334:32;-1:-1:-1;;;;;20415:14:136;;;20412:34;;;20442:1;20439;20432:12;20412:34;20481:59;20532:7;20523:6;20512:9;20508:22;20481:59;:::i;:::-;20559:8;;-1:-1:-1;20455:85:136;-1:-1:-1;20647:2:136;20632:18;;20619:32;;-1:-1:-1;20663:16:136;;;20660:36;;;20692:1;20689;20682:12;20660:36;;20731:61;20784:7;20773:8;20762:9;20758:24;20731:61;:::i;:::-;20064:788;;;;-1:-1:-1;20064:788:136;;-1:-1:-1;20811:8:136;;20705:87;20064:788;-1:-1:-1;;;20064:788:136:o;20857:118::-;20943:5;20936:13;20929:21;20922:5;20919:32;20909:60;;20965:1;20962;20955:12;20980:241;21036:6;21089:2;21077:9;21068:7;21064:23;21060:32;21057:52;;;21105:1;21102;21095:12;21057:52;21144:9;21131:23;21163:28;21185:5;21163:28;:::i;21456:1033::-;-1:-1:-1;;;;;21958:15:136;;;21940:34;;22010:15;;;22005:2;21990:18;;21983:43;22062:15;;22057:2;22042:18;;22035:43;22109:2;22094:18;;22087:34;;;22152:3;22137:19;;22130:35;;;21889:3;21874:19;;22174:44;22211:6;22174:44;:::i;:::-;22255:6;22249:3;22238:9;22234:19;22227:35;22299:6;22293:3;22282:9;22278:19;22271:35;22343:6;22337:3;22326:9;22322:19;22315:35;22387:6;22381:3;22370:9;22366:19;22359:35;22431:6;22425:3;22414:9;22410:19;22403:35;22475:7;22469:3;22458:9;22454:19;22447:36;21456:1033;;;;;;;;;;;;;;:::o;22494:328::-;22562:6;22570;22623:2;22611:9;22602:7;22598:23;22594:32;22591:52;;;22639:1;22636;22629:12;22591:52;22675:9;22662:23;22652:33;;22735:2;22724:9;22720:18;22707:32;22748:44;22786:5;22748:44;:::i;22827:239::-;22970:2;22955:18;;22982:44;23019:6;22982:44;:::i;:::-;23035:25;;;22827:239;:::o;23071:388::-;23148:6;23156;23209:2;23197:9;23188:7;23184:23;23180:32;23177:52;;;23225:1;23222;23215:12;23177:52;23248:23;;;-1:-1:-1;23322:2:136;23307:18;;23294:32;-1:-1:-1;;;;;23338:30:136;;23335:50;;;23381:1;23378;23371:12;23464:220;23613:2;23602:9;23595:21;23576:4;23633:45;23674:2;23663:9;23659:18;23651:6;23633:45;:::i;23689:380::-;23768:1;23764:12;;;;23811;;;23832:61;;23886:4;23878:6;23874:17;23864:27;;23832:61;23939:2;23931:6;23928:14;23908:18;23905:38;23902:161;;23985:10;23980:3;23976:20;23973:1;23966:31;24020:4;24017:1;24010:15;24048:4;24045:1;24038:15;24688:127;24749:10;24744:3;24740:20;24737:1;24730:31;24780:4;24777:1;24770:15;24804:4;24801:1;24794:15;24820:128;24887:9;;;24908:11;;;24905:37;;;24922:18;;:::i;24953:345::-;-1:-1:-1;;;;;25173:32:136;;;;25155:51;;25237:2;25222:18;;25215:34;;;;25280:2;25265:18;;25258:34;25143:2;25128:18;;24953:345::o;25303:125::-;25368:9;;;25389:10;;;25386:36;;;25402:18;;:::i;25433:345::-;25635:25;;;-1:-1:-1;;;;;25696:32:136;;;;25691:2;25676:18;;25669:60;25760:2;25745:18;;25738:34;25623:2;25608:18;;25433:345::o;25783:279::-;25868:6;25921:2;25909:9;25900:7;25896:23;25892:32;25889:52;;;25937:1;25934;25927:12;25889:52;25969:9;25963:16;25988:44;26026:5;25988:44;:::i;26067:447::-;26298:25;;;-1:-1:-1;;;;;26397:15:136;;;26392:2;26377:18;;26370:43;26449:15;;26444:2;26429:18;;26422:43;26496:2;26481:18;;26474:34;26285:3;26270:19;;26067:447::o;26519:127::-;26580:10;26575:3;26571:20;26568:1;26561:31;26611:4;26608:1;26601:15;26635:4;26632:1;26625:15;26651:217;26691:1;26717;26707:132;;26761:10;26756:3;26752:20;26749:1;26742:31;26796:4;26793:1;26786:15;26824:4;26821:1;26814:15;26707:132;-1:-1:-1;26853:9:136;;26651:217::o;26873:193::-;26911:3;-1:-1:-1;;;;;26944:30:136;;;26983:41;;27004:18;;:::i;:::-;-1:-1:-1;;27040:20:136;;26873:193;-1:-1:-1;;26873:193:136:o;27071:168::-;27144:9;;;27175;;27192:15;;;27186:22;;27172:37;27162:71;;27213:18;;:::i;27244:408::-;27446:2;27428:21;;;27485:2;27465:18;;;27458:30;-1:-1:-1;;;;;;;;;;;27519:2:136;27504:18;;27497:62;-1:-1:-1;;;27590:2:136;27575:18;;27568:42;27642:3;27627:19;;27244:408::o;27657:::-;27859:2;27841:21;;;27898:2;27878:18;;;27871:30;-1:-1:-1;;;;;;;;;;;27932:2:136;27917:18;;27910:62;-1:-1:-1;;;28003:2:136;27988:18;;27981:42;28055:3;28040:19;;27657:408::o;28495:407::-;28697:2;28679:21;;;28736:2;28716:18;;;28709:30;28775:34;28770:2;28755:18;;28748:62;-1:-1:-1;;;28841:2:136;28826:18;;28819:41;28892:3;28877:19;;28495:407::o;28907:304::-;-1:-1:-1;;;;;29137:15:136;;;29119:34;;29189:15;;29184:2;29169:18;;29162:43;29069:2;29054:18;;28907:304::o;29216:245::-;29283:6;29336:2;29324:9;29315:7;29311:23;29307:32;29304:52;;;29352:1;29349;29342:12;29304:52;29384:9;29378:16;29403:28;29425:5;29403:28;:::i;29466:184::-;29536:6;29589:2;29577:9;29568:7;29564:23;29560:32;29557:52;;;29605:1;29602;29595:12;29557:52;-1:-1:-1;29628:16:136;;29466:184;-1:-1:-1;29466:184:136:o;29655:151::-;29734:13;;29756:44;29734:13;29756:44;:::i;:::-;29655:151;;;:::o;30080:248::-;30254:25;;;30310:2;30295:18;;30288:34;30242:2;30227:18;;30080:248::o;30333:274::-;30507:25;;;-1:-1:-1;;;;;30568:32:136;30563:2;30548:18;;30541:60;30495:2;30480:18;;30333:274::o;30612:266::-;30700:6;30695:3;30688:19;30752:6;30745:5;30738:4;30733:3;30729:14;30716:43;-1:-1:-1;30804:1:136;30779:16;;;30797:4;30775:27;;;30768:38;;;;30860:2;30839:15;;;-1:-1:-1;;30835:29:136;30826:39;;;30822:50;;30612:266::o;30883:315::-;31068:6;31057:9;31050:25;31111:2;31106;31095:9;31091:18;31084:30;31031:4;31131:61;31188:2;31177:9;31173:18;31165:6;31157;31131:61;:::i;:::-;31123:69;30883:315;-1:-1:-1;;;;;30883:315:136:o;31203:209::-;31241:3;-1:-1:-1;;;;;31311:14:136;;;-1:-1:-1;;;;;;31337:15:136;;31334:41;;31355:18;;:::i;:::-;31404:1;31391:15;;31203:209;-1:-1:-1;;;31203:209:136:o;31417:682::-;-1:-1:-1;;;;;31775:15:136;;;31757:34;;31822:2;31807:18;;31800:34;;;31865:2;31850:18;;31843:34;;;31913:15;;31908:2;31893:18;;31886:43;31966:3;31960;31945:19;;31938:32;;;31700:4;;31987:62;;32029:19;;32021:6;32013;31987:62;:::i;:::-;31979:70;;32086:6;32080:3;32069:9;32065:19;32058:35;31417:682;;;;;;;;;;:::o;32104:135::-;32143:3;32164:17;;;32161:43;;32184:18;;:::i;:::-;-1:-1:-1;32231:1:136;32220:13;;32104:135::o;32244:396::-;32310:5;32358:4;32346:9;32341:3;32337:19;32333:30;32330:50;;;32376:1;32373;32366:12;32330:50;32398:22;;:::i;:::-;32389:31;;32449:9;32443:16;32436:5;32429:31;32513:2;32502:9;32498:18;32492:25;32487:2;32480:5;32476:14;32469:49;32571:2;32560:9;32556:18;32550:25;32545:2;32538:5;32534:14;32527:49;32629:2;32618:9;32614:18;32608:25;32603:2;32596:5;32592:14;32585:49;32244:396;;;;:::o;32645:157::-;32734:13;;32776:1;32766:12;;32756:40;;32792:1;32789;32782:12;32807:156;32895:13;;32937:1;32927:12;;32917:40;;32953:1;32950;32943:12;32968:420;33043:5;33091:4;33079:9;33074:3;33070:19;33066:30;33063:50;;;33109:1;33106;33099:12;33063:50;33142:2;33136:9;33184:4;33172:17;;-1:-1:-1;;;;;33204:34:136;;33240:22;;;33201:62;33198:88;;;33266:18;;:::i;:::-;33302:2;33295:22;33365:16;;33350:32;;-1:-1:-1;33335:6:136;32968:420;-1:-1:-1;32968:420:136:o;33393:696::-;33467:5;33515:4;33503:9;33498:3;33494:19;33490:30;33487:50;;;33533:1;33530;33523:12;33487:50;33555:22;;:::i;:::-;33546:31;;33607:9;33601:16;33626:46;33664:7;33626:46;:::i;:::-;33681:22;;33748:2;33733:18;;33727:25;33761:46;33727:25;33761:46;:::i;:::-;33839:7;33834:2;33827:5;33823:14;33816:31;;33900:2;33889:9;33885:18;33879:25;33874:2;33867:5;33863:14;33856:49;33958:2;33947:9;33943:18;33937:25;33932:2;33925:5;33921:14;33914:49;34017:3;34006:9;34002:19;33996:26;33990:3;33983:5;33979:15;33972:51;34077:3;34066:9;34062:19;34056:26;34050:3;34043:5;34039:15;34032:51;33393:696;;;;:::o;34094:747::-;34159:5;34212:3;34205:4;34197:6;34193:17;34189:27;34179:55;;34230:1;34227;34220:12;34179:55;34259:6;34253:13;34285:4;34309:60;34325:43;34365:2;34325:43;:::i;34309:60::-;34403:15;;;34489:1;34485:10;;;;34473:23;;34469:32;;;34434:12;;;;34513:15;;;34510:35;;;34541:1;34538;34531:12;34510:35;34577:2;34569:6;34565:15;34589:223;34605:6;34600:3;34597:15;34589:223;;;34678:3;34672:10;34695:44;34733:5;34695:44;:::i;:::-;34752:18;;34790:12;;;;34622;;34589:223;;34846:1281;34965:6;35018:2;35006:9;34997:7;34993:23;34989:32;34986:52;;;35034:1;35031;35024:12;34986:52;35061:16;;-1:-1:-1;;;;;35126:14:136;;;35123:34;;;35153:1;35150;35143:12;35123:34;35176:22;;;;35232:6;35214:16;;;35210:29;35207:49;;;35252:1;35249;35242:12;35207:49;35278:22;;:::i;:::-;35323:50;35365:7;35361:2;35323:50;:::i;:::-;35316:5;35309:65;35406:53;35454:3;35450:2;35446:12;35406:53;:::i;:::-;35401:2;35394:5;35390:14;35383:77;35494:52;35541:3;35537:2;35533:12;35494:52;:::i;:::-;35487:4;35480:5;35476:16;35469:78;35581:69;35642:7;35636:3;35632:2;35628:12;35581:69;:::i;:::-;35574:4;35567:5;35563:16;35556:95;35684:68;35744:7;35738:3;35734:2;35730:12;35684:68;:::i;:::-;35678:3;35671:5;35667:15;35660:93;35786:43;35824:3;35820:2;35816:12;35786:43;:::i;:::-;35780:3;35773:5;35769:15;35762:68;35863:43;35901:3;35897:2;35893:12;35863:43;:::i;:::-;35857:3;35850:5;35846:15;35839:68;35946:3;35942:2;35938:12;35932:19;35976:2;35966:8;35963:16;35960:36;;;35992:1;35989;35982:12;35960:36;36029:67;36088:7;36077:8;36073:2;36069:17;36029:67;:::i;:::-;36023:3;36012:15;;36005:92;-1:-1:-1;36016:5:136;34846:1281;-1:-1:-1;;;;;34846:1281:136:o;36132:261::-;36212:5;36206:12;36201:3;36194:25;36268:4;36261:5;36257:16;36251:23;36244:4;36239:3;36235:14;36228:47;36324:4;36317:5;36313:16;36307:23;36300:4;36295:3;36291:14;36284:47;36380:4;36373:5;36369:16;36363:23;36356:4;36351:3;36347:14;36340:47;;;36132:261::o;36840:461::-;36893:3;36931:5;36925:12;36958:6;36953:3;36946:19;36984:4;37013:2;37008:3;37004:12;36997:19;;37050:2;37043:5;37039:14;37071:1;37081:195;37095:6;37092:1;37089:13;37081:195;;;37160:13;;-1:-1:-1;;;;;37156:39:136;37144:52;;37216:12;;;;37251:15;;;;37192:1;37110:9;37081:195;;;-1:-1:-1;37292:3:136;;36840:461;-1:-1:-1;;;;;36840:461:136:o;37306:1267::-;37561:6;37550:9;37543:25;37604:2;37599;37588:9;37584:18;37577:30;37616:61;37673:2;37662:9;37658:18;37649:6;37643:13;37616:61;:::i;:::-;37524:4;37724:2;37716:6;37712:15;37706:22;37737:63;37795:3;37784:9;37780:19;37766:12;37737:63;:::i;:::-;;37849:2;37841:6;37837:15;37831:22;37862:64;37921:3;37910:9;37906:19;37890:14;37862:64;:::i;:::-;-1:-1:-1;37987:4:136;37975:17;;;37969:24;37963:31;37957:3;37942:19;;37935:60;38044:4;38032:17;;;38026:24;36522:12;;-1:-1:-1;;;;;36518:21:136;;;38125:3;38110:19;;36506:34;36593:4;36582:16;;36576:23;36572:32;36556:14;;;36549:56;36654:4;36643:16;;36637:23;36621:14;;;36614:47;36699:16;;;36693:23;36677:14;;;36670:47;36755:16;;36749:23;36733:14;;;36726:47;36486:3;36811:16;;;36805:23;36789:14;;;36782:47;38167:17;;38161:24;38194:55;38244:3;38229:19;;38161:24;38194:55;:::i;:::-;;38298:3;38290:6;38286:16;38280:23;38322:6;38337:54;38387:2;38376:9;38372:18;38356:14;38337:54;:::i;:::-;38440:3;38432:6;38428:16;38422:23;38400:45;;38482:2;38476:3;38465:9;38461:19;38454:31;;38502:65;38562:3;38551:9;38547:19;38531:14;38502:65;:::i;40063:252::-;40251:3;40236:19;;40264:45;40240:9;40291:6;40264:45;:::i;40320:319::-;40522:25;;;40578:2;40563:18;;40556:34;;;;40621:2;40606:18;;40599:34;40510:2;40495:18;;40320:319::o;40644:726::-;40710:5;40758:4;40746:9;40741:3;40737:19;40733:30;40730:50;;;40776:1;40773;40766:12;40730:50;40798:22;;:::i;:::-;40843:16;;40829:31;;40904:2;40889:18;;40883:25;40789:31;;-1:-1:-1;;;;;;40920:30:136;;40917:50;;;40963:1;40960;40953:12;40917:50;40986:22;;41039:4;41031:13;;41027:23;-1:-1:-1;41017:51:136;;41064:1;41061;41054:12;41017:51;41093:2;41087:9;41118:48;41134:31;41162:2;41134:31;:::i;41118:48::-;41189:2;41182:5;41175:17;41229:3;41224:2;41219;41215;41211:11;41207:20;41204:29;41201:49;;;41246:1;41243;41236:12;41201:49;41259:67;41323:2;41318;41311:5;41307:14;41302:2;41298;41294:11;41259:67;:::i;:::-;41353:2;41342:14;;41335:29;-1:-1:-1;41346:5:136;;40644:726;-1:-1:-1;;;40644:726:136:o;41375:1054::-;41467:6;41520:2;41508:9;41499:7;41495:23;41491:32;41488:52;;;41536:1;41533;41526:12;41488:52;41563:16;;-1:-1:-1;;;;;41628:14:136;;;41625:34;;;41655:1;41652;41645:12;41625:34;41678:22;;;;41734:4;41716:16;;;41712:27;41709:47;;;41752:1;41749;41742:12;41709:47;41778:22;;:::i;:::-;41829:2;41823:9;41816:5;41809:24;41871:2;41867;41863:11;41857:18;41884:46;41922:7;41884:46;:::i;:::-;41957:2;41946:14;;41939:31;42008:2;42000:11;;41994:18;42021:46;41994:18;42021:46;:::i;:::-;42094:2;42083:14;;42076:31;42146:2;42138:11;;42132:18;42162:16;;;42159:36;;;42191:1;42188;42181:12;42159:36;42227:65;42284:7;42273:8;42269:2;42265:17;42227:65;:::i;:::-;42222:2;42215:5;42211:14;42204:89;;42340:3;42336:2;42332:12;42326:19;42320:3;42313:5;42309:15;42302:44;42393:3;42389:2;42385:12;42379:19;42373:3;42366:5;42362:15;42355:44;42418:5;42408:15;;;;;41375:1054;;;;:::o;42434:1012::-;42537:6;42590:2;42578:9;42569:7;42565:23;42561:32;42558:52;;;42606:1;42603;42596:12;42558:52;42633:16;;-1:-1:-1;;;;;42698:14:136;;;42695:34;;;42725:1;42722;42715:12;42695:34;42748:22;;;;42804:4;42786:16;;;42782:27;42779:47;;;42822:1;42819;42812:12;42779:47;42848:22;;:::i;:::-;42899:2;42893:9;42886:5;42879:24;42941:2;42937;42933:11;42927:18;42954:46;42992:7;42954:46;:::i;:::-;43027:2;43016:14;;43009:31;43086:2;43078:11;;;43072:18;43056:14;;;43049:42;43129:2;43121:11;;43115:18;43142:46;43115:18;43142:46;:::i;:::-;43215:2;43204:14;;43197:31;43267:3;43259:12;;43253:19;43284:16;;;43281:36;;;43313:1;43310;43303:12;43281:36;43350:65;43407:7;43396:8;43392:2;43388:17;43350:65;:::i;:::-;43344:3;43333:15;;43326:90;-1:-1:-1;43337:5:136;42434:1012;-1:-1:-1;;;;;42434:1012:136:o;43860:545::-;43962:2;43957:3;43954:11;43951:448;;;43998:1;44023:5;44019:2;44012:17;44068:4;44064:2;44054:19;44138:2;44126:10;44122:19;44119:1;44115:27;44109:4;44105:38;44174:4;44162:10;44159:20;44156:47;;;-1:-1:-1;44197:4:136;44156:47;44252:2;44247:3;44243:12;44240:1;44236:20;44230:4;44226:31;44216:41;;44307:82;44325:2;44318:5;44315:13;44307:82;;;44370:17;;;44351:1;44340:13;44307:82;;;44311:3;;;43860:545;;;:::o;44581:1352::-;44701:10;;-1:-1:-1;;;;;44723:30:136;;44720:56;;;44756:18;;:::i;:::-;44785:97;44875:6;44835:38;44867:4;44861:11;44835:38;:::i;:::-;44829:4;44785:97;:::i;:::-;44937:4;;45001:2;44990:14;;45018:1;45013:663;;;;45720:1;45737:6;45734:89;;;-1:-1:-1;45789:19:136;;;45783:26;45734:89;-1:-1:-1;;44538:1:136;44534:11;;;44530:24;44526:29;44516:40;44562:1;44558:11;;;44513:57;45836:81;;44983:944;;45013:663;43807:1;43800:14;;;43844:4;43831:18;;-1:-1:-1;;45049:20:136;;;45167:236;45181:7;45178:1;45175:14;45167:236;;;45270:19;;;45264:26;45249:42;;45362:27;;;;45330:1;45318:14;;;;45197:19;;45167:236;;;45171:3;45431:6;45422:7;45419:19;45416:201;;;45492:19;;;45486:26;-1:-1:-1;;45575:1:136;45571:14;;;45587:3;45567:24;45563:37;45559:42;45544:58;45529:74;;45416:201;-1:-1:-1;;;;;45663:1:136;45647:14;;;45643:22;45630:36;;-1:-1:-1;44581:1352:136:o;46223:273::-;46291:6;46344:2;46332:9;46323:7;46319:23;46315:32;46312:52;;;46360:1;46357;46350:12;46312:52;46392:9;46386:16;46442:4;46435:5;46431:16;46424:5;46421:27;46411:55;;46462:1;46459;46452:12;46501:422;46590:1;46633:5;46590:1;46647:270;46668:7;46658:8;46655:21;46647:270;;;46727:4;46723:1;46719:6;46715:17;46709:4;46706:27;46703:53;;;46736:18;;:::i;:::-;46786:7;46776:8;46772:22;46769:55;;;46806:16;;;;46769:55;46885:22;;;;46845:15;;;;46647:270;;;46651:3;46501:422;;;;;:::o;46928:806::-;46977:5;47007:8;46997:80;;-1:-1:-1;47048:1:136;47062:5;;46997:80;47096:4;47086:76;;-1:-1:-1;47133:1:136;47147:5;;47086:76;47178:4;47196:1;47191:59;;;;47264:1;47259:130;;;;47171:218;;47191:59;47221:1;47212:10;;47235:5;;;47259:130;47296:3;47286:8;47283:17;47280:43;;;47303:18;;:::i;:::-;-1:-1:-1;;47359:1:136;47345:16;;47374:5;;47171:218;;47473:2;47463:8;47460:16;47454:3;47448:4;47445:13;47441:36;47435:2;47425:8;47422:16;47417:2;47411:4;47408:12;47404:35;47401:77;47398:159;;;-1:-1:-1;47510:19:136;;;47542:5;;47398:159;47589:34;47614:8;47608:4;47589:34;:::i;:::-;47659:6;47655:1;47651:6;47647:19;47638:7;47635:32;47632:58;;;47670:18;;:::i;:::-;47708:20;;46928:806;-1:-1:-1;;;46928:806:136:o;47739:131::-;47799:5;47828:36;47855:8;47849:4;47828:36;:::i;49607:324::-;-1:-1:-1;;;49837:24:136;;49886:1;49877:11;;49870:27;;;;49922:2;49913:12;;49607:324::o;50215:127::-;50276:10;50271:3;50267:20;50264:1;50257:31;50307:4;50304:1;50297:15;50331:4;50328:1;50321:15;50347:332;50554:6;50543:9;50536:25;50597:2;50592;50581:9;50577:18;50570:30;50517:4;50617:56;50669:2;50658:9;50654:18;50646:6;50617:56;:::i;50684:127::-;50745:10;50740:3;50736:20;50733:1;50726:31;50776:4;50773:1;50766:15;50800:4;50797:1;50790:15;51107:1185;51236:6;51267:2;51310;51298:9;51289:7;51285:23;51281:32;51278:52;;;51326:1;51323;51316:12;51278:52;51353:16;;-1:-1:-1;;;;;51381:30:136;;51378:50;;;51424:1;51421;51414:12;51378:50;51447:22;;51500:4;51492:13;;51488:27;-1:-1:-1;51478:55:136;;51529:1;51526;51519:12;51478:55;51558:2;51552:9;51581:60;51597:43;51637:2;51597:43;:::i;51581:60::-;51675:15;;;51757:1;51753:10;;;;51745:19;;51741:28;;;51706:12;;;;51781:19;;;51778:39;;;51813:1;51810;51803:12;51778:39;51837:11;;;;51857:405;51873:6;51868:3;51865:15;51857:405;;;51955:4;51949:3;51940:7;51936:17;51932:28;51929:118;;;52001:1;52030:2;52026;52019:14;51929:118;52073:22;;:::i;:::-;52122:10;;52108:25;;52175:12;;;52169:19;52153:14;;;52146:43;52202:18;;51899:4;51890:14;;;;52240:12;;;;51857:405;;52297:497;-1:-1:-1;;;;;52582:32:136;;;;52564:51;;52646:2;52631:18;;52624:34;;;;52689:2;52674:18;;52667:34;;;;52732:2;52717:18;;52710:34;52775:3;52760:19;;52753:35;52551:3;52536:19;;52297:497::o;54331:319::-;54523:25;;;54511:2;54496:18;;54557:44;54594:6;54557:44;:::i;:::-;54637:6;54632:2;54621:9;54617:18;54610:34;54331:319;;;;;:::o;54655:216::-;54719:9;;;54747:11;;;54694:3;54777:9;;54805:10;;54801:19;;54830:10;;54822:19;;54798:44;54795:70;;;54845:18;;:::i;55690:287::-;55819:3;55857:6;55851:13;55873:66;55932:6;55927:3;55920:4;55912:6;55908:17;55873:66;:::i;:::-;55955:16;;;;;55690:287;-1:-1:-1;;55690:287:136:o","linkReferences":{},"immutableReferences":{"55572":[{"start":6348,"length":32},{"start":6412,"length":32},{"start":6571,"length":32},{"start":6635,"length":32},{"start":6755,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","activatePoints()":"814516ad","addToAllowList(address[])":"7263cfe2","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateThreshold(uint256)":"59a5db8b","canExecuteProposal(uint256)":"824ea8ed","cancelProposal(uint256)":"e0a8f6f5","cloneNonce()":"33960459","collateralVault()":"0bece79c","currentArbitrableConfigVersion()":"125fd1d9","cvParams()":"2506b870","deactivatePoints()":"1ddf1e23","deactivatePoints(address)":"6453d9c4","decreasePower(address,uint256)":"2ed04b2b","disputeCount()":"a28889e1","disputeIdToProposalId(uint256)":"255ffb38","disputeProposal(uint256,string,bytes)":"b41596ec","distribute(address[],bytes,address)":"0a6f0ee9","getAllo()":"15cc481e","getArbitrableConfig()":"059351cd","getDecay()":"9a1c157c","getMaxAmount()":"0ba95909","getMaxConviction(uint256)":"950559d7","getMetadata(uint256)":"a574cea4","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalStakedAmount(uint256)":"dc96ff2d","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getRegistryCommunity()":"48f19c1d","getRegistryCommunityV0_1()":"6a6f69b4","getStrategyId()":"42fda9c7","getTotalVoterStakePct(address)":"bcc5b93b","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","initialize(address)":"c4d66de8","initialize(uint256,bytes)":"edd146cc","isPoolActive()":"df868ed3","isValidAllocator(address)":"4d31d087","owner()":"8da5cb5b","pointConfig()":"a47ff7e5","pointSystem()":"2dbd6fdd","proposalCounter()":"0c0512e9","proposalType()":"351d9f96","proposals(uint256)":"013cf08b","proxiableUUID()":"52d1902d","registerRecipient(bytes,address)":"2bbe0cae","registryCommunity()":"6003e414","removeFromAllowList(address[])":"a51312c8","renounceOwnership()":"715018a6","rule(uint256,uint256)":"311a6c56","setCollateralVaultTemplate(address)":"b0d3713a","setPoolActive(bool)":"b5f620ce","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256))":"062f9ece","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256),address[],address[])":"948e7a59","setSybilScorer(address)":"ac1ed7b9","supportsInterface(bytes4)":"01ffc9a7","sybilScorer()":"b6c61f31","totalEffectiveActivePoints()":"d1e36232","totalPointsActivated()":"aba9ffee","totalStaked()":"817b1cd2","totalVoterStakePct(address)":"5db64b99","transferOwnership(address)":"f2fde38b","updateProposalConviction(uint256)":"1aa91a9e","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","voterStakedProposals(address,uint256)":"868c57b8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AmountOverMaxRatio\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ArbitratorCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"CantIncreaseFixedSystem\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_remainingSec\",\"type\":\"uint256\"}],\"name\":\"DisputeCooldownNotPassed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"sentAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requiredAmount\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MaxPointsReached\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotImplemented\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyArbitrator\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCommunityAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilSafe\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"OnlySubmitter\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_poolAmount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountNotEnough\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PoolIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalDataIsEmpty\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ProposalIdCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"_proposalStatus\",\"type\":\"uint8\"}],\"name\":\"ProposalInvalidForAllocation\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotActive\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotDisputed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalNotInList\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"ProposalSupportDuplicated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_support\",\"type\":\"uint256\"},{\"internalType\":\"int256\",\"name\":\"_delta\",\"type\":\"int256\"},{\"internalType\":\"int256\",\"name\":\"_result\",\"type\":\"int256\"}],\"name\":\"SupportUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TokenNotAllowed\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserCannotExecuteAction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserIsInactive\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Allocated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"AllowlistMembersRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"currentArbitrableConfigVersion\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"name\":\"ArbitrableConfigUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"indexed\":false,\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"}],\"name\":\"CVParamsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_arbitrableDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_externalDisputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_templateId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_templateUri\",\"type\":\"string\"}],\"name\":\"DisputeRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Distributed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV2\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"before\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"name\":\"MinThresholdPointsUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"PointsDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"name\":\"PoolActive\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"PoolAmountIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensUnStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToDecrease\",\"type\":\"uint256\"}],\"name\":\"PowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"tokensStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"PowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCancelled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"ProposalCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"name\":\"ProposalDisputed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"Registered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"}],\"name\":\"RegistryUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrator\",\"name\":\"_arbitrator\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"totalStakedAmount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"}],\"name\":\"SupportAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"}],\"name\":\"TribunaSafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"D\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DISPUTE_COOLDOWN_SEC\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_STAKED_PROPOSALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"RULING_OPTIONS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"addToAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"allocate\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"arbitrableConfigs\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_timePassed\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_lastConv\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_oldAmount\",\"type\":\"uint256\"}],\"name\":\"calculateConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_requestedAmount\",\"type\":\"uint256\"}],\"name\":\"calculateThreshold\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"canExecuteProposal\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"canBeExecuted\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"cancelProposal\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVault\",\"outputs\":[{\"internalType\":\"contract ICollateralVault\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currentArbitrableConfigVersion\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cvParams\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"deactivatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToUnstake\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"disputeCount\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputeIdToProposalId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"context\",\"type\":\"string\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"disputeProposal\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_recipientIds\",\"type\":\"address[]\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"distribute\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getAllo\",\"outputs\":[{\"internalType\":\"contract IAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getArbitrableConfig\",\"outputs\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getMetadata\",\"outputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"},{\"internalType\":\"bytes[]\",\"name\":\"\",\"type\":\"bytes[]\"}],\"name\":\"getPayouts\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"recipientAddress\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"internalType\":\"struct IStrategy.PayoutSummary[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getPoolId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposal\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"voterStakedPoints\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"getProposalStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getProposalVoterStake\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_recipientId\",\"type\":\"address\"}],\"name\":\"getRecipientStatus\",\"outputs\":[{\"internalType\":\"enum IStrategy.Status\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunity\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_0\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getRegistryCommunityV0_1\",\"outputs\":[{\"internalType\":\"contract RegistryCommunityV0_1\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_voter\",\"type\":\"address\"}],\"name\":\"getTotalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"increasePoolAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amountToStake\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"init\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isPoolActive\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_allocator\",\"type\":\"address\"}],\"name\":\"isValidAllocator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointConfig\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pointSystem\",\"outputs\":[{\"internalType\":\"enum PointSystem\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalCounter\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proposalType\",\"outputs\":[{\"internalType\":\"enum ProposalType\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"proposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"requestedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"convictionLast\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"beneficiary\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"submitter\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requestedToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"blockLast\",\"type\":\"uint256\"},{\"internalType\":\"enum ProposalStatus\",\"name\":\"proposalStatus\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"disputeId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"disputeTimestamp\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"challenger\",\"type\":\"address\"}],\"internalType\":\"struct ProposalDisputeInfo\",\"name\":\"disputeInfo\",\"type\":\"tuple\"},{\"internalType\":\"uint256\",\"name\":\"lastDisputeCompletion\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrableConfigVersion\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_data\",\"type\":\"bytes\"},{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"registerRecipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"members\",\"type\":\"address[]\"}],\"name\":\"removeFromAllowList\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"rule\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_active\",\"type\":\"bool\"}],\"name\":\"setPoolActive\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"_arbitrableConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"_cvParams\",\"type\":\"tuple\"},{\"internalType\":\"address[]\",\"name\":\"membersToAdd\",\"type\":\"address[]\"},{\"internalType\":\"address[]\",\"name\":\"membersToRemove\",\"type\":\"address[]\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"}],\"name\":\"setSybilScorer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"sybilScorer\",\"outputs\":[{\"internalType\":\"contract ISybilScorer\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalEffectiveActivePoints\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalPointsActivated\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalStaked\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"totalVoterStakePct\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"}],\"name\":\"updateProposalConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"voterStakedProposals\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"CVStrategyV0_0\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"Allocated(address,uint256,address,address)\":{\"params\":{\"amount\":\"The amount allocated\",\"recipientId\":\"The ID of the recipient\",\"token\":\"The token allocated\"}},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeRequest(address,uint256,uint256,uint256,string)\":{\"details\":\"To be emitted when a dispute is created to link the correct meta-evidence to the disputeID.\",\"params\":{\"_arbitrableDisputeID\":\"The identifier of the dispute in the Arbitrable contract.\",\"_arbitrator\":\"The arbitrator of the contract.\",\"_externalDisputeID\":\"An identifier created outside Kleros by the protocol requesting arbitration.\",\"_templateId\":\"The identifier of the dispute template. Should not be used with _templateUri.\",\"_templateUri\":\"The URI to the dispute template. For example on IPFS: starting with '/ipfs/'. Should not be used with _templateId.\"}},\"Distributed(address,address,uint256,address)\":{\"params\":{\"amount\":\"The amount distributed\",\"recipientAddress\":\"The recipient\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Initialized(uint256,bytes)\":{\"params\":{\"data\":\"The data passed to the 'initialize' function\",\"poolId\":\"The ID of the pool\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"PoolActive(bool)\":{\"params\":{\"active\":\"The status of the pool\"}},\"Registered(address,bytes,address)\":{\"params\":{\"data\":\"The data passed to the 'registerRecipient' function\",\"recipientId\":\"The ID of the recipient\",\"sender\":\"The sender\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrator\":\"The arbitrator giving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"allocate(bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to allocate to the recipient\",\"_sender\":\"The address of the sender\"}},\"calculateConviction(uint256,uint256,uint256)\":{\"details\":\"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128\",\"params\":{\"_lastConv\":\"Last conviction record\",\"_oldAmount\":\"Amount of tokens staked until now\",\"_timePassed\":\"Number of blocks since last conviction record\"},\"returns\":{\"_0\":\"Current conviction\"}},\"calculateThreshold(uint256)\":{\"details\":\"Formula: \\u03c1 * totalStaked / (1 - a) / (\\u03b2 - requestedAmount / total)**2 For the Solidity implementation we amplify \\u03c1 and \\u03b2 and simplify the formula: weight = \\u03c1 * D maxRatio = \\u03b2 * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2\",\"params\":{\"_requestedAmount\":\"Requested amount of tokens on certain proposal\"},\"returns\":{\"_threshold\":\"Threshold a proposal's conviction should surpass in order to be able to executed it.\"}},\"distribute(address[],bytes,address)\":{\"details\":\"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to distribute to the recipients\",\"_recipientIds\":\"The IDs of the recipients\",\"_sender\":\"The address of the sender\"}},\"getAllo()\":{\"returns\":{\"_0\":\"The Allo contract\"}},\"getPayouts(address[],bytes[])\":{\"returns\":{\"_0\":\"Input the values you would send to distribute(), get the amounts each recipient in the array would receive\"}},\"getPoolAmount()\":{\"returns\":{\"_0\":\"The balance of the pool\"}},\"getPoolId()\":{\"returns\":{\"_0\":\"The ID of the pool\"}},\"getProposal(uint256)\":{\"details\":\"Get proposal details\",\"params\":{\"_proposalId\":\"Proposal id\"},\"returns\":{\"arbitrableConfigVersion\":\"Proposal arbitrable config id\",\"beneficiary\":\"Proposal beneficiary\",\"blockLast\":\"Last block when conviction was calculated\",\"convictionLast\":\"Last conviction calculated\",\"proposalStatus\":\"Proposal status\",\"requestedAmount\":\"Proposal requested amount\",\"requestedToken\":\"Proposal requested token\",\"stakedAmount\":\"Proposal staked points\",\"submitter\":\"Proposal submitter\",\"threshold\":\"Proposal threshold\",\"voterStakedPoints\":\"Voter staked points\"}},\"getProposalVoterStake(uint256,address)\":{\"params\":{\"_proposalId\":\"Proposal id\",\"_voter\":\"Voter address\"},\"returns\":{\"_0\":\"Proposal voter stake\"}},\"getRecipientStatus(address)\":{\"params\":{\"_recipientId\":\"The ID of the recipient\"},\"returns\":{\"_0\":\"The status of the recipient\"}},\"getStrategyId()\":{\"returns\":{\"_0\":\"The ID of the strategy\"}},\"increasePoolAmount(uint256)\":{\"details\":\"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.\",\"params\":{\"_amount\":\"The amount to increase the pool by\"}},\"init(address,string,address)\":{\"params\":{\"_allo\":\"Address of the Allo contract.\",\"_name\":\"Name of the strategy\",\"owner\":\"Address of the owner of the strategy\"}},\"initialize(uint256,bytes)\":{\"params\":{\"_data\":\"The encoded data\",\"_poolId\":\"The ID of the pool\"}},\"isPoolActive()\":{\"returns\":{\"_0\":\"'true' if the pool is active, otherwise 'false'\"}},\"isValidAllocator(address)\":{\"details\":\"How the allocator is determined is up to the strategy implementation.\",\"params\":{\"_allocator\":\"The address to check if it is a valid allocator for the strategy.\"},\"returns\":{\"_0\":\"'true' if the address is a valid allocator, 'false' otherwise\"}},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"registerRecipient(bytes,address)\":{\"details\":\"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.\",\"params\":{\"_data\":\"The data to use to register the recipient\",\"_sender\":\"The address of the sender\"},\"returns\":{\"recipientId\":\"The recipientId\"}},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"rule(uint256,uint256)\":{\"details\":\"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.\",\"params\":{\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 is reserved for \\\"Not able/wanting to make a decision\\\".\"}},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"events\":{\"Allocated(address,uint256,address,address)\":{\"notice\":\"Emitted when a recipient is allocated to.\"},\"Distributed(address,address,uint256,address)\":{\"notice\":\"Emitted when tokens are distributed.\"},\"Initialized(uint256,bytes)\":{\"notice\":\"Emitted when strategy is initialized.\"},\"PoolActive(bool)\":{\"notice\":\"Emitted when pool is set to active status.\"},\"Registered(address,bytes,address)\":{\"notice\":\"Emitted when a recipient is registered.\"}},\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"allocate(bytes,address)\":{\"notice\":\"Allocates to a recipient.\"},\"distribute(address[],bytes,address)\":{\"notice\":\"Distributes funds (tokens) to recipients.\"},\"getAllo()\":{\"notice\":\"Getter for the 'Allo' contract.\"},\"getPoolAmount()\":{\"notice\":\"Getter for the 'poolAmount'.\"},\"getPoolId()\":{\"notice\":\"Getter for the 'poolId'.\"},\"getProposalVoterStake(uint256,address)\":{\"notice\":\"Get stake of voter `_voter` on proposal #`_proposalId`\"},\"getRecipientStatus(address)\":{\"notice\":\"Getter for the status of a recipient.\"},\"getStrategyId()\":{\"notice\":\"Getter for the 'strategyId'.\"},\"increasePoolAmount(uint256)\":{\"notice\":\"Increases the pool amount.\"},\"init(address,string,address)\":{\"notice\":\"Constructor to set the Allo contract and \\\"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo\"},\"initialize(uint256,bytes)\":{\"notice\":\"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize().\"},\"isPoolActive()\":{\"notice\":\"Getter for whether or not the pool is active.\"},\"isValidAllocator(address)\":{\"notice\":\"Checks if the '_allocator' is a valid allocator.\"},\"registerRecipient(bytes,address)\":{\"notice\":\"Registers a recipient.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":\"CVStrategyV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"AmountOverMaxRatio"},{"inputs":[],"type":"error","name":"ArbitratorCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"CantIncreaseFixedSystem"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_remainingSec","type":"uint256"}],"type":"error","name":"DisputeCooldownNotPassed"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[{"internalType":"uint256","name":"sentAmount","type":"uint256"},{"internalType":"uint256","name":"requiredAmount","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"MaxPointsReached"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"inputs":[],"type":"error","name":"NotImplemented"},{"inputs":[],"type":"error","name":"OnlyArbitrator"},{"inputs":[],"type":"error","name":"OnlyCommunityAllowed"},{"inputs":[],"type":"error","name":"OnlyCouncilSafe"},{"inputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"sender","type":"address"}],"type":"error","name":"OnlySubmitter"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"_requestedAmount","type":"uint256"},{"internalType":"uint256","name":"_poolAmount","type":"uint256"}],"type":"error","name":"PoolAmountNotEnough"},{"inputs":[],"type":"error","name":"PoolIdCannotBeZero"},{"inputs":[],"type":"error","name":"PoolIsEmpty"},{"inputs":[],"type":"error","name":"ProposalDataIsEmpty"},{"inputs":[],"type":"error","name":"ProposalIdCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"enum ProposalStatus","name":"_proposalStatus","type":"uint8"}],"type":"error","name":"ProposalInvalidForAllocation"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotActive"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotDisputed"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"type":"error","name":"ProposalNotInList"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"ProposalSupportDuplicated"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[{"internalType":"uint256","name":"_support","type":"uint256"},{"internalType":"int256","name":"_delta","type":"int256"},{"internalType":"int256","name":"_result","type":"int256"}],"type":"error","name":"SupportUnderflow"},{"inputs":[],"type":"error","name":"TokenCannotBeZero"},{"inputs":[],"type":"error","name":"TokenNotAllowed"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"UserCannotBeZero"},{"inputs":[],"type":"error","name":"UserCannotExecuteAction"},{"inputs":[],"type":"error","name":"UserIsInactive"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"token","type":"address","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Allocated","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersAdded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"address[]","name":"members","type":"address[]","indexed":false}],"type":"event","name":"AllowlistMembersRemoved","anonymous":false},{"inputs":[{"internalType":"uint256","name":"currentArbitrableConfigVersion","type":"uint256","indexed":false},{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRuling","type":"uint256","indexed":false},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256","indexed":false}],"type":"event","name":"ArbitrableConfigUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}],"indexed":false}],"type":"event","name":"CVParamsUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_arbitrableDisputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_externalDisputeID","type":"uint256","indexed":false},{"internalType":"uint256","name":"_templateId","type":"uint256","indexed":false},{"internalType":"string","name":"_templateUri","type":"string","indexed":false}],"type":"event","name":"DisputeRequest","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"beneficiary","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"address","name":"recipientAddress","type":"address","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Distributed","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}],"indexed":false}],"type":"event","name":"InitializedCV","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"data","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}],"indexed":false}],"type":"event","name":"InitializedCV2","anonymous":false},{"inputs":[{"internalType":"uint256","name":"before","type":"uint256","indexed":false},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256","indexed":false}],"type":"event","name":"MinThresholdPointsUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false}],"type":"event","name":"PointsDeactivated","anonymous":false},{"inputs":[{"internalType":"bool","name":"active","type":"bool","indexed":false}],"type":"event","name":"PoolActive","anonymous":false},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"PoolAmountIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensUnStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToDecrease","type":"uint256","indexed":false}],"type":"event","name":"PowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"member","type":"address","indexed":false},{"internalType":"uint256","name":"tokensStaked","type":"uint256","indexed":false},{"internalType":"uint256","name":"pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"PowerIncreased","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCancelled","anonymous":false},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false}],"type":"event","name":"ProposalCreated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"disputeId","type":"uint256","indexed":false},{"internalType":"address","name":"challenger","type":"address","indexed":false},{"internalType":"string","name":"context","type":"string","indexed":false},{"internalType":"uint256","name":"timestamp","type":"uint256","indexed":false}],"type":"event","name":"ProposalDisputed","anonymous":false},{"inputs":[{"internalType":"address","name":"recipientId","type":"address","indexed":true},{"internalType":"bytes","name":"data","type":"bytes","indexed":false},{"internalType":"address","name":"sender","type":"address","indexed":false}],"type":"event","name":"Registered","anonymous":false},{"inputs":[{"internalType":"address","name":"registryCommunity","type":"address","indexed":false}],"type":"event","name":"RegistryUpdated","anonymous":false},{"inputs":[{"internalType":"contract IArbitrator","name":"_arbitrator","type":"address","indexed":true},{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"uint256","name":"_ruling","type":"uint256","indexed":false}],"type":"event","name":"Ruling","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"uint256","name":"totalStakedAmount","type":"uint256","indexed":false},{"internalType":"uint256","name":"convictionLast","type":"uint256","indexed":false}],"type":"event","name":"SupportAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":false},{"internalType":"address","name":"arbitrator","type":"address","indexed":false},{"internalType":"address","name":"tribunalSafe","type":"address","indexed":false}],"type":"event","name":"TribunaSafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"D","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DISPUTE_COOLDOWN_SEC","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_STAKED_PROPOSALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"RULING_OPTIONS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"activatePoints"},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"addToAllowList"},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"allocate"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"arbitrableConfigs","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_timePassed","type":"uint256"},{"internalType":"uint256","name":"_lastConv","type":"uint256"},{"internalType":"uint256","name":"_oldAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_requestedAmount","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateThreshold","outputs":[{"internalType":"uint256","name":"_threshold","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"canExecuteProposal","outputs":[{"internalType":"bool","name":"canBeExecuted","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"cancelProposal"},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVault","outputs":[{"internalType":"contract ICollateralVault","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"currentArbitrableConfigVersion","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cvParams","outputs":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivatePoints"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToUnstake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"disputeCount","outputs":[{"internalType":"uint64","name":"","type":"uint64"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputeIdToProposalId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"string","name":"context","type":"string"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"disputeProposal","outputs":[{"internalType":"uint256","name":"disputeId","type":"uint256"}]},{"inputs":[{"internalType":"address[]","name":"_recipientIds","type":"address[]"},{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"distribute"},{"inputs":[],"stateMutability":"view","type":"function","name":"getAllo","outputs":[{"internalType":"contract IAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getArbitrableConfig","outputs":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getMaxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMetadata","outputs":[{"internalType":"struct Metadata","name":"","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}]},{"inputs":[{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bytes[]","name":"","type":"bytes[]"}],"stateMutability":"pure","type":"function","name":"getPayouts","outputs":[{"internalType":"struct IStrategy.PayoutSummary[]","name":"","type":"tuple[]","components":[{"internalType":"address","name":"recipientAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getPoolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposal","outputs":[{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"uint256","name":"voterStakedPoints","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"getProposalStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getProposalVoterStake","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_recipientId","type":"address"}],"stateMutability":"view","type":"function","name":"getRecipientStatus","outputs":[{"internalType":"enum IStrategy.Status","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunity","outputs":[{"internalType":"contract RegistryCommunityV0_0","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getRegistryCommunityV0_1","outputs":[{"internalType":"contract RegistryCommunityV0_1","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"stateMutability":"view","type":"function","name":"getTotalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePoolAmount"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"uint256","name":"_amountToStake","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"isPoolActive","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_allocator","type":"address"}],"stateMutability":"view","type":"function","name":"isValidAllocator","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointConfig","outputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pointSystem","outputs":[{"internalType":"enum PointSystem","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proposalType","outputs":[{"internalType":"enum ProposalType","name":"","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"proposals","outputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"uint256","name":"requestedAmount","type":"uint256"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"uint256","name":"convictionLast","type":"uint256"},{"internalType":"address","name":"beneficiary","type":"address"},{"internalType":"address","name":"submitter","type":"address"},{"internalType":"address","name":"requestedToken","type":"address"},{"internalType":"uint256","name":"blockLast","type":"uint256"},{"internalType":"enum ProposalStatus","name":"proposalStatus","type":"uint8"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"struct ProposalDisputeInfo","name":"disputeInfo","type":"tuple","components":[{"internalType":"uint256","name":"disputeId","type":"uint256"},{"internalType":"uint256","name":"disputeTimestamp","type":"uint256"},{"internalType":"address","name":"challenger","type":"address"}]},{"internalType":"uint256","name":"lastDisputeCompletion","type":"uint256"},{"internalType":"uint256","name":"arbitrableConfigVersion","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes","name":"_data","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"payable","type":"function","name":"registerRecipient","outputs":[{"internalType":"address","name":"recipientId","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunity","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address[]","name":"members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"removeFromAllowList"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"rule"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"bool","name":"_active","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setPoolActive"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"struct ArbitrableConfig","name":"_arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"struct CVParams","name":"_cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"address[]","name":"membersToAdd","type":"address[]"},{"internalType":"address[]","name":"membersToRemove","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setSybilScorer"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"sybilScorer","outputs":[{"internalType":"contract ISybilScorer","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalEffectiveActivePoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalPointsActivated","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"totalVoterStakePct","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"updateProposalConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"voterStakedProposals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"allocate(bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to allocate to the recipient","_sender":"The address of the sender"}},"calculateConviction(uint256,uint256,uint256)":{"details":"Conviction formula: a^t * y(0) + x * (1 - a^t) / (1 - a) Solidity implementation: y = (2^128 * a^t * y0 + x * D * (2^128 - 2^128 * a^t) / (D - aD) + 2^127) / 2^128","params":{"_lastConv":"Last conviction record","_oldAmount":"Amount of tokens staked until now","_timePassed":"Number of blocks since last conviction record"},"returns":{"_0":"Current conviction"}},"calculateThreshold(uint256)":{"details":"Formula: ρ * totalStaked / (1 - a) / (β - requestedAmount / total)**2 For the Solidity implementation we amplify ρ and β and simplify the formula: weight = ρ * D maxRatio = β * D decay = a * D threshold = weight * totalStaked * D ** 2 * funds ** 2 / (D - decay) / (maxRatio * funds - requestedAmount * D) ** 2","params":{"_requestedAmount":"Requested amount of tokens on certain proposal"},"returns":{"_threshold":"Threshold a proposal's conviction should surpass in order to be able to executed it."}},"distribute(address[],bytes,address)":{"details":"The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to distribute to the recipients","_recipientIds":"The IDs of the recipients","_sender":"The address of the sender"}},"getAllo()":{"returns":{"_0":"The Allo contract"}},"getPayouts(address[],bytes[])":{"returns":{"_0":"Input the values you would send to distribute(), get the amounts each recipient in the array would receive"}},"getPoolAmount()":{"returns":{"_0":"The balance of the pool"}},"getPoolId()":{"returns":{"_0":"The ID of the pool"}},"getProposal(uint256)":{"details":"Get proposal details","params":{"_proposalId":"Proposal id"},"returns":{"arbitrableConfigVersion":"Proposal arbitrable config id","beneficiary":"Proposal beneficiary","blockLast":"Last block when conviction was calculated","convictionLast":"Last conviction calculated","proposalStatus":"Proposal status","requestedAmount":"Proposal requested amount","requestedToken":"Proposal requested token","stakedAmount":"Proposal staked points","submitter":"Proposal submitter","threshold":"Proposal threshold","voterStakedPoints":"Voter staked points"}},"getProposalVoterStake(uint256,address)":{"params":{"_proposalId":"Proposal id","_voter":"Voter address"},"returns":{"_0":"Proposal voter stake"}},"getRecipientStatus(address)":{"params":{"_recipientId":"The ID of the recipient"},"returns":{"_0":"The status of the recipient"}},"getStrategyId()":{"returns":{"_0":"The ID of the strategy"}},"increasePoolAmount(uint256)":{"details":"Increases the 'poolAmount' by '_amount'. Only 'Allo' contract can call this.","params":{"_amount":"The amount to increase the pool by"}},"init(address,string,address)":{"params":{"_allo":"Address of the Allo contract.","_name":"Name of the strategy","owner":"Address of the owner of the strategy"}},"initialize(uint256,bytes)":{"params":{"_data":"The encoded data","_poolId":"The ID of the pool"}},"isPoolActive()":{"returns":{"_0":"'true' if the pool is active, otherwise 'false'"}},"isValidAllocator(address)":{"details":"How the allocator is determined is up to the strategy implementation.","params":{"_allocator":"The address to check if it is a valid allocator for the strategy."},"returns":{"_0":"'true' if the address is a valid allocator, 'false' otherwise"}},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"registerRecipient(bytes,address)":{"details":"Registers a recipient and returns the ID of the recipient. The encoded '_data' will be determined by the strategy implementation. Only 'Allo' contract can call this when it is initialized.","params":{"_data":"The data to use to register the recipient","_sender":"The address of the sender"},"returns":{"recipientId":"The recipientId"}},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"rule(uint256,uint256)":{"details":"Give a ruling for a dispute. Must be called by the arbitrator. The purpose of this function is to ensure that the address calling it has the right to rule on the contract.","params":{"_disputeID":"The identifier of the dispute in the Arbitrator contract.","_ruling":"Ruling given by the arbitrator. Note that 0 is reserved for \"Not able/wanting to make a decision\"."}},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"NATIVE()":{"notice":"Address of the native token"},"allocate(bytes,address)":{"notice":"Allocates to a recipient."},"distribute(address[],bytes,address)":{"notice":"Distributes funds (tokens) to recipients."},"getAllo()":{"notice":"Getter for the 'Allo' contract."},"getPoolAmount()":{"notice":"Getter for the 'poolAmount'."},"getPoolId()":{"notice":"Getter for the 'poolId'."},"getProposalVoterStake(uint256,address)":{"notice":"Get stake of voter `_voter` on proposal #`_proposalId`"},"getRecipientStatus(address)":{"notice":"Getter for the status of a recipient."},"getStrategyId()":{"notice":"Getter for the 'strategyId'."},"increasePoolAmount(uint256)":{"notice":"Increases the pool amount."},"init(address,string,address)":{"notice":"Constructor to set the Allo contract and \"strategyId'.`init` here its the initialize for upgradable contracts, different from `initialize()` that its used for Allo"},"initialize(uint256,bytes)":{"notice":"@dev The default BaseStrategy version will not use the data if a strategy wants to use it, they will overwrite it, use it, and then call super.initialize()."},"isPoolActive()":{"notice":"Getter for whether or not the pool is active."},"isValidAllocator(address)":{"notice":"Checks if the '_allocator' is a valid allocator."},"registerRecipient(bytes,address)":{"notice":"Registers a recipient."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":"CVStrategyV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":64873,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":64875,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":64877,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":64879,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":64881,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":65910,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":65912,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":65914,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":65916,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":65918,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":65920,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":65922,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":65924,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":65927,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)65637_storage"},{"astId":65930,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)65540"},{"astId":65933,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)65545"},{"astId":65936,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)65614_storage"},{"astId":65938,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"registryCommunity","offset":0,"slot":"120","type":"t_address"},{"astId":65941,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)75751"},{"astId":65944,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70106"},{"astId":65949,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)65606_storage)"},{"astId":65953,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":65958,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedProposals","offset":0,"slot":"125","type":"t_mapping(t_address,t_array(t_uint256)dyn_storage)"},{"astId":65962,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":65967,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)"},{"astId":69193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"__gap","offset":0,"slot":"128","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_array(t_uint256)dyn_storage":{"encoding":"dynamic_array","label":"uint256[]","numberOfBytes":"32","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(IAllo)2610":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)75718":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)75751":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70106":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_enum(PointSystem)65545":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)65565":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)65540":{"encoding":"inplace","label":"enum ProposalType","numberOfBytes":"1"},"t_mapping(t_address,t_array(t_uint256)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256[])","numberOfBytes":"32","value":"t_array(t_uint256)dyn_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_uint256,t_struct(ArbitrableConfig)65628_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)65628_storage"},"t_mapping(t_uint256,t_struct(Proposal)65606_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)65606_storage"},"t_mapping(t_uint256,t_uint256)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(ArbitrableConfig)65628_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":65617,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)75718"},{"astId":65619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":65621,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65623,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":65625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":65627,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)65637_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":65630,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":65632,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":65634,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":65636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)65614_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":65613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)65606_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":65574,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65576,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":65578,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":65580,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":65582,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":65584,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":65586,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":65588,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":65591,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)65565"},{"astId":65595,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":65598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":65601,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)65572_storage"},{"astId":65603,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":65605,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)65572_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol:CVStrategyV0_1","label":"challenger","offset":0,"slot":"2","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint64":{"encoding":"inplace","label":"uint64","numberOfBytes":"8"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","id":69757,"exportedSymbols":{"ArbitrableConfig":[65628],"CVParams":[65637],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"Clone":[3002],"CreateProposal":[65557],"IArbitrator":[75718],"ICollateralVault":[75751],"ISybilScorer":[70106],"PassportData":[70024],"PointSystem":[65545],"PointSystemConfig":[65614],"Proposal":[65606],"ProposalStatus":[65565],"ProposalSupport":[65611],"ProposalType":[65540],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:6410:99","nodes":[{"id":69196,"nodeType":"PragmaDirective","src":"42:24:99","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":69208,"nodeType":"ImportDirective","src":"68:263:99","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"./CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":69197,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"81:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69198,"name":"CVParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65637,"src":"101:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69199,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"115:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69200,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"133:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69201,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"150:17:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69202,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"173:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69203,"name":"Proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65606,"src":"195:8:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69204,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"209:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69205,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"229:15:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69206,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"250:14:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69207,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"270:30:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69211,"nodeType":"ImportDirective","src":"333:63:99","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":70107,"symbolAliases":[{"foreign":{"id":69209,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"341:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":69210,"name":"PassportData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70024,"src":"355:12:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69213,"nodeType":"ImportDirective","src":"397:85:99","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":69212,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"405:21:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69215,"nodeType":"ImportDirective","src":"483:65:99","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":69214,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"491:5:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69217,"nodeType":"ImportDirective","src":"549:68:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":75752,"symbolAliases":[{"foreign":{"id":69216,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75751,"src":"557:16:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69219,"nodeType":"ImportDirective","src":"618:58:99","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":69757,"sourceUnit":75719,"symbolAliases":[{"foreign":{"id":69218,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75718,"src":"626:11:99","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69242,"nodeType":"StructDefinition","src":"832:286:99","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":69222,"mutability":"mutable","name":"cvParams","nameLocation":"885:8:99","nodeType":"VariableDeclaration","scope":69242,"src":"876:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":69221,"nodeType":"UserDefinedTypeName","pathNode":{"id":69220,"name":"CVParams","nameLocations":["876:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"876:8:99"},"referencedDeclaration":65637,"src":"876:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69225,"mutability":"mutable","name":"proposalType","nameLocation":"912:12:99","nodeType":"VariableDeclaration","scope":69242,"src":"899:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"},"typeName":{"id":69224,"nodeType":"UserDefinedTypeName","pathNode":{"id":69223,"name":"ProposalType","nameLocations":["899:12:99"],"nodeType":"IdentifierPath","referencedDeclaration":65540,"src":"899:12:99"},"referencedDeclaration":65540,"src":"899:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":69228,"mutability":"mutable","name":"pointSystem","nameLocation":"942:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"930:23:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"typeName":{"id":69227,"nodeType":"UserDefinedTypeName","pathNode":{"id":69226,"name":"PointSystem","nameLocations":["930:11:99"],"nodeType":"IdentifierPath","referencedDeclaration":65545,"src":"930:11:99"},"referencedDeclaration":65545,"src":"930:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":69231,"mutability":"mutable","name":"pointConfig","nameLocation":"977:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"959:29:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":69230,"nodeType":"UserDefinedTypeName","pathNode":{"id":69229,"name":"PointSystemConfig","nameLocations":["959:17:99"],"nodeType":"IdentifierPath","referencedDeclaration":65614,"src":"959:17:99"},"referencedDeclaration":65614,"src":"959:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":69234,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"1011:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"994:33:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69233,"nodeType":"UserDefinedTypeName","pathNode":{"id":69232,"name":"ArbitrableConfig","nameLocations":["994:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"994:16:99"},"referencedDeclaration":65628,"src":"994:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69236,"mutability":"mutable","name":"registryCommunity","nameLocation":"1041:17:99","nodeType":"VariableDeclaration","scope":69242,"src":"1033:25:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69235,"name":"address","nodeType":"ElementaryTypeName","src":"1033:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69238,"mutability":"mutable","name":"sybilScorer","nameLocation":"1072:11:99","nodeType":"VariableDeclaration","scope":69242,"src":"1064:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69237,"name":"address","nodeType":"ElementaryTypeName","src":"1064:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69241,"mutability":"mutable","name":"initialAllowlist","nameLocation":"1099:16:99","nodeType":"VariableDeclaration","scope":69242,"src":"1089:26:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69239,"name":"address","nodeType":"ElementaryTypeName","src":"1089:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69240,"nodeType":"ArrayTypeName","src":"1089:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"839:30:99","scope":69757,"visibility":"public"},{"id":69756,"nodeType":"ContractDefinition","src":"1164:5287:99","nodes":[{"id":69252,"nodeType":"EventDefinition","src":"1377:65:99","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"1383:23:99","parameters":{"id":69251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69247,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1415:6:99","nodeType":"VariableDeclaration","scope":69252,"src":"1407:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69246,"name":"uint256","nodeType":"ElementaryTypeName","src":"1407:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69250,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1433:7:99","nodeType":"VariableDeclaration","scope":69252,"src":"1423:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69248,"name":"address","nodeType":"ElementaryTypeName","src":"1423:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69249,"nodeType":"ArrayTypeName","src":"1423:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1406:35:99"}},{"id":69259,"nodeType":"EventDefinition","src":"1447:63:99","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"1453:21:99","parameters":{"id":69258,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69254,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1483:6:99","nodeType":"VariableDeclaration","scope":69259,"src":"1475:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69253,"name":"uint256","nodeType":"ElementaryTypeName","src":"1475:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69257,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"1501:7:99","nodeType":"VariableDeclaration","scope":69259,"src":"1491:17:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69255,"name":"address","nodeType":"ElementaryTypeName","src":"1491:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69256,"nodeType":"ArrayTypeName","src":"1491:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1474:35:99"}},{"id":69266,"nodeType":"EventDefinition","src":"1515:74:99","nodes":[],"anonymous":false,"eventSelector":"a489767af337c1767e9c6949fc5a6d3a73bb69ea80a3e619c2e08b7b308d0bcf","name":"InitializedCV2","nameLocation":"1521:14:99","parameters":{"id":69265,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69261,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"1544:6:99","nodeType":"VariableDeclaration","scope":69266,"src":"1536:14:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69260,"name":"uint256","nodeType":"ElementaryTypeName","src":"1536:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69264,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"1583:4:99","nodeType":"VariableDeclaration","scope":69266,"src":"1552:35:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69263,"nodeType":"UserDefinedTypeName","pathNode":{"id":69262,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1552:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1552:30:99"},"referencedDeclaration":69242,"src":"1552:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"1535:53:99"}},{"id":69273,"nodeType":"ErrorDefinition","src":"1760:88:99","nodes":[],"errorSelector":"94d57ead","name":"ProposalInvalidForAllocation","nameLocation":"1766:28:99","parameters":{"id":69272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69268,"mutability":"mutable","name":"_proposalId","nameLocation":"1803:11:99","nodeType":"VariableDeclaration","scope":69273,"src":"1795:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69267,"name":"uint256","nodeType":"ElementaryTypeName","src":"1795:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69271,"mutability":"mutable","name":"_proposalStatus","nameLocation":"1831:15:99","nodeType":"VariableDeclaration","scope":69273,"src":"1816:30:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"typeName":{"id":69270,"nodeType":"UserDefinedTypeName","pathNode":{"id":69269,"name":"ProposalStatus","nameLocations":["1816:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":65565,"src":"1816:14:99"},"referencedDeclaration":65565,"src":"1816:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"visibility":"internal"}],"src":"1794:53:99"}},{"id":69317,"nodeType":"FunctionDefinition","src":"2019:473:99","nodes":[],"body":{"id":69316,"nodeType":"Block","src":"2103:389:99","nodes":[],"statements":[{"assignments":[69280],"declarations":[{"constant":false,"id":69280,"mutability":"mutable","name":"p","nameLocation":"2130:1:99","nodeType":"VariableDeclaration","scope":69316,"src":"2113:18:99","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69279,"nodeType":"UserDefinedTypeName","pathNode":{"id":69278,"name":"Proposal","nameLocations":["2113:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65606,"src":"2113:8:99"},"referencedDeclaration":65606,"src":"2113:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69284,"initialValue":{"baseExpression":{"id":69281,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65949,"src":"2134:9:99","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$65606_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69283,"indexExpression":{"id":69282,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2144:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2134:22:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2113:43:99"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69301,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69295,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69285,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2183:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69286,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2185:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2183:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69287,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2203:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69288,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2218:8:99","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":65558,"src":"2203:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2183:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69290,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2230:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69291,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2232:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2230:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69292,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2250:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69293,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2265:9:99","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":65561,"src":"2250:24:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2230:44:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:91:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69296,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2294:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2296:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2294:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69298,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2314:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69299,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2329:8:99","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":65562,"src":"2314:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2294:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:154:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"},"id":69306,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69302,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2341:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69303,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2343:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2341:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":69304,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"2361:14:99","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$65565_$","typeString":"type(enum ProposalStatus)"}},"id":69305,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2376:8:99","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":65564,"src":"2361:23:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}},"src":"2341:43:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2183:201:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69315,"nodeType":"IfStatement","src":"2166:320:99","trueBody":{"id":69314,"nodeType":"Block","src":"2395:91:99","statements":[{"errorCall":{"arguments":[{"id":69309,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69275,"src":"2445:11:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69310,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69280,"src":"2458:1:99","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$65606_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69311,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2460:14:99","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":65591,"src":"2458:16:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_enum$_ProposalStatus_$65565","typeString":"enum ProposalStatus"}],"id":69308,"name":"ProposalInvalidForAllocation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69273,"src":"2416:28:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_enum$_ProposalStatus_$65565_$returns$__$","typeString":"function (uint256,enum ProposalStatus) pure"}},"id":69312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2416:59:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69313,"nodeType":"RevertStatement","src":"2409:66:99"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkProposalAllocationValidity","nameLocation":"2028:31:99","parameters":{"id":69276,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69275,"mutability":"mutable","name":"_proposalId","nameLocation":"2068:11:99","nodeType":"VariableDeclaration","scope":69317,"src":"2060:19:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69274,"name":"uint256","nodeType":"ElementaryTypeName","src":"2060:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2059:21:99"},"returnParameters":{"id":69277,"nodeType":"ParameterList","parameters":[],"src":"2103:0:99"},"scope":69756,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":69328,"nodeType":"FunctionDefinition","src":"2498:144:99","nodes":[],"body":{"id":69327,"nodeType":"Block","src":"2578:64:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69324,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"2617:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69323,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"2595:21:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":69325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2595:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"functionReturnParameters":69322,"id":69326,"nodeType":"Return","src":"2588:47:99"}]},"functionSelector":"6a6f69b4","implemented":true,"kind":"function","modifiers":[],"name":"getRegistryCommunityV0_1","nameLocation":"2507:24:99","parameters":{"id":69318,"nodeType":"ParameterList","parameters":[],"src":"2531:2:99"},"returnParameters":{"id":69322,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69321,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69328,"src":"2555:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":69320,"nodeType":"UserDefinedTypeName","pathNode":{"id":69319,"name":"RegistryCommunityV0_1","nameLocations":["2555:21:99"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"2555:21:99"},"referencedDeclaration":72403,"src":"2555:21:99","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"src":"2554:23:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":69430,"nodeType":"FunctionDefinition","src":"2648:879:99","nodes":[],"body":{"id":69429,"nodeType":"Block","src":"2732:795:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69339,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"2762:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69338,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65051,"src":"2742:19:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2742:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69341,"nodeType":"ExpressionStatement","src":"2742:28:99"},{"expression":{"id":69351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69342,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2781:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":69346,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65910,"src":"2834:23:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2859:12:99","subExpression":{"id":69347,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65914,"src":"2859:10:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69344,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"2816:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":69345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2822:11:99","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"2816:17:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":69349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2816:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69343,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75751,"src":"2799:16:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$75751_$","typeString":"type(contract ICollateralVault)"}},"id":69350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2799:74:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"src":"2781:92:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69352,"nodeType":"ExpressionStatement","src":"2781:92:99"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69353,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65941,"src":"2883:15:99","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$75751","typeString":"contract ICollateralVault"}},"id":69355,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2899:10:99","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":75723,"src":"2883:26:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":69356,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2883:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69357,"nodeType":"ExpressionStatement","src":"2883:28:99"},{"assignments":[69360],"declarations":[{"constant":false,"id":69360,"mutability":"mutable","name":"ip","nameLocation":"2960:2:99","nodeType":"VariableDeclaration","scope":69429,"src":"2922:40:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":69359,"nodeType":"UserDefinedTypeName","pathNode":{"id":69358,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["2922:30:99"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"2922:30:99"},"referencedDeclaration":69242,"src":"2922:30:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":69367,"initialValue":{"arguments":[{"id":69363,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69332,"src":"2976:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":69364,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"2984:30:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":69365,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2983:32:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":69361,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2965:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69362,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2969:6:99","memberName":"decode","nodeType":"MemberAccess","src":"2965:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69366,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2965:51:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"2922:94:99"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69368,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3031:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69369,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3034:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3031:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69372,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3063:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69371,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3055:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69370,"name":"address","nodeType":"ElementaryTypeName","src":"3055:7:99","typeDescriptions":{}}},"id":69373,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3055:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3031:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69379,"nodeType":"IfStatement","src":"3027:94:99","trueBody":{"id":69378,"nodeType":"Block","src":"3067:54:99","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69375,"name":"RegistryCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65688,"src":"3088:20:99","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69376,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3088:22:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69377,"nodeType":"RevertStatement","src":"3081:29:99"}]}},{"expression":{"id":69383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69380,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65938,"src":"3175:17:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69381,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3195:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3198:17:99","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":69236,"src":"3195:20:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3175:40:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69384,"nodeType":"ExpressionStatement","src":"3175:40:99"},{"expression":{"id":69388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69385,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65930,"src":"3226:12:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69386,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3241:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3244:12:99","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":69225,"src":"3241:15:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"src":"3226:30:99","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$65540","typeString":"enum ProposalType"}},"id":69389,"nodeType":"ExpressionStatement","src":"3226:30:99"},{"expression":{"id":69393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69390,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65933,"src":"3266:11:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69391,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3280:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3283:11:99","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":69228,"src":"3280:14:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"3266:28:99","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"id":69394,"nodeType":"ExpressionStatement","src":"3266:28:99"},{"expression":{"id":69398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69395,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65936,"src":"3304:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69396,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3318:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69397,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3321:11:99","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":69231,"src":"3318:14:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"3304:28:99","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$65614_storage","typeString":"struct PointSystemConfig storage ref"}},"id":69399,"nodeType":"ExpressionStatement","src":"3304:28:99"},{"expression":{"id":69405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69400,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"3342:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":69402,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3369:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69403,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3372:11:99","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"3369:14:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69401,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70106,"src":"3356:12:99","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70106_$","typeString":"type(contract ISybilScorer)"}},"id":69404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3356:28:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"src":"3342:42:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":69406,"nodeType":"ExpressionStatement","src":"3342:42:99"},{"expression":{"arguments":[{"expression":{"id":69408,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3409:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69409,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3412:16:99","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":69234,"src":"3409:19:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":69410,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3430:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":69411,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"3433:8:99","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":69222,"src":"3430:11:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":69415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3457:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69414,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3443:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69412,"name":"address","nodeType":"ElementaryTypeName","src":"3447:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69413,"nodeType":"ArrayTypeName","src":"3447:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69416,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3443:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":69420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3475:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3461:13:99","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":69417,"name":"address","nodeType":"ElementaryTypeName","src":"3465:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69418,"nodeType":"ArrayTypeName","src":"3465:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":69421,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3461:16:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69407,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"3394:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3394:84:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69423,"nodeType":"ExpressionStatement","src":"3394:84:99"},{"eventCall":{"arguments":[{"id":69425,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69330,"src":"3508:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69426,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69360,"src":"3517:2:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":69424,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69266,"src":"3493:14:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":69427,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3493:27:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69428,"nodeType":"EmitStatement","src":"3488:32:99"}]},"baseFunctions":[66093],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":69336,"kind":"modifierInvocation","modifierName":{"id":69335,"name":"onlyAllo","nameLocations":["2723:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":64923,"src":"2723:8:99"},"nodeType":"ModifierInvocation","src":"2723:8:99"}],"name":"initialize","nameLocation":"2657:10:99","overrides":{"id":69334,"nodeType":"OverrideSpecifier","overrides":[],"src":"2714:8:99"},"parameters":{"id":69333,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69330,"mutability":"mutable","name":"_poolId","nameLocation":"2676:7:99","nodeType":"VariableDeclaration","scope":69430,"src":"2668:15:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69329,"name":"uint256","nodeType":"ElementaryTypeName","src":"2668:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69332,"mutability":"mutable","name":"_data","nameLocation":"2698:5:99","nodeType":"VariableDeclaration","scope":69430,"src":"2685:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69331,"name":"bytes","nodeType":"ElementaryTypeName","src":"2685:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2667:37:99"},"returnParameters":{"id":69337,"nodeType":"ParameterList","parameters":[],"src":"2732:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69461,"nodeType":"FunctionDefinition","src":"3533:367:99","nodes":[],"body":{"id":69460,"nodeType":"Block","src":"3747:153:99","nodes":[],"statements":[{"expression":{"arguments":[{"id":69448,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69433,"src":"3778:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69449,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69436,"src":"3797:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}],"expression":{"id":69445,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"3757:5:99","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_1_$69756_$","typeString":"type(contract super CVStrategyV0_1)"}},"id":69447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3763:14:99","memberName":"_setPoolParams","nodeType":"MemberAccess","referencedDeclaration":68596,"src":"3757:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69450,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3757:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69451,"nodeType":"ExpressionStatement","src":"3757:50:99"},{"expression":{"arguments":[{"id":69453,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69439,"src":"3833:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69452,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"3817:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69454,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3817:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69455,"nodeType":"ExpressionStatement","src":"3817:29:99"},{"expression":{"arguments":[{"id":69457,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69442,"src":"3877:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69456,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"3856:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69458,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3856:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69459,"nodeType":"ExpressionStatement","src":"3856:37:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"3542:14:99","parameters":{"id":69443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69433,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3590:17:99","nodeType":"VariableDeclaration","scope":69461,"src":"3566:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69432,"nodeType":"UserDefinedTypeName","pathNode":{"id":69431,"name":"ArbitrableConfig","nameLocations":["3566:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3566:16:99"},"referencedDeclaration":65628,"src":"3566:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69436,"mutability":"mutable","name":"_cvParams","nameLocation":"3633:9:99","nodeType":"VariableDeclaration","scope":69461,"src":"3617:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69435,"nodeType":"UserDefinedTypeName","pathNode":{"id":69434,"name":"CVParams","nameLocations":["3617:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3617:8:99"},"referencedDeclaration":65637,"src":"3617:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69439,"mutability":"mutable","name":"membersToAdd","nameLocation":"3669:12:99","nodeType":"VariableDeclaration","scope":69461,"src":"3652:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69437,"name":"address","nodeType":"ElementaryTypeName","src":"3652:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69438,"nodeType":"ArrayTypeName","src":"3652:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69442,"mutability":"mutable","name":"membersToRemove","nameLocation":"3708:15:99","nodeType":"VariableDeclaration","scope":69461,"src":"3691:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69440,"name":"address","nodeType":"ElementaryTypeName","src":"3691:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69441,"nodeType":"ArrayTypeName","src":"3691:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3556:173:99"},"returnParameters":{"id":69444,"nodeType":"ParameterList","parameters":[],"src":"3747:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69487,"nodeType":"FunctionDefinition","src":"3906:332:99","nodes":[],"body":{"id":69486,"nodeType":"Block","src":"4119:119:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69476,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"4129:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4129:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69478,"nodeType":"ExpressionStatement","src":"4129:17:99"},{"expression":{"arguments":[{"id":69480,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"4171:17:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69481,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"4190:9:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"}},{"id":69482,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69470,"src":"4201:12:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":69483,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69473,"src":"4215:15:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69479,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69461,68596],"referencedDeclaration":69461,"src":"4156:14:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$65628_memory_ptr_$_t_struct$_CVParams_$65637_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,address[] memory,address[] memory)"}},"id":69484,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4156:75:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69485,"nodeType":"ExpressionStatement","src":"4156:75:99"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"3915:13:99","parameters":{"id":69474,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69464,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"3962:17:99","nodeType":"VariableDeclaration","scope":69487,"src":"3938:41:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69463,"nodeType":"UserDefinedTypeName","pathNode":{"id":69462,"name":"ArbitrableConfig","nameLocations":["3938:16:99"],"nodeType":"IdentifierPath","referencedDeclaration":65628,"src":"3938:16:99"},"referencedDeclaration":65628,"src":"3938:16:99","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$65628_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69467,"mutability":"mutable","name":"_cvParams","nameLocation":"4005:9:99","nodeType":"VariableDeclaration","scope":69487,"src":"3989:25:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69466,"nodeType":"UserDefinedTypeName","pathNode":{"id":69465,"name":"CVParams","nameLocations":["3989:8:99"],"nodeType":"IdentifierPath","referencedDeclaration":65637,"src":"3989:8:99"},"referencedDeclaration":65637,"src":"3989:8:99","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$65637_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69470,"mutability":"mutable","name":"membersToAdd","nameLocation":"4041:12:99","nodeType":"VariableDeclaration","scope":69487,"src":"4024:29:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69468,"name":"address","nodeType":"ElementaryTypeName","src":"4024:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69469,"nodeType":"ArrayTypeName","src":"4024:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69473,"mutability":"mutable","name":"membersToRemove","nameLocation":"4080:15:99","nodeType":"VariableDeclaration","scope":69487,"src":"4063:32:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69471,"name":"address","nodeType":"ElementaryTypeName","src":"4063:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69472,"nodeType":"ArrayTypeName","src":"4063:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"3928:173:99"},"returnParameters":{"id":69475,"nodeType":"ParameterList","parameters":[],"src":"4119:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69529,"nodeType":"FunctionDefinition","src":"4244:301:99","nodes":[],"body":{"id":69528,"nodeType":"Block","src":"4337:208:99","nodes":[],"statements":[{"assignments":[69499],"declarations":[{"constant":false,"id":69499,"mutability":"mutable","name":"pv","nameLocation":"4372:2:99","nodeType":"VariableDeclaration","scope":69528,"src":"4347:27:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":69497,"nodeType":"UserDefinedTypeName","pathNode":{"id":69496,"name":"ProposalSupport","nameLocations":["4347:15:99"],"nodeType":"IdentifierPath","referencedDeclaration":65611,"src":"4347:15:99"},"referencedDeclaration":65611,"src":"4347:15:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_storage_ptr","typeString":"struct ProposalSupport"}},"id":69498,"nodeType":"ArrayTypeName","src":"4347:17:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":69507,"initialValue":{"arguments":[{"id":69502,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69489,"src":"4388:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":69503,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65611,"src":"4396:15:99","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$65611_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":69504,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"4396:17:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":69505,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"4395:19:99","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":69500,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4377:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69501,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4381:6:99","memberName":"decode","nodeType":"MemberAccess","src":"4377:10:99","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":69506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4377:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4347:68:99"},{"body":{"id":69526,"nodeType":"Block","src":"4465:74:99","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":69520,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4511:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69522,"indexExpression":{"id":69521,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4514:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4511:5:99","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$65611_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":69523,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4517:10:99","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":65608,"src":"4511:16:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69519,"name":"checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69317,"src":"4479:31:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$__$","typeString":"function (uint256) view"}},"id":69524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4479:49:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69525,"nodeType":"ExpressionStatement","src":"4479:49:99"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69512,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4445:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69513,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"4449:2:99","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$65611_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":69514,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4452:6:99","memberName":"length","nodeType":"MemberAccess","src":"4449:9:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4445:13:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69527,"initializationExpression":{"assignments":[69509],"declarations":[{"constant":false,"id":69509,"mutability":"mutable","name":"i","nameLocation":"4438:1:99","nodeType":"VariableDeclaration","scope":69527,"src":"4430:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69508,"name":"uint256","nodeType":"ElementaryTypeName","src":"4430:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69511,"initialValue":{"hexValue":"30","id":69510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4442:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"4430:13:99"},"loopExpression":{"expression":{"id":69517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4460:3:99","subExpression":{"id":69516,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69509,"src":"4460:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69518,"nodeType":"ExpressionStatement","src":"4460:3:99"},"nodeType":"ForStatement","src":"4425:114:99"}]},"baseFunctions":[65437],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"4253:15:99","overrides":{"id":69493,"nodeType":"OverrideSpecifier","overrides":[],"src":"4328:8:99"},"parameters":{"id":69492,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69489,"mutability":"mutable","name":"_data","nameLocation":"4282:5:99","nodeType":"VariableDeclaration","scope":69529,"src":"4269:18:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":69488,"name":"bytes","nodeType":"ElementaryTypeName","src":"4269:5:99","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":69491,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69529,"src":"4290:7:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69490,"name":"address","nodeType":"ElementaryTypeName","src":"4290:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4268:42:99"},"returnParameters":{"id":69494,"nodeType":"ParameterList","parameters":[],"src":"4337:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69589,"nodeType":"FunctionDefinition","src":"4551:526:99","nodes":[],"body":{"id":69588,"nodeType":"Block","src":"4631:446:99","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":69539,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"4653:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}],"id":69538,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4645:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69537,"name":"address","nodeType":"ElementaryTypeName","src":"4645:7:99","typeDescriptions":{}}},"id":69540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4645:20:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":69543,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4677:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69542,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4669:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69541,"name":"address","nodeType":"ElementaryTypeName","src":"4669:7:99","typeDescriptions":{}}},"id":69544,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4669:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4645:34:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69578,"nodeType":"IfStatement","src":"4641:363:99","trueBody":{"id":69577,"nodeType":"Block","src":"4681:323:99","statements":[{"assignments":[69547],"declarations":[{"constant":false,"id":69547,"mutability":"mutable","name":"allowlistRole","nameLocation":"4703:13:99","nodeType":"VariableDeclaration","scope":69577,"src":"4695:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69546,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4695:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69555,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4746:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69552,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"4759:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69549,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4729:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4733:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"4729:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4729:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69548,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"4719:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69554,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4719:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"4695:72:99"},{"condition":{"arguments":[{"id":69559,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4820:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4843:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69561,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4835:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69560,"name":"address","nodeType":"ElementaryTypeName","src":"4835:7:99","typeDescriptions":{}}},"id":69563,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4835:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69556,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4785:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4812:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4785:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4785:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":69575,"nodeType":"Block","src":"4898:96:99","statements":[{"expression":{"arguments":[{"id":69571,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69547,"src":"4958:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":69572,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"4973:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69568,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"4923:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4950:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"4923:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4923:56:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69574,"nodeType":"Return","src":"4916:63:99"}]},"id":69576,"nodeType":"IfStatement","src":"4781:213:99","trueBody":{"id":69567,"nodeType":"Block","src":"4848:44:99","statements":[{"expression":{"hexValue":"74727565","id":69565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4873:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":69536,"id":69566,"nodeType":"Return","src":"4866:11:99"}]}}]}},{"expression":{"arguments":[{"id":69581,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69531,"src":"5049:5:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":69584,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"5064:4:99","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_1_$69756","typeString":"contract CVStrategyV0_1"}],"id":69583,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5056:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69582,"name":"address","nodeType":"ElementaryTypeName","src":"5056:7:99","typeDescriptions":{}}},"id":69585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5056:13:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":69579,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65944,"src":"5020:11:99","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70106","typeString":"contract ISybilScorer"}},"id":69580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5032:16:99","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70063,"src":"5020:28:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":69586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5020:50:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":69536,"id":69587,"nodeType":"Return","src":"5013:57:99"}]},"baseFunctions":[66256],"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"4560:17:99","overrides":{"id":69533,"nodeType":"OverrideSpecifier","overrides":[],"src":"4607:8:99"},"parameters":{"id":69532,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69531,"mutability":"mutable","name":"_user","nameLocation":"4586:5:99","nodeType":"VariableDeclaration","scope":69589,"src":"4578:13:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69530,"name":"address","nodeType":"ElementaryTypeName","src":"4578:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4577:15:99"},"returnParameters":{"id":69536,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69535,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69589,"src":"4625:4:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69534,"name":"bool","nodeType":"ElementaryTypeName","src":"4625:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4624:6:99"},"scope":69756,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":69603,"nodeType":"FunctionDefinition","src":"5083:125:99","nodes":[],"body":{"id":69602,"nodeType":"Block","src":"5140:68:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69595,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5150:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69596,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5150:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69597,"nodeType":"ExpressionStatement","src":"5150:17:99"},{"expression":{"arguments":[{"id":69599,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69592,"src":"5193:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69598,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69685,"src":"5177:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69600,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5177:24:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69601,"nodeType":"ExpressionStatement","src":"5177:24:99"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"5092:14:99","parameters":{"id":69593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69592,"mutability":"mutable","name":"members","nameLocation":"5124:7:99","nodeType":"VariableDeclaration","scope":69603,"src":"5107:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69590,"name":"address","nodeType":"ElementaryTypeName","src":"5107:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69591,"nodeType":"ArrayTypeName","src":"5107:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5106:26:99"},"returnParameters":{"id":69594,"nodeType":"ParameterList","parameters":[],"src":"5140:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":69685,"nodeType":"FunctionDefinition","src":"5214:646:99","nodes":[],"body":{"id":69684,"nodeType":"Block","src":"5274:586:99","nodes":[],"statements":[{"assignments":[69610],"declarations":[{"constant":false,"id":69610,"mutability":"mutable","name":"allowlistRole","nameLocation":"5292:13:99","nodeType":"VariableDeclaration","scope":69684,"src":"5284:21:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":69609,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5284:7:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":69618,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69614,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5335:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69615,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5348:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69612,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5318:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69613,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5322:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5318:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5318:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69611,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5308:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5308:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"5284:72:99"},{"condition":{"arguments":[{"id":69622,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5406:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69625,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5429:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69624,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5421:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69623,"name":"address","nodeType":"ElementaryTypeName","src":"5421:7:99","typeDescriptions":{}}},"id":69626,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5421:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69619,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5371:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69620,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69621,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5398:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5371:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5371:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69639,"nodeType":"IfStatement","src":"5367:156:99","trueBody":{"id":69638,"nodeType":"Block","src":"5434:89:99","statements":[{"expression":{"arguments":[{"id":69631,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5486:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":69634,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5509:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":69633,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5501:7:99","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69632,"name":"address","nodeType":"ElementaryTypeName","src":"5501:7:99","typeDescriptions":{}}},"id":69635,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5501:10:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69628,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5448:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5475:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"5448:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69636,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5448:64:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69637,"nodeType":"ExpressionStatement","src":"5448:64:99"}]}},{"body":{"id":69677,"nodeType":"Block","src":"5577:223:99","statements":[{"condition":{"id":69659,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"5595:62:99","subExpression":{"arguments":[{"id":69654,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69610,"src":"5631:13:99","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69655,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5646:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69657,"indexExpression":{"id":69656,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5654:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5646:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69651,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5596:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69652,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5623:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"5596:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69658,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5596:61:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69676,"nodeType":"IfStatement","src":"5591:199:99","trueBody":{"id":69675,"nodeType":"Block","src":"5659:131:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69666,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5741:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69667,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5754:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69664,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5724:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69665,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5728:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"5724:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69668,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5724:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69663,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"5714:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5714:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69670,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5764:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69672,"indexExpression":{"id":69671,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5772:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5764:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69660,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"5677:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69661,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5704:9:99","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":52543,"src":"5677:36:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5677:98:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69674,"nodeType":"ExpressionStatement","src":"5677:98:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69644,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5552:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69645,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5556:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5564:6:99","memberName":"length","nodeType":"MemberAccess","src":"5556:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5552:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69678,"initializationExpression":{"assignments":[69641],"declarations":[{"constant":false,"id":69641,"mutability":"mutable","name":"i","nameLocation":"5545:1:99","nodeType":"VariableDeclaration","scope":69678,"src":"5537:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69640,"name":"uint256","nodeType":"ElementaryTypeName","src":"5537:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69643,"initialValue":{"hexValue":"30","id":69642,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5549:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5537:13:99"},"loopExpression":{"expression":{"id":69649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5572:3:99","subExpression":{"id":69648,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"5572:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69650,"nodeType":"ExpressionStatement","src":"5572:3:99"},"nodeType":"ForStatement","src":"5532:268:99"},{"eventCall":{"arguments":[{"id":69680,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"5837:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69681,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"5845:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69679,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69259,"src":"5815:21:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5815:38:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69683,"nodeType":"EmitStatement","src":"5810:43:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"5223:15:99","parameters":{"id":69607,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69606,"mutability":"mutable","name":"members","nameLocation":"5256:7:99","nodeType":"VariableDeclaration","scope":69685,"src":"5239:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69604,"name":"address","nodeType":"ElementaryTypeName","src":"5239:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69605,"nodeType":"ArrayTypeName","src":"5239:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5238:26:99"},"returnParameters":{"id":69608,"nodeType":"ParameterList","parameters":[],"src":"5274:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":69699,"nodeType":"FunctionDefinition","src":"5866:137:99","nodes":[],"body":{"id":69698,"nodeType":"Block","src":"5930:73:99","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69691,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66216,"src":"5940:15:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5940:17:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69693,"nodeType":"ExpressionStatement","src":"5940:17:99"},{"expression":{"arguments":[{"id":69695,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69688,"src":"5988:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69694,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"5967:20:99","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69696,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5967:29:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69697,"nodeType":"ExpressionStatement","src":"5967:29:99"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"5875:19:99","parameters":{"id":69689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69688,"mutability":"mutable","name":"members","nameLocation":"5912:7:99","nodeType":"VariableDeclaration","scope":69699,"src":"5895:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69686,"name":"address","nodeType":"ElementaryTypeName","src":"5895:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69687,"nodeType":"ArrayTypeName","src":"5895:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5894:26:99"},"returnParameters":{"id":69690,"nodeType":"ParameterList","parameters":[],"src":"5930:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69755,"nodeType":"FunctionDefinition","src":"6009:440:99","nodes":[],"body":{"id":69754,"nodeType":"Block","src":"6074:375:99","nodes":[],"statements":[{"body":{"id":69747,"nodeType":"Block","src":"6129:258:99","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6209:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69723,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6222:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69720,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6192:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69721,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6196:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6192:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6192:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69719,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6182:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6182:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69726,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6232:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69728,"indexExpression":{"id":69727,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6240:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6232:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69716,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6147:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6174:7:99","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":52456,"src":"6147:34:99","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":69729,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6147:96:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69746,"nodeType":"IfStatement","src":"6143:234:99","trueBody":{"id":69745,"nodeType":"Block","src":"6245:132:99","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":69736,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6328:11:99","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":69737,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6341:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69734,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6311:3:99","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":69735,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6315:12:99","memberName":"encodePacked","nodeType":"MemberAccess","src":"6311:16:99","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":69738,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6311:37:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":69733,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6301:9:99","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":69739,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6301:48:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":69740,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6351:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69742,"indexExpression":{"id":69741,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6359:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6351:10:99","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69730,"name":"getRegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69328,"src":"6263:24:99","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"function () view returns (contract RegistryCommunityV0_1)"}},"id":69731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:26:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"id":69732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6290:10:99","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":52563,"src":"6263:37:99","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":69743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6263:99:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69744,"nodeType":"ExpressionStatement","src":"6263:99:99"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69709,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6104:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69710,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6108:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6116:6:99","memberName":"length","nodeType":"MemberAccess","src":"6108:14:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6104:18:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69748,"initializationExpression":{"assignments":[69706],"declarations":[{"constant":false,"id":69706,"mutability":"mutable","name":"i","nameLocation":"6097:1:99","nodeType":"VariableDeclaration","scope":69748,"src":"6089:9:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69705,"name":"uint256","nodeType":"ElementaryTypeName","src":"6089:7:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69708,"initialValue":{"hexValue":"30","id":69707,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6101:1:99","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"6089:13:99"},"loopExpression":{"expression":{"id":69714,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"6124:3:99","subExpression":{"id":69713,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69706,"src":"6124:1:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69715,"nodeType":"ExpressionStatement","src":"6124:3:99"},"nodeType":"ForStatement","src":"6084:303:99"},{"eventCall":{"arguments":[{"id":69750,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64879,"src":"6426:6:99","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69751,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69702,"src":"6434:7:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":69749,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69252,"src":"6402:23:99","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":69752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6402:40:99","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69753,"nodeType":"EmitStatement","src":"6397:45:99"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"6018:20:99","parameters":{"id":69703,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69702,"mutability":"mutable","name":"members","nameLocation":"6056:7:99","nodeType":"VariableDeclaration","scope":69755,"src":"6039:24:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69700,"name":"address","nodeType":"ElementaryTypeName","src":"6039:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69701,"nodeType":"ArrayTypeName","src":"6039:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"6038:26:99"},"returnParameters":{"id":69704,"nodeType":"ParameterList","parameters":[],"src":"6074:0:99"},"scope":69756,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":69244,"name":"CVStrategyV0_0","nameLocations":["1191:14:99"],"nodeType":"IdentifierPath","referencedDeclaration":69194,"src":"1191:14:99"},"id":69245,"nodeType":"InheritanceSpecifier","src":"1191:14:99"}],"canonicalName":"CVStrategyV0_1","contractDependencies":[],"contractKind":"contract","documentation":{"id":69243,"nodeType":"StructuredDocumentation","src":"1120:44:99","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[69756,69194,57725,57931,65536,75614,65471,3089,3317,3106,2969,70199,55672,55325,54974,54984,52903,53696,53152],"name":"CVStrategyV0_1","nameLocation":"1173:14:99","scope":69757,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117,65668,65670,65672,65674,65676,65678,65680,65682,65684,65686,65688,65696,65698,65700,65706,65708,65710,65714,65718,65724,65726,65728,65736,65738,65740,65746,65748,65752,65754,65760,65762,65768,69273,70122]}],"license":"AGPL-3.0-only"},"id":99} \ No newline at end of file diff --git a/pkg/contracts/out/Registry.sol/Registry.json b/pkg/contracts/out/Registry.sol/Registry.json index 91d132d3..0d07b127 100644 --- a/pkg/contracts/out/Registry.sol/Registry.json +++ b/pkg/contracts/out/Registry.sol/Registry.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"ALLO_OWNER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"acceptProfileOwnership","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addMembers","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"anchorToProfileId","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"createProfile","inputs":[{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_name","type":"string","internalType":"string"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_owner","type":"address","internalType":"address"},{"name":"_members","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"getProfileByAnchor","inputs":[{"name":"_anchor","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IRegistry.Profile","components":[{"name":"id","type":"bytes32","internalType":"bytes32"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"name","type":"string","internalType":"string"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","internalType":"address"},{"name":"anchor","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getProfileById","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IRegistry.Profile","components":[{"name":"id","type":"bytes32","internalType":"bytes32"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"name","type":"string","internalType":"string"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","internalType":"address"},{"name":"anchor","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isMemberOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isOwnerOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isOwnerOrMemberOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"profileIdToPendingOwner","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"profilesById","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"id","type":"bytes32","internalType":"bytes32"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"name","type":"string","internalType":"string"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","internalType":"address"},{"name":"anchor","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"recoverFunds","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeMembers","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"updateProfileMetadata","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProfileName","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_name","type":"string","internalType":"string"}],"outputs":[{"name":"anchor","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"updateProfilePendingOwner","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_pendingOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"ProfileCreated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"nonce","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"name","type":"string","indexed":false,"internalType":"string"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","indexed":false,"internalType":"address"},{"name":"anchor","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProfileMetadataUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"ProfileNameUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"name","type":"string","indexed":false,"internalType":"string"},{"name":"anchor","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProfileOwnerUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"owner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProfilePendingOwnerUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"pendingOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50612b10806100206000396000f3fe60806040523480156200001157600080fd5b50600436106200015a5760003560e01c80630114cf0a146200015f57806301ffc9a7146200018e5780630ec1fbac14620001b6578063248a9ca314620001cd5780632497f3c614620001f357806324ae6a27146200020c5780632f2ff15d146200022357806336568abe146200023a57806339b86b8c14620002515780633a92f65f14620002685780633b66dacd146200027f5780634756487f14620002965780635063f36114620002b957806350d005e014620002d05780635e8a7915146200030b57806391d148541462000322578063a0cf0aea1462000339578063a217fddf1462000355578063ac402839146200035e578063c4d66de81462000375578063cf189ff2146200038c578063cfda7e0a14620003a3578063d547741f14620003ba578063dd93da4314620003d1578063e0cf1e4c14620003e8578063ee88819614620003ff575b600080fd5b620001766200017036600462001948565b6200042a565b604051620001859190620019df565b60405180910390f35b620001a56200019f36600462001a61565b620005e1565b604051901515815260200162000185565b620001a5620001c736600462001aaa565b62000619565b620001e4620001de36600462001948565b6200062e565b60405190815260200162000185565b6200020a6200020436600462001948565b62000643565b005b6200020a6200021d36600462001ad9565b62000702565b6200020a6200023436600462001aaa565b620007fb565b6200020a6200024b36600462001aaa565b62000822565b620001a56200026236600462001aaa565b620008a8565b620001e46200027936600462001ccd565b620008b6565b6200020a6200029036600462001aaa565b62000b41565b620001e4620002a736600462001d7b565b60976020526000908152604090205481565b6200020a620002ca36600462001d99565b62000ba8565b620002fc620002e136600462001948565b6099602052600090815260409020546001600160a01b031681565b60405162000185919062001de3565b620001a56200031c36600462001aaa565b62000c34565b620001a56200033336600462001aaa565b62000c55565b620002fc73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b620001e4600081565b6200020a6200036f36600462001df7565b62000c80565b6200020a6200038636600462001d7b565b62000cf3565b620002fc6200039d36600462001e37565b62000e17565b620001e460008051602062002abb83398151915281565b6200020a620003cb36600462001aaa565b62000ed8565b62000176620003e236600462001d7b565b62000efa565b6200020a620003f936600462001d99565b620010c3565b620004166200041036600462001948565b6200110e565b604051620001859695949392919062001e77565b62000434620018e5565b609860008381526020019081526020016000206040518060c00160405290816000820154815260200160018201548152602001600282018054620004789062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620004a69062001ed3565b8015620004f75780601f10620004cb57610100808354040283529160200191620004f7565b820191906000526020600020905b815481529060010190602001808311620004d957829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200052c9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200055a9062001ed3565b8015620005ab5780601f106200057f57610100808354040283529160200191620005ab565b820191906000526020600020905b8154815290600101906020018083116200058d57829003601f168201915b50505091909252505050815260058201546001600160a01b03908116602083015260069092015490911660409091015292915050565b60006001600160e01b03198216637965db0b60e01b14806200061357506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006200062783836200128e565b9392505050565b60009081526065602052604090206001015490565b60008181526098602090815260408083206099909252909120546001600160a01b03163381146200068757604051630b4d48c160e41b815260040160405180910390fd5b6005820180546001600160a01b038084166001600160a01b03199283161783556000868152609960205260409081902080549093169092559154905185927ffd9ad63830df7bdf1586c8293dc88a30864cb43e9037e7afdb2c7210facf217d92620006f59291169062001de3565b60405180910390a2505050565b60008051602062002abb8339815191526200071d816200129c565b6001600160a01b038216620007455760405163538ba4f960e01b815260040160405180910390fd5b60006001600160a01b03841673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14620007e4576040516370a0823160e01b81526001600160a01b038516906370a08231906200079a90309060040162001de3565b602060405180830381865afa158015620007b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007de919062001f0f565b620007e6565b475b9050620007f5848483620012ab565b50505050565b62000806826200062e565b62000811816200129c565b6200081d8383620012ea565b505050565b6001600160a01b0381163314620008985760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b620008a4828262001374565b5050565b6000620006278383620013de565b600080620008c5878562001402565b6000818152609860205260409020600601549091506001600160a01b0316156200090257604051630527e05960e41b815260040160405180910390fd5b6001600160a01b0384166200092a5760405163538ba4f960e01b815260040160405180910390fd5b60006040518060c00160405280838152602001898152602001888152602001878152602001866001600160a01b031681526020016200096a848a6200144c565b6001600160a01b03169052600083815260986020908152604091829020835181559083015160018201559082015191925082916002820190620009ae908262001f7b565b50606082015180516003830190815560208201516004840190620009d3908262001f7b565b50505060808201516005820180546001600160a01b03199081166001600160a01b039384161790915560a0938401516006909301805490911692821692909217909155908201511660009081526097602052604090208290558351801580159062000a4757506001600160a01b0386163314155b1562000a665760405163075fd2b160e01b815260040160405180910390fd5b60005b8181101562000add57600086828151811062000a895762000a8962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000ac75760405163538ba4f960e01b815260040160405180910390fd5b62000ad38582620012ea565b5060010162000a69565b50827f1e28352ff00d67474b59b87e6817d6ba65daa0130446266db8640214d8b8060983602001518460400151856060015186608001518760a0015160405162000b2c9594939291906200205d565b60405180910390a25090979650505050505050565b8162000b4d8162001627565b6000838152609960205260409081902080546001600160a01b0319166001600160a01b0385161790555183907f21fe5cd61055ef88f636a264885b927f3ec2b380b6053a6b4a7495a6336a95c890620006f590859062001de3565b8162000bb48162001627565b815160005b8181101562000c2d57600084828151811062000bd95762000bd962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000c175760405163538ba4f960e01b815260040160405180910390fd5b62000c238682620012ea565b5060010162000bb9565b5050505050565b600062000c428383620013de565b806200062757506200062783836200128e565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b8162000c8c8162001627565b6000838152609860209081526040909120835160038201908155918401518492916004019062000cbd908262001f7b565b50905050827fa366054a574e4f861cb295fd23b5440c5119c1ba329c36f5dfeb5643537cb0f383604051620006f59190620020b2565b600054600190610100900460ff1615801562000d16575060005460ff8083169116105b62000d7b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016200088f565b6000805461ffff191660ff8316176101001790556001600160a01b03821662000db75760405163538ba4f960e01b815260040160405180910390fd5b62000dd260008051602062002abb83398151915283620012ea565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60008262000e258162001627565b62000e3184846200144c565b60008581526098602052604090209092506002810162000e52858262001f7b565b506006810180546001600160a01b0390811660009081526097602052604080822082905583546001600160a01b0319169287169283179093559081528190208690555185907f54cd733148631b9ff1cb945f2d0dcd33c0692e154763bfa2f35e2d10a76c432f9062000ec89087908790620020c7565b60405180910390a2505092915050565b62000ee3826200062e565b62000eee816200129c565b6200081d838362001374565b62000f04620018e5565b6001600160a01b0382166000908152609760209081526040808320548084526098835292819020815160c08101835281548152600182015493810193909352600281018054919284019162000f599062001ed3565b80601f016020809104026020016040519081016040528092919081815260200182805462000f879062001ed3565b801562000fd85780601f1062000fac5761010080835404028352916020019162000fd8565b820191906000526020600020905b81548152906001019060200180831162000fba57829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200100d9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200103b9062001ed3565b80156200108c5780601f1062001060576101008083540402835291602001916200108c565b820191906000526020600020905b8154815290600101906020018083116200106e57829003601f168201915b50505091909252505050815260058201546001600160a01b0390811660208301526006909201549091166040909101529392505050565b81620010cf8162001627565b815160005b8181101562000c2d576200110585858381518110620010f757620010f762002047565b602002602001015162001374565b600101620010d4565b60986020526000908152604090208054600182015460028301805492939192620011389062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620011669062001ed3565b8015620011b75780601f106200118b57610100808354040283529160200191620011b7565b820191906000526020600020905b8154815290600101906020018083116200119957829003601f168201915b5050505050908060030160405180604001604052908160008201548152602001600182018054620011e89062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620012169062001ed3565b8015620012675780601f106200123b5761010080835404028352916020019162001267565b820191906000526020600020905b8154815290600101906020018083116200124957829003601f168201915b50505091909252505050600582015460069092015490916001600160a01b03908116911686565b600062000627838362000c55565b620012a8813362001651565b50565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601620012dd576200081d8282620016b5565b6200081d838383620016d2565b620012f6828262000c55565b620008a45760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620013303390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b62001380828262000c55565b15620008a45760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600091825260986020526040909120600501546001600160a01b0391821691161490565b600082826040516020016200142e92919091825260601b6001600160601b031916602082015260340190565b60405160208183030381529060405280519060200120905092915050565b600080838360405160200162001464929190620020f3565b6040516020818303038152906040529050600084306040516020016200148c9291906200210e565b6040516020818303038152906040529050600060405180602001620014b1906200193a565b601f1982820381018352601f909101166040819052620014d79190849060200162002125565b60408051601f198184030181529082905284516020868101919091208251828401206001600160f81b0319928501929092526001600160601b03193060601b166021850152603584018190526055840191909152909250906000906075016040516020818303038152906040528051906020012060001c905081883060405162001561906200193a565b6200156e9291906200210e565b8190604051809103906000f590508015620015865760015b620016195787816001600160a01b03166308386eba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620015cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015f1919062001f0f565b146200161057604051630113b81f60e41b815260040160405180910390fd5b8095506200161c565b95505b505050505092915050565b620016338133620013de565b620012a85760405163075fd2b160e01b815260040160405180910390fd5b6200165d828262000c55565b620008a4576200166d8162001719565b6200167a8360206200172c565b6040516020016200168d92919062002158565b60408051601f198184030181529082905262461bcd60e51b82526200088f91600401620021cb565b60008060008084865af1620008a45763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d1560016000511417166200170f576390b8ec186000526004601cfd5b6000603452505050565b6060620006136001600160a01b03831660145b606060006200173d836002620021f6565b6200174a90600262002210565b6001600160401b0381111562001764576200176462001b08565b6040519080825280601f01601f1916602001820160405280156200178f576020820181803683370190505b509050600360fc1b81600081518110620017ad57620017ad62002047565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620017df57620017df62002047565b60200101906001600160f81b031916908160001a905350600062001805846002620021f6565b6200181290600162002210565b90505b600181111562001894576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200184a576200184a62002047565b1a60f81b82828151811062001863576200186362002047565b60200101906001600160f81b031916908160001a90535060049490941c936200188c8162002226565b905062001815565b508315620006275760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200088f565b6040518060c0016040528060008019168152602001600081526020016060815260200162001926604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b61087a806200224183390190565b6000602082840312156200195b57600080fd5b5035919050565b60005b838110156200197f57818101518382015260200162001965565b50506000910152565b60008151808452620019a281602086016020860162001962565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152620019d7604085018262001988565b949350505050565b6020815281516020820152602082015160408201526000604083015160c0606084015262001a1160e084018262001988565b90506060840151601f1984830301608085015262001a308282620019b6565b60808601516001600160a01b0390811660a0878101919091529096015190951660c090940193909352509192915050565b60006020828403121562001a7457600080fd5b81356001600160e01b0319811681146200062757600080fd5b80356001600160a01b038116811462001aa557600080fd5b919050565b6000806040838503121562001abe57600080fd5b8235915062001ad06020840162001a8d565b90509250929050565b6000806040838503121562001aed57600080fd5b62001af88362001a8d565b915062001ad06020840162001a8d565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562001b495762001b4962001b08565b604052919050565b600082601f83011262001b6357600080fd5b81356001600160401b0381111562001b7f5762001b7f62001b08565b62001b94601f8201601f191660200162001b1e565b81815284602083860101111562001baa57600080fd5b816020850160208301376000918101602001919091529392505050565b60006040828403121562001bda57600080fd5b604080519081016001600160401b03808211838310171562001c005762001c0062001b08565b8160405282935084358352602085013591508082111562001c2057600080fd5b5062001c2f8582860162001b51565b6020830152505092915050565b600082601f83011262001c4e57600080fd5b813560206001600160401b0382111562001c6c5762001c6c62001b08565b8160051b62001c7d82820162001b1e565b928352848101820192828101908785111562001c9857600080fd5b83870192505b8483101562001cc25762001cb28362001a8d565b8252918301919083019062001c9e565b979650505050505050565b600080600080600060a0868803121562001ce657600080fd5b8535945060208601356001600160401b038082111562001d0557600080fd5b62001d1389838a0162001b51565b9550604088013591508082111562001d2a57600080fd5b62001d3889838a0162001bc7565b945062001d486060890162001a8d565b9350608088013591508082111562001d5f57600080fd5b5062001d6e8882890162001c3c565b9150509295509295909350565b60006020828403121562001d8e57600080fd5b620006278262001a8d565b6000806040838503121562001dad57600080fd5b8235915060208301356001600160401b0381111562001dcb57600080fd5b62001dd98582860162001c3c565b9150509250929050565b6001600160a01b0391909116815260200190565b6000806040838503121562001e0b57600080fd5b8235915060208301356001600160401b0381111562001e2957600080fd5b62001dd98582860162001bc7565b6000806040838503121562001e4b57600080fd5b8235915060208301356001600160401b0381111562001e6957600080fd5b62001dd98582860162001b51565b86815285602082015260c06040820152600062001e9860c083018762001988565b828103606084015262001eac8187620019b6565b6001600160a01b0395861660808501529390941660a0909201919091525095945050505050565b600181811c9082168062001ee857607f821691505b60208210810362001f0957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121562001f2257600080fd5b5051919050565b601f8211156200081d57600081815260208120601f850160051c8101602086101562001f525750805b601f850160051c820191505b8181101562001f735782815560010162001f5e565b505050505050565b81516001600160401b0381111562001f975762001f9762001b08565b62001faf8162001fa8845462001ed3565b8462001f29565b602080601f83116001811462001fe7576000841562001fce5750858301515b600019600386901b1c1916600185901b17855562001f73565b600085815260208120601f198616915b82811015620020185788860151825594840194600190910190840162001ff7565b5085821015620020375787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b85815260a0602082015260006200207860a083018762001988565b82810360408401526200208c8187620019b6565b6001600160a01b0395861660608501529390941660809092019190915250949350505050565b602081526000620006276020830184620019b6565b604081526000620020dc604083018562001988565b905060018060a01b03831660208301529392505050565b828152604060208201526000620019d7604083018462001988565b9182526001600160a01b0316602082015260400190565b600083516200213981846020880162001962565b8351908301906200214f81836020880162001962565b01949350505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200218c81601785016020880162001962565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351620021bf81602884016020880162001962565b01602801949350505050565b60208152600062000627602083018462001988565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417620006135762000613620021e0565b80820180821115620006135762000613620021e0565b600081620022385762002238620021e0565b50600019019056fe60c060405234801561001057600080fd5b5060405161087a38038061087a83398101604081905261002f91610043565b6001600160a01b031660805260a052610080565b6000806040838503121561005657600080fd5b825160208401519092506001600160a01b038116811461007557600080fd5b809150509250929050565b60805160a0516107c86100b26000396000818160b7015261024201526000818161013d015261027101526107c86000f3fe6080604052600436106100645760003560e01c806301ffc9a71461007057806308386eba146100a5578063150b7a02146100e75780637b1039991461012b578063b61d27f614610177578063bc197c81146101a4578063f23a6e61146101d057600080fd5b3661006b57005b600080fd5b34801561007c57600080fd5b5061009061008b3660046103b2565b6101fc565b60405190151581526020015b60405180910390f35b3480156100b157600080fd5b506100d97f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161009c565b3480156100f357600080fd5b506101126101023660046104b4565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200161009c565b34801561013757600080fd5b5061015f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161009c565b34801561018357600080fd5b5061019761019236600461051b565b610233565b60405161009c9190610595565b3480156101b057600080fd5b506101126101bf366004610647565b63bc197c8160e01b95945050505050565b3480156101dc57600080fd5b506101126101eb3660046106f0565b63f23a6e6160e01b95945050505050565b60006001600160e01b03198216630271189760e51b148061022d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b604051630e6e1ae360e21b81527f000000000000000000000000000000000000000000000000000000000000000060048201523360248201526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906339b86b8c90604401602060405180830381865afa1580156102c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e49190610754565b6103015760405163075fd2b160e01b815260040160405180910390fd5b6001600160a01b038416610328576040516384aed38d60e01b815260040160405180910390fd5b600080856001600160a01b031685856040516103449190610776565b60006040518083038185875af1925050503d8060008114610381576040519150601f19603f3d011682016040523d82523d6000602084013e610386565b606091505b5091509150816103a9576040516384aed38d60e01b815260040160405180910390fd5b95945050505050565b6000602082840312156103c457600080fd5b81356001600160e01b0319811681146103dc57600080fd5b9392505050565b80356001600160a01b03811681146103fa57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561043d5761043d6103ff565b604052919050565b600082601f83011261045657600080fd5b81356001600160401b0381111561046f5761046f6103ff565b610482601f8201601f1916602001610415565b81815284602083860101111561049757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080608085870312156104ca57600080fd5b6104d3856103e3565b93506104e1602086016103e3565b92506040850135915060608501356001600160401b0381111561050357600080fd5b61050f87828801610445565b91505092959194509250565b60008060006060848603121561053057600080fd5b610539846103e3565b92506020840135915060408401356001600160401b0381111561055b57600080fd5b61056786828701610445565b9150509250925092565b60005b8381101561058c578181015183820152602001610574565b50506000910152565b60208152600082518060208401526105b4816040850160208701610571565b601f01601f19169190910160400192915050565b600082601f8301126105d957600080fd5b813560206001600160401b038211156105f4576105f46103ff565b8160051b610603828201610415565b928352848101820192828101908785111561061d57600080fd5b83870192505b8483101561063c57823582529183019190830190610623565b979650505050505050565b600080600080600060a0868803121561065f57600080fd5b610668866103e3565b9450610676602087016103e3565b935060408601356001600160401b038082111561069257600080fd5b61069e89838a016105c8565b945060608801359150808211156106b457600080fd5b6106c089838a016105c8565b935060808801359150808211156106d657600080fd5b506106e388828901610445565b9150509295509295909350565b600080600080600060a0868803121561070857600080fd5b610711866103e3565b945061071f602087016103e3565b9350604086013592506060860135915060808601356001600160401b0381111561074857600080fd5b6106e388828901610445565b60006020828403121561076657600080fd5b815180151581146103dc57600080fd5b60008251610788818460208701610571565b919091019291505056fea26469706673582212205e3806c2a117c2146e4e851a010892cfbb5ee87635e44cb0a7b5064807c3df1a64736f6c63430008130033815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747a2646970667358221220ae5632e73648f59943334474be759cf88ca6f5bf7fe902a67aa011f1732105f864736f6c63430008130033","sourceMap":"5237:15930:2:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040523480156200001157600080fd5b50600436106200015a5760003560e01c80630114cf0a146200015f57806301ffc9a7146200018e5780630ec1fbac14620001b6578063248a9ca314620001cd5780632497f3c614620001f357806324ae6a27146200020c5780632f2ff15d146200022357806336568abe146200023a57806339b86b8c14620002515780633a92f65f14620002685780633b66dacd146200027f5780634756487f14620002965780635063f36114620002b957806350d005e014620002d05780635e8a7915146200030b57806391d148541462000322578063a0cf0aea1462000339578063a217fddf1462000355578063ac402839146200035e578063c4d66de81462000375578063cf189ff2146200038c578063cfda7e0a14620003a3578063d547741f14620003ba578063dd93da4314620003d1578063e0cf1e4c14620003e8578063ee88819614620003ff575b600080fd5b620001766200017036600462001948565b6200042a565b604051620001859190620019df565b60405180910390f35b620001a56200019f36600462001a61565b620005e1565b604051901515815260200162000185565b620001a5620001c736600462001aaa565b62000619565b620001e4620001de36600462001948565b6200062e565b60405190815260200162000185565b6200020a6200020436600462001948565b62000643565b005b6200020a6200021d36600462001ad9565b62000702565b6200020a6200023436600462001aaa565b620007fb565b6200020a6200024b36600462001aaa565b62000822565b620001a56200026236600462001aaa565b620008a8565b620001e46200027936600462001ccd565b620008b6565b6200020a6200029036600462001aaa565b62000b41565b620001e4620002a736600462001d7b565b60976020526000908152604090205481565b6200020a620002ca36600462001d99565b62000ba8565b620002fc620002e136600462001948565b6099602052600090815260409020546001600160a01b031681565b60405162000185919062001de3565b620001a56200031c36600462001aaa565b62000c34565b620001a56200033336600462001aaa565b62000c55565b620002fc73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b620001e4600081565b6200020a6200036f36600462001df7565b62000c80565b6200020a6200038636600462001d7b565b62000cf3565b620002fc6200039d36600462001e37565b62000e17565b620001e460008051602062002abb83398151915281565b6200020a620003cb36600462001aaa565b62000ed8565b62000176620003e236600462001d7b565b62000efa565b6200020a620003f936600462001d99565b620010c3565b620004166200041036600462001948565b6200110e565b604051620001859695949392919062001e77565b62000434620018e5565b609860008381526020019081526020016000206040518060c00160405290816000820154815260200160018201548152602001600282018054620004789062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620004a69062001ed3565b8015620004f75780601f10620004cb57610100808354040283529160200191620004f7565b820191906000526020600020905b815481529060010190602001808311620004d957829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200052c9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200055a9062001ed3565b8015620005ab5780601f106200057f57610100808354040283529160200191620005ab565b820191906000526020600020905b8154815290600101906020018083116200058d57829003601f168201915b50505091909252505050815260058201546001600160a01b03908116602083015260069092015490911660409091015292915050565b60006001600160e01b03198216637965db0b60e01b14806200061357506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006200062783836200128e565b9392505050565b60009081526065602052604090206001015490565b60008181526098602090815260408083206099909252909120546001600160a01b03163381146200068757604051630b4d48c160e41b815260040160405180910390fd5b6005820180546001600160a01b038084166001600160a01b03199283161783556000868152609960205260409081902080549093169092559154905185927ffd9ad63830df7bdf1586c8293dc88a30864cb43e9037e7afdb2c7210facf217d92620006f59291169062001de3565b60405180910390a2505050565b60008051602062002abb8339815191526200071d816200129c565b6001600160a01b038216620007455760405163538ba4f960e01b815260040160405180910390fd5b60006001600160a01b03841673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14620007e4576040516370a0823160e01b81526001600160a01b038516906370a08231906200079a90309060040162001de3565b602060405180830381865afa158015620007b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007de919062001f0f565b620007e6565b475b9050620007f5848483620012ab565b50505050565b62000806826200062e565b62000811816200129c565b6200081d8383620012ea565b505050565b6001600160a01b0381163314620008985760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b620008a4828262001374565b5050565b6000620006278383620013de565b600080620008c5878562001402565b6000818152609860205260409020600601549091506001600160a01b0316156200090257604051630527e05960e41b815260040160405180910390fd5b6001600160a01b0384166200092a5760405163538ba4f960e01b815260040160405180910390fd5b60006040518060c00160405280838152602001898152602001888152602001878152602001866001600160a01b031681526020016200096a848a6200144c565b6001600160a01b03169052600083815260986020908152604091829020835181559083015160018201559082015191925082916002820190620009ae908262001f7b565b50606082015180516003830190815560208201516004840190620009d3908262001f7b565b50505060808201516005820180546001600160a01b03199081166001600160a01b039384161790915560a0938401516006909301805490911692821692909217909155908201511660009081526097602052604090208290558351801580159062000a4757506001600160a01b0386163314155b1562000a665760405163075fd2b160e01b815260040160405180910390fd5b60005b8181101562000add57600086828151811062000a895762000a8962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000ac75760405163538ba4f960e01b815260040160405180910390fd5b62000ad38582620012ea565b5060010162000a69565b50827f1e28352ff00d67474b59b87e6817d6ba65daa0130446266db8640214d8b8060983602001518460400151856060015186608001518760a0015160405162000b2c9594939291906200205d565b60405180910390a25090979650505050505050565b8162000b4d8162001627565b6000838152609960205260409081902080546001600160a01b0319166001600160a01b0385161790555183907f21fe5cd61055ef88f636a264885b927f3ec2b380b6053a6b4a7495a6336a95c890620006f590859062001de3565b8162000bb48162001627565b815160005b8181101562000c2d57600084828151811062000bd95762000bd962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000c175760405163538ba4f960e01b815260040160405180910390fd5b62000c238682620012ea565b5060010162000bb9565b5050505050565b600062000c428383620013de565b806200062757506200062783836200128e565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b8162000c8c8162001627565b6000838152609860209081526040909120835160038201908155918401518492916004019062000cbd908262001f7b565b50905050827fa366054a574e4f861cb295fd23b5440c5119c1ba329c36f5dfeb5643537cb0f383604051620006f59190620020b2565b600054600190610100900460ff1615801562000d16575060005460ff8083169116105b62000d7b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016200088f565b6000805461ffff191660ff8316176101001790556001600160a01b03821662000db75760405163538ba4f960e01b815260040160405180910390fd5b62000dd260008051602062002abb83398151915283620012ea565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60008262000e258162001627565b62000e3184846200144c565b60008581526098602052604090209092506002810162000e52858262001f7b565b506006810180546001600160a01b0390811660009081526097602052604080822082905583546001600160a01b0319169287169283179093559081528190208690555185907f54cd733148631b9ff1cb945f2d0dcd33c0692e154763bfa2f35e2d10a76c432f9062000ec89087908790620020c7565b60405180910390a2505092915050565b62000ee3826200062e565b62000eee816200129c565b6200081d838362001374565b62000f04620018e5565b6001600160a01b0382166000908152609760209081526040808320548084526098835292819020815160c08101835281548152600182015493810193909352600281018054919284019162000f599062001ed3565b80601f016020809104026020016040519081016040528092919081815260200182805462000f879062001ed3565b801562000fd85780601f1062000fac5761010080835404028352916020019162000fd8565b820191906000526020600020905b81548152906001019060200180831162000fba57829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200100d9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200103b9062001ed3565b80156200108c5780601f1062001060576101008083540402835291602001916200108c565b820191906000526020600020905b8154815290600101906020018083116200106e57829003601f168201915b50505091909252505050815260058201546001600160a01b0390811660208301526006909201549091166040909101529392505050565b81620010cf8162001627565b815160005b8181101562000c2d576200110585858381518110620010f757620010f762002047565b602002602001015162001374565b600101620010d4565b60986020526000908152604090208054600182015460028301805492939192620011389062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620011669062001ed3565b8015620011b75780601f106200118b57610100808354040283529160200191620011b7565b820191906000526020600020905b8154815290600101906020018083116200119957829003601f168201915b5050505050908060030160405180604001604052908160008201548152602001600182018054620011e89062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620012169062001ed3565b8015620012675780601f106200123b5761010080835404028352916020019162001267565b820191906000526020600020905b8154815290600101906020018083116200124957829003601f168201915b50505091909252505050600582015460069092015490916001600160a01b03908116911686565b600062000627838362000c55565b620012a8813362001651565b50565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601620012dd576200081d8282620016b5565b6200081d838383620016d2565b620012f6828262000c55565b620008a45760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620013303390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b62001380828262000c55565b15620008a45760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600091825260986020526040909120600501546001600160a01b0391821691161490565b600082826040516020016200142e92919091825260601b6001600160601b031916602082015260340190565b60405160208183030381529060405280519060200120905092915050565b600080838360405160200162001464929190620020f3565b6040516020818303038152906040529050600084306040516020016200148c9291906200210e565b6040516020818303038152906040529050600060405180602001620014b1906200193a565b601f1982820381018352601f909101166040819052620014d79190849060200162002125565b60408051601f198184030181529082905284516020868101919091208251828401206001600160f81b0319928501929092526001600160601b03193060601b166021850152603584018190526055840191909152909250906000906075016040516020818303038152906040528051906020012060001c905081883060405162001561906200193a565b6200156e9291906200210e565b8190604051809103906000f590508015620015865760015b620016195787816001600160a01b03166308386eba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620015cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015f1919062001f0f565b146200161057604051630113b81f60e41b815260040160405180910390fd5b8095506200161c565b95505b505050505092915050565b620016338133620013de565b620012a85760405163075fd2b160e01b815260040160405180910390fd5b6200165d828262000c55565b620008a4576200166d8162001719565b6200167a8360206200172c565b6040516020016200168d92919062002158565b60408051601f198184030181529082905262461bcd60e51b82526200088f91600401620021cb565b60008060008084865af1620008a45763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d1560016000511417166200170f576390b8ec186000526004601cfd5b6000603452505050565b6060620006136001600160a01b03831660145b606060006200173d836002620021f6565b6200174a90600262002210565b6001600160401b0381111562001764576200176462001b08565b6040519080825280601f01601f1916602001820160405280156200178f576020820181803683370190505b509050600360fc1b81600081518110620017ad57620017ad62002047565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620017df57620017df62002047565b60200101906001600160f81b031916908160001a905350600062001805846002620021f6565b6200181290600162002210565b90505b600181111562001894576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200184a576200184a62002047565b1a60f81b82828151811062001863576200186362002047565b60200101906001600160f81b031916908160001a90535060049490941c936200188c8162002226565b905062001815565b508315620006275760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200088f565b6040518060c0016040528060008019168152602001600081526020016060815260200162001926604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b61087a806200224183390190565b6000602082840312156200195b57600080fd5b5035919050565b60005b838110156200197f57818101518382015260200162001965565b50506000910152565b60008151808452620019a281602086016020860162001962565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152620019d7604085018262001988565b949350505050565b6020815281516020820152602082015160408201526000604083015160c0606084015262001a1160e084018262001988565b90506060840151601f1984830301608085015262001a308282620019b6565b60808601516001600160a01b0390811660a0878101919091529096015190951660c090940193909352509192915050565b60006020828403121562001a7457600080fd5b81356001600160e01b0319811681146200062757600080fd5b80356001600160a01b038116811462001aa557600080fd5b919050565b6000806040838503121562001abe57600080fd5b8235915062001ad06020840162001a8d565b90509250929050565b6000806040838503121562001aed57600080fd5b62001af88362001a8d565b915062001ad06020840162001a8d565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562001b495762001b4962001b08565b604052919050565b600082601f83011262001b6357600080fd5b81356001600160401b0381111562001b7f5762001b7f62001b08565b62001b94601f8201601f191660200162001b1e565b81815284602083860101111562001baa57600080fd5b816020850160208301376000918101602001919091529392505050565b60006040828403121562001bda57600080fd5b604080519081016001600160401b03808211838310171562001c005762001c0062001b08565b8160405282935084358352602085013591508082111562001c2057600080fd5b5062001c2f8582860162001b51565b6020830152505092915050565b600082601f83011262001c4e57600080fd5b813560206001600160401b0382111562001c6c5762001c6c62001b08565b8160051b62001c7d82820162001b1e565b928352848101820192828101908785111562001c9857600080fd5b83870192505b8483101562001cc25762001cb28362001a8d565b8252918301919083019062001c9e565b979650505050505050565b600080600080600060a0868803121562001ce657600080fd5b8535945060208601356001600160401b038082111562001d0557600080fd5b62001d1389838a0162001b51565b9550604088013591508082111562001d2a57600080fd5b62001d3889838a0162001bc7565b945062001d486060890162001a8d565b9350608088013591508082111562001d5f57600080fd5b5062001d6e8882890162001c3c565b9150509295509295909350565b60006020828403121562001d8e57600080fd5b620006278262001a8d565b6000806040838503121562001dad57600080fd5b8235915060208301356001600160401b0381111562001dcb57600080fd5b62001dd98582860162001c3c565b9150509250929050565b6001600160a01b0391909116815260200190565b6000806040838503121562001e0b57600080fd5b8235915060208301356001600160401b0381111562001e2957600080fd5b62001dd98582860162001bc7565b6000806040838503121562001e4b57600080fd5b8235915060208301356001600160401b0381111562001e6957600080fd5b62001dd98582860162001b51565b86815285602082015260c06040820152600062001e9860c083018762001988565b828103606084015262001eac8187620019b6565b6001600160a01b0395861660808501529390941660a0909201919091525095945050505050565b600181811c9082168062001ee857607f821691505b60208210810362001f0957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121562001f2257600080fd5b5051919050565b601f8211156200081d57600081815260208120601f850160051c8101602086101562001f525750805b601f850160051c820191505b8181101562001f735782815560010162001f5e565b505050505050565b81516001600160401b0381111562001f975762001f9762001b08565b62001faf8162001fa8845462001ed3565b8462001f29565b602080601f83116001811462001fe7576000841562001fce5750858301515b600019600386901b1c1916600185901b17855562001f73565b600085815260208120601f198616915b82811015620020185788860151825594840194600190910190840162001ff7565b5085821015620020375787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b85815260a0602082015260006200207860a083018762001988565b82810360408401526200208c8187620019b6565b6001600160a01b0395861660608501529390941660809092019190915250949350505050565b602081526000620006276020830184620019b6565b604081526000620020dc604083018562001988565b905060018060a01b03831660208301529392505050565b828152604060208201526000620019d7604083018462001988565b9182526001600160a01b0316602082015260400190565b600083516200213981846020880162001962565b8351908301906200214f81836020880162001962565b01949350505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200218c81601785016020880162001962565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351620021bf81602884016020880162001962565b01602801949350505050565b60208152600062000627602083018462001988565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417620006135762000613620021e0565b80820180821115620006135762000613620021e0565b600081620022385762002238620021e0565b50600019019056fe60c060405234801561001057600080fd5b5060405161087a38038061087a83398101604081905261002f91610043565b6001600160a01b031660805260a052610080565b6000806040838503121561005657600080fd5b825160208401519092506001600160a01b038116811461007557600080fd5b809150509250929050565b60805160a0516107c86100b26000396000818160b7015261024201526000818161013d015261027101526107c86000f3fe6080604052600436106100645760003560e01c806301ffc9a71461007057806308386eba146100a5578063150b7a02146100e75780637b1039991461012b578063b61d27f614610177578063bc197c81146101a4578063f23a6e61146101d057600080fd5b3661006b57005b600080fd5b34801561007c57600080fd5b5061009061008b3660046103b2565b6101fc565b60405190151581526020015b60405180910390f35b3480156100b157600080fd5b506100d97f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161009c565b3480156100f357600080fd5b506101126101023660046104b4565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200161009c565b34801561013757600080fd5b5061015f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161009c565b34801561018357600080fd5b5061019761019236600461051b565b610233565b60405161009c9190610595565b3480156101b057600080fd5b506101126101bf366004610647565b63bc197c8160e01b95945050505050565b3480156101dc57600080fd5b506101126101eb3660046106f0565b63f23a6e6160e01b95945050505050565b60006001600160e01b03198216630271189760e51b148061022d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b604051630e6e1ae360e21b81527f000000000000000000000000000000000000000000000000000000000000000060048201523360248201526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906339b86b8c90604401602060405180830381865afa1580156102c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e49190610754565b6103015760405163075fd2b160e01b815260040160405180910390fd5b6001600160a01b038416610328576040516384aed38d60e01b815260040160405180910390fd5b600080856001600160a01b031685856040516103449190610776565b60006040518083038185875af1925050503d8060008114610381576040519150601f19603f3d011682016040523d82523d6000602084013e610386565b606091505b5091509150816103a9576040516384aed38d60e01b815260040160405180910390fd5b95945050505050565b6000602082840312156103c457600080fd5b81356001600160e01b0319811681146103dc57600080fd5b9392505050565b80356001600160a01b03811681146103fa57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561043d5761043d6103ff565b604052919050565b600082601f83011261045657600080fd5b81356001600160401b0381111561046f5761046f6103ff565b610482601f8201601f1916602001610415565b81815284602083860101111561049757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080608085870312156104ca57600080fd5b6104d3856103e3565b93506104e1602086016103e3565b92506040850135915060608501356001600160401b0381111561050357600080fd5b61050f87828801610445565b91505092959194509250565b60008060006060848603121561053057600080fd5b610539846103e3565b92506020840135915060408401356001600160401b0381111561055b57600080fd5b61056786828701610445565b9150509250925092565b60005b8381101561058c578181015183820152602001610574565b50506000910152565b60208152600082518060208401526105b4816040850160208701610571565b601f01601f19169190910160400192915050565b600082601f8301126105d957600080fd5b813560206001600160401b038211156105f4576105f46103ff565b8160051b610603828201610415565b928352848101820192828101908785111561061d57600080fd5b83870192505b8483101561063c57823582529183019190830190610623565b979650505050505050565b600080600080600060a0868803121561065f57600080fd5b610668866103e3565b9450610676602087016103e3565b935060408601356001600160401b038082111561069257600080fd5b61069e89838a016105c8565b945060608801359150808211156106b457600080fd5b6106c089838a016105c8565b935060808801359150808211156106d657600080fd5b506106e388828901610445565b9150509295509295909350565b600080600080600060a0868803121561070857600080fd5b610711866103e3565b945061071f602087016103e3565b9350604086013592506060860135915060808601356001600160401b0381111561074857600080fd5b6106e388828901610445565b60006020828403121561076657600080fd5b815180151581146103dc57600080fd5b60008251610788818460208701610571565b919091019291505056fea26469706673582212205e3806c2a117c2146e4e851a010892cfbb5ee87635e44cb0a7b5064807c3df1a64736f6c63430008130033815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747a2646970667358221220ae5632e73648f59943334474be759cf88ca6f5bf7fe902a67aa011f1732105f864736f6c63430008130033","sourceMap":"5237:15930:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7472:131;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3050:213:43;;;;;;:::i;:::-;;:::i;:::-;;;2359:14:142;;2352:22;2334:41;;2322:2;2307:18;3050:213:43;2194:187:142;13857:156:2;;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;:::i;:::-;;:::i;:::-;;;2969:25:142;;;2957:2;2942:18;4855:129:43;2823:177:142;15016:745:2;;;;;;:::i;:::-;;:::i;:::-;;20847:318;;;;;;:::i;:::-;;:::i;5280:145:43:-;;;;;;:::i;:::-;;:::i;6389:214::-;;;;;;:::i;:::-;;:::i;13452:152:2:-;;;;;;:::i;:::-;;:::i;8781:1901::-;;;;;;:::i;:::-;;:::i;14336:382::-;;;;;;:::i;:::-;;:::i;5544:52::-;;;;;;:::i;:::-;;;;;;;;;;;;;;15962:658;;;;;;:::i;:::-;;:::i;5859:58::-;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;5859:58:2;;;;;;;;;;:::i;12992:208::-;;;;;;:::i;:::-;;:::i;3350:145:43:-;;;;;;:::i;:::-;;:::i;4412:75:9:-;;4445:42;4412:75;;2320:49:43;;2365:4;2320:49;;12309:415:2;;;;;;:::i;:::-;;:::i;6841:257::-;;;;;;:::i;:::-;;:::i;11210:830::-;;;;;;:::i;:::-;;:::i;5974:60::-;;-1:-1:-1;;;;;;;;;;;5974:60:2;;5705:147:43;;;;;;:::i;:::-;;:::i;7837:187:2:-;;;;;;:::i;:::-;;:::i;16837:500::-;;;;;;:::i;:::-;;:::i;5702:47::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;:::i;7472:131::-;7539:14;;:::i;:::-;7572:12;:24;7585:10;7572:24;;;;;;;;;;;7565:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7565:31:2;;;;-1:-1:-1;;;7565:31:2;;;;;;-1:-1:-1;;;;;7565:31:2;;;;;;;;;;;;;;;;;;;;;7472:131;-1:-1:-1;;7472:131:2:o;3050:213:43:-;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;13857:156:2:-;13944:4;13967:39;13986:10;13998:7;13967:18;:39::i;:::-;13960:46;13857:156;-1:-1:-1;;;13857:156:2:o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;15016:745:2:-;15131:23;15157:24;;;:12;:24;;;;;;;;15301:23;:35;;;;;;;-1:-1:-1;;;;;15301:35:2;15414:10;:22;;15410:54;;15445:19;;-1:-1:-1;;;15445:19:2;;;;;;;;;;;15410:54;15550:13;;;:24;;-1:-1:-1;;;;;15550:24:2;;;-1:-1:-1;;;;;;15550:24:2;;;;;;:13;15591:35;;;:23;:35;;;;;;;15584:42;;;;;;;;15740:13;;15708:46;;15615:10;;15708:46;;;;15740:13;;;15708:46;:::i;:::-;;;;;;;;15077:684;;15016:745;:::o;20847:318::-;-1:-1:-1;;;;;;;;;;;2798:16:43;2809:4;2798:10;:16::i;:::-;-1:-1:-1;;;;;20949:24:2;::::1;20945:51;;20982:14;;-1:-1:-1::0;;;20982:14:2::1;;;;;;;;;;;20945:51;21007:14;-1:-1:-1::0;;;;;21024:16:2;::::1;4445:42:9;21024:16:2;:81;;21067:38;::::0;-1:-1:-1;;;21067:38:2;;-1:-1:-1;;;;;21067:23:2;::::1;::::0;::::1;::::0;:38:::1;::::0;21099:4:::1;::::0;21067:38:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21024:81;;;21043:21;21024:81;21007:98;;21115:43;21131:6;21139:10;21151:6;21115:15;:43::i;:::-;20935:230;20847:318:::0;;;:::o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;6389:214::-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;9683:2:142;6476:83:43;;;9665:21:142;9722:2;9702:18;;;9695:30;9761:34;9741:18;;;9734:62;-1:-1:-1;;;9812:18:142;;;9805:45;9867:19;;6476:83:43;;;;;;;;;6570:26;6582:4;6588:7;6570:11;:26::i;:::-;6389:214;;:::o;13452:152:2:-;13537:4;13560:37;13578:10;13590:6;13560:17;:37::i;8781:1901::-;8975:7;9060:17;9080:34;9099:6;9107;9080:18;:34::i;:::-;9215:1;9173:23;;;:12;:23;;;;;:30;;;9060:54;;-1:-1:-1;;;;;;9173:30:2;:44;9169:78;;9226:21;;-1:-1:-1;;;9226:21:2;;;;;;;;;;;9169:78;-1:-1:-1;;;;;9317:20:2;;9313:47;;9346:14;;-1:-1:-1;;;9346:14:2;;;;;;;;;;;9313:47;9447:22;9472:213;;;;;;;;9498:9;9472:213;;;;9528:6;9472:213;;;;9554:5;9472:213;;;;9583:9;9472:213;;;;9613:6;-1:-1:-1;;;;;9472:213:2;;;;;9641:33;9657:9;9668:5;9641:15;:33::i;:::-;-1:-1:-1;;;;;9472:213:2;;;9696:23;;;;:12;:23;;;;;;;;;:33;;;;;;;;;;;;;;;;9447:238;;-1:-1:-1;9447:238:2;;9696:33;;;;;;;;:::i;:::-;-1:-1:-1;9696:33:2;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;9696:33:2;;;;;;;;;-1:-1:-1;;;;;;9696:33:2;;;-1:-1:-1;;;;;9696:33:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9757:14;;;;9739:33;-1:-1:-1;9739:33:2;;;:17;:33;;;;;:45;;;9866:15;;9942:16;;;;;:40;;-1:-1:-1;;;;;;9962:20:2;;9972:10;9962:20;;9942:40;9938:92;;;10005:14;;-1:-1:-1;;;10005:14:2;;;;;;;;;;;9938:92;10045:9;10040:402;10060:12;10056:1;:16;10040:402;;;10089:14;10106:8;10115:1;10106:11;;;;;;;;:::i;:::-;;;;;;;10089:28;;10224:1;-1:-1:-1;;;;;10206:20:2;:6;-1:-1:-1;;;;;10206:20:2;;10202:47;;10235:14;;-1:-1:-1;;;10235:14:2;;;;;;;;;;;10202:47;10343:29;10354:9;10365:6;10343:10;:29::i;:::-;-1:-1:-1;10414:3:2;;10040:402;;;;10527:9;10512:103;10538:7;:13;;;10553:7;:12;;;10567:7;:16;;;10585:7;:13;;;10600:7;:14;;;10512:103;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;10666:9:2;;8781:1901;-1:-1:-1;;;;;;;8781:1901:2:o;14336:382::-;14456:10;6416:34;6439:10;6416:22;:34::i;:::-;14530:35:::1;::::0;;;:23:::1;:35;::::0;;;;;;:51;;-1:-1:-1;;;;;;14530:51:2::1;-1:-1:-1::0;;;;;14530:51:2;::::1;;::::0;;14658:53;14530:35;;14658:53:::1;::::0;::::1;::::0;14530:51;;14658:53:::1;:::i;15962:658::-:0;16055:10;6416:34;6439:10;6416:22;:34::i;:::-;16100:15;;16077:20:::1;16211:403;16231:12;16227:1;:16;16211:403;;;16260:14;16277:8;16286:1;16277:11;;;;;;;;:::i;:::-;;;;;;;16260:28;;16395:1;-1:-1:-1::0;;;;;16377:20:2::1;:6;-1:-1:-1::0;;;;;16377:20:2::1;::::0;16373:47:::1;;16406:14;;-1:-1:-1::0;;;16406:14:2::1;;;;;;;;;;;16373:47;16514:30;16525:10;16537:6;16514:10;:30::i;:::-;-1:-1:-1::0;16586:3:2::1;;16211:403;;;;16067:553;15962:658:::0;;;:::o;12992:208::-;13087:4;13110:39;13128:10;13140:8;13110:17;:39::i;:::-;:83;;;;13153:40;13172:10;13184:8;13153:18;:40::i;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;12309:415:2:-;12429:10;6416:34;6439:10;6416:22;:34::i;:::-;12553:24:::1;::::0;;;:12:::1;:24;::::0;;;;;;;:45;;:33:::1;::::0;::::1;:45:::0;;;;;::::1;::::0;12589:9;;12553:33;:45;;;::::1;::::0;;::::1;:::i;:::-;;;;;12695:10;12672:45;12707:9;12672:45;;;;;;:::i;6841:257::-:0;4882:13:47;;6900:1:2;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;13402:2:142;4873:99:47;;;13384:21:142;13441:2;13421:18;;;13414:30;13480:34;13460:18;;;13453:62;-1:-1:-1;;;13531:18:142;;;13524:44;13585:19;;4873:99:47;13200:410:142;4873:99:47;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;-1:-1:-1;;;;;6968:20:2;::::1;6964:47;;6997:14;;-1:-1:-1::0;;;6997:14:2::1;;;;;;;;;;;6964:47;7061:30;-1:-1:-1::0;;;;;;;;;;;7084:6:2::1;7061:10;:30::i;:::-;5071:5:47::0;5055:21;;-1:-1:-1;;5055:21:47;;;5091:20;;13787:4:142;13775:17;;13757:36;;5091:20:47;;13745:2:142;13730:18;5091:20:47;;;;;;;6841:257:2;;:::o;11210:830::-;11349:14;11320:10;6416:34;6439:10;6416:22;:34::i;:::-;11429::::1;11445:10;11457:5;11429:15;:34::i;:::-;11538:23;11564:24:::0;;;:12:::1;:24;::::0;;;;11420:43;;-1:-1:-1;11627:12:2::1;::::0;::::1;:20;11642:5:::0;11627:12;:20:::1;:::i;:::-;-1:-1:-1::0;11705:14:2::1;::::0;::::1;::::0;;-1:-1:-1;;;;;11705:14:2;;::::1;11731:1;11687:33:::0;;;:17:::1;:33;::::0;;;;;:46;;;11774:23;;-1:-1:-1;;;;;;11774:23:2::1;::::0;;::::1;::::0;;::::1;::::0;;;11807:25;;;;;;:38;;;11931:45;11807:38;;11931:45:::1;::::0;::::1;::::0;11962:5;;11774:23;;11931:45:::1;:::i;:::-;;;;;;;;12020:13;11210:830:::0;;;;;:::o;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;7837:187:2:-:0;7905:14;;:::i;:::-;-1:-1:-1;;;;;7951:26:2;;7931:17;7951:26;;;:17;:26;;;;;;;;;7994:23;;;:12;:23;;;;;;7987:30;;;;;;;;;;;;;;;;;;;;;;;;;;;7994:23;;7987:30;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7987:30:2;;;;-1:-1:-1;;;7987:30:2;;;;;;-1:-1:-1;;;;;7987:30:2;;;;;;;;;;;;;;;;;;;;;7837:187;-1:-1:-1;;;7837:187:2:o;16837:500::-;16933:10;6416:34;6439:10;6416:22;:34::i;:::-;16978:15;;16955:20:::1;17094:237;17114:12;17110:1;:16;17094:237;;;17225:36;17237:10;17249:8;17258:1;17249:11;;;;;;;;:::i;:::-;;;;;;;17225;:36::i;:::-;17303:3;;17094:237;;5702:47:::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5702:47:2;;;;-1:-1:-1;;;5702:47:2;;;;;;;;;;;-1:-1:-1;;;;;5702:47:2;;;;;;:::o;20464:146::-;20552:4;20575:28;20583:10;20595:7;20575;:28::i;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;:::-;3789:103;:::o;6721:269:10:-;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;7938:233:43:-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;8342:234::-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;19963:156:2:-;20049:4;20072:24;;;:12;:24;;;;;;:30;;;-1:-1:-1;;;;;20072:40:2;;;:30;;:40;;19963:156::o;19465:159::-;19548:7;19601:6;19609;19584:32;;;;;;;;14283:19:142;;;14365:2;14336:15;-1:-1:-1;;;;;;14332:45:142;14327:2;14318:12;;14311:67;14403:2;14394:12;;14126:286;19584:32:2;;;;;;;;;;;;;19574:43;;;;;;19567:50;;19465:159;;;;:::o;18166:969::-;18250:14;18276:24;18314:10;18326:5;18303:29;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18276:56;;18342:35;18391:10;18411:4;18380:37;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18342:75;;18428:21;18469:25;;;;;;;;:::i;:::-;-1:-1:-1;;18469:25:2;;;;;;;;;;;;;;;;18452:67;;18469:25;18496:22;;18469:25;18452:67;;:::i;:::-;;;;-1:-1:-1;;18452:67:2;;;;;;;;;;18545:22;;18452:67;18545:22;;;;;;;18706:19;;;;;;-1:-1:-1;;;;;;18654:72:2;;;15700:39:142;;;;-1:-1:-1;;;;;;18693:4:2;15801:2:142;15772:15;15768:45;15755:11;;;15748:66;15830:12;;;15823:28;;;15867:12;;;15860:28;;;;18452:67:2;;-1:-1:-1;18545:22:2;18530:12;;15904::142;;18654:72:2;;;;;;;;;;;;18644:83;;;;;;18636:92;;18578:161;;18860:4;18866:10;18886:4;18843:49;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18839:290;;19044:10;19008:18;-1:-1:-1;;;;;18993:45:2;;:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:61;18989:88;;19063:14;;-1:-1:-1;;;19063:14:2;;;;;;;;;;;18989:88;19100:18;19091:27;;18839:290;;;18949:7;-1:-1:-1;18839:290:2;18266:869;;;;;18166:969;;;;:::o;17659:152::-;17740:41;17758:10;17770;17740:17;:41::i;:::-;17735:69;;17790:14;;-1:-1:-1;;;17790:14:2;;;;;;;;;;;4173:501:43;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2455:490:14:-;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;17936:2:142;2228:55:52;;;17918:21:142;;;17955:18;;;17948:30;18014:34;17994:18;;;17987:62;18066:18;;2228:55:52;17734:356:142;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;:::o;14:180:142:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:142;;14:180;-1:-1:-1;14:180:142:o;199:250::-;284:1;294:113;308:6;305:1;302:13;294:113;;;384:11;;;378:18;365:11;;;358:39;330:2;323:10;294:113;;;-1:-1:-1;;441:1:142;423:16;;416:27;199:250::o;454:271::-;496:3;534:5;528:12;561:6;556:3;549:19;577:76;646:6;639:4;634:3;630:14;623:4;616:5;612:16;577:76;:::i;:::-;707:2;686:15;-1:-1:-1;;682:29:142;673:39;;;;714:4;669:50;;454:271;-1:-1:-1;;454:271:142:o;730:252::-;817:5;811:12;806:3;799:25;781:3;870:4;863:5;859:16;853:23;908:4;901;896:3;892:14;885:28;929:47;970:4;965:3;961:14;947:12;929:47;:::i;:::-;922:54;730:252;-1:-1:-1;;;;730:252:142:o;987:911::-;1166:2;1155:9;1148:21;1211:6;1205:13;1200:2;1189:9;1185:18;1178:41;1273:2;1265:6;1261:15;1255:22;1250:2;1239:9;1235:18;1228:50;1129:4;1325:2;1317:6;1313:15;1307:22;1365:4;1360:2;1349:9;1345:18;1338:32;1393:52;1440:3;1429:9;1425:19;1411:12;1393:52;:::i;:::-;1379:66;;1494:2;1486:6;1482:15;1476:22;1567:2;1563:7;1551:9;1543:6;1539:22;1535:36;1529:3;1518:9;1514:19;1507:65;1595:50;1638:6;1622:14;1595:50;:::i;:::-;1694:3;1682:16;;1676:23;-1:-1:-1;;;;;1774:23:142;;;1726:3;1753:19;;;1746:52;;;;1846:16;;;1840:23;1836:32;;;1829:4;1814:20;;;1807:62;;;;-1:-1:-1;1581:64:142;;987:911;-1:-1:-1;;987:911:142:o;1903:286::-;1961:6;2014:2;2002:9;1993:7;1989:23;1985:32;1982:52;;;2030:1;2027;2020:12;1982:52;2056:23;;-1:-1:-1;;;;;;2108:32:142;;2098:43;;2088:71;;2155:1;2152;2145:12;2386:173;2454:20;;-1:-1:-1;;;;;2503:31:142;;2493:42;;2483:70;;2549:1;2546;2539:12;2483:70;2386:173;;;:::o;2564:254::-;2632:6;2640;2693:2;2681:9;2672:7;2668:23;2664:32;2661:52;;;2709:1;2706;2699:12;2661:52;2745:9;2732:23;2722:33;;2774:38;2808:2;2797:9;2793:18;2774:38;:::i;:::-;2764:48;;2564:254;;;;;:::o;3005:260::-;3073:6;3081;3134:2;3122:9;3113:7;3109:23;3105:32;3102:52;;;3150:1;3147;3140:12;3102:52;3173:29;3192:9;3173:29;:::i;:::-;3163:39;;3221:38;3255:2;3244:9;3240:18;3221:38;:::i;3270:127::-;3331:10;3326:3;3322:20;3319:1;3312:31;3362:4;3359:1;3352:15;3386:4;3383:1;3376:15;3402:275;3473:2;3467:9;3538:2;3519:13;;-1:-1:-1;;3515:27:142;3503:40;;-1:-1:-1;;;;;3558:34:142;;3594:22;;;3555:62;3552:88;;;3620:18;;:::i;:::-;3656:2;3649:22;3402:275;;-1:-1:-1;3402:275:142:o;3682:531::-;3725:5;3778:3;3771:4;3763:6;3759:17;3755:27;3745:55;;3796:1;3793;3786:12;3745:55;3819:20;;-1:-1:-1;;;;;3851:26:142;;3848:52;;;3880:18;;:::i;:::-;3924:55;3967:2;3948:13;;-1:-1:-1;;3944:27:142;3973:4;3940:38;3924:55;:::i;:::-;4004:2;3995:7;3988:19;4050:3;4043:4;4038:2;4030:6;4026:15;4022:26;4019:35;4016:55;;;4067:1;4064;4057:12;4016:55;4132:2;4125:4;4117:6;4113:17;4106:4;4097:7;4093:18;4080:55;4180:1;4155:16;;;4173:4;4151:27;4144:38;;;;4159:7;3682:531;-1:-1:-1;;;3682:531:142:o;4218:610::-;4273:5;4321:4;4309:9;4304:3;4300:19;4296:30;4293:50;;;4339:1;4336;4329:12;4293:50;4372:4;4366:11;;;4404:17;;-1:-1:-1;;;;;4473:18:142;;;4493:22;;;4470:46;4467:72;;;4519:18;;:::i;:::-;4561:10;4555:4;4548:24;4590:6;4581:15;;4633:9;4620:23;4612:6;4605:39;4695:2;4684:9;4680:18;4667:32;4653:46;;4722:2;4714:6;4711:14;4708:34;;;4738:1;4735;4728:12;4708:34;;4775:46;4817:3;4808:6;4797:9;4793:22;4775:46;:::i;:::-;4770:2;4762:6;4758:15;4751:71;;;4218:610;;;;:::o;4833:718::-;4887:5;4940:3;4933:4;4925:6;4921:17;4917:27;4907:55;;4958:1;4955;4948:12;4907:55;4981:20;;5020:4;-1:-1:-1;;;;;5036:26:142;;5033:52;;;5065:18;;:::i;:::-;5111:2;5108:1;5104:10;5134:28;5158:2;5154;5150:11;5134:28;:::i;:::-;5196:15;;;5266;;;5262:24;;;5227:12;;;;5298:15;;;5295:35;;;5326:1;5323;5316:12;5295:35;5362:2;5354:6;5350:15;5339:26;;5374:148;5390:6;5385:3;5382:15;5374:148;;;5456:23;5475:3;5456:23;:::i;:::-;5444:36;;5407:12;;;;5500;;;;5374:148;;;5540:5;4833:718;-1:-1:-1;;;;;;;4833:718:142:o;5556:938::-;5712:6;5720;5728;5736;5744;5797:3;5785:9;5776:7;5772:23;5768:33;5765:53;;;5814:1;5811;5804:12;5765:53;5837:23;;;-1:-1:-1;5911:2:142;5896:18;;5883:32;-1:-1:-1;;;;;5964:14:142;;;5961:34;;;5991:1;5988;5981:12;5961:34;6014:50;6056:7;6047:6;6036:9;6032:22;6014:50;:::i;:::-;6004:60;;6117:2;6106:9;6102:18;6089:32;6073:48;;6146:2;6136:8;6133:16;6130:36;;;6162:1;6159;6152:12;6130:36;6185:61;6238:7;6227:8;6216:9;6212:24;6185:61;:::i;:::-;6175:71;;6265:38;6299:2;6288:9;6284:18;6265:38;:::i;:::-;6255:48;;6356:3;6345:9;6341:19;6328:33;6312:49;;6386:2;6376:8;6373:16;6370:36;;;6402:1;6399;6392:12;6370:36;;6425:63;6480:7;6469:8;6458:9;6454:24;6425:63;:::i;:::-;6415:73;;;5556:938;;;;;;;;:::o;6499:186::-;6558:6;6611:2;6599:9;6590:7;6586:23;6582:32;6579:52;;;6627:1;6624;6617:12;6579:52;6650:29;6669:9;6650:29;:::i;6690:416::-;6783:6;6791;6844:2;6832:9;6823:7;6819:23;6815:32;6812:52;;;6860:1;6857;6850:12;6812:52;6883:23;;;-1:-1:-1;6957:2:142;6942:18;;6929:32;-1:-1:-1;;;;;6973:30:142;;6970:50;;;7016:1;7013;7006:12;6970:50;7039:61;7092:7;7083:6;7072:9;7068:22;7039:61;:::i;:::-;7029:71;;;6690:416;;;;;:::o;7111:203::-;-1:-1:-1;;;;;7275:32:142;;;;7257:51;;7245:2;7230:18;;7111:203::o;7319:415::-;7413:6;7421;7474:2;7462:9;7453:7;7449:23;7445:32;7442:52;;;7490:1;7487;7480:12;7442:52;7513:23;;;-1:-1:-1;7587:2:142;7572:18;;7559:32;-1:-1:-1;;;;;7603:30:142;;7600:50;;;7646:1;7643;7636:12;7600:50;7669:59;7720:7;7711:6;7700:9;7696:22;7669:59;:::i;7739:390::-;7817:6;7825;7878:2;7866:9;7857:7;7853:23;7849:32;7846:52;;;7894:1;7891;7884:12;7846:52;7917:23;;;-1:-1:-1;7991:2:142;7976:18;;7963:32;-1:-1:-1;;;;;8007:30:142;;8004:50;;;8050:1;8047;8040:12;8004:50;8073;8115:7;8106:6;8095:9;8091:22;8073:50;:::i;8134:768::-;8475:6;8464:9;8457:25;8518:6;8513:2;8502:9;8498:18;8491:34;8561:3;8556:2;8545:9;8541:18;8534:31;8438:4;8588:46;8629:3;8618:9;8614:19;8606:6;8588:46;:::i;:::-;8682:9;8674:6;8670:22;8665:2;8654:9;8650:18;8643:50;8710:42;8745:6;8737;8710:42;:::i;:::-;-1:-1:-1;;;;;8827:15:142;;;8821:3;8806:19;;8799:44;8880:15;;;;8779:3;8859:19;;;8852:44;;;;-1:-1:-1;8880:15:142;8702:50;-1:-1:-1;;;;;8134:768:142:o;8907:380::-;8986:1;8982:12;;;;9029;;;9050:61;;9104:4;9096:6;9092:17;9082:27;;9050:61;9157:2;9149:6;9146:14;9126:18;9123:38;9120:161;;9203:10;9198:3;9194:20;9191:1;9184:31;9238:4;9235:1;9228:15;9266:4;9263:1;9256:15;9120:161;;8907:380;;;:::o;9292:184::-;9362:6;9415:2;9403:9;9394:7;9390:23;9386:32;9383:52;;;9431:1;9428;9421:12;9383:52;-1:-1:-1;9454:16:142;;9292:184;-1:-1:-1;9292:184:142:o;10023:545::-;10125:2;10120:3;10117:11;10114:448;;;10161:1;10186:5;10182:2;10175:17;10231:4;10227:2;10217:19;10301:2;10289:10;10285:19;10282:1;10278:27;10272:4;10268:38;10337:4;10325:10;10322:20;10319:47;;;-1:-1:-1;10360:4:142;10319:47;10415:2;10410:3;10406:12;10403:1;10399:20;10393:4;10389:31;10379:41;;10470:82;10488:2;10481:5;10478:13;10470:82;;;10533:17;;;10514:1;10503:13;10470:82;;;10474:3;;;10023:545;;;:::o;10744:1352::-;10864:10;;-1:-1:-1;;;;;10886:30:142;;10883:56;;;10919:18;;:::i;:::-;10948:97;11038:6;10998:38;11030:4;11024:11;10998:38;:::i;:::-;10992:4;10948:97;:::i;:::-;11100:4;;11164:2;11153:14;;11181:1;11176:663;;;;11883:1;11900:6;11897:89;;;-1:-1:-1;11952:19:142;;;11946:26;11897:89;-1:-1:-1;;10701:1:142;10697:11;;;10693:24;10689:29;10679:40;10725:1;10721:11;;;10676:57;11999:81;;11146:944;;11176:663;9970:1;9963:14;;;10007:4;9994:18;;-1:-1:-1;;11212:20:142;;;11330:236;11344:7;11341:1;11338:14;11330:236;;;11433:19;;;11427:26;11412:42;;11525:27;;;;11493:1;11481:14;;;;11360:19;;11330:236;;;11334:3;11594:6;11585:7;11582:19;11579:201;;;11655:19;;;11649:26;-1:-1:-1;;11738:1:142;11734:14;;;11750:3;11730:24;11726:37;11722:42;11707:58;11692:74;;11579:201;-1:-1:-1;;;;;11826:1:142;11810:14;;;11806:22;11793:36;;-1:-1:-1;10744:1352:142:o;12101:127::-;12162:10;12157:3;12153:20;12150:1;12143:31;12193:4;12190:1;12183:15;12217:4;12214:1;12207:15;12233:696;12546:6;12535:9;12528:25;12589:3;12584:2;12573:9;12569:18;12562:31;12509:4;12616:46;12657:3;12646:9;12642:19;12634:6;12616:46;:::i;:::-;12710:9;12702:6;12698:22;12693:2;12682:9;12678:18;12671:50;12738:42;12773:6;12765;12738:42;:::i;:::-;-1:-1:-1;;;;;12854:15:142;;;12849:2;12834:18;;12827:43;12907:15;;;;12901:3;12886:19;;;12879:44;;;;-1:-1:-1;12730:50:142;12233:696;-1:-1:-1;;;;12233:696:142:o;12934:261::-;13115:2;13104:9;13097:21;13078:4;13135:54;13185:2;13174:9;13170:18;13162:6;13135:54;:::i;13804:317::-;13981:2;13970:9;13963:21;13944:4;14001:45;14042:2;14031:9;14027:18;14019:6;14001:45;:::i;:::-;13993:53;;14111:1;14107;14102:3;14098:11;14094:19;14086:6;14082:32;14077:2;14066:9;14062:18;14055:60;13804:317;;;;;:::o;14417:291::-;14594:6;14583:9;14576:25;14637:2;14632;14621:9;14617:18;14610:30;14557:4;14657:45;14698:2;14687:9;14683:18;14675:6;14657:45;:::i;14713:274::-;14887:25;;;-1:-1:-1;;;;;14948:32:142;14943:2;14928:18;;14921:60;14875:2;14860:18;;14713:274::o;14992:492::-;15167:3;15205:6;15199:13;15221:66;15280:6;15275:3;15268:4;15260:6;15256:17;15221:66;:::i;:::-;15350:13;;15309:16;;;;15372:70;15350:13;15309:16;15419:4;15407:17;;15372:70;:::i;:::-;15458:20;;14992:492;-1:-1:-1;;;;14992:492:142:o;16116:812::-;-1:-1:-1;;;16522:3:142;16515:38;16497:3;16582:6;16576:13;16598:75;16666:6;16661:2;16656:3;16652:12;16645:4;16637:6;16633:17;16598:75;:::i;:::-;-1:-1:-1;;;16732:2:142;16692:16;;;16724:11;;;16717:40;16782:13;;16804:76;16782:13;16866:2;16858:11;;16851:4;16839:17;;16804:76;:::i;:::-;16900:17;16919:2;16896:26;;16116:812;-1:-1:-1;;;;16116:812:142:o;16933:220::-;17082:2;17071:9;17064:21;17045:4;17102:45;17143:2;17132:9;17128:18;17120:6;17102:45;:::i;17158:127::-;17219:10;17214:3;17210:20;17207:1;17200:31;17250:4;17247:1;17240:15;17274:4;17271:1;17264:15;17290:168;17363:9;;;17394;;17411:15;;;17405:22;;17391:37;17381:71;;17432:18;;:::i;17463:125::-;17528:9;;;17549:10;;;17546:36;;;17562:18;;:::i;17593:136::-;17632:3;17660:5;17650:39;;17669:18;;:::i;:::-;-1:-1:-1;;;17705:18:142;;17593:136::o","linkReferences":{}},"methodIdentifiers":{"ALLO_OWNER()":"cfda7e0a","DEFAULT_ADMIN_ROLE()":"a217fddf","NATIVE()":"a0cf0aea","acceptProfileOwnership(bytes32)":"2497f3c6","addMembers(bytes32,address[])":"5063f361","anchorToProfileId(address)":"4756487f","createProfile(uint256,string,(uint256,string),address,address[])":"3a92f65f","getProfileByAnchor(address)":"dd93da43","getProfileById(bytes32)":"0114cf0a","getRoleAdmin(bytes32)":"248a9ca3","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","initialize(address)":"c4d66de8","isMemberOfProfile(bytes32,address)":"0ec1fbac","isOwnerOfProfile(bytes32,address)":"39b86b8c","isOwnerOrMemberOfProfile(bytes32,address)":"5e8a7915","profileIdToPendingOwner(bytes32)":"50d005e0","profilesById(bytes32)":"ee888196","recoverFunds(address,address)":"24ae6a27","removeMembers(bytes32,address[])":"e0cf1e4c","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","supportsInterface(bytes4)":"01ffc9a7","updateProfileMetadata(bytes32,(uint256,string))":"ac402839","updateProfileName(bytes32,string)":"cf189ff2","updateProfilePendingOwner(bytes32,address)":"3b66dacd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"name\":\"ProfileCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"name\":\"ProfileMetadataUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"name\":\"ProfileNameUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"ProfileOwnerUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"ProfilePendingOwnerUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"ALLO_OWNER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"}],\"name\":\"acceptProfileOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address[]\",\"name\":\"_members\",\"type\":\"address[]\"}],\"name\":\"addMembers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"anchorToProfileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"_members\",\"type\":\"address[]\"}],\"name\":\"createProfile\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_anchor\",\"type\":\"address\"}],\"name\":\"getProfileByAnchor\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"id\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"internalType\":\"struct IRegistry.Profile\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"}],\"name\":\"getProfileById\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"id\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"internalType\":\"struct IRegistry.Profile\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMemberOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"isOwnerOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"isOwnerOrMemberOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"profileIdToPendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"profilesById\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"id\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"recoverFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address[]\",\"name\":\"_members\",\"type\":\"address[]\"}],\"name\":\"removeMembers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"updateProfileMetadata\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"}],\"name\":\"updateProfileName\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_pendingOwner\",\"type\":\"address\"}],\"name\":\"updateProfilePendingOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"@thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \",\"details\":\"This contract is used to create and manage profiles for the Allo protocol It is also used to deploy the anchor contract for each profile which acts as a proxy for the profile and is used to receive funds and execute transactions on behalf of the profile The Registry is also used to add and remove members from a profile and update the profile 'Metadata'\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"ProfileCreated(bytes32,uint256,string,(uint256,string),address,address)\":{\"details\":\"Emitted when a profile is created. This will return your anchor address.\"},\"ProfileMetadataUpdated(bytes32,(uint256,string))\":{\"details\":\"Emitted when a profile's metadata is updated.\"},\"ProfileNameUpdated(bytes32,string,address)\":{\"details\":\"Emitted when a profile name is updated. This will update the anchor when the name is updated and return it.\"},\"ProfileOwnerUpdated(bytes32,address)\":{\"details\":\"Emitted when a profile owner is updated.\"},\"ProfilePendingOwnerUpdated(bytes32,address)\":{\"details\":\"Emitted when a profile pending owner is updated.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"}},\"kind\":\"dev\",\"methods\":{\"acceptProfileOwnership(bytes32)\":{\"details\":\"'msg.sender' must be the pending owner of the profile. [2]*This is step two of two when transferring ownership.\",\"params\":{\"_profileId\":\"The ID of the profile\"}},\"addMembers(bytes32,address[])\":{\"details\":\"'msg.sender' must be the owner of the profile.\",\"params\":{\"_members\":\"The members to add\",\"_profileId\":\"The ID of the profile\"}},\"createProfile(uint256,string,(uint256,string),address,address[])\":{\"details\":\"This will also generate the 'profileId' and 'anchor' address, emits a 'ProfileCreated()' event Note: The 'nonce' is used to generate the 'profileId' and should be unique for each profile Note: The 'name' and 'profileId' are used to generate the 'anchor' address\",\"params\":{\"_members\":\"The members of the profile (can be set only if msg.sender == _owner)\",\"_metadata\":\"The metadata of the profile\",\"_name\":\"The name of the profile\",\"_nonce\":\"Nonce used to generate profileId. Can be any integer, but should be unique for each profile.\",\"_owner\":\"The owner of the profile\"},\"returns\":{\"_0\":\"The ID for the created profile\"}},\"getProfileByAnchor(address)\":{\"details\":\"Used when you have the 'anchor' address and want to retrieve the profile\",\"params\":{\"_anchor\":\"The anchor of the profile\"},\"returns\":{\"_0\":\"Profile details for the `_anchor`\"}},\"getProfileById(bytes32)\":{\"details\":\"Used when you have the 'profileId' and want to retrieve the profile\",\"params\":{\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"The Profile details for the `_profileId`\"}},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"initialize(address)\":{\"details\":\"During upgrade -> a higher version should be passed to reinitializer. Reverts if the '_owner' is the 'address(0)'\",\"params\":{\"_owner\":\"The owner of the contract\"}},\"isMemberOfProfile(bytes32,address)\":{\"params\":{\"_member\":\"The address to check\",\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"'true' if the address is a member of the profile, otherwise 'false'\"}},\"isOwnerOfProfile(bytes32,address)\":{\"params\":{\"_owner\":\"The address to check\",\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"'true' if the address is an owner of the profile, otherwise 'false'\"}},\"isOwnerOrMemberOfProfile(bytes32,address)\":{\"params\":{\"_account\":\"The address to check\",\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"'true' if the address is an owner or member of the profile, otherwise 'false'\"}},\"recoverFunds(address,address)\":{\"details\":\"'msg.sender' must be the Allo owner\",\"params\":{\"_recipient\":\"The address of the recipient\",\"_token\":\"The address of the token to transfer\"}},\"removeMembers(bytes32,address[])\":{\"details\":\"'msg.sender' must be the pending owner of the profile.\",\"params\":{\"_members\":\"The members to remove\",\"_profileId\":\"The ID of the profile\"}},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"updateProfileMetadata(bytes32,(uint256,string))\":{\"details\":\"'msg.sender' must be the owner of the profile.\",\"params\":{\"_metadata\":\"The new 'Metadata' of the profile\",\"_profileId\":\"The ID of the profile\"}},\"updateProfileName(bytes32,string)\":{\"details\":\"Use caution when updating your profile name as it will generate a new anchor address. You can always update the name back to the original name to get the original anchor address. 'msg.sender' must be the owner of the profile.\",\"params\":{\"_name\":\"The new name of the profile\",\"_profileId\":\"The profileId of the profile\"},\"returns\":{\"anchor\":\"The new anchor\"}},\"updateProfilePendingOwner(bytes32,address)\":{\"details\":\"'msg.sender' must be the owner of the profile. [1]*This is step one of two when transferring ownership.\",\"params\":{\"_pendingOwner\":\"The new pending owner\",\"_profileId\":\"The ID of the profile\"}}},\"stateVariables\":{\"anchorToProfileId\":{\"details\":\"anchor -> Profile.id\"},\"profileIdToPendingOwner\":{\"details\":\"Profile.id -> pending owner\"},\"profilesById\":{\"details\":\"Profile.id -> Profile\"}},\"title\":\"Registry Contract\",\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"kind\":\"user\",\"methods\":{\"ALLO_OWNER()\":{\"notice\":\"Allo Owner Role for fund recovery\"},\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"acceptProfileOwnership(bytes32)\":{\"notice\":\"Transfers the ownership of the profile to the pending owner and Emits a 'ProfileOwnerUdpated()' event.\"},\"addMembers(bytes32,address[])\":{\"notice\":\"Adds members to the profile\"},\"anchorToProfileId(address)\":{\"notice\":\"This maps the anchor address to the profile ID\"},\"createProfile(uint256,string,(uint256,string),address,address[])\":{\"notice\":\"Creates a new profile\"},\"getProfileByAnchor(address)\":{\"notice\":\"Retrieve profile by anchor\"},\"getProfileById(bytes32)\":{\"notice\":\"Retrieve profile by profileId\"},\"initialize(address)\":{\"notice\":\"Initializes the contract after an upgrade\"},\"isMemberOfProfile(bytes32,address)\":{\"notice\":\"Checks if the given address is a member of the profile\"},\"isOwnerOfProfile(bytes32,address)\":{\"notice\":\"Checks if the given address is an owner of the profile\"},\"isOwnerOrMemberOfProfile(bytes32,address)\":{\"notice\":\"Checks if the address is an owner or member of the profile\"},\"profileIdToPendingOwner(bytes32)\":{\"notice\":\"This maps the profile ID to the pending owner\"},\"profilesById(bytes32)\":{\"notice\":\"This maps the profile ID to the profile details\"},\"recoverFunds(address,address)\":{\"notice\":\"Transfers any fund balance in Allo to the recipient\"},\"removeMembers(bytes32,address[])\":{\"notice\":\"Removes members from the profile\"},\"updateProfileMetadata(bytes32,(uint256,string))\":{\"notice\":\"Update the 'Metadata' of the profile. Emits a 'ProfileMetadataUpdated()' event.\"},\"updateProfileName(bytes32,string)\":{\"notice\":\"Updates the name of the profile and generates new anchor. Emits a 'ProfileNameUpdated()' event.\"},\"updateProfilePendingOwner(bytes32,address)\":{\"notice\":\"Updates the pending owner of the profile. Emits a 'ProfilePendingOwnership()' event.\"}},\"notice\":\"Registry contract for creating and managing profiles\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/Registry.sol\":\"Registry\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Anchor.sol\":{\"keccak256\":\"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139\",\"dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H\"]},\"lib/allo-v2/contracts/core/Registry.sol\":{\"keccak256\":\"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283\",\"dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol\":{\"keccak256\":\"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519\",\"dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol\":{\"keccak256\":\"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d\",\"dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol\":{\"keccak256\":\"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c\",\"dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"uint256","name":"nonce","type":"uint256","indexed":false},{"internalType":"string","name":"name","type":"string","indexed":false},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false},{"internalType":"address","name":"owner","type":"address","indexed":false},{"internalType":"address","name":"anchor","type":"address","indexed":false}],"type":"event","name":"ProfileCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"ProfileMetadataUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"string","name":"name","type":"string","indexed":false},{"internalType":"address","name":"anchor","type":"address","indexed":false}],"type":"event","name":"ProfileNameUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"address","name":"owner","type":"address","indexed":false}],"type":"event","name":"ProfileOwnerUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"address","name":"pendingOwner","type":"address","indexed":false}],"type":"event","name":"ProfilePendingOwnerUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"ALLO_OWNER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"acceptProfileOwnership"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address[]","name":"_members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"addMembers"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"anchorToProfileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address[]","name":"_members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"createProfile","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_anchor","type":"address"}],"stateMutability":"view","type":"function","name":"getProfileByAnchor","outputs":[{"internalType":"struct IRegistry.Profile","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"id","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"anchor","type":"address"}]}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getProfileById","outputs":[{"internalType":"struct IRegistry.Profile","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"id","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"anchor","type":"address"}]}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMemberOfProfile","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"view","type":"function","name":"isOwnerOfProfile","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_account","type":"address"}],"stateMutability":"view","type":"function","name":"isOwnerOrMemberOfProfile","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function","name":"profileIdToPendingOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function","name":"profilesById","outputs":[{"internalType":"bytes32","name":"id","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"anchor","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"recoverFunds"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address[]","name":"_members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"removeMembers"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"updateProfileMetadata"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"string","name":"_name","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"updateProfileName","outputs":[{"internalType":"address","name":"anchor","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_pendingOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateProfilePendingOwner"}],"devdoc":{"kind":"dev","methods":{"acceptProfileOwnership(bytes32)":{"details":"'msg.sender' must be the pending owner of the profile. [2]*This is step two of two when transferring ownership.","params":{"_profileId":"The ID of the profile"}},"addMembers(bytes32,address[])":{"details":"'msg.sender' must be the owner of the profile.","params":{"_members":"The members to add","_profileId":"The ID of the profile"}},"createProfile(uint256,string,(uint256,string),address,address[])":{"details":"This will also generate the 'profileId' and 'anchor' address, emits a 'ProfileCreated()' event Note: The 'nonce' is used to generate the 'profileId' and should be unique for each profile Note: The 'name' and 'profileId' are used to generate the 'anchor' address","params":{"_members":"The members of the profile (can be set only if msg.sender == _owner)","_metadata":"The metadata of the profile","_name":"The name of the profile","_nonce":"Nonce used to generate profileId. Can be any integer, but should be unique for each profile.","_owner":"The owner of the profile"},"returns":{"_0":"The ID for the created profile"}},"getProfileByAnchor(address)":{"details":"Used when you have the 'anchor' address and want to retrieve the profile","params":{"_anchor":"The anchor of the profile"},"returns":{"_0":"Profile details for the `_anchor`"}},"getProfileById(bytes32)":{"details":"Used when you have the 'profileId' and want to retrieve the profile","params":{"_profileId":"The ID of the profile"},"returns":{"_0":"The Profile details for the `_profileId`"}},"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"initialize(address)":{"details":"During upgrade -> a higher version should be passed to reinitializer. Reverts if the '_owner' is the 'address(0)'","params":{"_owner":"The owner of the contract"}},"isMemberOfProfile(bytes32,address)":{"params":{"_member":"The address to check","_profileId":"The ID of the profile"},"returns":{"_0":"'true' if the address is a member of the profile, otherwise 'false'"}},"isOwnerOfProfile(bytes32,address)":{"params":{"_owner":"The address to check","_profileId":"The ID of the profile"},"returns":{"_0":"'true' if the address is an owner of the profile, otherwise 'false'"}},"isOwnerOrMemberOfProfile(bytes32,address)":{"params":{"_account":"The address to check","_profileId":"The ID of the profile"},"returns":{"_0":"'true' if the address is an owner or member of the profile, otherwise 'false'"}},"recoverFunds(address,address)":{"details":"'msg.sender' must be the Allo owner","params":{"_recipient":"The address of the recipient","_token":"The address of the token to transfer"}},"removeMembers(bytes32,address[])":{"details":"'msg.sender' must be the pending owner of the profile.","params":{"_members":"The members to remove","_profileId":"The ID of the profile"}},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"updateProfileMetadata(bytes32,(uint256,string))":{"details":"'msg.sender' must be the owner of the profile.","params":{"_metadata":"The new 'Metadata' of the profile","_profileId":"The ID of the profile"}},"updateProfileName(bytes32,string)":{"details":"Use caution when updating your profile name as it will generate a new anchor address. You can always update the name back to the original name to get the original anchor address. 'msg.sender' must be the owner of the profile.","params":{"_name":"The new name of the profile","_profileId":"The profileId of the profile"},"returns":{"anchor":"The new anchor"}},"updateProfilePendingOwner(bytes32,address)":{"details":"'msg.sender' must be the owner of the profile. [1]*This is step one of two when transferring ownership.","params":{"_pendingOwner":"The new pending owner","_profileId":"The ID of the profile"}}},"version":1},"userdoc":{"kind":"user","methods":{"ALLO_OWNER()":{"notice":"Allo Owner Role for fund recovery"},"NATIVE()":{"notice":"Address of the native token"},"acceptProfileOwnership(bytes32)":{"notice":"Transfers the ownership of the profile to the pending owner and Emits a 'ProfileOwnerUdpated()' event."},"addMembers(bytes32,address[])":{"notice":"Adds members to the profile"},"anchorToProfileId(address)":{"notice":"This maps the anchor address to the profile ID"},"createProfile(uint256,string,(uint256,string),address,address[])":{"notice":"Creates a new profile"},"getProfileByAnchor(address)":{"notice":"Retrieve profile by anchor"},"getProfileById(bytes32)":{"notice":"Retrieve profile by profileId"},"initialize(address)":{"notice":"Initializes the contract after an upgrade"},"isMemberOfProfile(bytes32,address)":{"notice":"Checks if the given address is a member of the profile"},"isOwnerOfProfile(bytes32,address)":{"notice":"Checks if the given address is an owner of the profile"},"isOwnerOrMemberOfProfile(bytes32,address)":{"notice":"Checks if the address is an owner or member of the profile"},"profileIdToPendingOwner(bytes32)":{"notice":"This maps the profile ID to the pending owner"},"profilesById(bytes32)":{"notice":"This maps the profile ID to the profile details"},"recoverFunds(address,address)":{"notice":"Transfers any fund balance in Allo to the recipient"},"removeMembers(bytes32,address[])":{"notice":"Removes members from the profile"},"updateProfileMetadata(bytes32,(uint256,string))":{"notice":"Update the 'Metadata' of the profile. Emits a 'ProfileMetadataUpdated()' event."},"updateProfileName(bytes32,string)":{"notice":"Updates the name of the profile and generates new anchor. Emits a 'ProfileNameUpdated()' event."},"updateProfilePendingOwner(bytes32,address)":{"notice":"Updates the pending owner of the profile. Emits a 'ProfilePendingOwnership()' event."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/contracts/core/Registry.sol":"Registry"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Anchor.sol":{"keccak256":"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd","urls":["bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139","dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/Registry.sol":{"keccak256":"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998","urls":["bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283","dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"keccak256":"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b","urls":["bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec","dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"keccak256":"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3","urls":["bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519","dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"keccak256":"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb","urls":["bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d","dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"keccak256":"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da","urls":["bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708","dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol":{"keccak256":"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5","urls":["bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c","dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":53969,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"__gap","offset":0,"slot":"51","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"_roles","offset":0,"slot":"101","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":1525,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"anchorToProfileId","offset":0,"slot":"151","type":"t_mapping(t_address,t_bytes32)"},{"astId":1531,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"profilesById","offset":0,"slot":"152","type":"t_mapping(t_bytes32,t_struct(Profile)2629_storage)"},{"astId":1536,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"profileIdToPendingOwner","offset":0,"slot":"153","type":"t_mapping(t_bytes32,t_address)"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"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_bytes32)":{"encoding":"mapping","key":"t_address","label":"mapping(address => bytes32)","numberOfBytes":"32","value":"t_bytes32"},"t_mapping(t_bytes32,t_address)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => address)","numberOfBytes":"32","value":"t_address"},"t_mapping(t_bytes32,t_struct(Profile)2629_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct IRegistry.Profile)","numberOfBytes":"32","value":"t_struct(Profile)2629_storage"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(Profile)2629_storage":{"encoding":"inplace","label":"struct IRegistry.Profile","numberOfBytes":"224","members":[{"astId":2617,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"id","offset":0,"slot":"0","type":"t_bytes32"},{"astId":2619,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"nonce","offset":0,"slot":"1","type":"t_uint256"},{"astId":2621,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"name","offset":0,"slot":"2","type":"t_string_storage"},{"astId":2624,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"metadata","offset":0,"slot":"3","type":"t_struct(Metadata)3098_storage"},{"astId":2626,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"owner","offset":0,"slot":"5","type":"t_address"},{"astId":2628,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"anchor","offset":0,"slot":"6","type":"t_address"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/Registry.sol","id":2296,"exportedSymbols":{"AccessControlUpgradeable":[52697],"AddressUpgradeable":[53645],"Anchor":[1492],"ContextUpgradeable":[53696],"ERC165Upgradeable":[53970],"ERC20":[4491],"Errors":[3089],"IAccessControlUpgradeable":[52770],"IERC165Upgradeable":[53982],"IRegistry":[2802],"Initializable":[53152],"MathUpgradeable":[54848],"Metadata":[3098],"Native":[3106],"Registry":[2295],"SafeTransferLib":[4649],"SignedMathUpgradeable":[54953],"StringsUpgradeable":[53925],"Transfer":[3317]},"nodeType":"SourceUnit","src":"42:21126:2","nodes":[{"id":1494,"nodeType":"PragmaDirective","src":"42:23:2","nodes":[],"literals":["solidity","0.8",".19"]},{"id":1495,"nodeType":"ImportDirective","src":"89:90:2","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":52698,"symbolAliases":[],"unitAlias":""},{"id":1496,"nodeType":"ImportDirective","src":"180:84:2","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","file":"openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":53153,"symbolAliases":[],"unitAlias":""},{"id":1498,"nodeType":"ImportDirective","src":"265:50:2","nodes":[],"absolutePath":"lib/allo-v2/lib/solady/src/tokens/ERC20.sol","file":"solady/src/tokens/ERC20.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":4492,"symbolAliases":[{"foreign":{"id":1497,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4491,"src":"273:5:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1499,"nodeType":"ImportDirective","src":"330:36:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"./interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":2803,"symbolAliases":[],"unitAlias":""},{"id":1501,"nodeType":"ImportDirective","src":"389:36:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Anchor.sol","file":"./Anchor.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":1493,"symbolAliases":[{"foreign":{"id":1500,"name":"Anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1492,"src":"397:6:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1503,"nodeType":"ImportDirective","src":"426:46:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Errors.sol","file":"./libraries/Errors.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3090,"symbolAliases":[{"foreign":{"id":1502,"name":"Errors","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3089,"src":"434:6:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1505,"nodeType":"ImportDirective","src":"473:50:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"./libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":1504,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"481:8:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1506,"nodeType":"ImportDirective","src":"524:32:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"./libraries/Native.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3107,"symbolAliases":[],"unitAlias":""},{"id":1507,"nodeType":"ImportDirective","src":"557:34:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Transfer.sol","file":"./libraries/Transfer.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3318,"symbolAliases":[],"unitAlias":""},{"id":2295,"nodeType":"ContractDefinition","src":"5237:15930:2","nodes":[{"id":1525,"nodeType":"VariableDeclaration","src":"5544:52:2","nodes":[],"constant":false,"documentation":{"id":1521,"nodeType":"StructuredDocumentation","src":"5447:92:2","text":"@notice This maps the anchor address to the profile ID\n @dev anchor -> Profile.id"},"functionSelector":"4756487f","mutability":"mutable","name":"anchorToProfileId","nameLocation":"5579:17:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"},"typeName":{"id":1524,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":1522,"name":"address","nodeType":"ElementaryTypeName","src":"5552:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"5544:27:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":1523,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5563:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}},"visibility":"public"},{"id":1531,"nodeType":"VariableDeclaration","src":"5702:47:2","nodes":[],"constant":false,"documentation":{"id":1526,"nodeType":"StructuredDocumentation","src":"5603:94:2","text":"@notice This maps the profile ID to the profile details\n @dev Profile.id -> Profile"},"functionSelector":"ee888196","mutability":"mutable","name":"profilesById","nameLocation":"5737:12:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile)"},"typeName":{"id":1530,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":1527,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5710:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Mapping","src":"5702:27:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":1529,"nodeType":"UserDefinedTypeName","pathNode":{"id":1528,"name":"Profile","nameLocations":["5721:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"5721:7:2"},"referencedDeclaration":2629,"src":"5721:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}}},"visibility":"public"},{"id":1536,"nodeType":"VariableDeclaration","src":"5859:58:2","nodes":[],"constant":false,"documentation":{"id":1532,"nodeType":"StructuredDocumentation","src":"5756:98:2","text":"@notice This maps the profile ID to the pending owner\n @dev Profile.id -> pending owner"},"functionSelector":"50d005e0","mutability":"mutable","name":"profileIdToPendingOwner","nameLocation":"5894:23:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"},"typeName":{"id":1535,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":1533,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5867:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Mapping","src":"5859:27:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":1534,"name":"address","nodeType":"ElementaryTypeName","src":"5878:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},"visibility":"public"},{"id":1542,"nodeType":"VariableDeclaration","src":"5974:60:2","nodes":[],"constant":true,"documentation":{"id":1537,"nodeType":"StructuredDocumentation","src":"5924:45:2","text":"@notice Allo Owner Role for fund recovery"},"functionSelector":"cfda7e0a","mutability":"constant","name":"ALLO_OWNER","nameLocation":"5998:10:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1538,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5974:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"414c4c4f5f4f574e4552","id":1540,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6021:12:2","typeDescriptions":{"typeIdentifier":"t_stringliteral_815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747","typeString":"literal_string \"ALLO_OWNER\""},"value":"ALLO_OWNER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747","typeString":"literal_string \"ALLO_OWNER\""}],"id":1539,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6011:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":1541,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6011:23:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":1553,"nodeType":"ModifierDefinition","src":"6360:108:2","nodes":[],"body":{"id":1552,"nodeType":"Block","src":"6406:62:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":1548,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1545,"src":"6439:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":1547,"name":"_checkOnlyProfileOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2071,"src":"6416:22:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$returns$__$","typeString":"function (bytes32) view"}},"id":1549,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6416:34:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1550,"nodeType":"ExpressionStatement","src":"6416:34:2"},{"id":1551,"nodeType":"PlaceholderStatement","src":"6460:1:2"}]},"documentation":{"id":1543,"nodeType":"StructuredDocumentation","src":"6177:178:2","text":"@notice Checks if the caller is the profile owner\n @dev Reverts `UNAUTHORIZED()` if the caller is not the profile owner\n @param _profileId The ID of the profile"},"name":"onlyProfileOwner","nameLocation":"6369:16:2","parameters":{"id":1546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1545,"mutability":"mutable","name":"_profileId","nameLocation":"6394:10:2","nodeType":"VariableDeclaration","scope":1553,"src":"6386:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1544,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6386:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"6385:20:2"},"virtual":false,"visibility":"internal"},{"id":1578,"nodeType":"FunctionDefinition","src":"6841:257:2","nodes":[],"body":{"id":1577,"nodeType":"Block","src":"6903:195:2","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1562,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1556,"src":"6968:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6986:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1564,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6978:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1563,"name":"address","nodeType":"ElementaryTypeName","src":"6978:7:2","typeDescriptions":{}}},"id":1566,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6978:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"6968:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1571,"nodeType":"IfStatement","src":"6964:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1568,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"6997:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6997:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1570,"nodeType":"RevertStatement","src":"6990:21:2"}},{"expression":{"arguments":[{"id":1573,"name":"ALLO_OWNER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1542,"src":"7072:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1574,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1556,"src":"7084:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1572,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"7061:10:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1575,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7061:30:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1576,"nodeType":"ExpressionStatement","src":"7061:30:2"}]},"documentation":{"id":1554,"nodeType":"StructuredDocumentation","src":"6608:228:2","text":"@notice Initializes the contract after an upgrade\n @dev During upgrade -> a higher version should be passed to reinitializer. Reverts if the '_owner' is the 'address(0)'\n @param _owner The owner of the contract"},"functionSelector":"c4d66de8","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"31","id":1559,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6900:1:2","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"id":1560,"kind":"modifierInvocation","modifierName":{"id":1558,"name":"reinitializer","nameLocations":["6886:13:2"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"6886:13:2"},"nodeType":"ModifierInvocation","src":"6886:16:2"}],"name":"initialize","nameLocation":"6850:10:2","parameters":{"id":1557,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1556,"mutability":"mutable","name":"_owner","nameLocation":"6869:6:2","nodeType":"VariableDeclaration","scope":1578,"src":"6861:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1555,"name":"address","nodeType":"ElementaryTypeName","src":"6861:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6860:16:2"},"returnParameters":{"id":1561,"nodeType":"ParameterList","parameters":[],"src":"6903:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1592,"nodeType":"FunctionDefinition","src":"7472:131:2","nodes":[],"body":{"id":1591,"nodeType":"Block","src":"7555:48:2","nodes":[],"statements":[{"expression":{"baseExpression":{"id":1587,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"7572:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1589,"indexExpression":{"id":1588,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1581,"src":"7585:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7572:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"functionReturnParameters":1586,"id":1590,"nodeType":"Return","src":"7565:31:2"}]},"baseFunctions":[2685],"documentation":{"id":1579,"nodeType":"StructuredDocumentation","src":"7240:227:2","text":"@notice Retrieve profile by profileId\n @dev Used when you have the 'profileId' and want to retrieve the profile\n @param _profileId The ID of the profile\n @return The Profile details for the `_profileId`"},"functionSelector":"0114cf0a","implemented":true,"kind":"function","modifiers":[],"name":"getProfileById","nameLocation":"7481:14:2","parameters":{"id":1582,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1581,"mutability":"mutable","name":"_profileId","nameLocation":"7504:10:2","nodeType":"VariableDeclaration","scope":1592,"src":"7496:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1580,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7496:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"7495:20:2"},"returnParameters":{"id":1586,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1585,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1592,"src":"7539:14:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1584,"nodeType":"UserDefinedTypeName","pathNode":{"id":1583,"name":"Profile","nameLocations":["7539:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"7539:7:2"},"referencedDeclaration":2629,"src":"7539:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"7538:16:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1612,"nodeType":"FunctionDefinition","src":"7837:187:2","nodes":[],"body":{"id":1611,"nodeType":"Block","src":"7921:103:2","nodes":[],"statements":[{"assignments":[1602],"declarations":[{"constant":false,"id":1602,"mutability":"mutable","name":"profileId","nameLocation":"7939:9:2","nodeType":"VariableDeclaration","scope":1611,"src":"7931:17:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1601,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7931:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":1606,"initialValue":{"baseExpression":{"id":1603,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"7951:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1605,"indexExpression":{"id":1604,"name":"_anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1595,"src":"7969:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7951:26:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"7931:46:2"},{"expression":{"baseExpression":{"id":1607,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"7994:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1609,"indexExpression":{"id":1608,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1602,"src":"8007:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7994:23:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"functionReturnParameters":1600,"id":1610,"nodeType":"Return","src":"7987:30:2"}]},"baseFunctions":[2694],"documentation":{"id":1593,"nodeType":"StructuredDocumentation","src":"7609:223:2","text":"@notice Retrieve profile by anchor\n @dev Used when you have the 'anchor' address and want to retrieve the profile\n @param _anchor The anchor of the profile\n @return Profile details for the `_anchor`"},"functionSelector":"dd93da43","implemented":true,"kind":"function","modifiers":[],"name":"getProfileByAnchor","nameLocation":"7846:18:2","parameters":{"id":1596,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1595,"mutability":"mutable","name":"_anchor","nameLocation":"7873:7:2","nodeType":"VariableDeclaration","scope":1612,"src":"7865:15:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1594,"name":"address","nodeType":"ElementaryTypeName","src":"7865:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7864:17:2"},"returnParameters":{"id":1600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1599,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1612,"src":"7905:14:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1598,"nodeType":"UserDefinedTypeName","pathNode":{"id":1597,"name":"Profile","nameLocations":["7905:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"7905:7:2"},"referencedDeclaration":2629,"src":"7905:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"7904:16:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1756,"nodeType":"FunctionDefinition","src":"8781:1901:2","nodes":[],"body":{"id":1755,"nodeType":"Block","src":"8984:1698:2","nodes":[],"statements":[{"assignments":[1631],"declarations":[{"constant":false,"id":1631,"mutability":"mutable","name":"profileId","nameLocation":"9068:9:2","nodeType":"VariableDeclaration","scope":1755,"src":"9060:17:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1630,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9060:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":1636,"initialValue":{"arguments":[{"id":1633,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1615,"src":"9099:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1634,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9107:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1632,"name":"_generateProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2211,"src":"9080:18:2","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_address_$returns$_t_bytes32_$","typeString":"function (uint256,address) pure returns (bytes32)"}},"id":1635,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9080:34:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"9060:54:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1645,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":1637,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"9173:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1639,"indexExpression":{"id":1638,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9186:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9173:23:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":1640,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"9197:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"9173:30:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1643,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9215:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1642,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9207:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1641,"name":"address","nodeType":"ElementaryTypeName","src":"9207:7:2","typeDescriptions":{}}},"id":1644,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9207:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9173:44:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1649,"nodeType":"IfStatement","src":"9169:78:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1646,"name":"NONCE_NOT_AVAILABLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3026,"src":"9226:19:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1647,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9226:21:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1648,"nodeType":"RevertStatement","src":"9219:28:2"}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1655,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1650,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9317:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1653,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9335:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1652,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9327:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1651,"name":"address","nodeType":"ElementaryTypeName","src":"9327:7:2","typeDescriptions":{}}},"id":1654,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9327:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9317:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1659,"nodeType":"IfStatement","src":"9313:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1656,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"9346:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1657,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9346:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1658,"nodeType":"RevertStatement","src":"9339:21:2"}},{"assignments":[1662],"declarations":[{"constant":false,"id":1662,"mutability":"mutable","name":"profile","nameLocation":"9462:7:2","nodeType":"VariableDeclaration","scope":1755,"src":"9447:22:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1661,"nodeType":"UserDefinedTypeName","pathNode":{"id":1660,"name":"Profile","nameLocations":["9447:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"9447:7:2"},"referencedDeclaration":2629,"src":"9447:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"id":1674,"initialValue":{"arguments":[{"id":1664,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9498:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1665,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1615,"src":"9528:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1666,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1617,"src":"9554:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":1667,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1620,"src":"9583:9:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":1668,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9613:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1670,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9657:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1671,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1617,"src":"9668:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":1669,"name":"_generateAnchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2192,"src":"9641:15:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$_t_address_$","typeString":"function (bytes32,string memory) returns (address)"}},"id":1672,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9641:33:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1663,"name":"Profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2629,"src":"9472:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Profile_$2629_storage_ptr_$","typeString":"type(struct IRegistry.Profile storage pointer)"}},"id":1673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["9494:2:2","9521:5:2","9548:4:2","9573:8:2","9606:5:2","9633:6:2"],"names":["id","nonce","name","metadata","owner","anchor"],"nodeType":"FunctionCall","src":"9472:213:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"nodeType":"VariableDeclarationStatement","src":"9447:238:2"},{"expression":{"id":1679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1675,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"9696:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1677,"indexExpression":{"id":1676,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9709:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9696:23:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1678,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"9722:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"src":"9696:33:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":1680,"nodeType":"ExpressionStatement","src":"9696:33:2"},{"expression":{"id":1686,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1681,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"9739:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1684,"indexExpression":{"expression":{"id":1682,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"9757:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1683,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"9765:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"9757:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9739:33:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1685,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9775:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"9739:45:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":1687,"nodeType":"ExpressionStatement","src":"9739:45:2"},{"assignments":[1689],"declarations":[{"constant":false,"id":1689,"mutability":"mutable","name":"memberLength","nameLocation":"9851:12:2","nodeType":"VariableDeclaration","scope":1755,"src":"9843:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1688,"name":"uint256","nodeType":"ElementaryTypeName","src":"9843:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1692,"initialValue":{"expression":{"id":1690,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1625,"src":"9866:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1691,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9875:6:2","memberName":"length","nodeType":"MemberAccess","src":"9866:15:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"9843:38:2"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1693,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1689,"src":"9942:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":1694,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9957:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9942:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1696,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9962:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":1697,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9972:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1698,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9976:6:2","memberName":"sender","nodeType":"MemberAccess","src":"9972:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9962:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"9942:40:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1705,"nodeType":"IfStatement","src":"9938:92:2","trueBody":{"id":1704,"nodeType":"Block","src":"9984:46:2","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1701,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"10005:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10005:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1703,"nodeType":"RevertStatement","src":"9998:21:2"}]}},{"body":{"id":1737,"nodeType":"Block","src":"10075:367:2","statements":[{"assignments":[1713],"declarations":[{"constant":false,"id":1713,"mutability":"mutable","name":"member","nameLocation":"10097:6:2","nodeType":"VariableDeclaration","scope":1737,"src":"10089:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1712,"name":"address","nodeType":"ElementaryTypeName","src":"10089:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1717,"initialValue":{"baseExpression":{"id":1714,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1625,"src":"10106:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1716,"indexExpression":{"id":1715,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1707,"src":"10115:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10106:11:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"10089:28:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1718,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1713,"src":"10206:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10224:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1720,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10216:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1719,"name":"address","nodeType":"ElementaryTypeName","src":"10216:7:2","typeDescriptions":{}}},"id":1722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10216:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10206:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1727,"nodeType":"IfStatement","src":"10202:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1724,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"10235:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10235:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1726,"nodeType":"RevertStatement","src":"10228:21:2"}},{"expression":{"arguments":[{"id":1729,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"10354:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1730,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1713,"src":"10365:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1728,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"10343:10:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10343:29:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1732,"nodeType":"ExpressionStatement","src":"10343:29:2"},{"id":1736,"nodeType":"UncheckedBlock","src":"10386:46:2","statements":[{"expression":{"id":1734,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"10414:3:2","subExpression":{"id":1733,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1707,"src":"10416:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1735,"nodeType":"ExpressionStatement","src":"10414:3:2"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1709,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1707,"src":"10056:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":1710,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1689,"src":"10060:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10056:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1738,"initializationExpression":{"assignments":[1707],"declarations":[{"constant":false,"id":1707,"mutability":"mutable","name":"i","nameLocation":"10053:1:2","nodeType":"VariableDeclaration","scope":1738,"src":"10045:9:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1706,"name":"uint256","nodeType":"ElementaryTypeName","src":"10045:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1708,"nodeType":"VariableDeclarationStatement","src":"10045:9:2"},"nodeType":"ForStatement","src":"10040:402:2"},{"eventCall":{"arguments":[{"id":1740,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"10527:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":1741,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10538:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1742,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10546:5:2","memberName":"nonce","nodeType":"MemberAccess","referencedDeclaration":2619,"src":"10538:13:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":1743,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10553:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1744,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10561:4:2","memberName":"name","nodeType":"MemberAccess","referencedDeclaration":2621,"src":"10553:12:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"expression":{"id":1745,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10567:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1746,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10575:8:2","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":2624,"src":"10567:16:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"expression":{"id":1747,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10585:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1748,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10593:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"10585:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":1749,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10600:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1750,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10608:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"10600:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1739,"name":"ProfileCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2645,"src":"10512:14:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_address_$returns$__$","typeString":"function (bytes32,uint256,string memory,struct Metadata memory,address,address)"}},"id":1751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10512:103:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1752,"nodeType":"EmitStatement","src":"10507:108:2"},{"expression":{"id":1753,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"10666:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":1629,"id":1754,"nodeType":"Return","src":"10659:16:2"}]},"baseFunctions":[2742],"documentation":{"id":1613,"nodeType":"StructuredDocumentation","src":"8030:746:2","text":"@notice Creates a new profile\n @dev This will also generate the 'profileId' and 'anchor' address, emits a 'ProfileCreated()' event\n Note: The 'nonce' is used to generate the 'profileId' and should be unique for each profile\n Note: The 'name' and 'profileId' are used to generate the 'anchor' address\n @param _nonce Nonce used to generate profileId. Can be any integer, but should be unique\n for each profile.\n @param _name The name of the profile\n @param _metadata The metadata of the profile\n @param _owner The owner of the profile\n @param _members The members of the profile (can be set only if msg.sender == _owner)\n @return The ID for the created profile"},"functionSelector":"3a92f65f","implemented":true,"kind":"function","modifiers":[],"name":"createProfile","nameLocation":"8790:13:2","parameters":{"id":1626,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1615,"mutability":"mutable","name":"_nonce","nameLocation":"8821:6:2","nodeType":"VariableDeclaration","scope":1756,"src":"8813:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1614,"name":"uint256","nodeType":"ElementaryTypeName","src":"8813:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1617,"mutability":"mutable","name":"_name","nameLocation":"8851:5:2","nodeType":"VariableDeclaration","scope":1756,"src":"8837:19:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1616,"name":"string","nodeType":"ElementaryTypeName","src":"8837:6:2","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":1620,"mutability":"mutable","name":"_metadata","nameLocation":"8882:9:2","nodeType":"VariableDeclaration","scope":1756,"src":"8866:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":1619,"nodeType":"UserDefinedTypeName","pathNode":{"id":1618,"name":"Metadata","nameLocations":["8866:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"8866:8:2"},"referencedDeclaration":3098,"src":"8866:8:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":1622,"mutability":"mutable","name":"_owner","nameLocation":"8909:6:2","nodeType":"VariableDeclaration","scope":1756,"src":"8901:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1621,"name":"address","nodeType":"ElementaryTypeName","src":"8901:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1625,"mutability":"mutable","name":"_members","nameLocation":"8942:8:2","nodeType":"VariableDeclaration","scope":1756,"src":"8925:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":1623,"name":"address","nodeType":"ElementaryTypeName","src":"8925:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1624,"nodeType":"ArrayTypeName","src":"8925:9:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"8803:153:2"},"returnParameters":{"id":1629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1756,"src":"8975:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1627,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8975:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"8974:9:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1820,"nodeType":"FunctionDefinition","src":"11210:830:2","nodes":[],"body":{"id":1819,"nodeType":"Block","src":"11369:671:2","nodes":[],"statements":[{"expression":{"id":1774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1769,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11420:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1771,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11445:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1772,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1761,"src":"11457:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":1770,"name":"_generateAnchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2192,"src":"11429:15:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$_t_address_$","typeString":"function (bytes32,string memory) returns (address)"}},"id":1773,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11429:34:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11420:43:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1775,"nodeType":"ExpressionStatement","src":"11420:43:2"},{"assignments":[1778],"declarations":[{"constant":false,"id":1778,"mutability":"mutable","name":"profile","nameLocation":"11554:7:2","nodeType":"VariableDeclaration","scope":1819,"src":"11538:23:2","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1777,"nodeType":"UserDefinedTypeName","pathNode":{"id":1776,"name":"Profile","nameLocations":["11538:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"11538:7:2"},"referencedDeclaration":2629,"src":"11538:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"id":1782,"initialValue":{"baseExpression":{"id":1779,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"11564:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1781,"indexExpression":{"id":1780,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11577:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11564:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"nodeType":"VariableDeclarationStatement","src":"11538:50:2"},{"expression":{"id":1787,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1783,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1778,"src":"11627:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1785,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11635:4:2","memberName":"name","nodeType":"MemberAccess","referencedDeclaration":2621,"src":"11627:12:2","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1786,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1761,"src":"11642:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11627:20:2","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":1788,"nodeType":"ExpressionStatement","src":"11627:20:2"},{"expression":{"id":1797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1789,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"11687:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1792,"indexExpression":{"expression":{"id":1790,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1778,"src":"11705:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1791,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11713:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"11705:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11687:33:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":1795,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11731:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1794,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11723:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":1793,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11723:7:2","typeDescriptions":{}}},"id":1796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11723:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"11687:46:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":1798,"nodeType":"ExpressionStatement","src":"11687:46:2"},{"expression":{"id":1803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1799,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1778,"src":"11774:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1801,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11782:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"11774:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1802,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11791:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11774:23:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1804,"nodeType":"ExpressionStatement","src":"11774:23:2"},{"expression":{"id":1809,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1805,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"11807:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1807,"indexExpression":{"id":1806,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11825:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11807:25:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1808,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11835:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"11807:38:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":1810,"nodeType":"ExpressionStatement","src":"11807:38:2"},{"eventCall":{"arguments":[{"id":1812,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11950:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1813,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1761,"src":"11962:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":1814,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11969:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1811,"name":"ProfileNameUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2654,"src":"11931:18:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (bytes32,string memory,address)"}},"id":1815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11931:45:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1816,"nodeType":"EmitStatement","src":"11926:50:2"},{"expression":{"id":1817,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"12027:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":1768,"id":1818,"nodeType":"Return","src":"12020:13:2"}]},"baseFunctions":[2752],"documentation":{"id":1757,"nodeType":"StructuredDocumentation","src":"10688:517:2","text":"@notice Updates the name of the profile and generates new anchor.\n Emits a 'ProfileNameUpdated()' event.\n @dev Use caution when updating your profile name as it will generate a new anchor address. You can always update the name\n back to the original name to get the original anchor address. 'msg.sender' must be the owner of the profile.\n @param _profileId The profileId of the profile\n @param _name The new name of the profile\n @return anchor The new anchor"},"functionSelector":"cf189ff2","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1764,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11320:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1765,"kind":"modifierInvocation","modifierName":{"id":1763,"name":"onlyProfileOwner","nameLocations":["11303:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"11303:16:2"},"nodeType":"ModifierInvocation","src":"11303:28:2"}],"name":"updateProfileName","nameLocation":"11219:17:2","parameters":{"id":1762,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1759,"mutability":"mutable","name":"_profileId","nameLocation":"11245:10:2","nodeType":"VariableDeclaration","scope":1820,"src":"11237:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1758,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11237:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1761,"mutability":"mutable","name":"_name","nameLocation":"11271:5:2","nodeType":"VariableDeclaration","scope":1820,"src":"11257:19:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1760,"name":"string","nodeType":"ElementaryTypeName","src":"11257:6:2","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"11236:41:2"},"returnParameters":{"id":1768,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1767,"mutability":"mutable","name":"anchor","nameLocation":"11357:6:2","nodeType":"VariableDeclaration","scope":1820,"src":"11349:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1766,"name":"address","nodeType":"ElementaryTypeName","src":"11349:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11348:16:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1845,"nodeType":"FunctionDefinition","src":"12309:415:2","nodes":[],"body":{"id":1844,"nodeType":"Block","src":"12445:279:2","nodes":[],"statements":[{"expression":{"id":1837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":1832,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"12553:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1834,"indexExpression":{"id":1833,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1823,"src":"12566:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"12553:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":1835,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"12578:8:2","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":2624,"src":"12553:33:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1836,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1826,"src":"12589:9:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"12553:45:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":1838,"nodeType":"ExpressionStatement","src":"12553:45:2"},{"eventCall":{"arguments":[{"id":1840,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1823,"src":"12695:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1841,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1826,"src":"12707:9:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":1839,"name":"ProfileMetadataUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2662,"src":"12672:22:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (bytes32,struct Metadata memory)"}},"id":1842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12672:45:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1843,"nodeType":"EmitStatement","src":"12667:50:2"}]},"baseFunctions":[2761],"documentation":{"id":1821,"nodeType":"StructuredDocumentation","src":"12046:258:2","text":"@notice Update the 'Metadata' of the profile. Emits a 'ProfileMetadataUpdated()' event.\n @dev 'msg.sender' must be the owner of the profile.\n @param _profileId The ID of the profile\n @param _metadata The new 'Metadata' of the profile"},"functionSelector":"ac402839","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1829,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1823,"src":"12429:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1830,"kind":"modifierInvocation","modifierName":{"id":1828,"name":"onlyProfileOwner","nameLocations":["12412:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"12412:16:2"},"nodeType":"ModifierInvocation","src":"12412:28:2"}],"name":"updateProfileMetadata","nameLocation":"12318:21:2","parameters":{"id":1827,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1823,"mutability":"mutable","name":"_profileId","nameLocation":"12348:10:2","nodeType":"VariableDeclaration","scope":1845,"src":"12340:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1822,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12340:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1826,"mutability":"mutable","name":"_metadata","nameLocation":"12376:9:2","nodeType":"VariableDeclaration","scope":1845,"src":"12360:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":1825,"nodeType":"UserDefinedTypeName","pathNode":{"id":1824,"name":"Metadata","nameLocations":["12360:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12360:8:2"},"referencedDeclaration":3098,"src":"12360:8:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12339:47:2"},"returnParameters":{"id":1831,"nodeType":"ParameterList","parameters":[],"src":"12445:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1866,"nodeType":"FunctionDefinition","src":"12992:208:2","nodes":[],"body":{"id":1865,"nodeType":"Block","src":"13093:107:2","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":1856,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1848,"src":"13128:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1857,"name":"_account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1850,"src":"13140:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1855,"name":"_isOwnerOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2229,"src":"13110:17:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13110:39:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":1860,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1848,"src":"13172:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1861,"name":"_account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1850,"src":"13184:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1859,"name":"_isMemberOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2245,"src":"13153:18:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1862,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13153:40:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"13110:83:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1854,"id":1864,"nodeType":"Return","src":"13103:90:2"}]},"baseFunctions":[2704],"documentation":{"id":1846,"nodeType":"StructuredDocumentation","src":"12730:257:2","text":"@notice Checks if the address is an owner or member of the profile\n @param _profileId The ID of the profile\n @param _account The address to check\n @return 'true' if the address is an owner or member of the profile, otherwise 'false'"},"functionSelector":"5e8a7915","implemented":true,"kind":"function","modifiers":[],"name":"isOwnerOrMemberOfProfile","nameLocation":"13001:24:2","parameters":{"id":1851,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1848,"mutability":"mutable","name":"_profileId","nameLocation":"13034:10:2","nodeType":"VariableDeclaration","scope":1866,"src":"13026:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1847,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13026:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1850,"mutability":"mutable","name":"_account","nameLocation":"13054:8:2","nodeType":"VariableDeclaration","scope":1866,"src":"13046:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1849,"name":"address","nodeType":"ElementaryTypeName","src":"13046:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13025:38:2"},"returnParameters":{"id":1854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1853,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1866,"src":"13087:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1852,"name":"bool","nodeType":"ElementaryTypeName","src":"13087:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13086:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1882,"nodeType":"FunctionDefinition","src":"13452:152:2","nodes":[],"body":{"id":1881,"nodeType":"Block","src":"13543:61:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":1877,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1869,"src":"13578:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1878,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1871,"src":"13590:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1876,"name":"_isOwnerOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2229,"src":"13560:17:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13560:37:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1875,"id":1880,"nodeType":"Return","src":"13553:44:2"}]},"baseFunctions":[2714],"documentation":{"id":1867,"nodeType":"StructuredDocumentation","src":"13206:241:2","text":"@notice Checks if the given address is an owner of the profile\n @param _profileId The ID of the profile\n @param _owner The address to check\n @return 'true' if the address is an owner of the profile, otherwise 'false'"},"functionSelector":"39b86b8c","implemented":true,"kind":"function","modifiers":[],"name":"isOwnerOfProfile","nameLocation":"13461:16:2","parameters":{"id":1872,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1869,"mutability":"mutable","name":"_profileId","nameLocation":"13486:10:2","nodeType":"VariableDeclaration","scope":1882,"src":"13478:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1868,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13478:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1871,"mutability":"mutable","name":"_owner","nameLocation":"13506:6:2","nodeType":"VariableDeclaration","scope":1882,"src":"13498:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1870,"name":"address","nodeType":"ElementaryTypeName","src":"13498:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13477:36:2"},"returnParameters":{"id":1875,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1874,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1882,"src":"13537:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1873,"name":"bool","nodeType":"ElementaryTypeName","src":"13537:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13536:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1898,"nodeType":"FunctionDefinition","src":"13857:156:2","nodes":[],"body":{"id":1897,"nodeType":"Block","src":"13950:63:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":1893,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1885,"src":"13986:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1894,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1887,"src":"13998:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1892,"name":"_isMemberOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2245,"src":"13967:18:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1895,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13967:39:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1891,"id":1896,"nodeType":"Return","src":"13960:46:2"}]},"baseFunctions":[2724],"documentation":{"id":1883,"nodeType":"StructuredDocumentation","src":"13610:242:2","text":"@notice Checks if the given address is a member of the profile\n @param _profileId The ID of the profile\n @param _member The address to check\n @return 'true' if the address is a member of the profile, otherwise 'false'"},"functionSelector":"0ec1fbac","implemented":true,"kind":"function","modifiers":[],"name":"isMemberOfProfile","nameLocation":"13866:17:2","parameters":{"id":1888,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1885,"mutability":"mutable","name":"_profileId","nameLocation":"13892:10:2","nodeType":"VariableDeclaration","scope":1898,"src":"13884:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1884,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13884:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1887,"mutability":"mutable","name":"_member","nameLocation":"13912:7:2","nodeType":"VariableDeclaration","scope":1898,"src":"13904:15:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1886,"name":"address","nodeType":"ElementaryTypeName","src":"13904:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13883:37:2"},"returnParameters":{"id":1891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1890,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1898,"src":"13944:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1889,"name":"bool","nodeType":"ElementaryTypeName","src":"13944:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13943:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1921,"nodeType":"FunctionDefinition","src":"14336:382:2","nodes":[],"body":{"id":1920,"nodeType":"Block","src":"14472:246:2","nodes":[],"statements":[{"expression":{"id":1913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1909,"name":"profileIdToPendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1536,"src":"14530:23:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"}},"id":1911,"indexExpression":{"id":1910,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1901,"src":"14554:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14530:35:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1912,"name":"_pendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1903,"src":"14568:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14530:51:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1914,"nodeType":"ExpressionStatement","src":"14530:51:2"},{"eventCall":{"arguments":[{"id":1916,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1901,"src":"14685:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1917,"name":"_pendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1903,"src":"14697:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1915,"name":"ProfilePendingOwnerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2676,"src":"14658:26:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14658:53:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1919,"nodeType":"EmitStatement","src":"14653:58:2"}]},"baseFunctions":[2769],"documentation":{"id":1899,"nodeType":"StructuredDocumentation","src":"14019:312:2","text":"@notice Updates the pending owner of the profile. Emits a 'ProfilePendingOwnership()' event.\n @dev 'msg.sender' must be the owner of the profile. [1]*This is step one of two when transferring ownership.\n @param _profileId The ID of the profile\n @param _pendingOwner The new pending owner"},"functionSelector":"3b66dacd","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1906,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1901,"src":"14456:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1907,"kind":"modifierInvocation","modifierName":{"id":1905,"name":"onlyProfileOwner","nameLocations":["14439:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"14439:16:2"},"nodeType":"ModifierInvocation","src":"14439:28:2"}],"name":"updateProfilePendingOwner","nameLocation":"14345:25:2","parameters":{"id":1904,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1901,"mutability":"mutable","name":"_profileId","nameLocation":"14379:10:2","nodeType":"VariableDeclaration","scope":1921,"src":"14371:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1900,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14371:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1903,"mutability":"mutable","name":"_pendingOwner","nameLocation":"14399:13:2","nodeType":"VariableDeclaration","scope":1921,"src":"14391:21:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1902,"name":"address","nodeType":"ElementaryTypeName","src":"14391:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14370:43:2"},"returnParameters":{"id":1908,"nodeType":"ParameterList","parameters":[],"src":"14472:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1966,"nodeType":"FunctionDefinition","src":"15016:745:2","nodes":[],"body":{"id":1965,"nodeType":"Block","src":"15077:684:2","nodes":[],"statements":[{"assignments":[1929],"declarations":[{"constant":false,"id":1929,"mutability":"mutable","name":"profile","nameLocation":"15147:7:2","nodeType":"VariableDeclaration","scope":1965,"src":"15131:23:2","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1928,"nodeType":"UserDefinedTypeName","pathNode":{"id":1927,"name":"Profile","nameLocations":["15131:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"15131:7:2"},"referencedDeclaration":2629,"src":"15131:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"id":1933,"initialValue":{"baseExpression":{"id":1930,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"15157:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1932,"indexExpression":{"id":1931,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15170:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15157:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15131:50:2"},{"assignments":[1935],"declarations":[{"constant":false,"id":1935,"mutability":"mutable","name":"newOwner","nameLocation":"15290:8:2","nodeType":"VariableDeclaration","scope":1965,"src":"15282:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1934,"name":"address","nodeType":"ElementaryTypeName","src":"15282:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1939,"initialValue":{"baseExpression":{"id":1936,"name":"profileIdToPendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1536,"src":"15301:23:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"}},"id":1938,"indexExpression":{"id":1937,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15325:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15301:35:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"15282:54:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":1940,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15414:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15418:6:2","memberName":"sender","nodeType":"MemberAccess","src":"15414:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":1942,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1935,"src":"15428:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15414:22:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1947,"nodeType":"IfStatement","src":"15410:54:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1944,"name":"NOT_PENDING_OWNER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3029,"src":"15445:17:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1945,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15445:19:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1946,"nodeType":"RevertStatement","src":"15438:26:2"}},{"expression":{"id":1952,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1948,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1929,"src":"15550:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1950,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15558:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"15550:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1951,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1935,"src":"15566:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15550:24:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1953,"nodeType":"ExpressionStatement","src":"15550:24:2"},{"expression":{"id":1957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"15584:42:2","subExpression":{"baseExpression":{"id":1954,"name":"profileIdToPendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1536,"src":"15591:23:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"}},"id":1956,"indexExpression":{"id":1955,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15615:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15591:35:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1958,"nodeType":"ExpressionStatement","src":"15584:42:2"},{"eventCall":{"arguments":[{"id":1960,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15728:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":1961,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1929,"src":"15740:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1962,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15748:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"15740:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1959,"name":"ProfileOwnerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2669,"src":"15708:19:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1963,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15708:46:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1964,"nodeType":"EmitStatement","src":"15703:51:2"}]},"baseFunctions":[2775],"documentation":{"id":1922,"nodeType":"StructuredDocumentation","src":"14724:287:2","text":"@notice Transfers the ownership of the profile to the pending owner and Emits a 'ProfileOwnerUdpated()' event.\n @dev 'msg.sender' must be the pending owner of the profile. [2]*This is step two of two when transferring ownership.\n @param _profileId The ID of the profile"},"functionSelector":"2497f3c6","implemented":true,"kind":"function","modifiers":[],"name":"acceptProfileOwnership","nameLocation":"15025:22:2","parameters":{"id":1925,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1924,"mutability":"mutable","name":"_profileId","nameLocation":"15056:10:2","nodeType":"VariableDeclaration","scope":1966,"src":"15048:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1923,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15048:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"15047:20:2"},"returnParameters":{"id":1926,"nodeType":"ParameterList","parameters":[],"src":"15077:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2017,"nodeType":"FunctionDefinition","src":"15962:658:2","nodes":[],"body":{"id":2016,"nodeType":"Block","src":"16067:553:2","nodes":[],"statements":[{"assignments":[1979],"declarations":[{"constant":false,"id":1979,"mutability":"mutable","name":"memberLength","nameLocation":"16085:12:2","nodeType":"VariableDeclaration","scope":2016,"src":"16077:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1978,"name":"uint256","nodeType":"ElementaryTypeName","src":"16077:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1982,"initialValue":{"expression":{"id":1980,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1972,"src":"16100:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16109:6:2","memberName":"length","nodeType":"MemberAccess","src":"16100:15:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"16077:38:2"},{"body":{"id":2014,"nodeType":"Block","src":"16246:368:2","statements":[{"assignments":[1990],"declarations":[{"constant":false,"id":1990,"mutability":"mutable","name":"member","nameLocation":"16268:6:2","nodeType":"VariableDeclaration","scope":2014,"src":"16260:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1989,"name":"address","nodeType":"ElementaryTypeName","src":"16260:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1994,"initialValue":{"baseExpression":{"id":1991,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1972,"src":"16277:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1993,"indexExpression":{"id":1992,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1984,"src":"16286:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16277:11:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16260:28:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2000,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1995,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1990,"src":"16377:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1998,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16395:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1997,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16387:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1996,"name":"address","nodeType":"ElementaryTypeName","src":"16387:7:2","typeDescriptions":{}}},"id":1999,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16387:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16377:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2004,"nodeType":"IfStatement","src":"16373:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2001,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"16406:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2002,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16406:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2003,"nodeType":"RevertStatement","src":"16399:21:2"}},{"expression":{"arguments":[{"id":2006,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1969,"src":"16525:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2007,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1990,"src":"16537:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2005,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"16514:10:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":2008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16514:30:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2009,"nodeType":"ExpressionStatement","src":"16514:30:2"},{"id":2013,"nodeType":"UncheckedBlock","src":"16558:46:2","statements":[{"expression":{"id":2011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"16586:3:2","subExpression":{"id":2010,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1984,"src":"16588:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2012,"nodeType":"ExpressionStatement","src":"16586:3:2"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1988,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1986,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1984,"src":"16227:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":1987,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1979,"src":"16231:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16227:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2015,"initializationExpression":{"assignments":[1984],"declarations":[{"constant":false,"id":1984,"mutability":"mutable","name":"i","nameLocation":"16224:1:2","nodeType":"VariableDeclaration","scope":2015,"src":"16216:9:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1983,"name":"uint256","nodeType":"ElementaryTypeName","src":"16216:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1985,"nodeType":"VariableDeclarationStatement","src":"16216:9:2"},"nodeType":"ForStatement","src":"16211:403:2"}]},"baseFunctions":[2784],"documentation":{"id":1967,"nodeType":"StructuredDocumentation","src":"15767:190:2","text":"@notice Adds members to the profile\n @dev 'msg.sender' must be the owner of the profile.\n @param _profileId The ID of the profile\n @param _members The members to add"},"functionSelector":"5063f361","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1975,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1969,"src":"16055:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1976,"kind":"modifierInvocation","modifierName":{"id":1974,"name":"onlyProfileOwner","nameLocations":["16038:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"16038:16:2"},"nodeType":"ModifierInvocation","src":"16038:28:2"}],"name":"addMembers","nameLocation":"15971:10:2","parameters":{"id":1973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1969,"mutability":"mutable","name":"_profileId","nameLocation":"15990:10:2","nodeType":"VariableDeclaration","scope":2017,"src":"15982:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1968,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15982:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1972,"mutability":"mutable","name":"_members","nameLocation":"16019:8:2","nodeType":"VariableDeclaration","scope":2017,"src":"16002:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":1970,"name":"address","nodeType":"ElementaryTypeName","src":"16002:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1971,"nodeType":"ArrayTypeName","src":"16002:9:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"15981:47:2"},"returnParameters":{"id":1977,"nodeType":"ParameterList","parameters":[],"src":"16067:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2054,"nodeType":"FunctionDefinition","src":"16837:500:2","nodes":[],"body":{"id":2053,"nodeType":"Block","src":"16945:392:2","nodes":[],"statements":[{"assignments":[2030],"declarations":[{"constant":false,"id":2030,"mutability":"mutable","name":"memberLength","nameLocation":"16963:12:2","nodeType":"VariableDeclaration","scope":2053,"src":"16955:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2029,"name":"uint256","nodeType":"ElementaryTypeName","src":"16955:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2033,"initialValue":{"expression":{"id":2031,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2023,"src":"16978:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2032,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16987:6:2","memberName":"length","nodeType":"MemberAccess","src":"16978:15:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"16955:38:2"},{"body":{"id":2051,"nodeType":"Block","src":"17129:202:2","statements":[{"expression":{"arguments":[{"id":2041,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2020,"src":"17237:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":2042,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2023,"src":"17249:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2044,"indexExpression":{"id":2043,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2035,"src":"17258:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17249:11:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2040,"name":"_revokeRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52691,"src":"17225:11:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":2045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17225:36:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2046,"nodeType":"ExpressionStatement","src":"17225:36:2"},{"id":2050,"nodeType":"UncheckedBlock","src":"17275:46:2","statements":[{"expression":{"id":2048,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"17303:3:2","subExpression":{"id":2047,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2035,"src":"17305:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2049,"nodeType":"ExpressionStatement","src":"17303:3:2"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2037,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2035,"src":"17110:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":2038,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2030,"src":"17114:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17110:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2052,"initializationExpression":{"assignments":[2035],"declarations":[{"constant":false,"id":2035,"mutability":"mutable","name":"i","nameLocation":"17107:1:2","nodeType":"VariableDeclaration","scope":2052,"src":"17099:9:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2034,"name":"uint256","nodeType":"ElementaryTypeName","src":"17099:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2036,"nodeType":"VariableDeclarationStatement","src":"17099:9:2"},"nodeType":"ForStatement","src":"17094:237:2"}]},"baseFunctions":[2793],"documentation":{"id":2018,"nodeType":"StructuredDocumentation","src":"16626:206:2","text":"@notice Removes members from the profile\n @dev 'msg.sender' must be the pending owner of the profile.\n @param _profileId The ID of the profile\n @param _members The members to remove"},"functionSelector":"e0cf1e4c","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2026,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2020,"src":"16933:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":2027,"kind":"modifierInvocation","modifierName":{"id":2025,"name":"onlyProfileOwner","nameLocations":["16916:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"16916:16:2"},"nodeType":"ModifierInvocation","src":"16916:28:2"}],"name":"removeMembers","nameLocation":"16846:13:2","parameters":{"id":2024,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2020,"mutability":"mutable","name":"_profileId","nameLocation":"16868:10:2","nodeType":"VariableDeclaration","scope":2054,"src":"16860:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2019,"name":"bytes32","nodeType":"ElementaryTypeName","src":"16860:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2023,"mutability":"mutable","name":"_members","nameLocation":"16897:8:2","nodeType":"VariableDeclaration","scope":2054,"src":"16880:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2021,"name":"address","nodeType":"ElementaryTypeName","src":"16880:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2022,"nodeType":"ArrayTypeName","src":"16880:9:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"16859:47:2"},"returnParameters":{"id":2028,"nodeType":"ParameterList","parameters":[],"src":"16945:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2071,"nodeType":"FunctionDefinition","src":"17659:152:2","nodes":[],"body":{"id":2070,"nodeType":"Block","src":"17725:86:2","nodes":[],"statements":[{"condition":{"id":2065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17739:42:2","subExpression":{"arguments":[{"id":2061,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2057,"src":"17758:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":2062,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17770:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2063,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17774:6:2","memberName":"sender","nodeType":"MemberAccess","src":"17770:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2060,"name":"_isOwnerOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2229,"src":"17740:17:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":2064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17740:41:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2069,"nodeType":"IfStatement","src":"17735:69:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2066,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"17790:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2067,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17790:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2068,"nodeType":"RevertStatement","src":"17783:21:2"}}]},"documentation":{"id":2055,"nodeType":"StructuredDocumentation","src":"17479:175:2","text":"@notice Checks if the caller is the owner of the profile\n @dev Internal function used by modifier 'onlyProfileOwner'\n @param _profileId The ID of the profile"},"implemented":true,"kind":"function","modifiers":[],"name":"_checkOnlyProfileOwner","nameLocation":"17668:22:2","parameters":{"id":2058,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2057,"mutability":"mutable","name":"_profileId","nameLocation":"17699:10:2","nodeType":"VariableDeclaration","scope":2071,"src":"17691:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2056,"name":"bytes32","nodeType":"ElementaryTypeName","src":"17691:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"17690:20:2"},"returnParameters":{"id":2059,"nodeType":"ParameterList","parameters":[],"src":"17725:0:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":2192,"nodeType":"FunctionDefinition","src":"18166:969:2","nodes":[],"body":{"id":2191,"nodeType":"Block","src":"18266:869:2","nodes":[],"statements":[{"assignments":[2082],"declarations":[{"constant":false,"id":2082,"mutability":"mutable","name":"encodedData","nameLocation":"18289:11:2","nodeType":"VariableDeclaration","scope":2191,"src":"18276:24:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2081,"name":"bytes","nodeType":"ElementaryTypeName","src":"18276:5:2","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":2088,"initialValue":{"arguments":[{"id":2085,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"18314:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2086,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2076,"src":"18326:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":2083,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18303:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2084,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18307:6:2","memberName":"encode","nodeType":"MemberAccess","src":"18303:10:2","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18303:29:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"18276:56:2"},{"assignments":[2090],"declarations":[{"constant":false,"id":2090,"mutability":"mutable","name":"encodedConstructorArgs","nameLocation":"18355:22:2","nodeType":"VariableDeclaration","scope":2191,"src":"18342:35:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2089,"name":"bytes","nodeType":"ElementaryTypeName","src":"18342:5:2","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":2099,"initialValue":{"arguments":[{"id":2093,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"18391:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":2096,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18411:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2095,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18403:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2094,"name":"address","nodeType":"ElementaryTypeName","src":"18403:7:2","typeDescriptions":{}}},"id":2097,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18403:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":2091,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18380:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18384:6:2","memberName":"encode","nodeType":"MemberAccess","src":"18380:10:2","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18380:37:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"18342:75:2"},{"assignments":[2101],"declarations":[{"constant":false,"id":2101,"mutability":"mutable","name":"bytecode","nameLocation":"18441:8:2","nodeType":"VariableDeclaration","scope":2191,"src":"18428:21:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2100,"name":"bytes","nodeType":"ElementaryTypeName","src":"18428:5:2","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":2110,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":2105,"name":"Anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1492,"src":"18474:6:2","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Anchor_$1492_$","typeString":"type(contract Anchor)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_Anchor_$1492_$","typeString":"type(contract Anchor)"}],"id":2104,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"18469:4:2","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":2106,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18469:12:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_Anchor_$1492","typeString":"type(contract Anchor)"}},"id":2107,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18482:12:2","memberName":"creationCode","nodeType":"MemberAccess","src":"18469:25:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":2108,"name":"encodedConstructorArgs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2090,"src":"18496:22:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":2102,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18452:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2103,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18456:12:2","memberName":"encodePacked","nodeType":"MemberAccess","src":"18452:16:2","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2109,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18452:67:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"18428:91:2"},{"assignments":[2112],"declarations":[{"constant":false,"id":2112,"mutability":"mutable","name":"salt","nameLocation":"18538:4:2","nodeType":"VariableDeclaration","scope":2191,"src":"18530:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2111,"name":"bytes32","nodeType":"ElementaryTypeName","src":"18530:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":2116,"initialValue":{"arguments":[{"id":2114,"name":"encodedData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2082,"src":"18555:11:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2113,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"18545:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2115,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18545:22:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"18530:37:2"},{"assignments":[2118],"declarations":[{"constant":false,"id":2118,"mutability":"mutable","name":"preComputedAddress","nameLocation":"18586:18:2","nodeType":"VariableDeclaration","scope":2191,"src":"18578:26:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2117,"name":"address","nodeType":"ElementaryTypeName","src":"18578:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":2145,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"hexValue":"30786666","id":2130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18678:4:2","typeDescriptions":{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"},"value":"0xff"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"}],"id":2129,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18671:6:2","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":2128,"name":"bytes1","nodeType":"ElementaryTypeName","src":"18671:6:2","typeDescriptions":{}}},"id":2131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18671:12:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},{"arguments":[{"id":2134,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18693:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18685:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2132,"name":"address","nodeType":"ElementaryTypeName","src":"18685:7:2","typeDescriptions":{}}},"id":2135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18685:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":2136,"name":"salt","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2112,"src":"18700:4:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":2138,"name":"bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2101,"src":"18716:8:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2137,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"18706:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18706:19:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":2126,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18654:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2127,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18658:12:2","memberName":"encodePacked","nodeType":"MemberAccess","src":"18654:16:2","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2140,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18654:72:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2125,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"18644:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18644:83:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":2124,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18636:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":2123,"name":"uint256","nodeType":"ElementaryTypeName","src":"18636:7:2","typeDescriptions":{}}},"id":2142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18636:92:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2122,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18628:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":2121,"name":"uint160","nodeType":"ElementaryTypeName","src":"18628:7:2","typeDescriptions":{}}},"id":2143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18628:101:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":2120,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18607:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2119,"name":"address","nodeType":"ElementaryTypeName","src":"18607:7:2","typeDescriptions":{}}},"id":2144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18607:132:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"18578:161:2"},{"clauses":[{"block":{"id":2168,"nodeType":"Block","src":"18918:50:2","statements":[{"expression":{"id":2166,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2161,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2079,"src":"18932:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":2164,"name":"_anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2159,"src":"18949:7:2","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}],"id":2163,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18941:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2162,"name":"address","nodeType":"ElementaryTypeName","src":"18941:7:2","typeDescriptions":{}}},"id":2165,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18941:16:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18932:25:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2167,"nodeType":"ExpressionStatement","src":"18932:25:2"}]},"errorName":"","id":2169,"nodeType":"TryCatchClause","parameters":{"id":2160,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2159,"mutability":"mutable","name":"_anchor","nameLocation":"18909:7:2","nodeType":"VariableDeclaration","scope":2169,"src":"18902:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"},"typeName":{"id":2158,"nodeType":"UserDefinedTypeName","pathNode":{"id":2157,"name":"Anchor","nameLocations":["18902:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":1492,"src":"18902:6:2"},"referencedDeclaration":1492,"src":"18902:6:2","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}},"visibility":"internal"}],"src":"18901:16:2"},"src":"18893:75:2"},{"block":{"id":2188,"nodeType":"Block","src":"18975:154:2","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":2179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":2173,"name":"preComputedAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2118,"src":"19008:18:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2172,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19000:8:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":2171,"name":"address","nodeType":"ElementaryTypeName","src":"19000:8:2","stateMutability":"payable","typeDescriptions":{}}},"id":2174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19000:27:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":2170,"name":"Anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1492,"src":"18993:6:2","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Anchor_$1492_$","typeString":"type(contract Anchor)"}},"id":2175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18993:35:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}},"id":2176,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19029:9:2","memberName":"profileId","nodeType":"MemberAccess","referencedDeclaration":1408,"src":"18993:45:2","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bytes32_$","typeString":"function () view external returns (bytes32)"}},"id":2177,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18993:47:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":2178,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"19044:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"18993:61:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2183,"nodeType":"IfStatement","src":"18989:88:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2180,"name":"ANCHOR_ERROR","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3032,"src":"19063:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19063:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2182,"nodeType":"RevertStatement","src":"19056:21:2"}},{"expression":{"id":2186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2184,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2079,"src":"19091:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2185,"name":"preComputedAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2118,"src":"19100:18:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"19091:27:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2187,"nodeType":"ExpressionStatement","src":"19091:27:2"}]},"errorName":"","id":2189,"nodeType":"TryCatchClause","src":"18969:160:2"}],"externalCall":{"arguments":[{"id":2151,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"18866:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":2154,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18886:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18878:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2152,"name":"address","nodeType":"ElementaryTypeName","src":"18878:7:2","typeDescriptions":{}}},"id":2155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18878:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2148,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"18843:10:2","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$_t_bytes32_$_t_address_$returns$_t_contract$_Anchor_$1492_$","typeString":"function (bytes32,address) returns (contract Anchor)"},"typeName":{"id":2147,"nodeType":"UserDefinedTypeName","pathNode":{"id":2146,"name":"Anchor","nameLocations":["18847:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":1492,"src":"18847:6:2"},"referencedDeclaration":1492,"src":"18847:6:2","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}}},"id":2150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["salt"],"nodeType":"FunctionCallOptions","options":[{"id":2149,"name":"salt","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2112,"src":"18860:4:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"src":"18843:22:2","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$_t_bytes32_$_t_address_$returns$_t_contract$_Anchor_$1492_$salt","typeString":"function (bytes32,address) returns (contract Anchor)"}},"id":2156,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18843:49:2","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}},"id":2190,"nodeType":"TryStatement","src":"18839:290:2"}]},"documentation":{"id":2072,"nodeType":"StructuredDocumentation","src":"17817:344:2","text":"@notice Generates and deploys the anchor for the given 'profileId' and name\n @dev Internal function used by 'createProfile()' and 'updateProfileName()' to create and anchor.\n @param _profileId The ID of the profile\n @param _name The name of the profile\n @return anchor The address of the deployed anchor contract"},"implemented":true,"kind":"function","modifiers":[],"name":"_generateAnchor","nameLocation":"18175:15:2","parameters":{"id":2077,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2074,"mutability":"mutable","name":"_profileId","nameLocation":"18199:10:2","nodeType":"VariableDeclaration","scope":2192,"src":"18191:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2073,"name":"bytes32","nodeType":"ElementaryTypeName","src":"18191:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2076,"mutability":"mutable","name":"_name","nameLocation":"18225:5:2","nodeType":"VariableDeclaration","scope":2192,"src":"18211:19:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2075,"name":"string","nodeType":"ElementaryTypeName","src":"18211:6:2","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"18190:41:2"},"returnParameters":{"id":2080,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2079,"mutability":"mutable","name":"anchor","nameLocation":"18258:6:2","nodeType":"VariableDeclaration","scope":2192,"src":"18250:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2078,"name":"address","nodeType":"ElementaryTypeName","src":"18250:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18249:16:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":2211,"nodeType":"FunctionDefinition","src":"19465:159:2","nodes":[],"body":{"id":2210,"nodeType":"Block","src":"19557:67:2","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":2205,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2195,"src":"19601:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":2206,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2197,"src":"19609:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":2203,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"19584:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2204,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19588:12:2","memberName":"encodePacked","nodeType":"MemberAccess","src":"19584:16:2","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19584:32:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2202,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"19574:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19574:43:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2201,"id":2209,"nodeType":"Return","src":"19567:50:2"}]},"documentation":{"id":2193,"nodeType":"StructuredDocumentation","src":"19141:319:2","text":"@notice Generates the 'profileId' based on msg.sender and nonce\n @dev Internal function used by 'createProfile()' to generate profileId.\n @param _nonce Nonce provided by the caller to generate 'profileId'\n @param _owner The owner of the profile\n @return 'profileId' The ID of the profile"},"implemented":true,"kind":"function","modifiers":[],"name":"_generateProfileId","nameLocation":"19474:18:2","parameters":{"id":2198,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2195,"mutability":"mutable","name":"_nonce","nameLocation":"19501:6:2","nodeType":"VariableDeclaration","scope":2211,"src":"19493:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2194,"name":"uint256","nodeType":"ElementaryTypeName","src":"19493:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2197,"mutability":"mutable","name":"_owner","nameLocation":"19517:6:2","nodeType":"VariableDeclaration","scope":2211,"src":"19509:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2196,"name":"address","nodeType":"ElementaryTypeName","src":"19509:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19492:32:2"},"returnParameters":{"id":2201,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2200,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2211,"src":"19548:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2199,"name":"bytes32","nodeType":"ElementaryTypeName","src":"19548:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"19547:9:2"},"scope":2295,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":2229,"nodeType":"FunctionDefinition","src":"19963:156:2","nodes":[],"body":{"id":2228,"nodeType":"Block","src":"20055:64:2","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":2221,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"20072:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":2223,"indexExpression":{"id":2222,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2214,"src":"20085:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20072:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":2224,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"20097:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"20072:30:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":2225,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2216,"src":"20106:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"20072:40:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":2220,"id":2227,"nodeType":"Return","src":"20065:47:2"}]},"documentation":{"id":2212,"nodeType":"StructuredDocumentation","src":"19630:328:2","text":"@notice Checks if an address is the owner of the profile\n @dev Internal function used to determine if an address is the profile owner\n @param _profileId The 'profileId' of the profile\n @param _owner The address to check\n @return 'true' if the address is an owner of the profile, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isOwnerOfProfile","nameLocation":"19972:17:2","parameters":{"id":2217,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2214,"mutability":"mutable","name":"_profileId","nameLocation":"19998:10:2","nodeType":"VariableDeclaration","scope":2229,"src":"19990:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2213,"name":"bytes32","nodeType":"ElementaryTypeName","src":"19990:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2216,"mutability":"mutable","name":"_owner","nameLocation":"20018:6:2","nodeType":"VariableDeclaration","scope":2229,"src":"20010:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2215,"name":"address","nodeType":"ElementaryTypeName","src":"20010:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19989:36:2"},"returnParameters":{"id":2220,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2219,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2229,"src":"20049:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2218,"name":"bool","nodeType":"ElementaryTypeName","src":"20049:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"20048:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":2245,"nodeType":"FunctionDefinition","src":"20464:146:2","nodes":[],"body":{"id":2244,"nodeType":"Block","src":"20558:52:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":2240,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2232,"src":"20583:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2241,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2234,"src":"20595:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2239,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"20575:7:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":2242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20575:28:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":2238,"id":2243,"nodeType":"Return","src":"20568:35:2"}]},"documentation":{"id":2230,"nodeType":"StructuredDocumentation","src":"20125:334:2","text":"@notice Checks if an address is a member of the profile\n @dev Internal function used to determine if an address is a member of the profile\n @param _profileId The 'profileId' of the profile\n @param _member The address to check\n @return 'true' if the address is a member of the profile, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isMemberOfProfile","nameLocation":"20473:18:2","parameters":{"id":2235,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2232,"mutability":"mutable","name":"_profileId","nameLocation":"20500:10:2","nodeType":"VariableDeclaration","scope":2245,"src":"20492:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2231,"name":"bytes32","nodeType":"ElementaryTypeName","src":"20492:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2234,"mutability":"mutable","name":"_member","nameLocation":"20520:7:2","nodeType":"VariableDeclaration","scope":2245,"src":"20512:15:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2233,"name":"address","nodeType":"ElementaryTypeName","src":"20512:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20491:37:2"},"returnParameters":{"id":2238,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2237,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2245,"src":"20552:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2236,"name":"bool","nodeType":"ElementaryTypeName","src":"20552:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"20551:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":2294,"nodeType":"FunctionDefinition","src":"20847:318:2","nodes":[],"body":{"id":2293,"nodeType":"Block","src":"20935:230:2","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2256,"name":"_recipient","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2250,"src":"20949:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":2259,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20971:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2258,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20963:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2257,"name":"address","nodeType":"ElementaryTypeName","src":"20963:7:2","typeDescriptions":{}}},"id":2260,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20963:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"20949:24:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2265,"nodeType":"IfStatement","src":"20945:51:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2262,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"20982:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20982:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2264,"nodeType":"RevertStatement","src":"20975:21:2"}},{"assignments":[2267],"declarations":[{"constant":false,"id":2267,"mutability":"mutable","name":"amount","nameLocation":"21015:6:2","nodeType":"VariableDeclaration","scope":2293,"src":"21007:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2266,"name":"uint256","nodeType":"ElementaryTypeName","src":"21007:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2286,"initialValue":{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2270,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2268,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2248,"src":"21024:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":2269,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"21034:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"21024:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"arguments":[{"id":2282,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21099:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2281,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21091:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2280,"name":"address","nodeType":"ElementaryTypeName","src":"21091:7:2","typeDescriptions":{}}},"id":2283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21091:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":2277,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2248,"src":"21073:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2276,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4491,"src":"21067:5:2","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$4491_$","typeString":"type(contract ERC20)"}},"id":2278,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21067:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$4491","typeString":"contract ERC20"}},"id":2279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21081:9:2","memberName":"balanceOf","nodeType":"MemberAccess","referencedDeclaration":4200,"src":"21067:23:2","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":2284,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21067:38:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"21024:81:2","trueExpression":{"expression":{"arguments":[{"id":2273,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21051:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2272,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21043:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2271,"name":"address","nodeType":"ElementaryTypeName","src":"21043:7:2","typeDescriptions":{}}},"id":2274,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21043:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21057:7:2","memberName":"balance","nodeType":"MemberAccess","src":"21043:21:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21007:98:2"},{"expression":{"arguments":[{"id":2288,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2248,"src":"21131:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":2289,"name":"_recipient","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2250,"src":"21139:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":2290,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2267,"src":"21151:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2287,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"21115:15:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":2291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21115:43:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2292,"nodeType":"ExpressionStatement","src":"21115:43:2"}]},"baseFunctions":[2801],"documentation":{"id":2246,"nodeType":"StructuredDocumentation","src":"20616:226:2","text":"@notice Transfers any fund balance in Allo to the recipient\n @dev 'msg.sender' must be the Allo owner\n @param _token The address of the token to transfer\n @param _recipient The address of the recipient"},"functionSelector":"24ae6a27","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2253,"name":"ALLO_OWNER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1542,"src":"20923:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":2254,"kind":"modifierInvocation","modifierName":{"id":2252,"name":"onlyRole","nameLocations":["20914:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":52403,"src":"20914:8:2"},"nodeType":"ModifierInvocation","src":"20914:20:2"}],"name":"recoverFunds","nameLocation":"20856:12:2","parameters":{"id":2251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2248,"mutability":"mutable","name":"_token","nameLocation":"20877:6:2","nodeType":"VariableDeclaration","scope":2294,"src":"20869:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2247,"name":"address","nodeType":"ElementaryTypeName","src":"20869:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2250,"mutability":"mutable","name":"_recipient","nameLocation":"20893:10:2","nodeType":"VariableDeclaration","scope":2294,"src":"20885:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2249,"name":"address","nodeType":"ElementaryTypeName","src":"20885:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20868:36:2"},"returnParameters":{"id":2255,"nodeType":"ParameterList","parameters":[],"src":"20935:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":1509,"name":"IRegistry","nameLocations":["5258:9:2"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"5258:9:2"},"id":1510,"nodeType":"InheritanceSpecifier","src":"5258:9:2"},{"baseName":{"id":1511,"name":"Initializable","nameLocations":["5269:13:2"],"nodeType":"IdentifierPath","referencedDeclaration":53152,"src":"5269:13:2"},"id":1512,"nodeType":"InheritanceSpecifier","src":"5269:13:2"},{"baseName":{"id":1513,"name":"Native","nameLocations":["5284:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"5284:6:2"},"id":1514,"nodeType":"InheritanceSpecifier","src":"5284:6:2"},{"baseName":{"id":1515,"name":"AccessControlUpgradeable","nameLocations":["5292:24:2"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"5292:24:2"},"id":1516,"nodeType":"InheritanceSpecifier","src":"5292:24:2"},{"baseName":{"id":1517,"name":"Transfer","nameLocations":["5318:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":3317,"src":"5318:8:2"},"id":1518,"nodeType":"InheritanceSpecifier","src":"5318:8:2"},{"baseName":{"id":1519,"name":"Errors","nameLocations":["5328:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":3089,"src":"5328:6:2"},"id":1520,"nodeType":"InheritanceSpecifier","src":"5328:6:2"}],"canonicalName":"Registry","contractDependencies":[1492],"contractKind":"contract","documentation":{"id":1508,"nodeType":"StructuredDocumentation","src":"4584:653:2","text":"@title Registry Contract\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice Registry contract for creating and managing profiles\n @dev This contract is used to create and manage profiles for the Allo protocol\n It is also used to deploy the anchor contract for each profile which acts as a proxy\n for the profile and is used to receive funds and execute transactions on behalf of the profile\n The Registry is also used to add and remove members from a profile and update the profile 'Metadata'"},"fullyImplemented":true,"linearizedBaseContracts":[2295,3089,3317,52697,3106,53970,53982,52770,53696,53152,2802],"name":"Registry","nameLocation":"5246:8:2","scope":2296,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117]}],"license":"AGPL-3.0-only"},"id":2} \ No newline at end of file +{"abi":[{"type":"function","name":"ALLO_OWNER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"acceptProfileOwnership","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addMembers","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"anchorToProfileId","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"createProfile","inputs":[{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_name","type":"string","internalType":"string"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_owner","type":"address","internalType":"address"},{"name":"_members","type":"address[]","internalType":"address[]"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"getProfileByAnchor","inputs":[{"name":"_anchor","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IRegistry.Profile","components":[{"name":"id","type":"bytes32","internalType":"bytes32"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"name","type":"string","internalType":"string"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","internalType":"address"},{"name":"anchor","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getProfileById","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"tuple","internalType":"struct IRegistry.Profile","components":[{"name":"id","type":"bytes32","internalType":"bytes32"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"name","type":"string","internalType":"string"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","internalType":"address"},{"name":"anchor","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isMemberOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isOwnerOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isOwnerOrMemberOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"profileIdToPendingOwner","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"profilesById","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"id","type":"bytes32","internalType":"bytes32"},{"name":"nonce","type":"uint256","internalType":"uint256"},{"name":"name","type":"string","internalType":"string"},{"name":"metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","internalType":"address"},{"name":"anchor","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"recoverFunds","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_recipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeMembers","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_members","type":"address[]","internalType":"address[]"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"updateProfileMetadata","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"updateProfileName","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_name","type":"string","internalType":"string"}],"outputs":[{"name":"anchor","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"updateProfilePendingOwner","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_pendingOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"ProfileCreated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"nonce","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"name","type":"string","indexed":false,"internalType":"string"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"owner","type":"address","indexed":false,"internalType":"address"},{"name":"anchor","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProfileMetadataUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"ProfileNameUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"name","type":"string","indexed":false,"internalType":"string"},{"name":"anchor","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProfileOwnerUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"owner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProfilePendingOwnerUpdated","inputs":[{"name":"profileId","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"pendingOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"ALLOCATION_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"ALLOCATION_NOT_ENDED","inputs":[]},{"type":"error","name":"ALREADY_INITIALIZED","inputs":[]},{"type":"error","name":"AMOUNT_MISMATCH","inputs":[]},{"type":"error","name":"ANCHOR_ERROR","inputs":[]},{"type":"error","name":"ARRAY_MISMATCH","inputs":[]},{"type":"error","name":"INVALID","inputs":[]},{"type":"error","name":"INVALID_ADDRESS","inputs":[]},{"type":"error","name":"INVALID_FEE","inputs":[]},{"type":"error","name":"INVALID_METADATA","inputs":[]},{"type":"error","name":"INVALID_REGISTRATION","inputs":[]},{"type":"error","name":"IS_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"MISMATCH","inputs":[]},{"type":"error","name":"NONCE_NOT_AVAILABLE","inputs":[]},{"type":"error","name":"NOT_APPROVED_STRATEGY","inputs":[]},{"type":"error","name":"NOT_ENOUGH_FUNDS","inputs":[]},{"type":"error","name":"NOT_IMPLEMENTED","inputs":[]},{"type":"error","name":"NOT_INITIALIZED","inputs":[]},{"type":"error","name":"NOT_PENDING_OWNER","inputs":[]},{"type":"error","name":"POOL_ACTIVE","inputs":[]},{"type":"error","name":"POOL_INACTIVE","inputs":[]},{"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED","inputs":[]},{"type":"error","name":"RECIPIENT_ERROR","inputs":[{"name":"recipientId","type":"address","internalType":"address"}]},{"type":"error","name":"RECIPIENT_NOT_ACCEPTED","inputs":[]},{"type":"error","name":"REGISTRATION_NOT_ACTIVE","inputs":[]},{"type":"error","name":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50612b10806100206000396000f3fe60806040523480156200001157600080fd5b50600436106200015a5760003560e01c80630114cf0a146200015f57806301ffc9a7146200018e5780630ec1fbac14620001b6578063248a9ca314620001cd5780632497f3c614620001f357806324ae6a27146200020c5780632f2ff15d146200022357806336568abe146200023a57806339b86b8c14620002515780633a92f65f14620002685780633b66dacd146200027f5780634756487f14620002965780635063f36114620002b957806350d005e014620002d05780635e8a7915146200030b57806391d148541462000322578063a0cf0aea1462000339578063a217fddf1462000355578063ac402839146200035e578063c4d66de81462000375578063cf189ff2146200038c578063cfda7e0a14620003a3578063d547741f14620003ba578063dd93da4314620003d1578063e0cf1e4c14620003e8578063ee88819614620003ff575b600080fd5b620001766200017036600462001948565b6200042a565b604051620001859190620019df565b60405180910390f35b620001a56200019f36600462001a61565b620005e1565b604051901515815260200162000185565b620001a5620001c736600462001aaa565b62000619565b620001e4620001de36600462001948565b6200062e565b60405190815260200162000185565b6200020a6200020436600462001948565b62000643565b005b6200020a6200021d36600462001ad9565b62000702565b6200020a6200023436600462001aaa565b620007fb565b6200020a6200024b36600462001aaa565b62000822565b620001a56200026236600462001aaa565b620008a8565b620001e46200027936600462001ccd565b620008b6565b6200020a6200029036600462001aaa565b62000b41565b620001e4620002a736600462001d7b565b60976020526000908152604090205481565b6200020a620002ca36600462001d99565b62000ba8565b620002fc620002e136600462001948565b6099602052600090815260409020546001600160a01b031681565b60405162000185919062001de3565b620001a56200031c36600462001aaa565b62000c34565b620001a56200033336600462001aaa565b62000c55565b620002fc73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b620001e4600081565b6200020a6200036f36600462001df7565b62000c80565b6200020a6200038636600462001d7b565b62000cf3565b620002fc6200039d36600462001e37565b62000e17565b620001e460008051602062002abb83398151915281565b6200020a620003cb36600462001aaa565b62000ed8565b62000176620003e236600462001d7b565b62000efa565b6200020a620003f936600462001d99565b620010c3565b620004166200041036600462001948565b6200110e565b604051620001859695949392919062001e77565b62000434620018e5565b609860008381526020019081526020016000206040518060c00160405290816000820154815260200160018201548152602001600282018054620004789062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620004a69062001ed3565b8015620004f75780601f10620004cb57610100808354040283529160200191620004f7565b820191906000526020600020905b815481529060010190602001808311620004d957829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200052c9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200055a9062001ed3565b8015620005ab5780601f106200057f57610100808354040283529160200191620005ab565b820191906000526020600020905b8154815290600101906020018083116200058d57829003601f168201915b50505091909252505050815260058201546001600160a01b03908116602083015260069092015490911660409091015292915050565b60006001600160e01b03198216637965db0b60e01b14806200061357506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006200062783836200128e565b9392505050565b60009081526065602052604090206001015490565b60008181526098602090815260408083206099909252909120546001600160a01b03163381146200068757604051630b4d48c160e41b815260040160405180910390fd5b6005820180546001600160a01b038084166001600160a01b03199283161783556000868152609960205260409081902080549093169092559154905185927ffd9ad63830df7bdf1586c8293dc88a30864cb43e9037e7afdb2c7210facf217d92620006f59291169062001de3565b60405180910390a2505050565b60008051602062002abb8339815191526200071d816200129c565b6001600160a01b038216620007455760405163538ba4f960e01b815260040160405180910390fd5b60006001600160a01b03841673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14620007e4576040516370a0823160e01b81526001600160a01b038516906370a08231906200079a90309060040162001de3565b602060405180830381865afa158015620007b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007de919062001f0f565b620007e6565b475b9050620007f5848483620012ab565b50505050565b62000806826200062e565b62000811816200129c565b6200081d8383620012ea565b505050565b6001600160a01b0381163314620008985760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b620008a4828262001374565b5050565b6000620006278383620013de565b600080620008c5878562001402565b6000818152609860205260409020600601549091506001600160a01b0316156200090257604051630527e05960e41b815260040160405180910390fd5b6001600160a01b0384166200092a5760405163538ba4f960e01b815260040160405180910390fd5b60006040518060c00160405280838152602001898152602001888152602001878152602001866001600160a01b031681526020016200096a848a6200144c565b6001600160a01b03169052600083815260986020908152604091829020835181559083015160018201559082015191925082916002820190620009ae908262001f7b565b50606082015180516003830190815560208201516004840190620009d3908262001f7b565b50505060808201516005820180546001600160a01b03199081166001600160a01b039384161790915560a0938401516006909301805490911692821692909217909155908201511660009081526097602052604090208290558351801580159062000a4757506001600160a01b0386163314155b1562000a665760405163075fd2b160e01b815260040160405180910390fd5b60005b8181101562000add57600086828151811062000a895762000a8962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000ac75760405163538ba4f960e01b815260040160405180910390fd5b62000ad38582620012ea565b5060010162000a69565b50827f1e28352ff00d67474b59b87e6817d6ba65daa0130446266db8640214d8b8060983602001518460400151856060015186608001518760a0015160405162000b2c9594939291906200205d565b60405180910390a25090979650505050505050565b8162000b4d8162001627565b6000838152609960205260409081902080546001600160a01b0319166001600160a01b0385161790555183907f21fe5cd61055ef88f636a264885b927f3ec2b380b6053a6b4a7495a6336a95c890620006f590859062001de3565b8162000bb48162001627565b815160005b8181101562000c2d57600084828151811062000bd95762000bd962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000c175760405163538ba4f960e01b815260040160405180910390fd5b62000c238682620012ea565b5060010162000bb9565b5050505050565b600062000c428383620013de565b806200062757506200062783836200128e565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b8162000c8c8162001627565b6000838152609860209081526040909120835160038201908155918401518492916004019062000cbd908262001f7b565b50905050827fa366054a574e4f861cb295fd23b5440c5119c1ba329c36f5dfeb5643537cb0f383604051620006f59190620020b2565b600054600190610100900460ff1615801562000d16575060005460ff8083169116105b62000d7b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016200088f565b6000805461ffff191660ff8316176101001790556001600160a01b03821662000db75760405163538ba4f960e01b815260040160405180910390fd5b62000dd260008051602062002abb83398151915283620012ea565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60008262000e258162001627565b62000e3184846200144c565b60008581526098602052604090209092506002810162000e52858262001f7b565b506006810180546001600160a01b0390811660009081526097602052604080822082905583546001600160a01b0319169287169283179093559081528190208690555185907f54cd733148631b9ff1cb945f2d0dcd33c0692e154763bfa2f35e2d10a76c432f9062000ec89087908790620020c7565b60405180910390a2505092915050565b62000ee3826200062e565b62000eee816200129c565b6200081d838362001374565b62000f04620018e5565b6001600160a01b0382166000908152609760209081526040808320548084526098835292819020815160c08101835281548152600182015493810193909352600281018054919284019162000f599062001ed3565b80601f016020809104026020016040519081016040528092919081815260200182805462000f879062001ed3565b801562000fd85780601f1062000fac5761010080835404028352916020019162000fd8565b820191906000526020600020905b81548152906001019060200180831162000fba57829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200100d9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200103b9062001ed3565b80156200108c5780601f1062001060576101008083540402835291602001916200108c565b820191906000526020600020905b8154815290600101906020018083116200106e57829003601f168201915b50505091909252505050815260058201546001600160a01b0390811660208301526006909201549091166040909101529392505050565b81620010cf8162001627565b815160005b8181101562000c2d576200110585858381518110620010f757620010f762002047565b602002602001015162001374565b600101620010d4565b60986020526000908152604090208054600182015460028301805492939192620011389062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620011669062001ed3565b8015620011b75780601f106200118b57610100808354040283529160200191620011b7565b820191906000526020600020905b8154815290600101906020018083116200119957829003601f168201915b5050505050908060030160405180604001604052908160008201548152602001600182018054620011e89062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620012169062001ed3565b8015620012675780601f106200123b5761010080835404028352916020019162001267565b820191906000526020600020905b8154815290600101906020018083116200124957829003601f168201915b50505091909252505050600582015460069092015490916001600160a01b03908116911686565b600062000627838362000c55565b620012a8813362001651565b50565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601620012dd576200081d8282620016b5565b6200081d838383620016d2565b620012f6828262000c55565b620008a45760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620013303390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b62001380828262000c55565b15620008a45760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600091825260986020526040909120600501546001600160a01b0391821691161490565b600082826040516020016200142e92919091825260601b6001600160601b031916602082015260340190565b60405160208183030381529060405280519060200120905092915050565b600080838360405160200162001464929190620020f3565b6040516020818303038152906040529050600084306040516020016200148c9291906200210e565b6040516020818303038152906040529050600060405180602001620014b1906200193a565b601f1982820381018352601f909101166040819052620014d79190849060200162002125565b60408051601f198184030181529082905284516020868101919091208251828401206001600160f81b0319928501929092526001600160601b03193060601b166021850152603584018190526055840191909152909250906000906075016040516020818303038152906040528051906020012060001c905081883060405162001561906200193a565b6200156e9291906200210e565b8190604051809103906000f590508015620015865760015b620016195787816001600160a01b03166308386eba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620015cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015f1919062001f0f565b146200161057604051630113b81f60e41b815260040160405180910390fd5b8095506200161c565b95505b505050505092915050565b620016338133620013de565b620012a85760405163075fd2b160e01b815260040160405180910390fd5b6200165d828262000c55565b620008a4576200166d8162001719565b6200167a8360206200172c565b6040516020016200168d92919062002158565b60408051601f198184030181529082905262461bcd60e51b82526200088f91600401620021cb565b60008060008084865af1620008a45763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d1560016000511417166200170f576390b8ec186000526004601cfd5b6000603452505050565b6060620006136001600160a01b03831660145b606060006200173d836002620021f6565b6200174a90600262002210565b6001600160401b0381111562001764576200176462001b08565b6040519080825280601f01601f1916602001820160405280156200178f576020820181803683370190505b509050600360fc1b81600081518110620017ad57620017ad62002047565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620017df57620017df62002047565b60200101906001600160f81b031916908160001a905350600062001805846002620021f6565b6200181290600162002210565b90505b600181111562001894576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200184a576200184a62002047565b1a60f81b82828151811062001863576200186362002047565b60200101906001600160f81b031916908160001a90535060049490941c936200188c8162002226565b905062001815565b508315620006275760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200088f565b6040518060c0016040528060008019168152602001600081526020016060815260200162001926604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b61087a806200224183390190565b6000602082840312156200195b57600080fd5b5035919050565b60005b838110156200197f57818101518382015260200162001965565b50506000910152565b60008151808452620019a281602086016020860162001962565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152620019d7604085018262001988565b949350505050565b6020815281516020820152602082015160408201526000604083015160c0606084015262001a1160e084018262001988565b90506060840151601f1984830301608085015262001a308282620019b6565b60808601516001600160a01b0390811660a0878101919091529096015190951660c090940193909352509192915050565b60006020828403121562001a7457600080fd5b81356001600160e01b0319811681146200062757600080fd5b80356001600160a01b038116811462001aa557600080fd5b919050565b6000806040838503121562001abe57600080fd5b8235915062001ad06020840162001a8d565b90509250929050565b6000806040838503121562001aed57600080fd5b62001af88362001a8d565b915062001ad06020840162001a8d565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562001b495762001b4962001b08565b604052919050565b600082601f83011262001b6357600080fd5b81356001600160401b0381111562001b7f5762001b7f62001b08565b62001b94601f8201601f191660200162001b1e565b81815284602083860101111562001baa57600080fd5b816020850160208301376000918101602001919091529392505050565b60006040828403121562001bda57600080fd5b604080519081016001600160401b03808211838310171562001c005762001c0062001b08565b8160405282935084358352602085013591508082111562001c2057600080fd5b5062001c2f8582860162001b51565b6020830152505092915050565b600082601f83011262001c4e57600080fd5b813560206001600160401b0382111562001c6c5762001c6c62001b08565b8160051b62001c7d82820162001b1e565b928352848101820192828101908785111562001c9857600080fd5b83870192505b8483101562001cc25762001cb28362001a8d565b8252918301919083019062001c9e565b979650505050505050565b600080600080600060a0868803121562001ce657600080fd5b8535945060208601356001600160401b038082111562001d0557600080fd5b62001d1389838a0162001b51565b9550604088013591508082111562001d2a57600080fd5b62001d3889838a0162001bc7565b945062001d486060890162001a8d565b9350608088013591508082111562001d5f57600080fd5b5062001d6e8882890162001c3c565b9150509295509295909350565b60006020828403121562001d8e57600080fd5b620006278262001a8d565b6000806040838503121562001dad57600080fd5b8235915060208301356001600160401b0381111562001dcb57600080fd5b62001dd98582860162001c3c565b9150509250929050565b6001600160a01b0391909116815260200190565b6000806040838503121562001e0b57600080fd5b8235915060208301356001600160401b0381111562001e2957600080fd5b62001dd98582860162001bc7565b6000806040838503121562001e4b57600080fd5b8235915060208301356001600160401b0381111562001e6957600080fd5b62001dd98582860162001b51565b86815285602082015260c06040820152600062001e9860c083018762001988565b828103606084015262001eac8187620019b6565b6001600160a01b0395861660808501529390941660a0909201919091525095945050505050565b600181811c9082168062001ee857607f821691505b60208210810362001f0957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121562001f2257600080fd5b5051919050565b601f8211156200081d57600081815260208120601f850160051c8101602086101562001f525750805b601f850160051c820191505b8181101562001f735782815560010162001f5e565b505050505050565b81516001600160401b0381111562001f975762001f9762001b08565b62001faf8162001fa8845462001ed3565b8462001f29565b602080601f83116001811462001fe7576000841562001fce5750858301515b600019600386901b1c1916600185901b17855562001f73565b600085815260208120601f198616915b82811015620020185788860151825594840194600190910190840162001ff7565b5085821015620020375787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b85815260a0602082015260006200207860a083018762001988565b82810360408401526200208c8187620019b6565b6001600160a01b0395861660608501529390941660809092019190915250949350505050565b602081526000620006276020830184620019b6565b604081526000620020dc604083018562001988565b905060018060a01b03831660208301529392505050565b828152604060208201526000620019d7604083018462001988565b9182526001600160a01b0316602082015260400190565b600083516200213981846020880162001962565b8351908301906200214f81836020880162001962565b01949350505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200218c81601785016020880162001962565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351620021bf81602884016020880162001962565b01602801949350505050565b60208152600062000627602083018462001988565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417620006135762000613620021e0565b80820180821115620006135762000613620021e0565b600081620022385762002238620021e0565b50600019019056fe60c060405234801561001057600080fd5b5060405161087a38038061087a83398101604081905261002f91610043565b6001600160a01b031660805260a052610080565b6000806040838503121561005657600080fd5b825160208401519092506001600160a01b038116811461007557600080fd5b809150509250929050565b60805160a0516107c86100b26000396000818160b7015261024201526000818161013d015261027101526107c86000f3fe6080604052600436106100645760003560e01c806301ffc9a71461007057806308386eba146100a5578063150b7a02146100e75780637b1039991461012b578063b61d27f614610177578063bc197c81146101a4578063f23a6e61146101d057600080fd5b3661006b57005b600080fd5b34801561007c57600080fd5b5061009061008b3660046103b2565b6101fc565b60405190151581526020015b60405180910390f35b3480156100b157600080fd5b506100d97f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161009c565b3480156100f357600080fd5b506101126101023660046104b4565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200161009c565b34801561013757600080fd5b5061015f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161009c565b34801561018357600080fd5b5061019761019236600461051b565b610233565b60405161009c9190610595565b3480156101b057600080fd5b506101126101bf366004610647565b63bc197c8160e01b95945050505050565b3480156101dc57600080fd5b506101126101eb3660046106f0565b63f23a6e6160e01b95945050505050565b60006001600160e01b03198216630271189760e51b148061022d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b604051630e6e1ae360e21b81527f000000000000000000000000000000000000000000000000000000000000000060048201523360248201526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906339b86b8c90604401602060405180830381865afa1580156102c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e49190610754565b6103015760405163075fd2b160e01b815260040160405180910390fd5b6001600160a01b038416610328576040516384aed38d60e01b815260040160405180910390fd5b600080856001600160a01b031685856040516103449190610776565b60006040518083038185875af1925050503d8060008114610381576040519150601f19603f3d011682016040523d82523d6000602084013e610386565b606091505b5091509150816103a9576040516384aed38d60e01b815260040160405180910390fd5b95945050505050565b6000602082840312156103c457600080fd5b81356001600160e01b0319811681146103dc57600080fd5b9392505050565b80356001600160a01b03811681146103fa57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561043d5761043d6103ff565b604052919050565b600082601f83011261045657600080fd5b81356001600160401b0381111561046f5761046f6103ff565b610482601f8201601f1916602001610415565b81815284602083860101111561049757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080608085870312156104ca57600080fd5b6104d3856103e3565b93506104e1602086016103e3565b92506040850135915060608501356001600160401b0381111561050357600080fd5b61050f87828801610445565b91505092959194509250565b60008060006060848603121561053057600080fd5b610539846103e3565b92506020840135915060408401356001600160401b0381111561055b57600080fd5b61056786828701610445565b9150509250925092565b60005b8381101561058c578181015183820152602001610574565b50506000910152565b60208152600082518060208401526105b4816040850160208701610571565b601f01601f19169190910160400192915050565b600082601f8301126105d957600080fd5b813560206001600160401b038211156105f4576105f46103ff565b8160051b610603828201610415565b928352848101820192828101908785111561061d57600080fd5b83870192505b8483101561063c57823582529183019190830190610623565b979650505050505050565b600080600080600060a0868803121561065f57600080fd5b610668866103e3565b9450610676602087016103e3565b935060408601356001600160401b038082111561069257600080fd5b61069e89838a016105c8565b945060608801359150808211156106b457600080fd5b6106c089838a016105c8565b935060808801359150808211156106d657600080fd5b506106e388828901610445565b9150509295509295909350565b600080600080600060a0868803121561070857600080fd5b610711866103e3565b945061071f602087016103e3565b9350604086013592506060860135915060808601356001600160401b0381111561074857600080fd5b6106e388828901610445565b60006020828403121561076657600080fd5b815180151581146103dc57600080fd5b60008251610788818460208701610571565b919091019291505056fea2646970667358221220f683c118d1f99152da2da274fd5fdcf7d33f2aa4c7f93e8e53102f9ed349209264736f6c63430008130033815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747a26469706673582212202f846a97b4ce0f385a853a4b0d3db686ccd69c7212dee8d0688cc3d89c35c3dd64736f6c63430008130033","sourceMap":"5237:15930:2:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040523480156200001157600080fd5b50600436106200015a5760003560e01c80630114cf0a146200015f57806301ffc9a7146200018e5780630ec1fbac14620001b6578063248a9ca314620001cd5780632497f3c614620001f357806324ae6a27146200020c5780632f2ff15d146200022357806336568abe146200023a57806339b86b8c14620002515780633a92f65f14620002685780633b66dacd146200027f5780634756487f14620002965780635063f36114620002b957806350d005e014620002d05780635e8a7915146200030b57806391d148541462000322578063a0cf0aea1462000339578063a217fddf1462000355578063ac402839146200035e578063c4d66de81462000375578063cf189ff2146200038c578063cfda7e0a14620003a3578063d547741f14620003ba578063dd93da4314620003d1578063e0cf1e4c14620003e8578063ee88819614620003ff575b600080fd5b620001766200017036600462001948565b6200042a565b604051620001859190620019df565b60405180910390f35b620001a56200019f36600462001a61565b620005e1565b604051901515815260200162000185565b620001a5620001c736600462001aaa565b62000619565b620001e4620001de36600462001948565b6200062e565b60405190815260200162000185565b6200020a6200020436600462001948565b62000643565b005b6200020a6200021d36600462001ad9565b62000702565b6200020a6200023436600462001aaa565b620007fb565b6200020a6200024b36600462001aaa565b62000822565b620001a56200026236600462001aaa565b620008a8565b620001e46200027936600462001ccd565b620008b6565b6200020a6200029036600462001aaa565b62000b41565b620001e4620002a736600462001d7b565b60976020526000908152604090205481565b6200020a620002ca36600462001d99565b62000ba8565b620002fc620002e136600462001948565b6099602052600090815260409020546001600160a01b031681565b60405162000185919062001de3565b620001a56200031c36600462001aaa565b62000c34565b620001a56200033336600462001aaa565b62000c55565b620002fc73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b620001e4600081565b6200020a6200036f36600462001df7565b62000c80565b6200020a6200038636600462001d7b565b62000cf3565b620002fc6200039d36600462001e37565b62000e17565b620001e460008051602062002abb83398151915281565b6200020a620003cb36600462001aaa565b62000ed8565b62000176620003e236600462001d7b565b62000efa565b6200020a620003f936600462001d99565b620010c3565b620004166200041036600462001948565b6200110e565b604051620001859695949392919062001e77565b62000434620018e5565b609860008381526020019081526020016000206040518060c00160405290816000820154815260200160018201548152602001600282018054620004789062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620004a69062001ed3565b8015620004f75780601f10620004cb57610100808354040283529160200191620004f7565b820191906000526020600020905b815481529060010190602001808311620004d957829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200052c9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200055a9062001ed3565b8015620005ab5780601f106200057f57610100808354040283529160200191620005ab565b820191906000526020600020905b8154815290600101906020018083116200058d57829003601f168201915b50505091909252505050815260058201546001600160a01b03908116602083015260069092015490911660409091015292915050565b60006001600160e01b03198216637965db0b60e01b14806200061357506301ffc9a760e01b6001600160e01b03198316145b92915050565b60006200062783836200128e565b9392505050565b60009081526065602052604090206001015490565b60008181526098602090815260408083206099909252909120546001600160a01b03163381146200068757604051630b4d48c160e41b815260040160405180910390fd5b6005820180546001600160a01b038084166001600160a01b03199283161783556000868152609960205260409081902080549093169092559154905185927ffd9ad63830df7bdf1586c8293dc88a30864cb43e9037e7afdb2c7210facf217d92620006f59291169062001de3565b60405180910390a2505050565b60008051602062002abb8339815191526200071d816200129c565b6001600160a01b038216620007455760405163538ba4f960e01b815260040160405180910390fd5b60006001600160a01b03841673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14620007e4576040516370a0823160e01b81526001600160a01b038516906370a08231906200079a90309060040162001de3565b602060405180830381865afa158015620007b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007de919062001f0f565b620007e6565b475b9050620007f5848483620012ab565b50505050565b62000806826200062e565b62000811816200129c565b6200081d8383620012ea565b505050565b6001600160a01b0381163314620008985760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b620008a4828262001374565b5050565b6000620006278383620013de565b600080620008c5878562001402565b6000818152609860205260409020600601549091506001600160a01b0316156200090257604051630527e05960e41b815260040160405180910390fd5b6001600160a01b0384166200092a5760405163538ba4f960e01b815260040160405180910390fd5b60006040518060c00160405280838152602001898152602001888152602001878152602001866001600160a01b031681526020016200096a848a6200144c565b6001600160a01b03169052600083815260986020908152604091829020835181559083015160018201559082015191925082916002820190620009ae908262001f7b565b50606082015180516003830190815560208201516004840190620009d3908262001f7b565b50505060808201516005820180546001600160a01b03199081166001600160a01b039384161790915560a0938401516006909301805490911692821692909217909155908201511660009081526097602052604090208290558351801580159062000a4757506001600160a01b0386163314155b1562000a665760405163075fd2b160e01b815260040160405180910390fd5b60005b8181101562000add57600086828151811062000a895762000a8962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000ac75760405163538ba4f960e01b815260040160405180910390fd5b62000ad38582620012ea565b5060010162000a69565b50827f1e28352ff00d67474b59b87e6817d6ba65daa0130446266db8640214d8b8060983602001518460400151856060015186608001518760a0015160405162000b2c9594939291906200205d565b60405180910390a25090979650505050505050565b8162000b4d8162001627565b6000838152609960205260409081902080546001600160a01b0319166001600160a01b0385161790555183907f21fe5cd61055ef88f636a264885b927f3ec2b380b6053a6b4a7495a6336a95c890620006f590859062001de3565b8162000bb48162001627565b815160005b8181101562000c2d57600084828151811062000bd95762000bd962002047565b6020026020010151905060006001600160a01b0316816001600160a01b03160362000c175760405163538ba4f960e01b815260040160405180910390fd5b62000c238682620012ea565b5060010162000bb9565b5050505050565b600062000c428383620013de565b806200062757506200062783836200128e565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b8162000c8c8162001627565b6000838152609860209081526040909120835160038201908155918401518492916004019062000cbd908262001f7b565b50905050827fa366054a574e4f861cb295fd23b5440c5119c1ba329c36f5dfeb5643537cb0f383604051620006f59190620020b2565b600054600190610100900460ff1615801562000d16575060005460ff8083169116105b62000d7b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016200088f565b6000805461ffff191660ff8316176101001790556001600160a01b03821662000db75760405163538ba4f960e01b815260040160405180910390fd5b62000dd260008051602062002abb83398151915283620012ea565b6000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b60008262000e258162001627565b62000e3184846200144c565b60008581526098602052604090209092506002810162000e52858262001f7b565b506006810180546001600160a01b0390811660009081526097602052604080822082905583546001600160a01b0319169287169283179093559081528190208690555185907f54cd733148631b9ff1cb945f2d0dcd33c0692e154763bfa2f35e2d10a76c432f9062000ec89087908790620020c7565b60405180910390a2505092915050565b62000ee3826200062e565b62000eee816200129c565b6200081d838362001374565b62000f04620018e5565b6001600160a01b0382166000908152609760209081526040808320548084526098835292819020815160c08101835281548152600182015493810193909352600281018054919284019162000f599062001ed3565b80601f016020809104026020016040519081016040528092919081815260200182805462000f879062001ed3565b801562000fd85780601f1062000fac5761010080835404028352916020019162000fd8565b820191906000526020600020905b81548152906001019060200180831162000fba57829003601f168201915b5050505050815260200160038201604051806040016040529081600082015481526020016001820180546200100d9062001ed3565b80601f01602080910402602001604051908101604052809291908181526020018280546200103b9062001ed3565b80156200108c5780601f1062001060576101008083540402835291602001916200108c565b820191906000526020600020905b8154815290600101906020018083116200106e57829003601f168201915b50505091909252505050815260058201546001600160a01b0390811660208301526006909201549091166040909101529392505050565b81620010cf8162001627565b815160005b8181101562000c2d576200110585858381518110620010f757620010f762002047565b602002602001015162001374565b600101620010d4565b60986020526000908152604090208054600182015460028301805492939192620011389062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620011669062001ed3565b8015620011b75780601f106200118b57610100808354040283529160200191620011b7565b820191906000526020600020905b8154815290600101906020018083116200119957829003601f168201915b5050505050908060030160405180604001604052908160008201548152602001600182018054620011e89062001ed3565b80601f0160208091040260200160405190810160405280929190818152602001828054620012169062001ed3565b8015620012675780601f106200123b5761010080835404028352916020019162001267565b820191906000526020600020905b8154815290600101906020018083116200124957829003601f168201915b50505091909252505050600582015460069092015490916001600160a01b03908116911686565b600062000627838362000c55565b620012a8813362001651565b50565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601620012dd576200081d8282620016b5565b6200081d838383620016d2565b620012f6828262000c55565b620008a45760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620013303390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b62001380828262000c55565b15620008a45760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600091825260986020526040909120600501546001600160a01b0391821691161490565b600082826040516020016200142e92919091825260601b6001600160601b031916602082015260340190565b60405160208183030381529060405280519060200120905092915050565b600080838360405160200162001464929190620020f3565b6040516020818303038152906040529050600084306040516020016200148c9291906200210e565b6040516020818303038152906040529050600060405180602001620014b1906200193a565b601f1982820381018352601f909101166040819052620014d79190849060200162002125565b60408051601f198184030181529082905284516020868101919091208251828401206001600160f81b0319928501929092526001600160601b03193060601b166021850152603584018190526055840191909152909250906000906075016040516020818303038152906040528051906020012060001c905081883060405162001561906200193a565b6200156e9291906200210e565b8190604051809103906000f590508015620015865760015b620016195787816001600160a01b03166308386eba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620015cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015f1919062001f0f565b146200161057604051630113b81f60e41b815260040160405180910390fd5b8095506200161c565b95505b505050505092915050565b620016338133620013de565b620012a85760405163075fd2b160e01b815260040160405180910390fd5b6200165d828262000c55565b620008a4576200166d8162001719565b6200167a8360206200172c565b6040516020016200168d92919062002158565b60408051601f198184030181529082905262461bcd60e51b82526200088f91600401620021cb565b60008060008084865af1620008a45763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d1560016000511417166200170f576390b8ec186000526004601cfd5b6000603452505050565b6060620006136001600160a01b03831660145b606060006200173d836002620021f6565b6200174a90600262002210565b6001600160401b0381111562001764576200176462001b08565b6040519080825280601f01601f1916602001820160405280156200178f576020820181803683370190505b509050600360fc1b81600081518110620017ad57620017ad62002047565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620017df57620017df62002047565b60200101906001600160f81b031916908160001a905350600062001805846002620021f6565b6200181290600162002210565b90505b600181111562001894576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200184a576200184a62002047565b1a60f81b82828151811062001863576200186362002047565b60200101906001600160f81b031916908160001a90535060049490941c936200188c8162002226565b905062001815565b508315620006275760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200088f565b6040518060c0016040528060008019168152602001600081526020016060815260200162001926604051806040016040528060008152602001606081525090565b815260006020820181905260409091015290565b61087a806200224183390190565b6000602082840312156200195b57600080fd5b5035919050565b60005b838110156200197f57818101518382015260200162001965565b50506000910152565b60008151808452620019a281602086016020860162001962565b601f01601f19169290920160200192915050565b805182526000602082015160406020850152620019d7604085018262001988565b949350505050565b6020815281516020820152602082015160408201526000604083015160c0606084015262001a1160e084018262001988565b90506060840151601f1984830301608085015262001a308282620019b6565b60808601516001600160a01b0390811660a0878101919091529096015190951660c090940193909352509192915050565b60006020828403121562001a7457600080fd5b81356001600160e01b0319811681146200062757600080fd5b80356001600160a01b038116811462001aa557600080fd5b919050565b6000806040838503121562001abe57600080fd5b8235915062001ad06020840162001a8d565b90509250929050565b6000806040838503121562001aed57600080fd5b62001af88362001a8d565b915062001ad06020840162001a8d565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171562001b495762001b4962001b08565b604052919050565b600082601f83011262001b6357600080fd5b81356001600160401b0381111562001b7f5762001b7f62001b08565b62001b94601f8201601f191660200162001b1e565b81815284602083860101111562001baa57600080fd5b816020850160208301376000918101602001919091529392505050565b60006040828403121562001bda57600080fd5b604080519081016001600160401b03808211838310171562001c005762001c0062001b08565b8160405282935084358352602085013591508082111562001c2057600080fd5b5062001c2f8582860162001b51565b6020830152505092915050565b600082601f83011262001c4e57600080fd5b813560206001600160401b0382111562001c6c5762001c6c62001b08565b8160051b62001c7d82820162001b1e565b928352848101820192828101908785111562001c9857600080fd5b83870192505b8483101562001cc25762001cb28362001a8d565b8252918301919083019062001c9e565b979650505050505050565b600080600080600060a0868803121562001ce657600080fd5b8535945060208601356001600160401b038082111562001d0557600080fd5b62001d1389838a0162001b51565b9550604088013591508082111562001d2a57600080fd5b62001d3889838a0162001bc7565b945062001d486060890162001a8d565b9350608088013591508082111562001d5f57600080fd5b5062001d6e8882890162001c3c565b9150509295509295909350565b60006020828403121562001d8e57600080fd5b620006278262001a8d565b6000806040838503121562001dad57600080fd5b8235915060208301356001600160401b0381111562001dcb57600080fd5b62001dd98582860162001c3c565b9150509250929050565b6001600160a01b0391909116815260200190565b6000806040838503121562001e0b57600080fd5b8235915060208301356001600160401b0381111562001e2957600080fd5b62001dd98582860162001bc7565b6000806040838503121562001e4b57600080fd5b8235915060208301356001600160401b0381111562001e6957600080fd5b62001dd98582860162001b51565b86815285602082015260c06040820152600062001e9860c083018762001988565b828103606084015262001eac8187620019b6565b6001600160a01b0395861660808501529390941660a0909201919091525095945050505050565b600181811c9082168062001ee857607f821691505b60208210810362001f0957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121562001f2257600080fd5b5051919050565b601f8211156200081d57600081815260208120601f850160051c8101602086101562001f525750805b601f850160051c820191505b8181101562001f735782815560010162001f5e565b505050505050565b81516001600160401b0381111562001f975762001f9762001b08565b62001faf8162001fa8845462001ed3565b8462001f29565b602080601f83116001811462001fe7576000841562001fce5750858301515b600019600386901b1c1916600185901b17855562001f73565b600085815260208120601f198616915b82811015620020185788860151825594840194600190910190840162001ff7565b5085821015620020375787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b85815260a0602082015260006200207860a083018762001988565b82810360408401526200208c8187620019b6565b6001600160a01b0395861660608501529390941660809092019190915250949350505050565b602081526000620006276020830184620019b6565b604081526000620020dc604083018562001988565b905060018060a01b03831660208301529392505050565b828152604060208201526000620019d7604083018462001988565b9182526001600160a01b0316602082015260400190565b600083516200213981846020880162001962565b8351908301906200214f81836020880162001962565b01949350505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200218c81601785016020880162001962565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351620021bf81602884016020880162001962565b01602801949350505050565b60208152600062000627602083018462001988565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417620006135762000613620021e0565b80820180821115620006135762000613620021e0565b600081620022385762002238620021e0565b50600019019056fe60c060405234801561001057600080fd5b5060405161087a38038061087a83398101604081905261002f91610043565b6001600160a01b031660805260a052610080565b6000806040838503121561005657600080fd5b825160208401519092506001600160a01b038116811461007557600080fd5b809150509250929050565b60805160a0516107c86100b26000396000818160b7015261024201526000818161013d015261027101526107c86000f3fe6080604052600436106100645760003560e01c806301ffc9a71461007057806308386eba146100a5578063150b7a02146100e75780637b1039991461012b578063b61d27f614610177578063bc197c81146101a4578063f23a6e61146101d057600080fd5b3661006b57005b600080fd5b34801561007c57600080fd5b5061009061008b3660046103b2565b6101fc565b60405190151581526020015b60405180910390f35b3480156100b157600080fd5b506100d97f000000000000000000000000000000000000000000000000000000000000000081565b60405190815260200161009c565b3480156100f357600080fd5b506101126101023660046104b4565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200161009c565b34801561013757600080fd5b5061015f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161009c565b34801561018357600080fd5b5061019761019236600461051b565b610233565b60405161009c9190610595565b3480156101b057600080fd5b506101126101bf366004610647565b63bc197c8160e01b95945050505050565b3480156101dc57600080fd5b506101126101eb3660046106f0565b63f23a6e6160e01b95945050505050565b60006001600160e01b03198216630271189760e51b148061022d57506301ffc9a760e01b6001600160e01b03198316145b92915050565b604051630e6e1ae360e21b81527f000000000000000000000000000000000000000000000000000000000000000060048201523360248201526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906339b86b8c90604401602060405180830381865afa1580156102c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e49190610754565b6103015760405163075fd2b160e01b815260040160405180910390fd5b6001600160a01b038416610328576040516384aed38d60e01b815260040160405180910390fd5b600080856001600160a01b031685856040516103449190610776565b60006040518083038185875af1925050503d8060008114610381576040519150601f19603f3d011682016040523d82523d6000602084013e610386565b606091505b5091509150816103a9576040516384aed38d60e01b815260040160405180910390fd5b95945050505050565b6000602082840312156103c457600080fd5b81356001600160e01b0319811681146103dc57600080fd5b9392505050565b80356001600160a01b03811681146103fa57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561043d5761043d6103ff565b604052919050565b600082601f83011261045657600080fd5b81356001600160401b0381111561046f5761046f6103ff565b610482601f8201601f1916602001610415565b81815284602083860101111561049757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080608085870312156104ca57600080fd5b6104d3856103e3565b93506104e1602086016103e3565b92506040850135915060608501356001600160401b0381111561050357600080fd5b61050f87828801610445565b91505092959194509250565b60008060006060848603121561053057600080fd5b610539846103e3565b92506020840135915060408401356001600160401b0381111561055b57600080fd5b61056786828701610445565b9150509250925092565b60005b8381101561058c578181015183820152602001610574565b50506000910152565b60208152600082518060208401526105b4816040850160208701610571565b601f01601f19169190910160400192915050565b600082601f8301126105d957600080fd5b813560206001600160401b038211156105f4576105f46103ff565b8160051b610603828201610415565b928352848101820192828101908785111561061d57600080fd5b83870192505b8483101561063c57823582529183019190830190610623565b979650505050505050565b600080600080600060a0868803121561065f57600080fd5b610668866103e3565b9450610676602087016103e3565b935060408601356001600160401b038082111561069257600080fd5b61069e89838a016105c8565b945060608801359150808211156106b457600080fd5b6106c089838a016105c8565b935060808801359150808211156106d657600080fd5b506106e388828901610445565b9150509295509295909350565b600080600080600060a0868803121561070857600080fd5b610711866103e3565b945061071f602087016103e3565b9350604086013592506060860135915060808601356001600160401b0381111561074857600080fd5b6106e388828901610445565b60006020828403121561076657600080fd5b815180151581146103dc57600080fd5b60008251610788818460208701610571565b919091019291505056fea2646970667358221220f683c118d1f99152da2da274fd5fdcf7d33f2aa4c7f93e8e53102f9ed349209264736f6c63430008130033815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747a26469706673582212202f846a97b4ce0f385a853a4b0d3db686ccd69c7212dee8d0688cc3d89c35c3dd64736f6c63430008130033","sourceMap":"5237:15930:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7472:131;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3057:213:43;;;;;;:::i;:::-;;:::i;:::-;;;2359:14:136;;2352:22;2334:41;;2322:2;2307:18;3057:213:43;2194:187:136;13857:156:2;;;;;;:::i;:::-;;:::i;4862:129:43:-;;;;;;:::i;:::-;;:::i;:::-;;;2969:25:136;;;2957:2;2942:18;4862:129:43;2823:177:136;15016:745:2;;;;;;:::i;:::-;;:::i;:::-;;20847:318;;;;;;:::i;:::-;;:::i;5287:145:43:-;;;;;;:::i;:::-;;:::i;6396:214::-;;;;;;:::i;:::-;;:::i;13452:152:2:-;;;;;;:::i;:::-;;:::i;8781:1901::-;;;;;;:::i;:::-;;:::i;14336:382::-;;;;;;:::i;:::-;;:::i;5544:52::-;;;;;;:::i;:::-;;;;;;;;;;;;;;15962:658;;;;;;:::i;:::-;;:::i;5859:58::-;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;5859:58:2;;;;;;;;;;:::i;12992:208::-;;;;;;:::i;:::-;;:::i;3357:145:43:-;;;;;;:::i;:::-;;:::i;4412:75:9:-;;4445:42;4412:75;;2336:49:43;;2381:4;2336:49;;12309:415:2;;;;;;:::i;:::-;;:::i;6841:257::-;;;;;;:::i;:::-;;:::i;11210:830::-;;;;;;:::i;:::-;;:::i;5974:60::-;;-1:-1:-1;;;;;;;;;;;5974:60:2;;5712:147:43;;;;;;:::i;:::-;;:::i;7837:187:2:-;;;;;;:::i;:::-;;:::i;16837:500::-;;;;;;:::i;:::-;;:::i;5702:47::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;:::i;7472:131::-;7539:14;;:::i;:::-;7572:12;:24;7585:10;7572:24;;;;;;;;;;;7565:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7565:31:2;;;;-1:-1:-1;;;7565:31:2;;;;;;-1:-1:-1;;;;;7565:31:2;;;;;;;;;;;;;;;;;;;;;7472:131;-1:-1:-1;;7472:131:2:o;3057:213:43:-;3142:4;-1:-1:-1;;;;;;3165:58:43;;-1:-1:-1;;;3165:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3227:36:43;3158:105;3057:213;-1:-1:-1;;3057:213:43:o;13857:156:2:-;13944:4;13967:39;13986:10;13998:7;13967:18;:39::i;:::-;13960:46;13857:156;-1:-1:-1;;;13857:156:2:o;4862:129:43:-;4936:7;4962:12;;;:6;:12;;;;;:22;;;;4862:129::o;15016:745:2:-;15131:23;15157:24;;;:12;:24;;;;;;;;15301:23;:35;;;;;;;-1:-1:-1;;;;;15301:35:2;15414:10;:22;;15410:54;;15445:19;;-1:-1:-1;;;15445:19:2;;;;;;;;;;;15410:54;15550:13;;;:24;;-1:-1:-1;;;;;15550:24:2;;;-1:-1:-1;;;;;;15550:24:2;;;;;;:13;15591:35;;;:23;:35;;;;;;;15584:42;;;;;;;;15740:13;;15708:46;;15615:10;;15708:46;;;;15740:13;;;15708:46;:::i;:::-;;;;;;;;15077:684;;15016:745;:::o;20847:318::-;-1:-1:-1;;;;;;;;;;;2814:16:43;2825:4;2814:10;:16::i;:::-;-1:-1:-1;;;;;20949:24:2;::::1;20945:51;;20982:14;;-1:-1:-1::0;;;20982:14:2::1;;;;;;;;;;;20945:51;21007:14;-1:-1:-1::0;;;;;21024:16:2;::::1;4445:42:9;21024:16:2;:81;;21067:38;::::0;-1:-1:-1;;;21067:38:2;;-1:-1:-1;;;;;21067:23:2;::::1;::::0;::::1;::::0;:38:::1;::::0;21099:4:::1;::::0;21067:38:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21024:81;;;21043:21;21024:81;21007:98;;21115:43;21131:6;21139:10;21151:6;21115:15;:43::i;:::-;20935:230;20847:318:::0;;;:::o;5287:145:43:-;5370:18;5383:4;5370:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5400:25:::1;5411:4;5417:7;5400:10;:25::i;:::-;5287:145:::0;;;:::o;6396:214::-;-1:-1:-1;;;;;6491:23:43;;965:10:51;6491:23:43;6483:83;;;;-1:-1:-1;;;6483:83:43;;9683:2:136;6483:83:43;;;9665:21:136;9722:2;9702:18;;;9695:30;9761:34;9741:18;;;9734:62;-1:-1:-1;;;9812:18:136;;;9805:45;9867:19;;6483:83:43;;;;;;;;;6577:26;6589:4;6595:7;6577:11;:26::i;:::-;6396:214;;:::o;13452:152:2:-;13537:4;13560:37;13578:10;13590:6;13560:17;:37::i;8781:1901::-;8975:7;9060:17;9080:34;9099:6;9107;9080:18;:34::i;:::-;9215:1;9173:23;;;:12;:23;;;;;:30;;;9060:54;;-1:-1:-1;;;;;;9173:30:2;:44;9169:78;;9226:21;;-1:-1:-1;;;9226:21:2;;;;;;;;;;;9169:78;-1:-1:-1;;;;;9317:20:2;;9313:47;;9346:14;;-1:-1:-1;;;9346:14:2;;;;;;;;;;;9313:47;9447:22;9472:213;;;;;;;;9498:9;9472:213;;;;9528:6;9472:213;;;;9554:5;9472:213;;;;9583:9;9472:213;;;;9613:6;-1:-1:-1;;;;;9472:213:2;;;;;9641:33;9657:9;9668:5;9641:15;:33::i;:::-;-1:-1:-1;;;;;9472:213:2;;;9696:23;;;;:12;:23;;;;;;;;;:33;;;;;;;;;;;;;;;;9447:238;;-1:-1:-1;9447:238:2;;9696:33;;;;;;;;:::i;:::-;-1:-1:-1;9696:33:2;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;9696:33:2;;;;;;;;;-1:-1:-1;;;;;;9696:33:2;;;-1:-1:-1;;;;;9696:33:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9757:14;;;;9739:33;-1:-1:-1;9739:33:2;;;:17;:33;;;;;:45;;;9866:15;;9942:16;;;;;:40;;-1:-1:-1;;;;;;9962:20:2;;9972:10;9962:20;;9942:40;9938:92;;;10005:14;;-1:-1:-1;;;10005:14:2;;;;;;;;;;;9938:92;10045:9;10040:402;10060:12;10056:1;:16;10040:402;;;10089:14;10106:8;10115:1;10106:11;;;;;;;;:::i;:::-;;;;;;;10089:28;;10224:1;-1:-1:-1;;;;;10206:20:2;:6;-1:-1:-1;;;;;10206:20:2;;10202:47;;10235:14;;-1:-1:-1;;;10235:14:2;;;;;;;;;;;10202:47;10343:29;10354:9;10365:6;10343:10;:29::i;:::-;-1:-1:-1;10414:3:2;;10040:402;;;;10527:9;10512:103;10538:7;:13;;;10553:7;:12;;;10567:7;:16;;;10585:7;:13;;;10600:7;:14;;;10512:103;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;10666:9:2;;8781:1901;-1:-1:-1;;;;;;;8781:1901:2:o;14336:382::-;14456:10;6416:34;6439:10;6416:22;:34::i;:::-;14530:35:::1;::::0;;;:23:::1;:35;::::0;;;;;;:51;;-1:-1:-1;;;;;;14530:51:2::1;-1:-1:-1::0;;;;;14530:51:2;::::1;;::::0;;14658:53;14530:35;;14658:53:::1;::::0;::::1;::::0;14530:51;;14658:53:::1;:::i;15962:658::-:0;16055:10;6416:34;6439:10;6416:22;:34::i;:::-;16100:15;;16077:20:::1;16211:403;16231:12;16227:1;:16;16211:403;;;16260:14;16277:8;16286:1;16277:11;;;;;;;;:::i;:::-;;;;;;;16260:28;;16395:1;-1:-1:-1::0;;;;;16377:20:2::1;:6;-1:-1:-1::0;;;;;16377:20:2::1;::::0;16373:47:::1;;16406:14;;-1:-1:-1::0;;;16406:14:2::1;;;;;;;;;;;16373:47;16514:30;16525:10;16537:6;16514:10;:30::i;:::-;-1:-1:-1::0;16586:3:2::1;;16211:403;;;;16067:553;15962:658:::0;;;:::o;12992:208::-;13087:4;13110:39;13128:10;13140:8;13110:17;:39::i;:::-;:83;;;;13153:40;13172:10;13184:8;13153:18;:40::i;3357:145:43:-;3443:4;3466:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3466:29:43;;;;;;;;;;;;;;;3357:145::o;12309:415:2:-;12429:10;6416:34;6439:10;6416:22;:34::i;:::-;12553:24:::1;::::0;;;:12:::1;:24;::::0;;;;;;;:45;;:33:::1;::::0;::::1;:45:::0;;;;;::::1;::::0;12589:9;;12553:33;:45;;;::::1;::::0;;::::1;:::i;:::-;;;;;12695:10;12672:45;12707:9;12672:45;;;;;;:::i;6841:257::-:0;4882:13:47;;6900:1:2;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;13402:2:136;4873:99:47;;;13384:21:136;13441:2;13421:18;;;13414:30;13480:34;13460:18;;;13453:62;-1:-1:-1;;;13531:18:136;;;13524:44;13585:19;;4873:99:47;13200:410:136;4873:99:47;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;-1:-1:-1;;;;;6968:20:2;::::1;6964:47;;6997:14;;-1:-1:-1::0;;;6997:14:2::1;;;;;;;;;;;6964:47;7061:30;-1:-1:-1::0;;;;;;;;;;;7084:6:2::1;7061:10;:30::i;:::-;5071:5:47::0;5055:21;;-1:-1:-1;;5055:21:47;;;5091:20;;13787:4:136;13775:17;;13757:36;;5091:20:47;;13745:2:136;13730:18;5091:20:47;;;;;;;6841:257:2;;:::o;11210:830::-;11349:14;11320:10;6416:34;6439:10;6416:22;:34::i;:::-;11429::::1;11445:10;11457:5;11429:15;:34::i;:::-;11538:23;11564:24:::0;;;:12:::1;:24;::::0;;;;11420:43;;-1:-1:-1;11627:12:2::1;::::0;::::1;:20;11642:5:::0;11627:12;:20:::1;:::i;:::-;-1:-1:-1::0;11705:14:2::1;::::0;::::1;::::0;;-1:-1:-1;;;;;11705:14:2;;::::1;11731:1;11687:33:::0;;;:17:::1;:33;::::0;;;;;:46;;;11774:23;;-1:-1:-1;;;;;;11774:23:2::1;::::0;;::::1;::::0;;::::1;::::0;;;11807:25;;;;;;:38;;;11931:45;11807:38;;11931:45:::1;::::0;::::1;::::0;11962:5;;11774:23;;11931:45:::1;:::i;:::-;;;;;;;;12020:13;11210:830:::0;;;;;:::o;5712:147:43:-;5796:18;5809:4;5796:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5826:26:::1;5838:4;5844:7;5826:11;:26::i;7837:187:2:-:0;7905:14;;:::i;:::-;-1:-1:-1;;;;;7951:26:2;;7931:17;7951:26;;;:17;:26;;;;;;;;;7994:23;;;:12;:23;;;;;;7987:30;;;;;;;;;;;;;;;;;;;;;;;;;;;7994:23;;7987:30;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7987:30:2;;;;-1:-1:-1;;;7987:30:2;;;;;;-1:-1:-1;;;;;7987:30:2;;;;;;;;;;;;;;;;;;;;;7837:187;-1:-1:-1;;;7837:187:2:o;16837:500::-;16933:10;6416:34;6439:10;6416:22;:34::i;:::-;16978:15;;16955:20:::1;17094:237;17114:12;17110:1;:16;17094:237;;;17225:36;17237:10;17249:8;17258:1;17249:11;;;;;;;;:::i;:::-;;;;;;;17225;:36::i;:::-;17303:3;;17094:237;;5702:47:::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5702:47:2;;;;-1:-1:-1;;;5702:47:2;;;;;;;;;;;-1:-1:-1;;;;;5702:47:2;;;;;;:::o;20464:146::-;20552:4;20575:28;20583:10;20595:7;20575;:28::i;3796:103:43:-;3862:30;3873:4;965:10:51;3862::43;:30::i;:::-;3796:103;:::o;6721:269:10:-;-1:-1:-1;;;;;;;6815:16:10;;;6811:173;;6847:45;6879:3;6884:7;6847:31;:45::i;6811:173::-;6923:50;6952:6;6960:3;6965:7;6923:28;:50::i;7945:233:43:-;8028:22;8036:4;8042:7;8028;:22::i;:::-;8023:149;;8066:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8066:29:43;;;;;;;;;:36;;-1:-1:-1;;8066:36:43;8098:4;8066:36;;;8148:12;965:10:51;;886:96;8148:12:43;-1:-1:-1;;;;;8121:40:43;8139:7;-1:-1:-1;;;;;8121:40:43;8133:4;8121:40;;;;;;;;;;7945:233;;:::o;8349:234::-;8432:22;8440:4;8446:7;8432;:22::i;:::-;8428:149;;;8502:5;8470:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8470:29:43;;;;;;;;;;:37;;-1:-1:-1;;8470:37:43;;;8526:40;965:10:51;;8470:12:43;;8526:40;;8502:5;8526:40;8349:234;;:::o;19963:156:2:-;20049:4;20072:24;;;:12;:24;;;;;;:30;;;-1:-1:-1;;;;;20072:40:2;;;:30;;:40;;19963:156::o;19465:159::-;19548:7;19601:6;19609;19584:32;;;;;;;;14283:19:136;;;14365:2;14336:15;-1:-1:-1;;;;;;14332:45:136;14327:2;14318:12;;14311:67;14403:2;14394:12;;14126:286;19584:32:2;;;;;;;;;;;;;19574:43;;;;;;19567:50;;19465:159;;;;:::o;18166:969::-;18250:14;18276:24;18314:10;18326:5;18303:29;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18276:56;;18342:35;18391:10;18411:4;18380:37;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18342:75;;18428:21;18469:25;;;;;;;;:::i;:::-;-1:-1:-1;;18469:25:2;;;;;;;;;;;;;;;;18452:67;;18469:25;18496:22;;18469:25;18452:67;;:::i;:::-;;;;-1:-1:-1;;18452:67:2;;;;;;;;;;18545:22;;18452:67;18545:22;;;;;;;18706:19;;;;;;-1:-1:-1;;;;;;18654:72:2;;;15700:39:136;;;;-1:-1:-1;;;;;;18693:4:2;15801:2:136;15772:15;15768:45;15755:11;;;15748:66;15830:12;;;15823:28;;;15867:12;;;15860:28;;;;18452:67:2;;-1:-1:-1;18545:22:2;18530:12;;15904::136;;18654:72:2;;;;;;;;;;;;18644:83;;;;;;18636:92;;18578:161;;18860:4;18866:10;18886:4;18843:49;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18839:290;;19044:10;19008:18;-1:-1:-1;;;;;18993:45:2;;:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:61;18989:88;;19063:14;;-1:-1:-1;;;19063:14:2;;;;;;;;;;;18989:88;19100:18;19091:27;;18839:290;;;18949:7;-1:-1:-1;18839:290:2;18266:869;;;;;18166:969;;;;:::o;17659:152::-;17740:41;17758:10;17770;17740:17;:41::i;:::-;17735:69;;17790:14;;-1:-1:-1;;;17790:14:2;;;;;;;;;;;4180:501:43;4268:22;4276:4;4282:7;4268;:22::i;:::-;4263:412;;4451:39;4482:7;4451:30;:39::i;:::-;4561:49;4600:4;4607:2;4561:30;:49::i;:::-;4358:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4358:274:43;;;;;;;;;;-1:-1:-1;;;4306:358:43;;;;;;;:::i;2455:490:14:-;2711:4;2705;2699;2693;2685:6;2681:2;2674:5;2669:47;2659:270;;2822:10;2816:4;2809:24;2910:4;2904;2897:18;11454:1189;11617:2;11611:4;11604:16;11674:6;11668:4;11661:20;-1:-1:-1;;;11808:4:14;11801:48;12272:4;12266;12260;12254;12251:1;12244:5;12237;12232:45;12192:16;12185:24;12181:1;12174:4;12168:11;12165:18;12162:48;11890:405;11863:655;;12411:10;12405:4;12398:24;12499:4;12493;12486:18;11863:655;12625:1;12619:4;12612:15;11454:1189;;;:::o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;17936:2:136;2228:55:52;;;17918:21:136;;;17955:18;;;17948:30;18014:34;17994:18;;;17987:62;18066:18;;2228:55:52;17734:356:136;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;:::o;14:180:136:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:136;;14:180;-1:-1:-1;14:180:136:o;199:250::-;284:1;294:113;308:6;305:1;302:13;294:113;;;384:11;;;378:18;365:11;;;358:39;330:2;323:10;294:113;;;-1:-1:-1;;441:1:136;423:16;;416:27;199:250::o;454:271::-;496:3;534:5;528:12;561:6;556:3;549:19;577:76;646:6;639:4;634:3;630:14;623:4;616:5;612:16;577:76;:::i;:::-;707:2;686:15;-1:-1:-1;;682:29:136;673:39;;;;714:4;669:50;;454:271;-1:-1:-1;;454:271:136:o;730:252::-;817:5;811:12;806:3;799:25;781:3;870:4;863:5;859:16;853:23;908:4;901;896:3;892:14;885:28;929:47;970:4;965:3;961:14;947:12;929:47;:::i;:::-;922:54;730:252;-1:-1:-1;;;;730:252:136:o;987:911::-;1166:2;1155:9;1148:21;1211:6;1205:13;1200:2;1189:9;1185:18;1178:41;1273:2;1265:6;1261:15;1255:22;1250:2;1239:9;1235:18;1228:50;1129:4;1325:2;1317:6;1313:15;1307:22;1365:4;1360:2;1349:9;1345:18;1338:32;1393:52;1440:3;1429:9;1425:19;1411:12;1393:52;:::i;:::-;1379:66;;1494:2;1486:6;1482:15;1476:22;1567:2;1563:7;1551:9;1543:6;1539:22;1535:36;1529:3;1518:9;1514:19;1507:65;1595:50;1638:6;1622:14;1595:50;:::i;:::-;1694:3;1682:16;;1676:23;-1:-1:-1;;;;;1774:23:136;;;1726:3;1753:19;;;1746:52;;;;1846:16;;;1840:23;1836:32;;;1829:4;1814:20;;;1807:62;;;;-1:-1:-1;1581:64:136;;987:911;-1:-1:-1;;987:911:136:o;1903:286::-;1961:6;2014:2;2002:9;1993:7;1989:23;1985:32;1982:52;;;2030:1;2027;2020:12;1982:52;2056:23;;-1:-1:-1;;;;;;2108:32:136;;2098:43;;2088:71;;2155:1;2152;2145:12;2386:173;2454:20;;-1:-1:-1;;;;;2503:31:136;;2493:42;;2483:70;;2549:1;2546;2539:12;2483:70;2386:173;;;:::o;2564:254::-;2632:6;2640;2693:2;2681:9;2672:7;2668:23;2664:32;2661:52;;;2709:1;2706;2699:12;2661:52;2745:9;2732:23;2722:33;;2774:38;2808:2;2797:9;2793:18;2774:38;:::i;:::-;2764:48;;2564:254;;;;;:::o;3005:260::-;3073:6;3081;3134:2;3122:9;3113:7;3109:23;3105:32;3102:52;;;3150:1;3147;3140:12;3102:52;3173:29;3192:9;3173:29;:::i;:::-;3163:39;;3221:38;3255:2;3244:9;3240:18;3221:38;:::i;3270:127::-;3331:10;3326:3;3322:20;3319:1;3312:31;3362:4;3359:1;3352:15;3386:4;3383:1;3376:15;3402:275;3473:2;3467:9;3538:2;3519:13;;-1:-1:-1;;3515:27:136;3503:40;;-1:-1:-1;;;;;3558:34:136;;3594:22;;;3555:62;3552:88;;;3620:18;;:::i;:::-;3656:2;3649:22;3402:275;;-1:-1:-1;3402:275:136:o;3682:531::-;3725:5;3778:3;3771:4;3763:6;3759:17;3755:27;3745:55;;3796:1;3793;3786:12;3745:55;3819:20;;-1:-1:-1;;;;;3851:26:136;;3848:52;;;3880:18;;:::i;:::-;3924:55;3967:2;3948:13;;-1:-1:-1;;3944:27:136;3973:4;3940:38;3924:55;:::i;:::-;4004:2;3995:7;3988:19;4050:3;4043:4;4038:2;4030:6;4026:15;4022:26;4019:35;4016:55;;;4067:1;4064;4057:12;4016:55;4132:2;4125:4;4117:6;4113:17;4106:4;4097:7;4093:18;4080:55;4180:1;4155:16;;;4173:4;4151:27;4144:38;;;;4159:7;3682:531;-1:-1:-1;;;3682:531:136:o;4218:610::-;4273:5;4321:4;4309:9;4304:3;4300:19;4296:30;4293:50;;;4339:1;4336;4329:12;4293:50;4372:4;4366:11;;;4404:17;;-1:-1:-1;;;;;4473:18:136;;;4493:22;;;4470:46;4467:72;;;4519:18;;:::i;:::-;4561:10;4555:4;4548:24;4590:6;4581:15;;4633:9;4620:23;4612:6;4605:39;4695:2;4684:9;4680:18;4667:32;4653:46;;4722:2;4714:6;4711:14;4708:34;;;4738:1;4735;4728:12;4708:34;;4775:46;4817:3;4808:6;4797:9;4793:22;4775:46;:::i;:::-;4770:2;4762:6;4758:15;4751:71;;;4218:610;;;;:::o;4833:718::-;4887:5;4940:3;4933:4;4925:6;4921:17;4917:27;4907:55;;4958:1;4955;4948:12;4907:55;4981:20;;5020:4;-1:-1:-1;;;;;5036:26:136;;5033:52;;;5065:18;;:::i;:::-;5111:2;5108:1;5104:10;5134:28;5158:2;5154;5150:11;5134:28;:::i;:::-;5196:15;;;5266;;;5262:24;;;5227:12;;;;5298:15;;;5295:35;;;5326:1;5323;5316:12;5295:35;5362:2;5354:6;5350:15;5339:26;;5374:148;5390:6;5385:3;5382:15;5374:148;;;5456:23;5475:3;5456:23;:::i;:::-;5444:36;;5407:12;;;;5500;;;;5374:148;;;5540:5;4833:718;-1:-1:-1;;;;;;;4833:718:136:o;5556:938::-;5712:6;5720;5728;5736;5744;5797:3;5785:9;5776:7;5772:23;5768:33;5765:53;;;5814:1;5811;5804:12;5765:53;5837:23;;;-1:-1:-1;5911:2:136;5896:18;;5883:32;-1:-1:-1;;;;;5964:14:136;;;5961:34;;;5991:1;5988;5981:12;5961:34;6014:50;6056:7;6047:6;6036:9;6032:22;6014:50;:::i;:::-;6004:60;;6117:2;6106:9;6102:18;6089:32;6073:48;;6146:2;6136:8;6133:16;6130:36;;;6162:1;6159;6152:12;6130:36;6185:61;6238:7;6227:8;6216:9;6212:24;6185:61;:::i;:::-;6175:71;;6265:38;6299:2;6288:9;6284:18;6265:38;:::i;:::-;6255:48;;6356:3;6345:9;6341:19;6328:33;6312:49;;6386:2;6376:8;6373:16;6370:36;;;6402:1;6399;6392:12;6370:36;;6425:63;6480:7;6469:8;6458:9;6454:24;6425:63;:::i;:::-;6415:73;;;5556:938;;;;;;;;:::o;6499:186::-;6558:6;6611:2;6599:9;6590:7;6586:23;6582:32;6579:52;;;6627:1;6624;6617:12;6579:52;6650:29;6669:9;6650:29;:::i;6690:416::-;6783:6;6791;6844:2;6832:9;6823:7;6819:23;6815:32;6812:52;;;6860:1;6857;6850:12;6812:52;6883:23;;;-1:-1:-1;6957:2:136;6942:18;;6929:32;-1:-1:-1;;;;;6973:30:136;;6970:50;;;7016:1;7013;7006:12;6970:50;7039:61;7092:7;7083:6;7072:9;7068:22;7039:61;:::i;:::-;7029:71;;;6690:416;;;;;:::o;7111:203::-;-1:-1:-1;;;;;7275:32:136;;;;7257:51;;7245:2;7230:18;;7111:203::o;7319:415::-;7413:6;7421;7474:2;7462:9;7453:7;7449:23;7445:32;7442:52;;;7490:1;7487;7480:12;7442:52;7513:23;;;-1:-1:-1;7587:2:136;7572:18;;7559:32;-1:-1:-1;;;;;7603:30:136;;7600:50;;;7646:1;7643;7636:12;7600:50;7669:59;7720:7;7711:6;7700:9;7696:22;7669:59;:::i;7739:390::-;7817:6;7825;7878:2;7866:9;7857:7;7853:23;7849:32;7846:52;;;7894:1;7891;7884:12;7846:52;7917:23;;;-1:-1:-1;7991:2:136;7976:18;;7963:32;-1:-1:-1;;;;;8007:30:136;;8004:50;;;8050:1;8047;8040:12;8004:50;8073;8115:7;8106:6;8095:9;8091:22;8073:50;:::i;8134:768::-;8475:6;8464:9;8457:25;8518:6;8513:2;8502:9;8498:18;8491:34;8561:3;8556:2;8545:9;8541:18;8534:31;8438:4;8588:46;8629:3;8618:9;8614:19;8606:6;8588:46;:::i;:::-;8682:9;8674:6;8670:22;8665:2;8654:9;8650:18;8643:50;8710:42;8745:6;8737;8710:42;:::i;:::-;-1:-1:-1;;;;;8827:15:136;;;8821:3;8806:19;;8799:44;8880:15;;;;8779:3;8859:19;;;8852:44;;;;-1:-1:-1;8880:15:136;8702:50;-1:-1:-1;;;;;8134:768:136:o;8907:380::-;8986:1;8982:12;;;;9029;;;9050:61;;9104:4;9096:6;9092:17;9082:27;;9050:61;9157:2;9149:6;9146:14;9126:18;9123:38;9120:161;;9203:10;9198:3;9194:20;9191:1;9184:31;9238:4;9235:1;9228:15;9266:4;9263:1;9256:15;9120:161;;8907:380;;;:::o;9292:184::-;9362:6;9415:2;9403:9;9394:7;9390:23;9386:32;9383:52;;;9431:1;9428;9421:12;9383:52;-1:-1:-1;9454:16:136;;9292:184;-1:-1:-1;9292:184:136:o;10023:545::-;10125:2;10120:3;10117:11;10114:448;;;10161:1;10186:5;10182:2;10175:17;10231:4;10227:2;10217:19;10301:2;10289:10;10285:19;10282:1;10278:27;10272:4;10268:38;10337:4;10325:10;10322:20;10319:47;;;-1:-1:-1;10360:4:136;10319:47;10415:2;10410:3;10406:12;10403:1;10399:20;10393:4;10389:31;10379:41;;10470:82;10488:2;10481:5;10478:13;10470:82;;;10533:17;;;10514:1;10503:13;10470:82;;;10474:3;;;10023:545;;;:::o;10744:1352::-;10864:10;;-1:-1:-1;;;;;10886:30:136;;10883:56;;;10919:18;;:::i;:::-;10948:97;11038:6;10998:38;11030:4;11024:11;10998:38;:::i;:::-;10992:4;10948:97;:::i;:::-;11100:4;;11164:2;11153:14;;11181:1;11176:663;;;;11883:1;11900:6;11897:89;;;-1:-1:-1;11952:19:136;;;11946:26;11897:89;-1:-1:-1;;10701:1:136;10697:11;;;10693:24;10689:29;10679:40;10725:1;10721:11;;;10676:57;11999:81;;11146:944;;11176:663;9970:1;9963:14;;;10007:4;9994:18;;-1:-1:-1;;11212:20:136;;;11330:236;11344:7;11341:1;11338:14;11330:236;;;11433:19;;;11427:26;11412:42;;11525:27;;;;11493:1;11481:14;;;;11360:19;;11330:236;;;11334:3;11594:6;11585:7;11582:19;11579:201;;;11655:19;;;11649:26;-1:-1:-1;;11738:1:136;11734:14;;;11750:3;11730:24;11726:37;11722:42;11707:58;11692:74;;11579:201;-1:-1:-1;;;;;11826:1:136;11810:14;;;11806:22;11793:36;;-1:-1:-1;10744:1352:136:o;12101:127::-;12162:10;12157:3;12153:20;12150:1;12143:31;12193:4;12190:1;12183:15;12217:4;12214:1;12207:15;12233:696;12546:6;12535:9;12528:25;12589:3;12584:2;12573:9;12569:18;12562:31;12509:4;12616:46;12657:3;12646:9;12642:19;12634:6;12616:46;:::i;:::-;12710:9;12702:6;12698:22;12693:2;12682:9;12678:18;12671:50;12738:42;12773:6;12765;12738:42;:::i;:::-;-1:-1:-1;;;;;12854:15:136;;;12849:2;12834:18;;12827:43;12907:15;;;;12901:3;12886:19;;;12879:44;;;;-1:-1:-1;12730:50:136;12233:696;-1:-1:-1;;;;12233:696:136:o;12934:261::-;13115:2;13104:9;13097:21;13078:4;13135:54;13185:2;13174:9;13170:18;13162:6;13135:54;:::i;13804:317::-;13981:2;13970:9;13963:21;13944:4;14001:45;14042:2;14031:9;14027:18;14019:6;14001:45;:::i;:::-;13993:53;;14111:1;14107;14102:3;14098:11;14094:19;14086:6;14082:32;14077:2;14066:9;14062:18;14055:60;13804:317;;;;;:::o;14417:291::-;14594:6;14583:9;14576:25;14637:2;14632;14621:9;14617:18;14610:30;14557:4;14657:45;14698:2;14687:9;14683:18;14675:6;14657:45;:::i;14713:274::-;14887:25;;;-1:-1:-1;;;;;14948:32:136;14943:2;14928:18;;14921:60;14875:2;14860:18;;14713:274::o;14992:492::-;15167:3;15205:6;15199:13;15221:66;15280:6;15275:3;15268:4;15260:6;15256:17;15221:66;:::i;:::-;15350:13;;15309:16;;;;15372:70;15350:13;15309:16;15419:4;15407:17;;15372:70;:::i;:::-;15458:20;;14992:492;-1:-1:-1;;;;14992:492:136:o;16116:812::-;-1:-1:-1;;;16522:3:136;16515:38;16497:3;16582:6;16576:13;16598:75;16666:6;16661:2;16656:3;16652:12;16645:4;16637:6;16633:17;16598:75;:::i;:::-;-1:-1:-1;;;16732:2:136;16692:16;;;16724:11;;;16717:40;16782:13;;16804:76;16782:13;16866:2;16858:11;;16851:4;16839:17;;16804:76;:::i;:::-;16900:17;16919:2;16896:26;;16116:812;-1:-1:-1;;;;16116:812:136:o;16933:220::-;17082:2;17071:9;17064:21;17045:4;17102:45;17143:2;17132:9;17128:18;17120:6;17102:45;:::i;17158:127::-;17219:10;17214:3;17210:20;17207:1;17200:31;17250:4;17247:1;17240:15;17274:4;17271:1;17264:15;17290:168;17363:9;;;17394;;17411:15;;;17405:22;;17391:37;17381:71;;17432:18;;:::i;17463:125::-;17528:9;;;17549:10;;;17546:36;;;17562:18;;:::i;17593:136::-;17632:3;17660:5;17650:39;;17669:18;;:::i;:::-;-1:-1:-1;;;17705:18:136;;17593:136::o","linkReferences":{}},"methodIdentifiers":{"ALLO_OWNER()":"cfda7e0a","DEFAULT_ADMIN_ROLE()":"a217fddf","NATIVE()":"a0cf0aea","acceptProfileOwnership(bytes32)":"2497f3c6","addMembers(bytes32,address[])":"5063f361","anchorToProfileId(address)":"4756487f","createProfile(uint256,string,(uint256,string),address,address[])":"3a92f65f","getProfileByAnchor(address)":"dd93da43","getProfileById(bytes32)":"0114cf0a","getRoleAdmin(bytes32)":"248a9ca3","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","initialize(address)":"c4d66de8","isMemberOfProfile(bytes32,address)":"0ec1fbac","isOwnerOfProfile(bytes32,address)":"39b86b8c","isOwnerOrMemberOfProfile(bytes32,address)":"5e8a7915","profileIdToPendingOwner(bytes32)":"50d005e0","profilesById(bytes32)":"ee888196","recoverFunds(address,address)":"24ae6a27","removeMembers(bytes32,address[])":"e0cf1e4c","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","supportsInterface(bytes4)":"01ffc9a7","updateProfileMetadata(bytes32,(uint256,string))":"ac402839","updateProfileName(bytes32,string)":"cf189ff2","updateProfilePendingOwner(bytes32,address)":"3b66dacd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"ALLOCATION_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALLOCATION_NOT_ENDED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ALREADY_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AMOUNT_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ANCHOR_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ARRAY_MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_ADDRESS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_FEE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_METADATA\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"INVALID_REGISTRATION\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"IS_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"MISMATCH\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NONCE_NOT_AVAILABLE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_APPROVED_STRATEGY\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_ENOUGH_FUNDS\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_IMPLEMENTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_INITIALIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NOT_PENDING_OWNER\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"POOL_INACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_ALREADY_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"recipientId\",\"type\":\"address\"}],\"name\":\"RECIPIENT_ERROR\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RECIPIENT_NOT_ACCEPTED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"REGISTRATION_NOT_ACTIVE\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UNAUTHORIZED\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZERO_ADDRESS\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"name\":\"ProfileCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"}],\"name\":\"ProfileMetadataUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"name\":\"ProfileNameUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"ProfileOwnerUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"pendingOwner\",\"type\":\"address\"}],\"name\":\"ProfilePendingOwnerUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"ALLO_OWNER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"}],\"name\":\"acceptProfileOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address[]\",\"name\":\"_members\",\"type\":\"address[]\"}],\"name\":\"addMembers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"anchorToProfileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"_members\",\"type\":\"address[]\"}],\"name\":\"createProfile\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_anchor\",\"type\":\"address\"}],\"name\":\"getProfileByAnchor\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"id\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"internalType\":\"struct IRegistry.Profile\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"}],\"name\":\"getProfileById\",\"outputs\":[{\"components\":[{\"internalType\":\"bytes32\",\"name\":\"id\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"internalType\":\"struct IRegistry.Profile\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMemberOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"isOwnerOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_account\",\"type\":\"address\"}],\"name\":\"isOwnerOrMemberOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"profileIdToPendingOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"profilesById\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"id\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"metadata\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_recipient\",\"type\":\"address\"}],\"name\":\"recoverFunds\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address[]\",\"name\":\"_members\",\"type\":\"address[]\"}],\"name\":\"removeMembers\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"updateProfileMetadata\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"_name\",\"type\":\"string\"}],\"name\":\"updateProfileName\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"anchor\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_pendingOwner\",\"type\":\"address\"}],\"name\":\"updateProfilePendingOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"@thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \",\"details\":\"This contract is used to create and manage profiles for the Allo protocol It is also used to deploy the anchor contract for each profile which acts as a proxy for the profile and is used to receive funds and execute transactions on behalf of the profile The Registry is also used to add and remove members from a profile and update the profile 'Metadata'\",\"errors\":{\"ANCHOR_ERROR()\":[{\"details\":\"Thrown if the anchor creation fails\"}],\"NONCE_NOT_AVAILABLE()\":[{\"details\":\"Thrown when the nonce passed has been used or not available\"}],\"NOT_PENDING_OWNER()\":[{\"details\":\"Thrown when the 'msg.sender' is not the pending owner on ownership transfer\"}]},\"events\":{\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"ProfileCreated(bytes32,uint256,string,(uint256,string),address,address)\":{\"details\":\"Emitted when a profile is created. This will return your anchor address.\"},\"ProfileMetadataUpdated(bytes32,(uint256,string))\":{\"details\":\"Emitted when a profile's metadata is updated.\"},\"ProfileNameUpdated(bytes32,string,address)\":{\"details\":\"Emitted when a profile name is updated. This will update the anchor when the name is updated and return it.\"},\"ProfileOwnerUpdated(bytes32,address)\":{\"details\":\"Emitted when a profile owner is updated.\"},\"ProfilePendingOwnerUpdated(bytes32,address)\":{\"details\":\"Emitted when a profile pending owner is updated.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"}},\"kind\":\"dev\",\"methods\":{\"acceptProfileOwnership(bytes32)\":{\"details\":\"'msg.sender' must be the pending owner of the profile. [2]*This is step two of two when transferring ownership.\",\"params\":{\"_profileId\":\"The ID of the profile\"}},\"addMembers(bytes32,address[])\":{\"details\":\"'msg.sender' must be the owner of the profile.\",\"params\":{\"_members\":\"The members to add\",\"_profileId\":\"The ID of the profile\"}},\"createProfile(uint256,string,(uint256,string),address,address[])\":{\"details\":\"This will also generate the 'profileId' and 'anchor' address, emits a 'ProfileCreated()' event Note: The 'nonce' is used to generate the 'profileId' and should be unique for each profile Note: The 'name' and 'profileId' are used to generate the 'anchor' address\",\"params\":{\"_members\":\"The members of the profile (can be set only if msg.sender == _owner)\",\"_metadata\":\"The metadata of the profile\",\"_name\":\"The name of the profile\",\"_nonce\":\"Nonce used to generate profileId. Can be any integer, but should be unique for each profile.\",\"_owner\":\"The owner of the profile\"},\"returns\":{\"_0\":\"The ID for the created profile\"}},\"getProfileByAnchor(address)\":{\"details\":\"Used when you have the 'anchor' address and want to retrieve the profile\",\"params\":{\"_anchor\":\"The anchor of the profile\"},\"returns\":{\"_0\":\"Profile details for the `_anchor`\"}},\"getProfileById(bytes32)\":{\"details\":\"Used when you have the 'profileId' and want to retrieve the profile\",\"params\":{\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"The Profile details for the `_profileId`\"}},\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"initialize(address)\":{\"details\":\"During upgrade -> a higher version should be passed to reinitializer. Reverts if the '_owner' is the 'address(0)'\",\"params\":{\"_owner\":\"The owner of the contract\"}},\"isMemberOfProfile(bytes32,address)\":{\"params\":{\"_member\":\"The address to check\",\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"'true' if the address is a member of the profile, otherwise 'false'\"}},\"isOwnerOfProfile(bytes32,address)\":{\"params\":{\"_owner\":\"The address to check\",\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"'true' if the address is an owner of the profile, otherwise 'false'\"}},\"isOwnerOrMemberOfProfile(bytes32,address)\":{\"params\":{\"_account\":\"The address to check\",\"_profileId\":\"The ID of the profile\"},\"returns\":{\"_0\":\"'true' if the address is an owner or member of the profile, otherwise 'false'\"}},\"recoverFunds(address,address)\":{\"details\":\"'msg.sender' must be the Allo owner\",\"params\":{\"_recipient\":\"The address of the recipient\",\"_token\":\"The address of the token to transfer\"}},\"removeMembers(bytes32,address[])\":{\"details\":\"'msg.sender' must be the pending owner of the profile.\",\"params\":{\"_members\":\"The members to remove\",\"_profileId\":\"The ID of the profile\"}},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"updateProfileMetadata(bytes32,(uint256,string))\":{\"details\":\"'msg.sender' must be the owner of the profile.\",\"params\":{\"_metadata\":\"The new 'Metadata' of the profile\",\"_profileId\":\"The ID of the profile\"}},\"updateProfileName(bytes32,string)\":{\"details\":\"Use caution when updating your profile name as it will generate a new anchor address. You can always update the name back to the original name to get the original anchor address. 'msg.sender' must be the owner of the profile.\",\"params\":{\"_name\":\"The new name of the profile\",\"_profileId\":\"The profileId of the profile\"},\"returns\":{\"anchor\":\"The new anchor\"}},\"updateProfilePendingOwner(bytes32,address)\":{\"details\":\"'msg.sender' must be the owner of the profile. [1]*This is step one of two when transferring ownership.\",\"params\":{\"_pendingOwner\":\"The new pending owner\",\"_profileId\":\"The ID of the profile\"}}},\"stateVariables\":{\"anchorToProfileId\":{\"details\":\"anchor -> Profile.id\"},\"profileIdToPendingOwner\":{\"details\":\"Profile.id -> pending owner\"},\"profilesById\":{\"details\":\"Profile.id -> Profile\"}},\"title\":\"Registry Contract\",\"version\":1},\"userdoc\":{\"errors\":{\"ALLOCATION_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is active.\"}],\"ALLOCATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when the allocation is not active.\"}],\"ALLOCATION_NOT_ENDED()\":[{\"notice\":\"Thrown when the allocation is not ended.\"}],\"ALREADY_INITIALIZED()\":[{\"notice\":\"Thrown when data is already intialized\"}],\"AMOUNT_MISMATCH()\":[{\"notice\":\"Thrown when the amount of tokens sent does not match the amount of tokens expected\"}],\"ARRAY_MISMATCH()\":[{\"notice\":\"Thrown when two arrays length are not equal\"}],\"INVALID()\":[{\"notice\":\"Thrown as a general error when input / data is invalid\"}],\"INVALID_ADDRESS()\":[{\"notice\":\"Thrown when an invalid address is used\"}],\"INVALID_FEE()\":[{\"notice\":\"Thrown when the fee is below 1e18 which is the fee percentage denominator\"}],\"INVALID_METADATA()\":[{\"notice\":\"Thrown when the metadata is invalid.\"}],\"INVALID_REGISTRATION()\":[{\"notice\":\"Thrown when the registration is invalid.\"}],\"IS_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is approved and should be cloned\"}],\"MISMATCH()\":[{\"notice\":\"Thrown when mismatch in decoding data\"}],\"NOT_APPROVED_STRATEGY()\":[{\"notice\":\"Thrown when the strategy is not approved\"}],\"NOT_ENOUGH_FUNDS()\":[{\"notice\":\"Thrown when not enough funds are available\"}],\"NOT_IMPLEMENTED()\":[{\"notice\":\"Thrown when the function is not implemented\"}],\"NOT_INITIALIZED()\":[{\"notice\":\"Thrown when data is yet to be initialized\"}],\"POOL_ACTIVE()\":[{\"notice\":\"Thrown when a pool is already active\"}],\"POOL_INACTIVE()\":[{\"notice\":\"Thrown when a pool is inactive\"}],\"RECIPIENT_ALREADY_ACCEPTED()\":[{\"notice\":\"Thrown when recipient is already accepted.\"}],\"RECIPIENT_ERROR(address)\":[{\"notice\":\"Thrown when there is an error in recipient.\"}],\"RECIPIENT_NOT_ACCEPTED()\":[{\"notice\":\"Thrown when the recipient is not accepted.\"}],\"REGISTRATION_NOT_ACTIVE()\":[{\"notice\":\"Thrown when registration is not active.\"}],\"UNAUTHORIZED()\":[{\"notice\":\"Thrown when user is not authorized\"}],\"ZERO_ADDRESS()\":[{\"notice\":\"Thrown when address is the zero address\"}]},\"kind\":\"user\",\"methods\":{\"ALLO_OWNER()\":{\"notice\":\"Allo Owner Role for fund recovery\"},\"NATIVE()\":{\"notice\":\"Address of the native token\"},\"acceptProfileOwnership(bytes32)\":{\"notice\":\"Transfers the ownership of the profile to the pending owner and Emits a 'ProfileOwnerUdpated()' event.\"},\"addMembers(bytes32,address[])\":{\"notice\":\"Adds members to the profile\"},\"anchorToProfileId(address)\":{\"notice\":\"This maps the anchor address to the profile ID\"},\"createProfile(uint256,string,(uint256,string),address,address[])\":{\"notice\":\"Creates a new profile\"},\"getProfileByAnchor(address)\":{\"notice\":\"Retrieve profile by anchor\"},\"getProfileById(bytes32)\":{\"notice\":\"Retrieve profile by profileId\"},\"initialize(address)\":{\"notice\":\"Initializes the contract after an upgrade\"},\"isMemberOfProfile(bytes32,address)\":{\"notice\":\"Checks if the given address is a member of the profile\"},\"isOwnerOfProfile(bytes32,address)\":{\"notice\":\"Checks if the given address is an owner of the profile\"},\"isOwnerOrMemberOfProfile(bytes32,address)\":{\"notice\":\"Checks if the address is an owner or member of the profile\"},\"profileIdToPendingOwner(bytes32)\":{\"notice\":\"This maps the profile ID to the pending owner\"},\"profilesById(bytes32)\":{\"notice\":\"This maps the profile ID to the profile details\"},\"recoverFunds(address,address)\":{\"notice\":\"Transfers any fund balance in Allo to the recipient\"},\"removeMembers(bytes32,address[])\":{\"notice\":\"Removes members from the profile\"},\"updateProfileMetadata(bytes32,(uint256,string))\":{\"notice\":\"Update the 'Metadata' of the profile. Emits a 'ProfileMetadataUpdated()' event.\"},\"updateProfileName(bytes32,string)\":{\"notice\":\"Updates the name of the profile and generates new anchor. Emits a 'ProfileNameUpdated()' event.\"},\"updateProfilePendingOwner(bytes32,address)\":{\"notice\":\"Updates the pending owner of the profile. Emits a 'ProfilePendingOwnership()' event.\"}},\"notice\":\"Registry contract for creating and managing profiles\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/Registry.sol\":\"Registry\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Anchor.sol\":{\"keccak256\":\"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139\",\"dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H\"]},\"lib/allo-v2/contracts/core/Registry.sol\":{\"keccak256\":\"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283\",\"dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol\":{\"keccak256\":\"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519\",\"dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol\":{\"keccak256\":\"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d\",\"dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol\":{\"keccak256\":\"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c\",\"dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"ALLOCATION_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"ALLOCATION_NOT_ENDED"},{"inputs":[],"type":"error","name":"ALREADY_INITIALIZED"},{"inputs":[],"type":"error","name":"AMOUNT_MISMATCH"},{"inputs":[],"type":"error","name":"ANCHOR_ERROR"},{"inputs":[],"type":"error","name":"ARRAY_MISMATCH"},{"inputs":[],"type":"error","name":"INVALID"},{"inputs":[],"type":"error","name":"INVALID_ADDRESS"},{"inputs":[],"type":"error","name":"INVALID_FEE"},{"inputs":[],"type":"error","name":"INVALID_METADATA"},{"inputs":[],"type":"error","name":"INVALID_REGISTRATION"},{"inputs":[],"type":"error","name":"IS_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"MISMATCH"},{"inputs":[],"type":"error","name":"NONCE_NOT_AVAILABLE"},{"inputs":[],"type":"error","name":"NOT_APPROVED_STRATEGY"},{"inputs":[],"type":"error","name":"NOT_ENOUGH_FUNDS"},{"inputs":[],"type":"error","name":"NOT_IMPLEMENTED"},{"inputs":[],"type":"error","name":"NOT_INITIALIZED"},{"inputs":[],"type":"error","name":"NOT_PENDING_OWNER"},{"inputs":[],"type":"error","name":"POOL_ACTIVE"},{"inputs":[],"type":"error","name":"POOL_INACTIVE"},{"inputs":[],"type":"error","name":"RECIPIENT_ALREADY_ACCEPTED"},{"inputs":[{"internalType":"address","name":"recipientId","type":"address"}],"type":"error","name":"RECIPIENT_ERROR"},{"inputs":[],"type":"error","name":"RECIPIENT_NOT_ACCEPTED"},{"inputs":[],"type":"error","name":"REGISTRATION_NOT_ACTIVE"},{"inputs":[],"type":"error","name":"UNAUTHORIZED"},{"inputs":[],"type":"error","name":"ZERO_ADDRESS"},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"uint256","name":"nonce","type":"uint256","indexed":false},{"internalType":"string","name":"name","type":"string","indexed":false},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false},{"internalType":"address","name":"owner","type":"address","indexed":false},{"internalType":"address","name":"anchor","type":"address","indexed":false}],"type":"event","name":"ProfileCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"ProfileMetadataUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"string","name":"name","type":"string","indexed":false},{"internalType":"address","name":"anchor","type":"address","indexed":false}],"type":"event","name":"ProfileNameUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"address","name":"owner","type":"address","indexed":false}],"type":"event","name":"ProfileOwnerUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"profileId","type":"bytes32","indexed":true},{"internalType":"address","name":"pendingOwner","type":"address","indexed":false}],"type":"event","name":"ProfilePendingOwnerUpdated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"ALLO_OWNER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"acceptProfileOwnership"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address[]","name":"_members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"addMembers"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"anchorToProfileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address[]","name":"_members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"createProfile","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_anchor","type":"address"}],"stateMutability":"view","type":"function","name":"getProfileByAnchor","outputs":[{"internalType":"struct IRegistry.Profile","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"id","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"anchor","type":"address"}]}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getProfileById","outputs":[{"internalType":"struct IRegistry.Profile","name":"","type":"tuple","components":[{"internalType":"bytes32","name":"id","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"anchor","type":"address"}]}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMemberOfProfile","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"view","type":"function","name":"isOwnerOfProfile","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_account","type":"address"}],"stateMutability":"view","type":"function","name":"isOwnerOrMemberOfProfile","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function","name":"profileIdToPendingOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function","name":"profilesById","outputs":[{"internalType":"bytes32","name":"id","type":"bytes32"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"struct Metadata","name":"metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"anchor","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_recipient","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"recoverFunds"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address[]","name":"_members","type":"address[]"}],"stateMutability":"nonpayable","type":"function","name":"removeMembers"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"updateProfileMetadata"},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"string","name":"_name","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"updateProfileName","outputs":[{"internalType":"address","name":"anchor","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32"},{"internalType":"address","name":"_pendingOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"updateProfilePendingOwner"}],"devdoc":{"kind":"dev","methods":{"acceptProfileOwnership(bytes32)":{"details":"'msg.sender' must be the pending owner of the profile. [2]*This is step two of two when transferring ownership.","params":{"_profileId":"The ID of the profile"}},"addMembers(bytes32,address[])":{"details":"'msg.sender' must be the owner of the profile.","params":{"_members":"The members to add","_profileId":"The ID of the profile"}},"createProfile(uint256,string,(uint256,string),address,address[])":{"details":"This will also generate the 'profileId' and 'anchor' address, emits a 'ProfileCreated()' event Note: The 'nonce' is used to generate the 'profileId' and should be unique for each profile Note: The 'name' and 'profileId' are used to generate the 'anchor' address","params":{"_members":"The members of the profile (can be set only if msg.sender == _owner)","_metadata":"The metadata of the profile","_name":"The name of the profile","_nonce":"Nonce used to generate profileId. Can be any integer, but should be unique for each profile.","_owner":"The owner of the profile"},"returns":{"_0":"The ID for the created profile"}},"getProfileByAnchor(address)":{"details":"Used when you have the 'anchor' address and want to retrieve the profile","params":{"_anchor":"The anchor of the profile"},"returns":{"_0":"Profile details for the `_anchor`"}},"getProfileById(bytes32)":{"details":"Used when you have the 'profileId' and want to retrieve the profile","params":{"_profileId":"The ID of the profile"},"returns":{"_0":"The Profile details for the `_profileId`"}},"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"initialize(address)":{"details":"During upgrade -> a higher version should be passed to reinitializer. Reverts if the '_owner' is the 'address(0)'","params":{"_owner":"The owner of the contract"}},"isMemberOfProfile(bytes32,address)":{"params":{"_member":"The address to check","_profileId":"The ID of the profile"},"returns":{"_0":"'true' if the address is a member of the profile, otherwise 'false'"}},"isOwnerOfProfile(bytes32,address)":{"params":{"_owner":"The address to check","_profileId":"The ID of the profile"},"returns":{"_0":"'true' if the address is an owner of the profile, otherwise 'false'"}},"isOwnerOrMemberOfProfile(bytes32,address)":{"params":{"_account":"The address to check","_profileId":"The ID of the profile"},"returns":{"_0":"'true' if the address is an owner or member of the profile, otherwise 'false'"}},"recoverFunds(address,address)":{"details":"'msg.sender' must be the Allo owner","params":{"_recipient":"The address of the recipient","_token":"The address of the token to transfer"}},"removeMembers(bytes32,address[])":{"details":"'msg.sender' must be the pending owner of the profile.","params":{"_members":"The members to remove","_profileId":"The ID of the profile"}},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"updateProfileMetadata(bytes32,(uint256,string))":{"details":"'msg.sender' must be the owner of the profile.","params":{"_metadata":"The new 'Metadata' of the profile","_profileId":"The ID of the profile"}},"updateProfileName(bytes32,string)":{"details":"Use caution when updating your profile name as it will generate a new anchor address. You can always update the name back to the original name to get the original anchor address. 'msg.sender' must be the owner of the profile.","params":{"_name":"The new name of the profile","_profileId":"The profileId of the profile"},"returns":{"anchor":"The new anchor"}},"updateProfilePendingOwner(bytes32,address)":{"details":"'msg.sender' must be the owner of the profile. [1]*This is step one of two when transferring ownership.","params":{"_pendingOwner":"The new pending owner","_profileId":"The ID of the profile"}}},"version":1},"userdoc":{"kind":"user","methods":{"ALLO_OWNER()":{"notice":"Allo Owner Role for fund recovery"},"NATIVE()":{"notice":"Address of the native token"},"acceptProfileOwnership(bytes32)":{"notice":"Transfers the ownership of the profile to the pending owner and Emits a 'ProfileOwnerUdpated()' event."},"addMembers(bytes32,address[])":{"notice":"Adds members to the profile"},"anchorToProfileId(address)":{"notice":"This maps the anchor address to the profile ID"},"createProfile(uint256,string,(uint256,string),address,address[])":{"notice":"Creates a new profile"},"getProfileByAnchor(address)":{"notice":"Retrieve profile by anchor"},"getProfileById(bytes32)":{"notice":"Retrieve profile by profileId"},"initialize(address)":{"notice":"Initializes the contract after an upgrade"},"isMemberOfProfile(bytes32,address)":{"notice":"Checks if the given address is a member of the profile"},"isOwnerOfProfile(bytes32,address)":{"notice":"Checks if the given address is an owner of the profile"},"isOwnerOrMemberOfProfile(bytes32,address)":{"notice":"Checks if the address is an owner or member of the profile"},"profileIdToPendingOwner(bytes32)":{"notice":"This maps the profile ID to the pending owner"},"profilesById(bytes32)":{"notice":"This maps the profile ID to the profile details"},"recoverFunds(address,address)":{"notice":"Transfers any fund balance in Allo to the recipient"},"removeMembers(bytes32,address[])":{"notice":"Removes members from the profile"},"updateProfileMetadata(bytes32,(uint256,string))":{"notice":"Update the 'Metadata' of the profile. Emits a 'ProfileMetadataUpdated()' event."},"updateProfileName(bytes32,string)":{"notice":"Updates the name of the profile and generates new anchor. Emits a 'ProfileNameUpdated()' event."},"updateProfilePendingOwner(bytes32,address)":{"notice":"Updates the pending owner of the profile. Emits a 'ProfilePendingOwnership()' event."}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/contracts/core/Registry.sol":"Registry"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Anchor.sol":{"keccak256":"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd","urls":["bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139","dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/Registry.sol":{"keccak256":"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998","urls":["bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283","dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"keccak256":"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b","urls":["bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec","dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"keccak256":"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3","urls":["bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519","dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"keccak256":"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb","urls":["bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d","dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"keccak256":"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da","urls":["bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708","dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol":{"keccak256":"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5","urls":["bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c","dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":53969,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"__gap","offset":0,"slot":"51","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"_roles","offset":0,"slot":"101","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":1525,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"anchorToProfileId","offset":0,"slot":"151","type":"t_mapping(t_address,t_bytes32)"},{"astId":1531,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"profilesById","offset":0,"slot":"152","type":"t_mapping(t_bytes32,t_struct(Profile)2629_storage)"},{"astId":1536,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"profileIdToPendingOwner","offset":0,"slot":"153","type":"t_mapping(t_bytes32,t_address)"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"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_bytes32)":{"encoding":"mapping","key":"t_address","label":"mapping(address => bytes32)","numberOfBytes":"32","value":"t_bytes32"},"t_mapping(t_bytes32,t_address)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => address)","numberOfBytes":"32","value":"t_address"},"t_mapping(t_bytes32,t_struct(Profile)2629_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct IRegistry.Profile)","numberOfBytes":"32","value":"t_struct(Profile)2629_storage"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(Profile)2629_storage":{"encoding":"inplace","label":"struct IRegistry.Profile","numberOfBytes":"224","members":[{"astId":2617,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"id","offset":0,"slot":"0","type":"t_bytes32"},{"astId":2619,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"nonce","offset":0,"slot":"1","type":"t_uint256"},{"astId":2621,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"name","offset":0,"slot":"2","type":"t_string_storage"},{"astId":2624,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"metadata","offset":0,"slot":"3","type":"t_struct(Metadata)3098_storage"},{"astId":2626,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"owner","offset":0,"slot":"5","type":"t_address"},{"astId":2628,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"anchor","offset":0,"slot":"6","type":"t_address"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"lib/allo-v2/contracts/core/Registry.sol:Registry","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/Registry.sol","id":2296,"exportedSymbols":{"AccessControlUpgradeable":[52697],"AddressUpgradeable":[53645],"Anchor":[1492],"ContextUpgradeable":[53696],"ERC165Upgradeable":[53970],"ERC20":[4491],"Errors":[3089],"IAccessControlUpgradeable":[52770],"IERC165Upgradeable":[53982],"IRegistry":[2802],"Initializable":[53152],"MathUpgradeable":[54848],"Metadata":[3098],"Native":[3106],"Registry":[2295],"SafeTransferLib":[4649],"SignedMathUpgradeable":[54953],"StringsUpgradeable":[53925],"Transfer":[3317]},"nodeType":"SourceUnit","src":"42:21126:2","nodes":[{"id":1494,"nodeType":"PragmaDirective","src":"42:23:2","nodes":[],"literals":["solidity","0.8",".19"]},{"id":1495,"nodeType":"ImportDirective","src":"89:90:2","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":52698,"symbolAliases":[],"unitAlias":""},{"id":1496,"nodeType":"ImportDirective","src":"180:84:2","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","file":"openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":53153,"symbolAliases":[],"unitAlias":""},{"id":1498,"nodeType":"ImportDirective","src":"265:50:2","nodes":[],"absolutePath":"lib/allo-v2/lib/solady/src/tokens/ERC20.sol","file":"solady/src/tokens/ERC20.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":4492,"symbolAliases":[{"foreign":{"id":1497,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4491,"src":"273:5:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1499,"nodeType":"ImportDirective","src":"330:36:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"./interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":2803,"symbolAliases":[],"unitAlias":""},{"id":1501,"nodeType":"ImportDirective","src":"389:36:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Anchor.sol","file":"./Anchor.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":1493,"symbolAliases":[{"foreign":{"id":1500,"name":"Anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1492,"src":"397:6:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1503,"nodeType":"ImportDirective","src":"426:46:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Errors.sol","file":"./libraries/Errors.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3090,"symbolAliases":[{"foreign":{"id":1502,"name":"Errors","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3089,"src":"434:6:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1505,"nodeType":"ImportDirective","src":"473:50:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"./libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":1504,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"481:8:2","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":1506,"nodeType":"ImportDirective","src":"524:32:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"./libraries/Native.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3107,"symbolAliases":[],"unitAlias":""},{"id":1507,"nodeType":"ImportDirective","src":"557:34:2","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Transfer.sol","file":"./libraries/Transfer.sol","nameLocation":"-1:-1:-1","scope":2296,"sourceUnit":3318,"symbolAliases":[],"unitAlias":""},{"id":2295,"nodeType":"ContractDefinition","src":"5237:15930:2","nodes":[{"id":1525,"nodeType":"VariableDeclaration","src":"5544:52:2","nodes":[],"constant":false,"documentation":{"id":1521,"nodeType":"StructuredDocumentation","src":"5447:92:2","text":"@notice This maps the anchor address to the profile ID\n @dev anchor -> Profile.id"},"functionSelector":"4756487f","mutability":"mutable","name":"anchorToProfileId","nameLocation":"5579:17:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"},"typeName":{"id":1524,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":1522,"name":"address","nodeType":"ElementaryTypeName","src":"5552:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"5544:27:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":1523,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5563:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}},"visibility":"public"},{"id":1531,"nodeType":"VariableDeclaration","src":"5702:47:2","nodes":[],"constant":false,"documentation":{"id":1526,"nodeType":"StructuredDocumentation","src":"5603:94:2","text":"@notice This maps the profile ID to the profile details\n @dev Profile.id -> Profile"},"functionSelector":"ee888196","mutability":"mutable","name":"profilesById","nameLocation":"5737:12:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile)"},"typeName":{"id":1530,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":1527,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5710:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Mapping","src":"5702:27:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":1529,"nodeType":"UserDefinedTypeName","pathNode":{"id":1528,"name":"Profile","nameLocations":["5721:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"5721:7:2"},"referencedDeclaration":2629,"src":"5721:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}}},"visibility":"public"},{"id":1536,"nodeType":"VariableDeclaration","src":"5859:58:2","nodes":[],"constant":false,"documentation":{"id":1532,"nodeType":"StructuredDocumentation","src":"5756:98:2","text":"@notice This maps the profile ID to the pending owner\n @dev Profile.id -> pending owner"},"functionSelector":"50d005e0","mutability":"mutable","name":"profileIdToPendingOwner","nameLocation":"5894:23:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"},"typeName":{"id":1535,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":1533,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5867:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Mapping","src":"5859:27:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":1534,"name":"address","nodeType":"ElementaryTypeName","src":"5878:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},"visibility":"public"},{"id":1542,"nodeType":"VariableDeclaration","src":"5974:60:2","nodes":[],"constant":true,"documentation":{"id":1537,"nodeType":"StructuredDocumentation","src":"5924:45:2","text":"@notice Allo Owner Role for fund recovery"},"functionSelector":"cfda7e0a","mutability":"constant","name":"ALLO_OWNER","nameLocation":"5998:10:2","scope":2295,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1538,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5974:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"414c4c4f5f4f574e4552","id":1540,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6021:12:2","typeDescriptions":{"typeIdentifier":"t_stringliteral_815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747","typeString":"literal_string \"ALLO_OWNER\""},"value":"ALLO_OWNER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_815b5a78dc333d344c7df9da23c04dbd432015cc701876ddb9ffe850e6882747","typeString":"literal_string \"ALLO_OWNER\""}],"id":1539,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6011:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":1541,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6011:23:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":1553,"nodeType":"ModifierDefinition","src":"6360:108:2","nodes":[],"body":{"id":1552,"nodeType":"Block","src":"6406:62:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":1548,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1545,"src":"6439:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":1547,"name":"_checkOnlyProfileOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2071,"src":"6416:22:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$returns$__$","typeString":"function (bytes32) view"}},"id":1549,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6416:34:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1550,"nodeType":"ExpressionStatement","src":"6416:34:2"},{"id":1551,"nodeType":"PlaceholderStatement","src":"6460:1:2"}]},"documentation":{"id":1543,"nodeType":"StructuredDocumentation","src":"6177:178:2","text":"@notice Checks if the caller is the profile owner\n @dev Reverts `UNAUTHORIZED()` if the caller is not the profile owner\n @param _profileId The ID of the profile"},"name":"onlyProfileOwner","nameLocation":"6369:16:2","parameters":{"id":1546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1545,"mutability":"mutable","name":"_profileId","nameLocation":"6394:10:2","nodeType":"VariableDeclaration","scope":1553,"src":"6386:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1544,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6386:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"6385:20:2"},"virtual":false,"visibility":"internal"},{"id":1578,"nodeType":"FunctionDefinition","src":"6841:257:2","nodes":[],"body":{"id":1577,"nodeType":"Block","src":"6903:195:2","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1562,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1556,"src":"6968:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6986:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1564,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6978:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1563,"name":"address","nodeType":"ElementaryTypeName","src":"6978:7:2","typeDescriptions":{}}},"id":1566,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6978:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"6968:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1571,"nodeType":"IfStatement","src":"6964:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1568,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"6997:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6997:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1570,"nodeType":"RevertStatement","src":"6990:21:2"}},{"expression":{"arguments":[{"id":1573,"name":"ALLO_OWNER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1542,"src":"7072:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1574,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1556,"src":"7084:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1572,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"7061:10:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1575,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7061:30:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1576,"nodeType":"ExpressionStatement","src":"7061:30:2"}]},"documentation":{"id":1554,"nodeType":"StructuredDocumentation","src":"6608:228:2","text":"@notice Initializes the contract after an upgrade\n @dev During upgrade -> a higher version should be passed to reinitializer. Reverts if the '_owner' is the 'address(0)'\n @param _owner The owner of the contract"},"functionSelector":"c4d66de8","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"31","id":1559,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6900:1:2","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"id":1560,"kind":"modifierInvocation","modifierName":{"id":1558,"name":"reinitializer","nameLocations":["6886:13:2"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"6886:13:2"},"nodeType":"ModifierInvocation","src":"6886:16:2"}],"name":"initialize","nameLocation":"6850:10:2","parameters":{"id":1557,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1556,"mutability":"mutable","name":"_owner","nameLocation":"6869:6:2","nodeType":"VariableDeclaration","scope":1578,"src":"6861:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1555,"name":"address","nodeType":"ElementaryTypeName","src":"6861:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6860:16:2"},"returnParameters":{"id":1561,"nodeType":"ParameterList","parameters":[],"src":"6903:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1592,"nodeType":"FunctionDefinition","src":"7472:131:2","nodes":[],"body":{"id":1591,"nodeType":"Block","src":"7555:48:2","nodes":[],"statements":[{"expression":{"baseExpression":{"id":1587,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"7572:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1589,"indexExpression":{"id":1588,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1581,"src":"7585:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7572:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"functionReturnParameters":1586,"id":1590,"nodeType":"Return","src":"7565:31:2"}]},"baseFunctions":[2685],"documentation":{"id":1579,"nodeType":"StructuredDocumentation","src":"7240:227:2","text":"@notice Retrieve profile by profileId\n @dev Used when you have the 'profileId' and want to retrieve the profile\n @param _profileId The ID of the profile\n @return The Profile details for the `_profileId`"},"functionSelector":"0114cf0a","implemented":true,"kind":"function","modifiers":[],"name":"getProfileById","nameLocation":"7481:14:2","parameters":{"id":1582,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1581,"mutability":"mutable","name":"_profileId","nameLocation":"7504:10:2","nodeType":"VariableDeclaration","scope":1592,"src":"7496:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1580,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7496:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"7495:20:2"},"returnParameters":{"id":1586,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1585,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1592,"src":"7539:14:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1584,"nodeType":"UserDefinedTypeName","pathNode":{"id":1583,"name":"Profile","nameLocations":["7539:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"7539:7:2"},"referencedDeclaration":2629,"src":"7539:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"7538:16:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1612,"nodeType":"FunctionDefinition","src":"7837:187:2","nodes":[],"body":{"id":1611,"nodeType":"Block","src":"7921:103:2","nodes":[],"statements":[{"assignments":[1602],"declarations":[{"constant":false,"id":1602,"mutability":"mutable","name":"profileId","nameLocation":"7939:9:2","nodeType":"VariableDeclaration","scope":1611,"src":"7931:17:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1601,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7931:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":1606,"initialValue":{"baseExpression":{"id":1603,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"7951:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1605,"indexExpression":{"id":1604,"name":"_anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1595,"src":"7969:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7951:26:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"7931:46:2"},{"expression":{"baseExpression":{"id":1607,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"7994:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1609,"indexExpression":{"id":1608,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1602,"src":"8007:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7994:23:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"functionReturnParameters":1600,"id":1610,"nodeType":"Return","src":"7987:30:2"}]},"baseFunctions":[2694],"documentation":{"id":1593,"nodeType":"StructuredDocumentation","src":"7609:223:2","text":"@notice Retrieve profile by anchor\n @dev Used when you have the 'anchor' address and want to retrieve the profile\n @param _anchor The anchor of the profile\n @return Profile details for the `_anchor`"},"functionSelector":"dd93da43","implemented":true,"kind":"function","modifiers":[],"name":"getProfileByAnchor","nameLocation":"7846:18:2","parameters":{"id":1596,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1595,"mutability":"mutable","name":"_anchor","nameLocation":"7873:7:2","nodeType":"VariableDeclaration","scope":1612,"src":"7865:15:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1594,"name":"address","nodeType":"ElementaryTypeName","src":"7865:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7864:17:2"},"returnParameters":{"id":1600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1599,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1612,"src":"7905:14:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1598,"nodeType":"UserDefinedTypeName","pathNode":{"id":1597,"name":"Profile","nameLocations":["7905:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"7905:7:2"},"referencedDeclaration":2629,"src":"7905:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"7904:16:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1756,"nodeType":"FunctionDefinition","src":"8781:1901:2","nodes":[],"body":{"id":1755,"nodeType":"Block","src":"8984:1698:2","nodes":[],"statements":[{"assignments":[1631],"declarations":[{"constant":false,"id":1631,"mutability":"mutable","name":"profileId","nameLocation":"9068:9:2","nodeType":"VariableDeclaration","scope":1755,"src":"9060:17:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1630,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9060:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":1636,"initialValue":{"arguments":[{"id":1633,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1615,"src":"9099:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1634,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9107:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1632,"name":"_generateProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2211,"src":"9080:18:2","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_address_$returns$_t_bytes32_$","typeString":"function (uint256,address) pure returns (bytes32)"}},"id":1635,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9080:34:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"9060:54:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1645,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":1637,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"9173:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1639,"indexExpression":{"id":1638,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9186:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9173:23:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":1640,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"9197:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"9173:30:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1643,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9215:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1642,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9207:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1641,"name":"address","nodeType":"ElementaryTypeName","src":"9207:7:2","typeDescriptions":{}}},"id":1644,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9207:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9173:44:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1649,"nodeType":"IfStatement","src":"9169:78:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1646,"name":"NONCE_NOT_AVAILABLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3026,"src":"9226:19:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1647,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9226:21:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1648,"nodeType":"RevertStatement","src":"9219:28:2"}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1655,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1650,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9317:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1653,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9335:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1652,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9327:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1651,"name":"address","nodeType":"ElementaryTypeName","src":"9327:7:2","typeDescriptions":{}}},"id":1654,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9327:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9317:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1659,"nodeType":"IfStatement","src":"9313:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1656,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"9346:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1657,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9346:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1658,"nodeType":"RevertStatement","src":"9339:21:2"}},{"assignments":[1662],"declarations":[{"constant":false,"id":1662,"mutability":"mutable","name":"profile","nameLocation":"9462:7:2","nodeType":"VariableDeclaration","scope":1755,"src":"9447:22:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1661,"nodeType":"UserDefinedTypeName","pathNode":{"id":1660,"name":"Profile","nameLocations":["9447:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"9447:7:2"},"referencedDeclaration":2629,"src":"9447:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"id":1674,"initialValue":{"arguments":[{"id":1664,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9498:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1665,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1615,"src":"9528:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":1666,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1617,"src":"9554:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":1667,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1620,"src":"9583:9:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":1668,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9613:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":1670,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9657:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1671,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1617,"src":"9668:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":1669,"name":"_generateAnchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2192,"src":"9641:15:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$_t_address_$","typeString":"function (bytes32,string memory) returns (address)"}},"id":1672,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9641:33:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1663,"name":"Profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2629,"src":"9472:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Profile_$2629_storage_ptr_$","typeString":"type(struct IRegistry.Profile storage pointer)"}},"id":1673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["9494:2:2","9521:5:2","9548:4:2","9573:8:2","9606:5:2","9633:6:2"],"names":["id","nonce","name","metadata","owner","anchor"],"nodeType":"FunctionCall","src":"9472:213:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"nodeType":"VariableDeclarationStatement","src":"9447:238:2"},{"expression":{"id":1679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1675,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"9696:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1677,"indexExpression":{"id":1676,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9709:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9696:23:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1678,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"9722:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"src":"9696:33:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":1680,"nodeType":"ExpressionStatement","src":"9696:33:2"},{"expression":{"id":1686,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1681,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"9739:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1684,"indexExpression":{"expression":{"id":1682,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"9757:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1683,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"9765:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"9757:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9739:33:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1685,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"9775:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"9739:45:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":1687,"nodeType":"ExpressionStatement","src":"9739:45:2"},{"assignments":[1689],"declarations":[{"constant":false,"id":1689,"mutability":"mutable","name":"memberLength","nameLocation":"9851:12:2","nodeType":"VariableDeclaration","scope":1755,"src":"9843:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1688,"name":"uint256","nodeType":"ElementaryTypeName","src":"9843:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1692,"initialValue":{"expression":{"id":1690,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1625,"src":"9866:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1691,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9875:6:2","memberName":"length","nodeType":"MemberAccess","src":"9866:15:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"9843:38:2"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1693,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1689,"src":"9942:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":1694,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9957:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9942:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1696,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1622,"src":"9962:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":1697,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9972:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1698,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9976:6:2","memberName":"sender","nodeType":"MemberAccess","src":"9972:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9962:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"9942:40:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1705,"nodeType":"IfStatement","src":"9938:92:2","trueBody":{"id":1704,"nodeType":"Block","src":"9984:46:2","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1701,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"10005:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10005:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1703,"nodeType":"RevertStatement","src":"9998:21:2"}]}},{"body":{"id":1737,"nodeType":"Block","src":"10075:367:2","statements":[{"assignments":[1713],"declarations":[{"constant":false,"id":1713,"mutability":"mutable","name":"member","nameLocation":"10097:6:2","nodeType":"VariableDeclaration","scope":1737,"src":"10089:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1712,"name":"address","nodeType":"ElementaryTypeName","src":"10089:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1717,"initialValue":{"baseExpression":{"id":1714,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1625,"src":"10106:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1716,"indexExpression":{"id":1715,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1707,"src":"10115:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10106:11:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"10089:28:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1718,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1713,"src":"10206:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10224:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1720,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10216:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1719,"name":"address","nodeType":"ElementaryTypeName","src":"10216:7:2","typeDescriptions":{}}},"id":1722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10216:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10206:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1727,"nodeType":"IfStatement","src":"10202:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1724,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"10235:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10235:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1726,"nodeType":"RevertStatement","src":"10228:21:2"}},{"expression":{"arguments":[{"id":1729,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"10354:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1730,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1713,"src":"10365:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1728,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"10343:10:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10343:29:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1732,"nodeType":"ExpressionStatement","src":"10343:29:2"},{"id":1736,"nodeType":"UncheckedBlock","src":"10386:46:2","statements":[{"expression":{"id":1734,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"10414:3:2","subExpression":{"id":1733,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1707,"src":"10416:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1735,"nodeType":"ExpressionStatement","src":"10414:3:2"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1709,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1707,"src":"10056:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":1710,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1689,"src":"10060:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10056:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1738,"initializationExpression":{"assignments":[1707],"declarations":[{"constant":false,"id":1707,"mutability":"mutable","name":"i","nameLocation":"10053:1:2","nodeType":"VariableDeclaration","scope":1738,"src":"10045:9:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1706,"name":"uint256","nodeType":"ElementaryTypeName","src":"10045:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1708,"nodeType":"VariableDeclarationStatement","src":"10045:9:2"},"nodeType":"ForStatement","src":"10040:402:2"},{"eventCall":{"arguments":[{"id":1740,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"10527:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":1741,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10538:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1742,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10546:5:2","memberName":"nonce","nodeType":"MemberAccess","referencedDeclaration":2619,"src":"10538:13:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":1743,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10553:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1744,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10561:4:2","memberName":"name","nodeType":"MemberAccess","referencedDeclaration":2621,"src":"10553:12:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"expression":{"id":1745,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10567:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1746,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10575:8:2","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":2624,"src":"10567:16:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"expression":{"id":1747,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10585:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1748,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10593:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"10585:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":1749,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1662,"src":"10600:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":1750,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10608:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"10600:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1739,"name":"ProfileCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2645,"src":"10512:14:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_address_$returns$__$","typeString":"function (bytes32,uint256,string memory,struct Metadata memory,address,address)"}},"id":1751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10512:103:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1752,"nodeType":"EmitStatement","src":"10507:108:2"},{"expression":{"id":1753,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1631,"src":"10666:9:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":1629,"id":1754,"nodeType":"Return","src":"10659:16:2"}]},"baseFunctions":[2742],"documentation":{"id":1613,"nodeType":"StructuredDocumentation","src":"8030:746:2","text":"@notice Creates a new profile\n @dev This will also generate the 'profileId' and 'anchor' address, emits a 'ProfileCreated()' event\n Note: The 'nonce' is used to generate the 'profileId' and should be unique for each profile\n Note: The 'name' and 'profileId' are used to generate the 'anchor' address\n @param _nonce Nonce used to generate profileId. Can be any integer, but should be unique\n for each profile.\n @param _name The name of the profile\n @param _metadata The metadata of the profile\n @param _owner The owner of the profile\n @param _members The members of the profile (can be set only if msg.sender == _owner)\n @return The ID for the created profile"},"functionSelector":"3a92f65f","implemented":true,"kind":"function","modifiers":[],"name":"createProfile","nameLocation":"8790:13:2","parameters":{"id":1626,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1615,"mutability":"mutable","name":"_nonce","nameLocation":"8821:6:2","nodeType":"VariableDeclaration","scope":1756,"src":"8813:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1614,"name":"uint256","nodeType":"ElementaryTypeName","src":"8813:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1617,"mutability":"mutable","name":"_name","nameLocation":"8851:5:2","nodeType":"VariableDeclaration","scope":1756,"src":"8837:19:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1616,"name":"string","nodeType":"ElementaryTypeName","src":"8837:6:2","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":1620,"mutability":"mutable","name":"_metadata","nameLocation":"8882:9:2","nodeType":"VariableDeclaration","scope":1756,"src":"8866:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":1619,"nodeType":"UserDefinedTypeName","pathNode":{"id":1618,"name":"Metadata","nameLocations":["8866:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"8866:8:2"},"referencedDeclaration":3098,"src":"8866:8:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":1622,"mutability":"mutable","name":"_owner","nameLocation":"8909:6:2","nodeType":"VariableDeclaration","scope":1756,"src":"8901:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1621,"name":"address","nodeType":"ElementaryTypeName","src":"8901:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1625,"mutability":"mutable","name":"_members","nameLocation":"8942:8:2","nodeType":"VariableDeclaration","scope":1756,"src":"8925:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":1623,"name":"address","nodeType":"ElementaryTypeName","src":"8925:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1624,"nodeType":"ArrayTypeName","src":"8925:9:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"8803:153:2"},"returnParameters":{"id":1629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1756,"src":"8975:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1627,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8975:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"8974:9:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1820,"nodeType":"FunctionDefinition","src":"11210:830:2","nodes":[],"body":{"id":1819,"nodeType":"Block","src":"11369:671:2","nodes":[],"statements":[{"expression":{"id":1774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1769,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11420:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1771,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11445:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1772,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1761,"src":"11457:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":1770,"name":"_generateAnchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2192,"src":"11429:15:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$_t_address_$","typeString":"function (bytes32,string memory) returns (address)"}},"id":1773,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11429:34:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11420:43:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1775,"nodeType":"ExpressionStatement","src":"11420:43:2"},{"assignments":[1778],"declarations":[{"constant":false,"id":1778,"mutability":"mutable","name":"profile","nameLocation":"11554:7:2","nodeType":"VariableDeclaration","scope":1819,"src":"11538:23:2","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1777,"nodeType":"UserDefinedTypeName","pathNode":{"id":1776,"name":"Profile","nameLocations":["11538:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"11538:7:2"},"referencedDeclaration":2629,"src":"11538:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"id":1782,"initialValue":{"baseExpression":{"id":1779,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"11564:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1781,"indexExpression":{"id":1780,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11577:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11564:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"nodeType":"VariableDeclarationStatement","src":"11538:50:2"},{"expression":{"id":1787,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1783,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1778,"src":"11627:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1785,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11635:4:2","memberName":"name","nodeType":"MemberAccess","referencedDeclaration":2621,"src":"11627:12:2","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1786,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1761,"src":"11642:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11627:20:2","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":1788,"nodeType":"ExpressionStatement","src":"11627:20:2"},{"expression":{"id":1797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1789,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"11687:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1792,"indexExpression":{"expression":{"id":1790,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1778,"src":"11705:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1791,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11713:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"11705:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11687:33:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":1795,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11731:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1794,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11723:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":1793,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11723:7:2","typeDescriptions":{}}},"id":1796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11723:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"11687:46:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":1798,"nodeType":"ExpressionStatement","src":"11687:46:2"},{"expression":{"id":1803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1799,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1778,"src":"11774:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1801,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11782:6:2","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"11774:14:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1802,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11791:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11774:23:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1804,"nodeType":"ExpressionStatement","src":"11774:23:2"},{"expression":{"id":1809,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1805,"name":"anchorToProfileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1525,"src":"11807:17:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bytes32_$","typeString":"mapping(address => bytes32)"}},"id":1807,"indexExpression":{"id":1806,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11825:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11807:25:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1808,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11835:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"11807:38:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":1810,"nodeType":"ExpressionStatement","src":"11807:38:2"},{"eventCall":{"arguments":[{"id":1812,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11950:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1813,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1761,"src":"11962:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"id":1814,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"11969:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1811,"name":"ProfileNameUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2654,"src":"11931:18:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (bytes32,string memory,address)"}},"id":1815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11931:45:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1816,"nodeType":"EmitStatement","src":"11926:50:2"},{"expression":{"id":1817,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1767,"src":"12027:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":1768,"id":1818,"nodeType":"Return","src":"12020:13:2"}]},"baseFunctions":[2752],"documentation":{"id":1757,"nodeType":"StructuredDocumentation","src":"10688:517:2","text":"@notice Updates the name of the profile and generates new anchor.\n Emits a 'ProfileNameUpdated()' event.\n @dev Use caution when updating your profile name as it will generate a new anchor address. You can always update the name\n back to the original name to get the original anchor address. 'msg.sender' must be the owner of the profile.\n @param _profileId The profileId of the profile\n @param _name The new name of the profile\n @return anchor The new anchor"},"functionSelector":"cf189ff2","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1764,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1759,"src":"11320:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1765,"kind":"modifierInvocation","modifierName":{"id":1763,"name":"onlyProfileOwner","nameLocations":["11303:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"11303:16:2"},"nodeType":"ModifierInvocation","src":"11303:28:2"}],"name":"updateProfileName","nameLocation":"11219:17:2","parameters":{"id":1762,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1759,"mutability":"mutable","name":"_profileId","nameLocation":"11245:10:2","nodeType":"VariableDeclaration","scope":1820,"src":"11237:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1758,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11237:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1761,"mutability":"mutable","name":"_name","nameLocation":"11271:5:2","nodeType":"VariableDeclaration","scope":1820,"src":"11257:19:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1760,"name":"string","nodeType":"ElementaryTypeName","src":"11257:6:2","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"11236:41:2"},"returnParameters":{"id":1768,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1767,"mutability":"mutable","name":"anchor","nameLocation":"11357:6:2","nodeType":"VariableDeclaration","scope":1820,"src":"11349:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1766,"name":"address","nodeType":"ElementaryTypeName","src":"11349:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11348:16:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1845,"nodeType":"FunctionDefinition","src":"12309:415:2","nodes":[],"body":{"id":1844,"nodeType":"Block","src":"12445:279:2","nodes":[],"statements":[{"expression":{"id":1837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":1832,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"12553:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1834,"indexExpression":{"id":1833,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1823,"src":"12566:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"12553:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":1835,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"12578:8:2","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":2624,"src":"12553:33:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1836,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1826,"src":"12589:9:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"12553:45:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":1838,"nodeType":"ExpressionStatement","src":"12553:45:2"},{"eventCall":{"arguments":[{"id":1840,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1823,"src":"12695:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1841,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1826,"src":"12707:9:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":1839,"name":"ProfileMetadataUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2662,"src":"12672:22:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (bytes32,struct Metadata memory)"}},"id":1842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12672:45:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1843,"nodeType":"EmitStatement","src":"12667:50:2"}]},"baseFunctions":[2761],"documentation":{"id":1821,"nodeType":"StructuredDocumentation","src":"12046:258:2","text":"@notice Update the 'Metadata' of the profile. Emits a 'ProfileMetadataUpdated()' event.\n @dev 'msg.sender' must be the owner of the profile.\n @param _profileId The ID of the profile\n @param _metadata The new 'Metadata' of the profile"},"functionSelector":"ac402839","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1829,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1823,"src":"12429:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1830,"kind":"modifierInvocation","modifierName":{"id":1828,"name":"onlyProfileOwner","nameLocations":["12412:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"12412:16:2"},"nodeType":"ModifierInvocation","src":"12412:28:2"}],"name":"updateProfileMetadata","nameLocation":"12318:21:2","parameters":{"id":1827,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1823,"mutability":"mutable","name":"_profileId","nameLocation":"12348:10:2","nodeType":"VariableDeclaration","scope":1845,"src":"12340:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1822,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12340:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1826,"mutability":"mutable","name":"_metadata","nameLocation":"12376:9:2","nodeType":"VariableDeclaration","scope":1845,"src":"12360:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":1825,"nodeType":"UserDefinedTypeName","pathNode":{"id":1824,"name":"Metadata","nameLocations":["12360:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12360:8:2"},"referencedDeclaration":3098,"src":"12360:8:2","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12339:47:2"},"returnParameters":{"id":1831,"nodeType":"ParameterList","parameters":[],"src":"12445:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1866,"nodeType":"FunctionDefinition","src":"12992:208:2","nodes":[],"body":{"id":1865,"nodeType":"Block","src":"13093:107:2","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":1856,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1848,"src":"13128:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1857,"name":"_account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1850,"src":"13140:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1855,"name":"_isOwnerOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2229,"src":"13110:17:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13110:39:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":1860,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1848,"src":"13172:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1861,"name":"_account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1850,"src":"13184:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1859,"name":"_isMemberOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2245,"src":"13153:18:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1862,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13153:40:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"13110:83:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1854,"id":1864,"nodeType":"Return","src":"13103:90:2"}]},"baseFunctions":[2704],"documentation":{"id":1846,"nodeType":"StructuredDocumentation","src":"12730:257:2","text":"@notice Checks if the address is an owner or member of the profile\n @param _profileId The ID of the profile\n @param _account The address to check\n @return 'true' if the address is an owner or member of the profile, otherwise 'false'"},"functionSelector":"5e8a7915","implemented":true,"kind":"function","modifiers":[],"name":"isOwnerOrMemberOfProfile","nameLocation":"13001:24:2","parameters":{"id":1851,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1848,"mutability":"mutable","name":"_profileId","nameLocation":"13034:10:2","nodeType":"VariableDeclaration","scope":1866,"src":"13026:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1847,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13026:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1850,"mutability":"mutable","name":"_account","nameLocation":"13054:8:2","nodeType":"VariableDeclaration","scope":1866,"src":"13046:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1849,"name":"address","nodeType":"ElementaryTypeName","src":"13046:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13025:38:2"},"returnParameters":{"id":1854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1853,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1866,"src":"13087:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1852,"name":"bool","nodeType":"ElementaryTypeName","src":"13087:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13086:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1882,"nodeType":"FunctionDefinition","src":"13452:152:2","nodes":[],"body":{"id":1881,"nodeType":"Block","src":"13543:61:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":1877,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1869,"src":"13578:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1878,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1871,"src":"13590:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1876,"name":"_isOwnerOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2229,"src":"13560:17:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13560:37:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1875,"id":1880,"nodeType":"Return","src":"13553:44:2"}]},"baseFunctions":[2714],"documentation":{"id":1867,"nodeType":"StructuredDocumentation","src":"13206:241:2","text":"@notice Checks if the given address is an owner of the profile\n @param _profileId The ID of the profile\n @param _owner The address to check\n @return 'true' if the address is an owner of the profile, otherwise 'false'"},"functionSelector":"39b86b8c","implemented":true,"kind":"function","modifiers":[],"name":"isOwnerOfProfile","nameLocation":"13461:16:2","parameters":{"id":1872,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1869,"mutability":"mutable","name":"_profileId","nameLocation":"13486:10:2","nodeType":"VariableDeclaration","scope":1882,"src":"13478:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1868,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13478:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1871,"mutability":"mutable","name":"_owner","nameLocation":"13506:6:2","nodeType":"VariableDeclaration","scope":1882,"src":"13498:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1870,"name":"address","nodeType":"ElementaryTypeName","src":"13498:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13477:36:2"},"returnParameters":{"id":1875,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1874,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1882,"src":"13537:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1873,"name":"bool","nodeType":"ElementaryTypeName","src":"13537:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13536:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1898,"nodeType":"FunctionDefinition","src":"13857:156:2","nodes":[],"body":{"id":1897,"nodeType":"Block","src":"13950:63:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":1893,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1885,"src":"13986:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1894,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1887,"src":"13998:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1892,"name":"_isMemberOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2245,"src":"13967:18:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":1895,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13967:39:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1891,"id":1896,"nodeType":"Return","src":"13960:46:2"}]},"baseFunctions":[2724],"documentation":{"id":1883,"nodeType":"StructuredDocumentation","src":"13610:242:2","text":"@notice Checks if the given address is a member of the profile\n @param _profileId The ID of the profile\n @param _member The address to check\n @return 'true' if the address is a member of the profile, otherwise 'false'"},"functionSelector":"0ec1fbac","implemented":true,"kind":"function","modifiers":[],"name":"isMemberOfProfile","nameLocation":"13866:17:2","parameters":{"id":1888,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1885,"mutability":"mutable","name":"_profileId","nameLocation":"13892:10:2","nodeType":"VariableDeclaration","scope":1898,"src":"13884:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1884,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13884:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1887,"mutability":"mutable","name":"_member","nameLocation":"13912:7:2","nodeType":"VariableDeclaration","scope":1898,"src":"13904:15:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1886,"name":"address","nodeType":"ElementaryTypeName","src":"13904:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13883:37:2"},"returnParameters":{"id":1891,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1890,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1898,"src":"13944:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1889,"name":"bool","nodeType":"ElementaryTypeName","src":"13944:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13943:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1921,"nodeType":"FunctionDefinition","src":"14336:382:2","nodes":[],"body":{"id":1920,"nodeType":"Block","src":"14472:246:2","nodes":[],"statements":[{"expression":{"id":1913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":1909,"name":"profileIdToPendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1536,"src":"14530:23:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"}},"id":1911,"indexExpression":{"id":1910,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1901,"src":"14554:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14530:35:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1912,"name":"_pendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1903,"src":"14568:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14530:51:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1914,"nodeType":"ExpressionStatement","src":"14530:51:2"},{"eventCall":{"arguments":[{"id":1916,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1901,"src":"14685:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":1917,"name":"_pendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1903,"src":"14697:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1915,"name":"ProfilePendingOwnerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2676,"src":"14658:26:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14658:53:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1919,"nodeType":"EmitStatement","src":"14653:58:2"}]},"baseFunctions":[2769],"documentation":{"id":1899,"nodeType":"StructuredDocumentation","src":"14019:312:2","text":"@notice Updates the pending owner of the profile. Emits a 'ProfilePendingOwnership()' event.\n @dev 'msg.sender' must be the owner of the profile. [1]*This is step one of two when transferring ownership.\n @param _profileId The ID of the profile\n @param _pendingOwner The new pending owner"},"functionSelector":"3b66dacd","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1906,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1901,"src":"14456:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1907,"kind":"modifierInvocation","modifierName":{"id":1905,"name":"onlyProfileOwner","nameLocations":["14439:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"14439:16:2"},"nodeType":"ModifierInvocation","src":"14439:28:2"}],"name":"updateProfilePendingOwner","nameLocation":"14345:25:2","parameters":{"id":1904,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1901,"mutability":"mutable","name":"_profileId","nameLocation":"14379:10:2","nodeType":"VariableDeclaration","scope":1921,"src":"14371:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1900,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14371:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1903,"mutability":"mutable","name":"_pendingOwner","nameLocation":"14399:13:2","nodeType":"VariableDeclaration","scope":1921,"src":"14391:21:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1902,"name":"address","nodeType":"ElementaryTypeName","src":"14391:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14370:43:2"},"returnParameters":{"id":1908,"nodeType":"ParameterList","parameters":[],"src":"14472:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1966,"nodeType":"FunctionDefinition","src":"15016:745:2","nodes":[],"body":{"id":1965,"nodeType":"Block","src":"15077:684:2","nodes":[],"statements":[{"assignments":[1929],"declarations":[{"constant":false,"id":1929,"mutability":"mutable","name":"profile","nameLocation":"15147:7:2","nodeType":"VariableDeclaration","scope":1965,"src":"15131:23:2","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":1928,"nodeType":"UserDefinedTypeName","pathNode":{"id":1927,"name":"Profile","nameLocations":["15131:7:2"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"15131:7:2"},"referencedDeclaration":2629,"src":"15131:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"id":1933,"initialValue":{"baseExpression":{"id":1930,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"15157:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":1932,"indexExpression":{"id":1931,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15170:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15157:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15131:50:2"},{"assignments":[1935],"declarations":[{"constant":false,"id":1935,"mutability":"mutable","name":"newOwner","nameLocation":"15290:8:2","nodeType":"VariableDeclaration","scope":1965,"src":"15282:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1934,"name":"address","nodeType":"ElementaryTypeName","src":"15282:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1939,"initialValue":{"baseExpression":{"id":1936,"name":"profileIdToPendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1536,"src":"15301:23:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"}},"id":1938,"indexExpression":{"id":1937,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15325:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15301:35:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"15282:54:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":1940,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15414:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15418:6:2","memberName":"sender","nodeType":"MemberAccess","src":"15414:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":1942,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1935,"src":"15428:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15414:22:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1947,"nodeType":"IfStatement","src":"15410:54:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":1944,"name":"NOT_PENDING_OWNER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3029,"src":"15445:17:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":1945,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15445:19:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1946,"nodeType":"RevertStatement","src":"15438:26:2"}},{"expression":{"id":1952,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":1948,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1929,"src":"15550:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1950,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"15558:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"15550:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1951,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1935,"src":"15566:8:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15550:24:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1953,"nodeType":"ExpressionStatement","src":"15550:24:2"},{"expression":{"id":1957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"15584:42:2","subExpression":{"baseExpression":{"id":1954,"name":"profileIdToPendingOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1536,"src":"15591:23:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_address_$","typeString":"mapping(bytes32 => address)"}},"id":1956,"indexExpression":{"id":1955,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15615:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15591:35:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1958,"nodeType":"ExpressionStatement","src":"15584:42:2"},{"eventCall":{"arguments":[{"id":1960,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1924,"src":"15728:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":1961,"name":"profile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1929,"src":"15740:7:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile storage pointer"}},"id":1962,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15748:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"15740:13:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":1959,"name":"ProfileOwnerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2669,"src":"15708:19:2","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":1963,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15708:46:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1964,"nodeType":"EmitStatement","src":"15703:51:2"}]},"baseFunctions":[2775],"documentation":{"id":1922,"nodeType":"StructuredDocumentation","src":"14724:287:2","text":"@notice Transfers the ownership of the profile to the pending owner and Emits a 'ProfileOwnerUdpated()' event.\n @dev 'msg.sender' must be the pending owner of the profile. [2]*This is step two of two when transferring ownership.\n @param _profileId The ID of the profile"},"functionSelector":"2497f3c6","implemented":true,"kind":"function","modifiers":[],"name":"acceptProfileOwnership","nameLocation":"15025:22:2","parameters":{"id":1925,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1924,"mutability":"mutable","name":"_profileId","nameLocation":"15056:10:2","nodeType":"VariableDeclaration","scope":1966,"src":"15048:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1923,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15048:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"15047:20:2"},"returnParameters":{"id":1926,"nodeType":"ParameterList","parameters":[],"src":"15077:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2017,"nodeType":"FunctionDefinition","src":"15962:658:2","nodes":[],"body":{"id":2016,"nodeType":"Block","src":"16067:553:2","nodes":[],"statements":[{"assignments":[1979],"declarations":[{"constant":false,"id":1979,"mutability":"mutable","name":"memberLength","nameLocation":"16085:12:2","nodeType":"VariableDeclaration","scope":2016,"src":"16077:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1978,"name":"uint256","nodeType":"ElementaryTypeName","src":"16077:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1982,"initialValue":{"expression":{"id":1980,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1972,"src":"16100:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1981,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16109:6:2","memberName":"length","nodeType":"MemberAccess","src":"16100:15:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"16077:38:2"},{"body":{"id":2014,"nodeType":"Block","src":"16246:368:2","statements":[{"assignments":[1990],"declarations":[{"constant":false,"id":1990,"mutability":"mutable","name":"member","nameLocation":"16268:6:2","nodeType":"VariableDeclaration","scope":2014,"src":"16260:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1989,"name":"address","nodeType":"ElementaryTypeName","src":"16260:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1994,"initialValue":{"baseExpression":{"id":1991,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1972,"src":"16277:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":1993,"indexExpression":{"id":1992,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1984,"src":"16286:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16277:11:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16260:28:2"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2000,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1995,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1990,"src":"16377:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1998,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16395:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":1997,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16387:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1996,"name":"address","nodeType":"ElementaryTypeName","src":"16387:7:2","typeDescriptions":{}}},"id":1999,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16387:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16377:20:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2004,"nodeType":"IfStatement","src":"16373:47:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2001,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"16406:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2002,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16406:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2003,"nodeType":"RevertStatement","src":"16399:21:2"}},{"expression":{"arguments":[{"id":2006,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1969,"src":"16525:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2007,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1990,"src":"16537:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2005,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"16514:10:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":2008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16514:30:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2009,"nodeType":"ExpressionStatement","src":"16514:30:2"},{"id":2013,"nodeType":"UncheckedBlock","src":"16558:46:2","statements":[{"expression":{"id":2011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"16586:3:2","subExpression":{"id":2010,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1984,"src":"16588:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2012,"nodeType":"ExpressionStatement","src":"16586:3:2"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1988,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1986,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1984,"src":"16227:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":1987,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1979,"src":"16231:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16227:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2015,"initializationExpression":{"assignments":[1984],"declarations":[{"constant":false,"id":1984,"mutability":"mutable","name":"i","nameLocation":"16224:1:2","nodeType":"VariableDeclaration","scope":2015,"src":"16216:9:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1983,"name":"uint256","nodeType":"ElementaryTypeName","src":"16216:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":1985,"nodeType":"VariableDeclarationStatement","src":"16216:9:2"},"nodeType":"ForStatement","src":"16211:403:2"}]},"baseFunctions":[2784],"documentation":{"id":1967,"nodeType":"StructuredDocumentation","src":"15767:190:2","text":"@notice Adds members to the profile\n @dev 'msg.sender' must be the owner of the profile.\n @param _profileId The ID of the profile\n @param _members The members to add"},"functionSelector":"5063f361","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":1975,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1969,"src":"16055:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1976,"kind":"modifierInvocation","modifierName":{"id":1974,"name":"onlyProfileOwner","nameLocations":["16038:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"16038:16:2"},"nodeType":"ModifierInvocation","src":"16038:28:2"}],"name":"addMembers","nameLocation":"15971:10:2","parameters":{"id":1973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1969,"mutability":"mutable","name":"_profileId","nameLocation":"15990:10:2","nodeType":"VariableDeclaration","scope":2017,"src":"15982:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1968,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15982:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1972,"mutability":"mutable","name":"_members","nameLocation":"16019:8:2","nodeType":"VariableDeclaration","scope":2017,"src":"16002:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":1970,"name":"address","nodeType":"ElementaryTypeName","src":"16002:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1971,"nodeType":"ArrayTypeName","src":"16002:9:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"15981:47:2"},"returnParameters":{"id":1977,"nodeType":"ParameterList","parameters":[],"src":"16067:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2054,"nodeType":"FunctionDefinition","src":"16837:500:2","nodes":[],"body":{"id":2053,"nodeType":"Block","src":"16945:392:2","nodes":[],"statements":[{"assignments":[2030],"declarations":[{"constant":false,"id":2030,"mutability":"mutable","name":"memberLength","nameLocation":"16963:12:2","nodeType":"VariableDeclaration","scope":2053,"src":"16955:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2029,"name":"uint256","nodeType":"ElementaryTypeName","src":"16955:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2033,"initialValue":{"expression":{"id":2031,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2023,"src":"16978:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2032,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16987:6:2","memberName":"length","nodeType":"MemberAccess","src":"16978:15:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"16955:38:2"},{"body":{"id":2051,"nodeType":"Block","src":"17129:202:2","statements":[{"expression":{"arguments":[{"id":2041,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2020,"src":"17237:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":2042,"name":"_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2023,"src":"17249:8:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2044,"indexExpression":{"id":2043,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2035,"src":"17258:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17249:11:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2040,"name":"_revokeRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52691,"src":"17225:11:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":2045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17225:36:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2046,"nodeType":"ExpressionStatement","src":"17225:36:2"},{"id":2050,"nodeType":"UncheckedBlock","src":"17275:46:2","statements":[{"expression":{"id":2048,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"17303:3:2","subExpression":{"id":2047,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2035,"src":"17305:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2049,"nodeType":"ExpressionStatement","src":"17303:3:2"}]}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2037,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2035,"src":"17110:1:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":2038,"name":"memberLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2030,"src":"17114:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17110:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2052,"initializationExpression":{"assignments":[2035],"declarations":[{"constant":false,"id":2035,"mutability":"mutable","name":"i","nameLocation":"17107:1:2","nodeType":"VariableDeclaration","scope":2052,"src":"17099:9:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2034,"name":"uint256","nodeType":"ElementaryTypeName","src":"17099:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2036,"nodeType":"VariableDeclarationStatement","src":"17099:9:2"},"nodeType":"ForStatement","src":"17094:237:2"}]},"baseFunctions":[2793],"documentation":{"id":2018,"nodeType":"StructuredDocumentation","src":"16626:206:2","text":"@notice Removes members from the profile\n @dev 'msg.sender' must be the pending owner of the profile.\n @param _profileId The ID of the profile\n @param _members The members to remove"},"functionSelector":"e0cf1e4c","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2026,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2020,"src":"16933:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":2027,"kind":"modifierInvocation","modifierName":{"id":2025,"name":"onlyProfileOwner","nameLocations":["16916:16:2"],"nodeType":"IdentifierPath","referencedDeclaration":1553,"src":"16916:16:2"},"nodeType":"ModifierInvocation","src":"16916:28:2"}],"name":"removeMembers","nameLocation":"16846:13:2","parameters":{"id":2024,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2020,"mutability":"mutable","name":"_profileId","nameLocation":"16868:10:2","nodeType":"VariableDeclaration","scope":2054,"src":"16860:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2019,"name":"bytes32","nodeType":"ElementaryTypeName","src":"16860:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2023,"mutability":"mutable","name":"_members","nameLocation":"16897:8:2","nodeType":"VariableDeclaration","scope":2054,"src":"16880:25:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2021,"name":"address","nodeType":"ElementaryTypeName","src":"16880:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2022,"nodeType":"ArrayTypeName","src":"16880:9:2","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"16859:47:2"},"returnParameters":{"id":2028,"nodeType":"ParameterList","parameters":[],"src":"16945:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2071,"nodeType":"FunctionDefinition","src":"17659:152:2","nodes":[],"body":{"id":2070,"nodeType":"Block","src":"17725:86:2","nodes":[],"statements":[{"condition":{"id":2065,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"17739:42:2","subExpression":{"arguments":[{"id":2061,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2057,"src":"17758:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":2062,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17770:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2063,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17774:6:2","memberName":"sender","nodeType":"MemberAccess","src":"17770:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2060,"name":"_isOwnerOfProfile","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2229,"src":"17740:17:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":2064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17740:41:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2069,"nodeType":"IfStatement","src":"17735:69:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2066,"name":"UNAUTHORIZED","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3017,"src":"17790:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2067,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17790:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2068,"nodeType":"RevertStatement","src":"17783:21:2"}}]},"documentation":{"id":2055,"nodeType":"StructuredDocumentation","src":"17479:175:2","text":"@notice Checks if the caller is the owner of the profile\n @dev Internal function used by modifier 'onlyProfileOwner'\n @param _profileId The ID of the profile"},"implemented":true,"kind":"function","modifiers":[],"name":"_checkOnlyProfileOwner","nameLocation":"17668:22:2","parameters":{"id":2058,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2057,"mutability":"mutable","name":"_profileId","nameLocation":"17699:10:2","nodeType":"VariableDeclaration","scope":2071,"src":"17691:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2056,"name":"bytes32","nodeType":"ElementaryTypeName","src":"17691:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"17690:20:2"},"returnParameters":{"id":2059,"nodeType":"ParameterList","parameters":[],"src":"17725:0:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":2192,"nodeType":"FunctionDefinition","src":"18166:969:2","nodes":[],"body":{"id":2191,"nodeType":"Block","src":"18266:869:2","nodes":[],"statements":[{"assignments":[2082],"declarations":[{"constant":false,"id":2082,"mutability":"mutable","name":"encodedData","nameLocation":"18289:11:2","nodeType":"VariableDeclaration","scope":2191,"src":"18276:24:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2081,"name":"bytes","nodeType":"ElementaryTypeName","src":"18276:5:2","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":2088,"initialValue":{"arguments":[{"id":2085,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"18314:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2086,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2076,"src":"18326:5:2","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":2083,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18303:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2084,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18307:6:2","memberName":"encode","nodeType":"MemberAccess","src":"18303:10:2","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18303:29:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"18276:56:2"},{"assignments":[2090],"declarations":[{"constant":false,"id":2090,"mutability":"mutable","name":"encodedConstructorArgs","nameLocation":"18355:22:2","nodeType":"VariableDeclaration","scope":2191,"src":"18342:35:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2089,"name":"bytes","nodeType":"ElementaryTypeName","src":"18342:5:2","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":2099,"initialValue":{"arguments":[{"id":2093,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"18391:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":2096,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18411:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2095,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18403:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2094,"name":"address","nodeType":"ElementaryTypeName","src":"18403:7:2","typeDescriptions":{}}},"id":2097,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18403:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":2091,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18380:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2092,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18384:6:2","memberName":"encode","nodeType":"MemberAccess","src":"18380:10:2","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18380:37:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"18342:75:2"},{"assignments":[2101],"declarations":[{"constant":false,"id":2101,"mutability":"mutable","name":"bytecode","nameLocation":"18441:8:2","nodeType":"VariableDeclaration","scope":2191,"src":"18428:21:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2100,"name":"bytes","nodeType":"ElementaryTypeName","src":"18428:5:2","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":2110,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":2105,"name":"Anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1492,"src":"18474:6:2","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Anchor_$1492_$","typeString":"type(contract Anchor)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_Anchor_$1492_$","typeString":"type(contract Anchor)"}],"id":2104,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"18469:4:2","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":2106,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18469:12:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_Anchor_$1492","typeString":"type(contract Anchor)"}},"id":2107,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18482:12:2","memberName":"creationCode","nodeType":"MemberAccess","src":"18469:25:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":2108,"name":"encodedConstructorArgs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2090,"src":"18496:22:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":2102,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18452:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2103,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18456:12:2","memberName":"encodePacked","nodeType":"MemberAccess","src":"18452:16:2","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2109,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18452:67:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"18428:91:2"},{"assignments":[2112],"declarations":[{"constant":false,"id":2112,"mutability":"mutable","name":"salt","nameLocation":"18538:4:2","nodeType":"VariableDeclaration","scope":2191,"src":"18530:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2111,"name":"bytes32","nodeType":"ElementaryTypeName","src":"18530:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":2116,"initialValue":{"arguments":[{"id":2114,"name":"encodedData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2082,"src":"18555:11:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2113,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"18545:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2115,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18545:22:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"18530:37:2"},{"assignments":[2118],"declarations":[{"constant":false,"id":2118,"mutability":"mutable","name":"preComputedAddress","nameLocation":"18586:18:2","nodeType":"VariableDeclaration","scope":2191,"src":"18578:26:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2117,"name":"address","nodeType":"ElementaryTypeName","src":"18578:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":2145,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"arguments":[{"hexValue":"30786666","id":2130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18678:4:2","typeDescriptions":{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"},"value":"0xff"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"}],"id":2129,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18671:6:2","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":2128,"name":"bytes1","nodeType":"ElementaryTypeName","src":"18671:6:2","typeDescriptions":{}}},"id":2131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18671:12:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},{"arguments":[{"id":2134,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18693:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18685:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2132,"name":"address","nodeType":"ElementaryTypeName","src":"18685:7:2","typeDescriptions":{}}},"id":2135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18685:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":2136,"name":"salt","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2112,"src":"18700:4:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":2138,"name":"bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2101,"src":"18716:8:2","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2137,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"18706:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18706:19:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":2126,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"18654:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2127,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18658:12:2","memberName":"encodePacked","nodeType":"MemberAccess","src":"18654:16:2","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2140,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18654:72:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2125,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"18644:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18644:83:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":2124,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18636:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":2123,"name":"uint256","nodeType":"ElementaryTypeName","src":"18636:7:2","typeDescriptions":{}}},"id":2142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18636:92:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2122,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18628:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":2121,"name":"uint160","nodeType":"ElementaryTypeName","src":"18628:7:2","typeDescriptions":{}}},"id":2143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18628:101:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":2120,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18607:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2119,"name":"address","nodeType":"ElementaryTypeName","src":"18607:7:2","typeDescriptions":{}}},"id":2144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18607:132:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"18578:161:2"},{"clauses":[{"block":{"id":2168,"nodeType":"Block","src":"18918:50:2","statements":[{"expression":{"id":2166,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2161,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2079,"src":"18932:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":2164,"name":"_anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2159,"src":"18949:7:2","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}],"id":2163,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18941:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2162,"name":"address","nodeType":"ElementaryTypeName","src":"18941:7:2","typeDescriptions":{}}},"id":2165,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18941:16:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18932:25:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2167,"nodeType":"ExpressionStatement","src":"18932:25:2"}]},"errorName":"","id":2169,"nodeType":"TryCatchClause","parameters":{"id":2160,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2159,"mutability":"mutable","name":"_anchor","nameLocation":"18909:7:2","nodeType":"VariableDeclaration","scope":2169,"src":"18902:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"},"typeName":{"id":2158,"nodeType":"UserDefinedTypeName","pathNode":{"id":2157,"name":"Anchor","nameLocations":["18902:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":1492,"src":"18902:6:2"},"referencedDeclaration":1492,"src":"18902:6:2","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}},"visibility":"internal"}],"src":"18901:16:2"},"src":"18893:75:2"},{"block":{"id":2188,"nodeType":"Block","src":"18975:154:2","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":2179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":2173,"name":"preComputedAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2118,"src":"19008:18:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2172,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19000:8:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":2171,"name":"address","nodeType":"ElementaryTypeName","src":"19000:8:2","stateMutability":"payable","typeDescriptions":{}}},"id":2174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19000:27:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":2170,"name":"Anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1492,"src":"18993:6:2","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Anchor_$1492_$","typeString":"type(contract Anchor)"}},"id":2175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18993:35:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}},"id":2176,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19029:9:2","memberName":"profileId","nodeType":"MemberAccess","referencedDeclaration":1408,"src":"18993:45:2","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bytes32_$","typeString":"function () view external returns (bytes32)"}},"id":2177,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18993:47:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":2178,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"19044:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"18993:61:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2183,"nodeType":"IfStatement","src":"18989:88:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2180,"name":"ANCHOR_ERROR","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3032,"src":"19063:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19063:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2182,"nodeType":"RevertStatement","src":"19056:21:2"}},{"expression":{"id":2186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2184,"name":"anchor","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2079,"src":"19091:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2185,"name":"preComputedAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2118,"src":"19100:18:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"19091:27:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2187,"nodeType":"ExpressionStatement","src":"19091:27:2"}]},"errorName":"","id":2189,"nodeType":"TryCatchClause","src":"18969:160:2"}],"externalCall":{"arguments":[{"id":2151,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2074,"src":"18866:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":2154,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18886:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18878:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2152,"name":"address","nodeType":"ElementaryTypeName","src":"18878:7:2","typeDescriptions":{}}},"id":2155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18878:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2148,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"18843:10:2","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$_t_bytes32_$_t_address_$returns$_t_contract$_Anchor_$1492_$","typeString":"function (bytes32,address) returns (contract Anchor)"},"typeName":{"id":2147,"nodeType":"UserDefinedTypeName","pathNode":{"id":2146,"name":"Anchor","nameLocations":["18847:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":1492,"src":"18847:6:2"},"referencedDeclaration":1492,"src":"18847:6:2","typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}}},"id":2150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["salt"],"nodeType":"FunctionCallOptions","options":[{"id":2149,"name":"salt","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2112,"src":"18860:4:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"src":"18843:22:2","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$_t_bytes32_$_t_address_$returns$_t_contract$_Anchor_$1492_$salt","typeString":"function (bytes32,address) returns (contract Anchor)"}},"id":2156,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18843:49:2","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_contract$_Anchor_$1492","typeString":"contract Anchor"}},"id":2190,"nodeType":"TryStatement","src":"18839:290:2"}]},"documentation":{"id":2072,"nodeType":"StructuredDocumentation","src":"17817:344:2","text":"@notice Generates and deploys the anchor for the given 'profileId' and name\n @dev Internal function used by 'createProfile()' and 'updateProfileName()' to create and anchor.\n @param _profileId The ID of the profile\n @param _name The name of the profile\n @return anchor The address of the deployed anchor contract"},"implemented":true,"kind":"function","modifiers":[],"name":"_generateAnchor","nameLocation":"18175:15:2","parameters":{"id":2077,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2074,"mutability":"mutable","name":"_profileId","nameLocation":"18199:10:2","nodeType":"VariableDeclaration","scope":2192,"src":"18191:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2073,"name":"bytes32","nodeType":"ElementaryTypeName","src":"18191:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2076,"mutability":"mutable","name":"_name","nameLocation":"18225:5:2","nodeType":"VariableDeclaration","scope":2192,"src":"18211:19:2","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2075,"name":"string","nodeType":"ElementaryTypeName","src":"18211:6:2","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"18190:41:2"},"returnParameters":{"id":2080,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2079,"mutability":"mutable","name":"anchor","nameLocation":"18258:6:2","nodeType":"VariableDeclaration","scope":2192,"src":"18250:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2078,"name":"address","nodeType":"ElementaryTypeName","src":"18250:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18249:16:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":2211,"nodeType":"FunctionDefinition","src":"19465:159:2","nodes":[],"body":{"id":2210,"nodeType":"Block","src":"19557:67:2","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":2205,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2195,"src":"19601:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":2206,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2197,"src":"19609:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":2203,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"19584:3:2","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2204,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19588:12:2","memberName":"encodePacked","nodeType":"MemberAccess","src":"19584:16:2","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19584:32:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2202,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"19574:9:2","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2208,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19574:43:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2201,"id":2209,"nodeType":"Return","src":"19567:50:2"}]},"documentation":{"id":2193,"nodeType":"StructuredDocumentation","src":"19141:319:2","text":"@notice Generates the 'profileId' based on msg.sender and nonce\n @dev Internal function used by 'createProfile()' to generate profileId.\n @param _nonce Nonce provided by the caller to generate 'profileId'\n @param _owner The owner of the profile\n @return 'profileId' The ID of the profile"},"implemented":true,"kind":"function","modifiers":[],"name":"_generateProfileId","nameLocation":"19474:18:2","parameters":{"id":2198,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2195,"mutability":"mutable","name":"_nonce","nameLocation":"19501:6:2","nodeType":"VariableDeclaration","scope":2211,"src":"19493:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2194,"name":"uint256","nodeType":"ElementaryTypeName","src":"19493:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2197,"mutability":"mutable","name":"_owner","nameLocation":"19517:6:2","nodeType":"VariableDeclaration","scope":2211,"src":"19509:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2196,"name":"address","nodeType":"ElementaryTypeName","src":"19509:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19492:32:2"},"returnParameters":{"id":2201,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2200,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2211,"src":"19548:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2199,"name":"bytes32","nodeType":"ElementaryTypeName","src":"19548:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"19547:9:2"},"scope":2295,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":2229,"nodeType":"FunctionDefinition","src":"19963:156:2","nodes":[],"body":{"id":2228,"nodeType":"Block","src":"20055:64:2","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":2221,"name":"profilesById","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1531,"src":"20072:12:2","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes32_$_t_struct$_Profile_$2629_storage_$","typeString":"mapping(bytes32 => struct IRegistry.Profile storage ref)"}},"id":2223,"indexExpression":{"id":2222,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2214,"src":"20085:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20072:24:2","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage","typeString":"struct IRegistry.Profile storage ref"}},"id":2224,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"20097:5:2","memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":2626,"src":"20072:30:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":2225,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2216,"src":"20106:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"20072:40:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":2220,"id":2227,"nodeType":"Return","src":"20065:47:2"}]},"documentation":{"id":2212,"nodeType":"StructuredDocumentation","src":"19630:328:2","text":"@notice Checks if an address is the owner of the profile\n @dev Internal function used to determine if an address is the profile owner\n @param _profileId The 'profileId' of the profile\n @param _owner The address to check\n @return 'true' if the address is an owner of the profile, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isOwnerOfProfile","nameLocation":"19972:17:2","parameters":{"id":2217,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2214,"mutability":"mutable","name":"_profileId","nameLocation":"19998:10:2","nodeType":"VariableDeclaration","scope":2229,"src":"19990:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2213,"name":"bytes32","nodeType":"ElementaryTypeName","src":"19990:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2216,"mutability":"mutable","name":"_owner","nameLocation":"20018:6:2","nodeType":"VariableDeclaration","scope":2229,"src":"20010:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2215,"name":"address","nodeType":"ElementaryTypeName","src":"20010:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19989:36:2"},"returnParameters":{"id":2220,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2219,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2229,"src":"20049:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2218,"name":"bool","nodeType":"ElementaryTypeName","src":"20049:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"20048:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":2245,"nodeType":"FunctionDefinition","src":"20464:146:2","nodes":[],"body":{"id":2244,"nodeType":"Block","src":"20558:52:2","nodes":[],"statements":[{"expression":{"arguments":[{"id":2240,"name":"_profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2232,"src":"20583:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2241,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2234,"src":"20595:7:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2239,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"20575:7:2","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":2242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20575:28:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":2238,"id":2243,"nodeType":"Return","src":"20568:35:2"}]},"documentation":{"id":2230,"nodeType":"StructuredDocumentation","src":"20125:334:2","text":"@notice Checks if an address is a member of the profile\n @dev Internal function used to determine if an address is a member of the profile\n @param _profileId The 'profileId' of the profile\n @param _member The address to check\n @return 'true' if the address is a member of the profile, otherwise 'false'"},"implemented":true,"kind":"function","modifiers":[],"name":"_isMemberOfProfile","nameLocation":"20473:18:2","parameters":{"id":2235,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2232,"mutability":"mutable","name":"_profileId","nameLocation":"20500:10:2","nodeType":"VariableDeclaration","scope":2245,"src":"20492:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2231,"name":"bytes32","nodeType":"ElementaryTypeName","src":"20492:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2234,"mutability":"mutable","name":"_member","nameLocation":"20520:7:2","nodeType":"VariableDeclaration","scope":2245,"src":"20512:15:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2233,"name":"address","nodeType":"ElementaryTypeName","src":"20512:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20491:37:2"},"returnParameters":{"id":2238,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2237,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2245,"src":"20552:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2236,"name":"bool","nodeType":"ElementaryTypeName","src":"20552:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"20551:6:2"},"scope":2295,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":2294,"nodeType":"FunctionDefinition","src":"20847:318:2","nodes":[],"body":{"id":2293,"nodeType":"Block","src":"20935:230:2","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2256,"name":"_recipient","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2250,"src":"20949:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":2259,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20971:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2258,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20963:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2257,"name":"address","nodeType":"ElementaryTypeName","src":"20963:7:2","typeDescriptions":{}}},"id":2260,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20963:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"20949:24:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2265,"nodeType":"IfStatement","src":"20945:51:2","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":2262,"name":"ZERO_ADDRESS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3020,"src":"20982:12:2","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":2263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20982:14:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2264,"nodeType":"RevertStatement","src":"20975:21:2"}},{"assignments":[2267],"declarations":[{"constant":false,"id":2267,"mutability":"mutable","name":"amount","nameLocation":"21015:6:2","nodeType":"VariableDeclaration","scope":2293,"src":"21007:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2266,"name":"uint256","nodeType":"ElementaryTypeName","src":"21007:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2286,"initialValue":{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2270,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2268,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2248,"src":"21024:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":2269,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"21034:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"21024:16:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"arguments":[{"id":2282,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21099:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2281,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21091:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2280,"name":"address","nodeType":"ElementaryTypeName","src":"21091:7:2","typeDescriptions":{}}},"id":2283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21091:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":2277,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2248,"src":"21073:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2276,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4491,"src":"21067:5:2","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$4491_$","typeString":"type(contract ERC20)"}},"id":2278,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21067:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$4491","typeString":"contract ERC20"}},"id":2279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21081:9:2","memberName":"balanceOf","nodeType":"MemberAccess","referencedDeclaration":4200,"src":"21067:23:2","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":2284,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21067:38:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"21024:81:2","trueExpression":{"expression":{"arguments":[{"id":2273,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21051:4:2","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}],"id":2272,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21043:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2271,"name":"address","nodeType":"ElementaryTypeName","src":"21043:7:2","typeDescriptions":{}}},"id":2274,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21043:13:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21057:7:2","memberName":"balance","nodeType":"MemberAccess","src":"21043:21:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21007:98:2"},{"expression":{"arguments":[{"id":2288,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2248,"src":"21131:6:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":2289,"name":"_recipient","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2250,"src":"21139:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":2290,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2267,"src":"21151:6:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2287,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"21115:15:2","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":2291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21115:43:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2292,"nodeType":"ExpressionStatement","src":"21115:43:2"}]},"baseFunctions":[2801],"documentation":{"id":2246,"nodeType":"StructuredDocumentation","src":"20616:226:2","text":"@notice Transfers any fund balance in Allo to the recipient\n @dev 'msg.sender' must be the Allo owner\n @param _token The address of the token to transfer\n @param _recipient The address of the recipient"},"functionSelector":"24ae6a27","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2253,"name":"ALLO_OWNER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1542,"src":"20923:10:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":2254,"kind":"modifierInvocation","modifierName":{"id":2252,"name":"onlyRole","nameLocations":["20914:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":52403,"src":"20914:8:2"},"nodeType":"ModifierInvocation","src":"20914:20:2"}],"name":"recoverFunds","nameLocation":"20856:12:2","parameters":{"id":2251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2248,"mutability":"mutable","name":"_token","nameLocation":"20877:6:2","nodeType":"VariableDeclaration","scope":2294,"src":"20869:14:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2247,"name":"address","nodeType":"ElementaryTypeName","src":"20869:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2250,"mutability":"mutable","name":"_recipient","nameLocation":"20893:10:2","nodeType":"VariableDeclaration","scope":2294,"src":"20885:18:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2249,"name":"address","nodeType":"ElementaryTypeName","src":"20885:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20868:36:2"},"returnParameters":{"id":2255,"nodeType":"ParameterList","parameters":[],"src":"20935:0:2"},"scope":2295,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":1509,"name":"IRegistry","nameLocations":["5258:9:2"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"5258:9:2"},"id":1510,"nodeType":"InheritanceSpecifier","src":"5258:9:2"},{"baseName":{"id":1511,"name":"Initializable","nameLocations":["5269:13:2"],"nodeType":"IdentifierPath","referencedDeclaration":53152,"src":"5269:13:2"},"id":1512,"nodeType":"InheritanceSpecifier","src":"5269:13:2"},{"baseName":{"id":1513,"name":"Native","nameLocations":["5284:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"5284:6:2"},"id":1514,"nodeType":"InheritanceSpecifier","src":"5284:6:2"},{"baseName":{"id":1515,"name":"AccessControlUpgradeable","nameLocations":["5292:24:2"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"5292:24:2"},"id":1516,"nodeType":"InheritanceSpecifier","src":"5292:24:2"},{"baseName":{"id":1517,"name":"Transfer","nameLocations":["5318:8:2"],"nodeType":"IdentifierPath","referencedDeclaration":3317,"src":"5318:8:2"},"id":1518,"nodeType":"InheritanceSpecifier","src":"5318:8:2"},{"baseName":{"id":1519,"name":"Errors","nameLocations":["5328:6:2"],"nodeType":"IdentifierPath","referencedDeclaration":3089,"src":"5328:6:2"},"id":1520,"nodeType":"InheritanceSpecifier","src":"5328:6:2"}],"canonicalName":"Registry","contractDependencies":[1492],"contractKind":"contract","documentation":{"id":1508,"nodeType":"StructuredDocumentation","src":"4584:653:2","text":"@title Registry Contract\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice Registry contract for creating and managing profiles\n @dev This contract is used to create and manage profiles for the Allo protocol\n It is also used to deploy the anchor contract for each profile which acts as a proxy\n for the profile and is used to receive funds and execute transactions on behalf of the profile\n The Registry is also used to add and remove members from a profile and update the profile 'Metadata'"},"fullyImplemented":true,"linearizedBaseContracts":[2295,3089,3317,52697,3106,53970,53982,52770,53696,53152,2802],"name":"Registry","nameLocation":"5246:8:2","scope":2296,"usedErrors":[3008,3011,3014,3017,3020,3023,3026,3029,3032,3035,3038,3041,3044,3047,3050,3053,3056,3059,3062,3065,3068,3071,3074,3079,3082,3085,3088,3117]}],"license":"AGPL-3.0-only"},"id":2} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json b/pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json index 8b98f24e..0cf5a2ef 100644 --- a/pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json +++ b/pkg/contracts/out/RegistryCommunityFacet.sol/RegistryCommunityFacet.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"_interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161623b6200004d60003960008181611eed01528181611f300152818161202b0152818161206e01526121c0015261623b6000f3fe608060405260043610620003505760003560e01c806301ffc9a714620003555780630331383c14620003c757806308386eba14620003e85780630d12bbdb14620004005780630d4a8b491462000427578063175188e8146200044c5780631b71f0e414620004715780631f787d281462000496578063223e547914620004b157806322bcf99914620004d6578063248a9ca314620004fb57806328c309e914620005205780632b38c69c14620005385780632c3bb44a146200056c5780632c611c4a14620005915780632f2ff15d14620005cf57806331f61bca14620005f45780633396045914620006195780633419635514620006315780633517aa7d146200065657806336568abe146200066e5780633659cfe61462000693578063397e254314620006b85780633a871fe114620006dd578063477a5cc014620007125780634f1ef2861462000752578063524e59e8146200076957806352d1902d14620007ac578063559de05d14620007c4578063579eb7e514620007e95780635c94e4d2146200080e5780635ecf71c5146200083157806365e3864c14620008565780636871eb4d146200089357806368decabb14620008b85780636c53db9a14620008db578063715018a614620008fe57806373265c371462000916578063733a2d1f146200093b57806377122d5614620009605780637817ee4f146200098357806378a0b8a914620009a85780637b10399914620009c057806382d6a1e714620009e35780638659ffdd1462000a0857806388cfe6841462000a2d5780638961be6b1462000aa35780638da5cb5b1462000abb57806391d148541462000ad3578063a0cf0aea1462000af8578063a217fddf1462000b22578063a230c5241462000b39578063b0d3713a1462000b5e578063b3f006741462000b83578063b5058c501462000baa578063b64e39af1462000bc2578063b99b43701462000be9578063bc063e1a1462000c01578063c4d66de81462000c19578063c6d572ae1462000c3e578063d547741f1462000c56578063d6d8428d1462000c7b578063d7050f071462000c9e578063db61d65c1462000cb6578063e16d0e321462000cd9578063ebd7dc521462000cfe578063f2fde38b1462000d23578063f86c5f891462000d48578063ffa1ad741462000d6b575b600080fd5b3480156200036257600080fd5b50620003b26200037436600462004610565b6001600160e01b03191660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e602052604090205460ff1690565b60405190151581526020015b60405180910390f35b348015620003d457600080fd5b5060fb545b604051908152602001620003be565b348015620003f557600080fd5b50620003d960fe5481565b3480156200040d57600080fd5b50620004256200041f3660046200463c565b62000d99565b005b3480156200043457600080fd5b5062000425620004463660046200467e565b62000e0f565b3480156200045957600080fd5b50620004256200046b366004620046bc565b62001192565b3480156200047e57600080fd5b506200042562000490366004620046bc565b620011aa565b348015620004a357600080fd5b5060ff8054620003b2911681565b348015620004be57600080fd5b5062000425620004d0366004620046bc565b620011d7565b348015620004e357600080fd5b5062000425620004f53660046200467e565b620011ec565b3480156200050857600080fd5b50620003d96200051a3660046200463c565b620012e6565b3480156200052d57600080fd5b50620003d9620012fb565b3480156200054557600080fd5b506200055d62000557366004620046dc565b62001400565b604051620003be919062004718565b3480156200057957600080fd5b50620004256200058b3660046200472c565b6200143a565b3480156200059e57600080fd5b50620003d9620005b0366004620046bc565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005dc57600080fd5b5062000425620005ee3660046200477e565b62001537565b3480156200060157600080fd5b5062000425620006133660046200463c565b6200155e565b3480156200062657600080fd5b50620003d960fd5481565b3480156200063e57600080fd5b5062000425620006503660046200498e565b6200159e565b3480156200066357600080fd5b506200042562001c03565b3480156200067b57600080fd5b50620004256200068d3660046200477e565b62001e65565b348015620006a057600080fd5b5062000425620006b2366004620046bc565b62001ee3565b348015620006c557600080fd5b5062000425620006d7366004620046bc565b62001fb4565b348015620006ea57600080fd5b50620003b2620006fc366004620046bc565b61010a6020526000908152604090205460ff1681565b3480156200071f57600080fd5b50620003b2620007313660046200467e565b61010e60209081526000928352604080842090915290825290205460ff1681565b620004256200076336600462004b21565b62002021565b3480156200077657600080fd5b506200078e6200078836600462004da5565b620020e2565b604080519283526001600160a01b03909116602083015201620003be565b348015620007b957600080fd5b50620003d9620021b3565b348015620007d157600080fd5b5062000425620007e33660046200463c565b62002264565b348015620007f657600080fd5b506200078e6200080836600462004f86565b620024b0565b3480156200081b57600080fd5b50610102546200055d906001600160a01b031681565b3480156200083e57600080fd5b5062000425620008503660046200463c565b62002718565b3480156200086357600080fd5b50620003d9620008753660046200467e565b61010b60209081526000928352604080842090915290825290205481565b348015620008a057600080fd5b5062000425620008b23660046200467e565b62002ab2565b348015620008c557600080fd5b50610103546200055d906001600160a01b031681565b348015620008e857600080fd5b50610106546200055d906001600160a01b031681565b3480156200090b57600080fd5b506200042562002c05565b3480156200092357600080fd5b5062000425620009353660046200463c565b62002c1b565b3480156200094857600080fd5b50620003d96000805160206200615f83398151915281565b3480156200096d57600080fd5b50610101546200055d906001600160a01b031681565b3480156200099057600080fd5b50620003d9620009a23660046200467e565b62002cb7565b348015620009b557600080fd5b50620003d960fb5481565b348015620009cd57600080fd5b50610104546200055d906001600160a01b031681565b348015620009f057600080fd5b506200042562000a023660046200463c565b62002ce5565b34801562000a1557600080fd5b506200078e62000a2736600462004ffa565b62002da3565b34801562000a3a57600080fd5b5062000a7b62000a4c366004620046bc565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b0390941684526020840192909252151590820152606001620003be565b34801562000ab057600080fd5b50620003d960fc5481565b34801562000ac857600080fd5b506200055d62002f30565b34801562000ae057600080fd5b50620003b262000af23660046200477e565b62002fcb565b34801562000b0557600080fd5b506200055d73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000b2f57600080fd5b50620003d9600081565b34801562000b4657600080fd5b50620003b262000b58366004620046bc565b62002ff6565b34801562000b6b57600080fd5b506200042562000b7d366004620046bc565b62003040565b34801562000b9057600080fd5b5060ff546200055d9061010090046001600160a01b031681565b34801562000bb757600080fd5b50620004256200306d565b34801562000bcf57600080fd5b5062000bda620030a4565b604051620003be9190620050e1565b34801562000bf657600080fd5b50620004256200313b565b34801562000c0e57600080fd5b50620003d962003245565b34801562000c2657600080fd5b506200042562000c38366004620046bc565b62003257565b34801562000c4b57600080fd5b5062000bda6200328c565b34801562000c6357600080fd5b506200042562000c753660046200477e565b6200329c565b34801562000c8857600080fd5b50610107546200055d906001600160a01b031681565b34801562000cab57600080fd5b50620003d961271081565b34801562000cc357600080fd5b50610105546200055d906001600160a01b031681565b34801562000ce657600080fd5b506200078e62000cf8366004620050f6565b620032be565b34801562000d0b57600080fd5b50620003b262000d1d366004620046bc565b6200337f565b34801562000d3057600080fd5b506200042562000d42366004620046bc565b6200339c565b34801562000d5557600080fd5b50610100546200055d906001600160a01b031681565b34801562000d7857600080fd5b50604080518082019091526003815262302e3160e81b602082015262000bda565b62000da36200340d565b62000db2612710600a6200517f565b81111562000dd35760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e196200344a565b62000e2482620034a5565b62000e2f81620034ce565b62000e3a8162003509565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e8357604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f379190620051af565b600381111562000f4b5762000f4b62005199565b0362000fd05760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f82908890600090600401620051cf565b6020604051808303816000875af115801562000fa2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc89190620051e8565b9050620010cc565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001013573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010399190620051af565b60038111156200104d576200104d62005199565b14620010cc5760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010839088908690600401620051cf565b6020604051808303816000875af1158015620010a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c99190620051e8565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec90620011789087908790859062005202565b60405180910390a15050506200118e6001606555565b5050565b6200119c6200340d565b620011a78162003538565b50565b620011b462003596565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011e16200340d565b620011a781620035f9565b620011f782620034a5565b620012028162003509565b6200120e33826200368b565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200125657604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a88282620036be565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012da92919062005226565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b0316816200131b61271060646200517f565b60fc5460fb546200132d91906200517f565b62001339919062005240565b905060006200134c61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137a90309060040162004718565b602060405180830381865afa15801562001398573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013be9190620051e8565b60fb54620013cd91906200517f565b620013d9919062005240565b9050808260fb54620013ec919062005263565b620013f8919062005263565b935050505090565b61010d60205281600052604060002081815481106200141e57600080fd5b6000918252602090912001546001600160a01b03169150829050565b600054600290610100900460ff161580156200145d575060005460ff8083169116105b620014855760405162461bcd60e51b81526004016200147c9062005279565b60405180910390fd5b6000805461ffff191660ff831617610100179055620014a362003596565b620014ae8462003509565b620014b98362003509565b620014c48262003509565b620014cf846200339c565b61010280546001600160a01b038581166001600160a01b0319928316179092556101018054928516929091169190911790556000805461ff001916905560405160ff82168152600080516020620061bf8339815191529060200160405180910390a150505050565b6200154282620012e6565b6200154d81620037f4565b62001559838362003800565b505050565b620015686200340d565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000e04565b600054610100900460ff1615808015620015bf5750600054600160ff909116105b80620015e45750620015d1306200388a565b158015620015e4575060005460ff166001145b620016035760405162461bcd60e51b81526004016200147c9062005279565b6000805460ff19166001179055801562001627576000805461ff0019166101001790555b620016328262003257565b6200163c62003899565b62001646620038cd565b620016626000805160206200615f8339815191526000620038f7565b62001671856020015162003509565b6200168185610100015162003509565b84516200168e9062003509565b6200169d8560a0015162003509565b606085015115620016b757620016b78560c0015162003509565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001712576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200174f908262005355565b506101608501516101099062001766908262005355565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017db906000805160206200615f8339815191529062003800565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001856919062005421565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620018e2576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018bc57620018bc62005441565b60200260200101906001600160a01b031690816001600160a01b03168152505062001a1f565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200192d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001957919081019062005457565b90508051600262001969919062005263565b6001600160401b03811115620019835762001983620047a6565b604051908082528060200260200182016040528015620019ad578160200160208202803683370190505b50915060005b815181101562001a1c57818181518110620019d257620019d262005441565b6020026020010151838281518110620019ef57620019ef62005441565b6001600160a01b03909216602092830291909101909101528062001a1381620054f0565b915050620019b3565b50505b6101065481516001600160a01b0390911690829062001a41906001906200550c565b8151811062001a545762001a5462005441565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a8691906200550c565b8151811062001a995762001a9962005441565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001aec929161010891309088906004016200560e565b6020604051808303816000875af115801562001b0c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b329190620051e8565b60fe55805162001b4b9061010f9060208401906200456a565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001bbd92909161010891906200566e565b60405180910390a150801562001bfc576000805461ff001916905560405160018152600080516020620061bf8339815191529060200160405180910390a15b5050505050565b62001c0d6200344a565b33600081815261010c602052604081206101005490916001600160a01b039091169062001c3e61271060646200517f565b60fc5460fb5462001c5091906200517f565b62001c5c919062005240565b9050600062001c6f61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001c9d90309060040162004718565b602060405180830381865afa15801562001cbb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ce19190620051e8565b60fb5462001cf091906200517f565b62001cfc919062005240565b905062001d098562002ff6565b62001e535760028401805460ff1916600190811790915560fb5490850181905562001d639086903090849062001d4190879062005263565b62001d4d919062005263565b610105546001600160a01b03169291906200394c565b811562001d905760ff546101055462001d90916001600160a01b03918216916101009091041684620039a8565b801562001e155762001e15836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001dda573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e00919062005421565b610105546001600160a01b03169083620039a8565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001e4a929190620051cf565b60405180910390a15b505050505062001e636001606555565b565b6001600160a01b038116331462001ed75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200147c565b6200118e8282620039ca565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f2e5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f6262003a34565b6001600160a01b03161462001f8b5760405162461bcd60e51b81526004016200147c90620056d8565b62001f968162003a51565b60408051600080825260208201909252620011a79183919062003a93565b62001fbe6200340d565b62001fc98162003509565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e04939216919062005226565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200206c5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620020a062003a34565b6001600160a01b031614620020c95760405162461bcd60e51b81526004016200147c90620056d8565b620020d48262003a51565b6200118e8282600162003a93565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200211862002f30565b6040516024016200212c9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200216b90620045d0565b6200217892919062005736565b604051809103906000f08015801562002195573d6000803e3d6000fd5b509050620021a681878787620032be565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620022505760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200147c565b506000805160206200619f83398151915290565b6200226e6200344a565b6200227862003c0b565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620022dc57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620022bd575b50505050509050600080600090505b825181101562002417578281815181106200230a576200230a62005441565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002341929190620051cf565b6020604051808303816000875af115801562002361573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023879190620051e8565b9150811562002402576001600160a01b038416600090815261010b602052604081208451849290869085908110620023c357620023c362005441565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620023fc919062005263565b90915550505b806200240e81620054f0565b915050620022eb565b506101055462002433906001600160a01b03168430876200394c565b6001600160a01b038316600090815261010c6020526040812060010180548692906200246190849062005263565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200249a9085908790620051cf565b60405180910390a1505050620011a76001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b9281169116620024e662002f30565b604051602401620024fa9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200253990620045d0565b6200254692919062005736565b604051809103906000f08015801562002563573d6000803e3d6000fd5b509050620025748187878762002da3565b60c087015191945092506001600160a01b03166200267f576103e88560e00151511115620025fd5760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200147c565b6000836040516020016200261291906200575c565b60405160208183030381529060405280519060200120905060005b8660e00151518110156200267c5762002667828860e00151838151811062002659576200265962005441565b602002602001015162003800565b806200267381620054f0565b9150506200262d565b50505b620026db836040516020016200269691906200575c565b6040516020818303038152906040528051906020012084604051602001620026bf919062005779565b60405160208183030381529060405280519060200120620038f7565b6200270f83604051602001620026f2919062005779565b604051602081830303815290604052805190602001208362003800565b50935093915050565b620027226200344a565b6200272c62003c0b565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620027609086906200550c565b10156200278057604051634e23e81760e11b815260040160405180910390fd5b610105546200279a906001600160a01b03168486620039a8565b60005b825481101562002a4a576000838281548110620027be57620027be62005441565b6000918252602090912001546001600160a01b03169050620027e88163f1801e6160e01b62003c34565b156200296e57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b906200281e9088908a90600401620051cf565b6020604051808303816000875af11580156200283e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028649190620051e8565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620028a557620028a562005441565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620028f9576040516311423e6360e31b815260048101859052602481018290526044016200147c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200292c576200292c62005441565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620029629084906200550c565b90915550505062002a34565b8354849062002980906001906200550c565b8154811062002993576200299362005441565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029c657620029c662005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002a075762002a076200579c565b600082815260209020810160001990810180546001600160a01b031916905501905562002a348162003538565b508062002a4181620054f0565b9150506200279d565b506001600160a01b038316600090815261010c60205260408120600101805486929062002a799084906200550c565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200249a9085908790620051cf565b62002abc6200344a565b62002ac66200340d565b60ff80541662002ae9576040516365b1ee3960e11b815260040160405180910390fd5b62002af48262002ff6565b62002b1257604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002b638362003c5c565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002bb89216908490620039a8565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002bf19392919062005202565b60405180910390a1506200118e6001606555565b62002c0f62003596565b62001e63600062003d71565b62002c256200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c71573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c9b9190810190620057b2565b60200151905062002cac8162003509565b6200118e8162003538565b6001600160a01b03808316600090815261010b60209081526040808320938516835292905220545b92915050565b62002cef6200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002d3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002d659190810190620057b2565b60200151905062002d768162003509565b62002d926001600160a01b03821663f1801e6160e01b62003c34565b156200118e576200118e81620035f9565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dce5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b906020016200597d565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9c979695949392919062005a26565b6020604051808303816000875af115801562002ebc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee29190620051e8565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1d95949392919062005a97565b60405180910390a1505094509492505050565b60008062002f466033546001600160a01b031690565b9050806001600160a01b03163b60000362002f6057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002fbd575060408051601f3d908101601f1916820190925262002fba9181019062005421565b60015b62002cdf57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b6200304a62003596565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b031633146200309a576040516375e686b760e11b815260040160405180910390fd5b62001e6362003dc3565b6101098054620030b490620052c7565b80601f0160208091040260200160405190810160405280929190818152602001828054620030e290620052c7565b8015620031335780601f10620031075761010080835404028352916020019162003133565b820191906000526020600020905b8154815290600101906020018083116200311557829003601f168201915b505050505081565b620031456200344a565b336200315181620034a5565b6200315c8162003c5c565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620031d79190620045de565b602081015161010554620031f9916001600160a01b03909116908490620039a8565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003230929190620051cf565b60405180910390a1505062001e636001606555565b62003254612710600a6200517f565b81565b600054610100900460ff16620032815760405162461bcd60e51b81526004016200147c9062005ad3565b620011a78162003d71565b6101088054620030b490620052c7565b620032a782620012e6565b620032b281620037f4565b620015598383620039ca565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032e95750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200334757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003328575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b9060200162005b1e565b600062002cdf6000805160206200615f8339815191528362002fcb565b620033a662003596565b6001600160a01b038116620032815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200147c565b620034286000805160206200615f8339815191523362002fcb565b62001e63573360405163fc4be72f60e01b81526004016200147c919062004718565b6002606554036200349e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200147c565b6002606555565b620034b08162002ff6565b620011a757604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff16620011a7576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b038116620011a7576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620035438162003509565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e0490839062004718565b33620035a162002f30565b6001600160a01b03161462001e635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200147c565b6001600160a01b038116600090815261010a602052604090205460ff161562003635576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000e0490839062004718565b806001600160a01b0316826001600160a01b0316146200118e5760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b8154811015620037ee57826001600160a01b031682828154811062003702576200370262005441565b6000918252602090912001546001600160a01b031603620037d957815482906200372f906001906200550c565b8154811062003742576200374262005441565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003775576200377562005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620037b657620037b66200579c565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620037e581620054f0565b915050620036d9565b50505050565b620011a7813362003e27565b6200380c828262002fcb565b6200118e57600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620038463390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620038c35760405162461bcd60e51b81526004016200147c9062005ad3565b62001e6362003e8b565b600054610100900460ff1662001e635760405162461bcd60e51b81526004016200147c9062005ad3565b60006200390483620012e6565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b620037ee846323b872dd60e01b858585604051602401620039709392919062005202565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003eb5565b620015598363a9059cbb60e01b848460405160240162003970929190620051cf565b620039d6828262002fcb565b156200118e57600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200619f833981519152546001600160a01b031690565b3362003a5c62002f30565b6001600160a01b031614620011a7573362003a7662002f30565b60405163163678e960e01b81526004016200147c92919062005226565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003ac957620015598362003f91565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003b26575060408051601f3d908101601f1916820190925262003b2391810190620051e8565b60015b62003b8b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200147c565b6000805160206200619f833981519152811462003bfd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200147c565b506200155983838362004030565b62003c163362002ff6565b62001e6357604051636a5cfb6d60e01b815260040160405180910390fd5b600062003c41836200405b565b801562003c55575062003c55838362004093565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003cc957602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003caa575b5050505050905060005b8151811015620015595781818151811062003cf25762003cf262005441565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003d27919062004718565b600060405180830381600087803b15801562003d4257600080fd5b505af115801562003d57573d6000803e3d6000fd5b50505050808062003d6890620054f0565b91505062003cd3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003e1d9060009062004718565b60405180910390a1565b62003e33828262002fcb565b6200118e5762003e43816200411e565b62003e5083602062004131565b60405160200162003e6392919062005ba7565b60408051601f198184030181529082905262461bcd60e51b82526200147c91600401620050e1565b600054610100900460ff16620035315760405162461bcd60e51b81526004016200147c9062005ad3565b600062003f0c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042ea9092919063ffffffff16565b905080516000148062003f3057508080602001905181019062003f30919062005c1a565b620015595760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200147c565b62003f9c816200388a565b620040005760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200147c565b6000805160206200619f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200403b8362004303565b600082511180620040495750805b156200155957620037ee838362004345565b600062004070826301ffc9a760e01b62004093565b801562002cdf57506200408c826001600160e01b031962004093565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004106575060208210155b8015620041135750600081115b979650505050505050565b606062002cdf6001600160a01b03831660145b60606000620041428360026200517f565b6200414f90600262005263565b6001600160401b03811115620041695762004169620047a6565b6040519080825280601f01601f19166020018201604052801562004194576020820181803683370190505b509050600360fc1b81600081518110620041b257620041b262005441565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041e457620041e462005441565b60200101906001600160f81b031916908160001a90535060006200420a8460026200517f565b6200421790600162005263565b90505b600181111562004299576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200424f576200424f62005441565b1a60f81b82828151811062004268576200426862005441565b60200101906001600160f81b031916908160001a90535060049490941c93620042918162005c3a565b90506200421a565b50831562003c555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200147c565b6060620042fb84846000856200436d565b949350505050565b6200430e8162003f91565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003c558383604051806060016040528060278152602001620061df6027913962004445565b606082471015620043d05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200147c565b600080866001600160a01b03168587604051620043ee919062005c54565b60006040518083038185875af1925050503d80600081146200442d576040519150601f19603f3d011682016040523d82523d6000602084013e62004432565b606091505b50915091506200411387838387620044c3565b6060600080856001600160a01b03168560405162004464919062005c54565b600060405180830381855af49150503d8060008114620044a1576040519150601f19603f3d011682016040523d82523d6000602084013e620044a6565b606091505b5091509150620044b986838387620044c3565b9695505050505050565b60608315620045375782516000036200452f57620044e1856200388a565b6200452f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200147c565b5081620042fb565b620042fb83838151156200454e5781518083602001fd5b8060405162461bcd60e51b81526004016200147c9190620050e1565b828054828255906000526020600020908101928215620045c2579160200282015b82811115620045c257825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200458b565b5062002fc7929150620045f9565b6104ec8062005c7383390190565b5080546000825590600052602060002090810190620011a791905b5b8082111562002fc75760008155600101620045fa565b6000602082840312156200462357600080fd5b81356001600160e01b03198116811462003c5557600080fd5b6000602082840312156200464f57600080fd5b5035919050565b6001600160a01b0381168114620011a757600080fd5b8035620046798162004656565b919050565b600080604083850312156200469257600080fd5b82356200469f8162004656565b91506020830135620046b18162004656565b809150509250929050565b600060208284031215620046cf57600080fd5b813562003c558162004656565b60008060408385031215620046f057600080fd5b8235620046fd8162004656565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6000806000606084860312156200474257600080fd5b83356200474f8162004656565b92506020840135620047618162004656565b91506040840135620047738162004656565b809150509250925092565b600080604083850312156200479257600080fd5b823591506020830135620046b18162004656565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620047e157620047e1620047a6565b60405290565b60405161018081016001600160401b0381118282101715620047e157620047e1620047a6565b60405160c081016001600160401b0381118282101715620047e157620047e1620047a6565b60405161010081016001600160401b0381118282101715620047e157620047e1620047a6565b604051601f8201601f191681016001600160401b0381118282101715620048835762004883620047a6565b604052919050565b60006001600160401b03821115620048a757620048a7620047a6565b50601f01601f191660200190565b6000620048cc620048c6846200488b565b62004858565b9050828152838383011115620048e157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200490a57600080fd5b62003c5583833560208501620048b5565b6000604082840312156200492e57600080fd5b62004938620047bc565b82358152905060208201356001600160401b038111156200495857600080fd5b6200496684828501620048f8565b60208301525092915050565b8015158114620011a757600080fd5b8035620046798162004972565b60008060008060808587031215620049a557600080fd5b84356001600160401b0380821115620049bd57600080fd5b908601906101808289031215620049d357600080fd5b620049dd620047e7565b620049e8836200466c565b8152620049f8602084016200466c565b602082015260408301356040820152606083013560608201526080830135608082015262004a2960a084016200466c565b60a082015262004a3c60c084016200466c565b60c082015260e08301358281111562004a5457600080fd5b62004a628a8286016200491b565b60e08301525061010062004a788185016200466c565b90820152610120838101358381111562004a9157600080fd5b62004a9f8b828701620048f8565b82840152505061014062004ab581850162004981565b90820152610160838101358381111562004ace57600080fd5b62004adc8b828701620048f8565b82840152505080965050505062004af6602086016200466c565b925062004b06604086016200466c565b915062004b16606086016200466c565b905092959194509250565b6000806040838503121562004b3557600080fd5b823562004b428162004656565b915060208301356001600160401b0381111562004b5e57600080fd5b8301601f8101851362004b7057600080fd5b62004b8185823560208401620048b5565b9150509250929050565b60006080828403121562004b9e57600080fd5b604051608081016001600160401b038111828210171562004bc35762004bc3620047a6565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200467957600080fd5b60048110620011a757600080fd5b8035620046798162004c04565b60006020828403121562004c3257600080fd5b604051602081016001600160401b038111828210171562004c575762004c57620047a6565b6040529135825250919050565b600060c0828403121562004c7757600080fd5b62004c816200480d565b9050813562004c908162004656565b8152602082013562004ca28162004656565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004ceb57600080fd5b60405160e081016001600160401b038111828210171562004d105762004d10620047a6565b60405290508062004d22848462004b8b565b815262004d326080840162004bf4565b602082015260a083013562004d478162004c04565b604082015262004d5b8460c0850162004c1f565b606082015262004d6f8460e0850162004c64565b60808201526101a083013562004d858162004656565b60a082015262004d996101c084016200466c565b60c08201525092915050565b6000806000610220848603121562004dbc57600080fd5b833562004dc98162004656565b925062004dda856020860162004cd7565b91506102008401356001600160401b0381111562004df757600080fd5b62004e05868287016200491b565b9150509250925092565b60006001600160401b0382111562004e2b5762004e2b620047a6565b5060051b60200190565b600082601f83011262004e4757600080fd5b8135602062004e5a620048c68362004e0f565b82815260059290921b8401810191818101908684111562004e7a57600080fd5b8286015b8481101562004ea257803562004e948162004656565b835291830191830162004e7e565b509695505050505050565b6000610200828403121562004ec157600080fd5b62004ecb62004832565b905062004ed9838362004b8b565b815262004ee96080830162004bf4565b602082015262004efc60a0830162004c12565b604082015262004f108360c0840162004c1f565b606082015262004f248360e0840162004c64565b608082015262004f386101a083016200466c565b60a082015262004f4c6101c083016200466c565b60c08201526101e08201356001600160401b0381111562004f6c57600080fd5b62004f7a8482850162004e35565b60e08301525092915050565b60008060006060848603121562004f9c57600080fd5b833562004fa98162004656565b925060208401356001600160401b038082111562004fc657600080fd5b62004fd48783880162004ead565b9350604086013591508082111562004feb57600080fd5b5062004e05868287016200491b565b600080600080608085870312156200501157600080fd5b84356200501e8162004656565b93506020850135620050308162004656565b925060408501356001600160401b03808211156200504d57600080fd5b6200505b8883890162004ead565b935060608701359150808211156200507257600080fd5b5062005081878288016200491b565b91505092959194509250565b60005b83811015620050aa57818101518382015260200162005090565b50506000910152565b60008151808452620050cd8160208601602086016200508d565b601f01601f19169290920160200192915050565b60208152600062003c556020830184620050b3565b60008060008061024085870312156200510e57600080fd5b84356200511b8162004656565b935060208501356200512d8162004656565b92506200513e866040870162004cd7565b91506102208501356001600160401b038111156200515b57600080fd5b62005081878288016200491b565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762002cdf5762002cdf62005169565b634e487b7160e01b600052602160045260246000fd5b600060208284031215620051c257600080fd5b815162003c558162004c04565b6001600160a01b03929092168252602082015260400190565b600060208284031215620051fb57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200525e57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562002cdf5762002cdf62005169565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c90821680620052dc57607f821691505b602082108103620052fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200155957600081815260208120601f850160051c810160208610156200532c5750805b601f850160051c820191505b818110156200534d5782815560010162005338565b505050505050565b81516001600160401b03811115620053715762005371620047a6565b6200538981620053828454620052c7565b8462005303565b602080601f831160018114620053c15760008415620053a85750858301515b600019600386901b1c1916600185901b1785556200534d565b600085815260208120601f198616915b82811015620053f257888601518255948401946001909101908401620053d1565b5085821015620054115787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200543457600080fd5b815162003c558162004656565b634e487b7160e01b600052603260045260246000fd5b600060208083850312156200546b57600080fd5b82516001600160401b038111156200548257600080fd5b8301601f810185136200549457600080fd5b8051620054a5620048c68262004e0f565b81815260059190911b82018301908381019087831115620054c557600080fd5b928401925b8284101562004113578351620054e08162004656565b82529284019290840190620054ca565b60006001820162005505576200550562005169565b5060010190565b8181038181111562002cdf5762002cdf62005169565b600081546200553181620052c7565b8085526020600183811680156200555157600181146200556c576200559c565b60ff1985168884015283151560051b8801830195506200559c565b866000528260002060005b85811015620055945781548a820186015290830190840162005577565b890184019650505b505050505092915050565b805182526000602082015160406020850152620042fb6040850182620050b3565b600081518084526020808501945080840160005b83811015620056035781516001600160a01b031687529582019590820190600101620055dc565b509495945050505050565b85815260a0602082015260006200562960a083018762005522565b82810360408401526200563d8187620055a7565b6001600160a01b038616606085015283810360808501529050620056628185620055c8565b98975050505050505050565b83815260606020820152600062005689606083018562005522565b8281036040840152620044b98185620055a7565b6020808252602c908201526000805160206200617f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200617f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042fb90830184620050b3565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057c657600080fd5b82516001600160401b0380821115620057de57600080fd5b9084019060c08287031215620057f357600080fd5b620057fd6200480d565b8251815283830151620058108162004656565b818501526040830151620058248162004656565b60408201526060830151828111156200583c57600080fd5b8301604081890312156200584f57600080fd5b62005859620047bc565b8151815285820151848111156200586f57600080fd5b82019350601f840189136200588357600080fd5b8351915062005896620048c6836200488b565b8281528987848701011115620058ab57600080fd5b620058bc838883018988016200508d565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b6003811062005921576200592162005199565b9052565b6004811062005921576200592162005199565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b6020815262005991602082018351620058e8565b60006020830151620059a760a08401826200590e565b506040830151620059bc60c084018262005925565b5060608301515160e08301526080830151620059dd61010084018262005938565b5060a0830151620059f36101c08401826200470b565b5060c083015162005a096101e08401826200470b565b5060e083015161020083810152620042fb610220840182620055c8565b878152600060018060a01b03808916602084015260e0604084015262005a5060e0840189620050b3565b818816606085015286608085015283810360a085015262005a728187620055a7565b91505082810360c084015262005a898185620055c8565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200411390830184620055a7565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e08201905062005b34828451620058e8565b602083015162005b4860808401826200590e565b50604083015162005b5d60a084018262005925565b5060608301515160c0830152608083015162005b7d60e084018262005938565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005bdb8160178501602088016200508d565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005c0e8160288401602088016200508d565b01602801949350505050565b60006020828403121562005c2d57600080fd5b815162003c558162004972565b60008162005c4c5762005c4c62005169565b506000190190565b6000825162005c688184602087016200508d565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e0910e566be8360c1691430fc249ed379beac4d95da38df41d05cad036526e3764736f6c63430008130033","sourceMap":"446:1123:113:-:0;;;1088:4:64;1045:48;;446:1123:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003505760003560e01c806301ffc9a714620003555780630331383c14620003c757806308386eba14620003e85780630d12bbdb14620004005780630d4a8b491462000427578063175188e8146200044c5780631b71f0e414620004715780631f787d281462000496578063223e547914620004b157806322bcf99914620004d6578063248a9ca314620004fb57806328c309e914620005205780632b38c69c14620005385780632c3bb44a146200056c5780632c611c4a14620005915780632f2ff15d14620005cf57806331f61bca14620005f45780633396045914620006195780633419635514620006315780633517aa7d146200065657806336568abe146200066e5780633659cfe61462000693578063397e254314620006b85780633a871fe114620006dd578063477a5cc014620007125780634f1ef2861462000752578063524e59e8146200076957806352d1902d14620007ac578063559de05d14620007c4578063579eb7e514620007e95780635c94e4d2146200080e5780635ecf71c5146200083157806365e3864c14620008565780636871eb4d146200089357806368decabb14620008b85780636c53db9a14620008db578063715018a614620008fe57806373265c371462000916578063733a2d1f146200093b57806377122d5614620009605780637817ee4f146200098357806378a0b8a914620009a85780637b10399914620009c057806382d6a1e714620009e35780638659ffdd1462000a0857806388cfe6841462000a2d5780638961be6b1462000aa35780638da5cb5b1462000abb57806391d148541462000ad3578063a0cf0aea1462000af8578063a217fddf1462000b22578063a230c5241462000b39578063b0d3713a1462000b5e578063b3f006741462000b83578063b5058c501462000baa578063b64e39af1462000bc2578063b99b43701462000be9578063bc063e1a1462000c01578063c4d66de81462000c19578063c6d572ae1462000c3e578063d547741f1462000c56578063d6d8428d1462000c7b578063d7050f071462000c9e578063db61d65c1462000cb6578063e16d0e321462000cd9578063ebd7dc521462000cfe578063f2fde38b1462000d23578063f86c5f891462000d48578063ffa1ad741462000d6b575b600080fd5b3480156200036257600080fd5b50620003b26200037436600462004610565b6001600160e01b03191660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e602052604090205460ff1690565b60405190151581526020015b60405180910390f35b348015620003d457600080fd5b5060fb545b604051908152602001620003be565b348015620003f557600080fd5b50620003d960fe5481565b3480156200040d57600080fd5b50620004256200041f3660046200463c565b62000d99565b005b3480156200043457600080fd5b5062000425620004463660046200467e565b62000e0f565b3480156200045957600080fd5b50620004256200046b366004620046bc565b62001192565b3480156200047e57600080fd5b506200042562000490366004620046bc565b620011aa565b348015620004a357600080fd5b5060ff8054620003b2911681565b348015620004be57600080fd5b5062000425620004d0366004620046bc565b620011d7565b348015620004e357600080fd5b5062000425620004f53660046200467e565b620011ec565b3480156200050857600080fd5b50620003d96200051a3660046200463c565b620012e6565b3480156200052d57600080fd5b50620003d9620012fb565b3480156200054557600080fd5b506200055d62000557366004620046dc565b62001400565b604051620003be919062004718565b3480156200057957600080fd5b50620004256200058b3660046200472c565b6200143a565b3480156200059e57600080fd5b50620003d9620005b0366004620046bc565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005dc57600080fd5b5062000425620005ee3660046200477e565b62001537565b3480156200060157600080fd5b5062000425620006133660046200463c565b6200155e565b3480156200062657600080fd5b50620003d960fd5481565b3480156200063e57600080fd5b5062000425620006503660046200498e565b6200159e565b3480156200066357600080fd5b506200042562001c03565b3480156200067b57600080fd5b50620004256200068d3660046200477e565b62001e65565b348015620006a057600080fd5b5062000425620006b2366004620046bc565b62001ee3565b348015620006c557600080fd5b5062000425620006d7366004620046bc565b62001fb4565b348015620006ea57600080fd5b50620003b2620006fc366004620046bc565b61010a6020526000908152604090205460ff1681565b3480156200071f57600080fd5b50620003b2620007313660046200467e565b61010e60209081526000928352604080842090915290825290205460ff1681565b620004256200076336600462004b21565b62002021565b3480156200077657600080fd5b506200078e6200078836600462004da5565b620020e2565b604080519283526001600160a01b03909116602083015201620003be565b348015620007b957600080fd5b50620003d9620021b3565b348015620007d157600080fd5b5062000425620007e33660046200463c565b62002264565b348015620007f657600080fd5b506200078e6200080836600462004f86565b620024b0565b3480156200081b57600080fd5b50610102546200055d906001600160a01b031681565b3480156200083e57600080fd5b5062000425620008503660046200463c565b62002718565b3480156200086357600080fd5b50620003d9620008753660046200467e565b61010b60209081526000928352604080842090915290825290205481565b348015620008a057600080fd5b5062000425620008b23660046200467e565b62002ab2565b348015620008c557600080fd5b50610103546200055d906001600160a01b031681565b348015620008e857600080fd5b50610106546200055d906001600160a01b031681565b3480156200090b57600080fd5b506200042562002c05565b3480156200092357600080fd5b5062000425620009353660046200463c565b62002c1b565b3480156200094857600080fd5b50620003d96000805160206200615f83398151915281565b3480156200096d57600080fd5b50610101546200055d906001600160a01b031681565b3480156200099057600080fd5b50620003d9620009a23660046200467e565b62002cb7565b348015620009b557600080fd5b50620003d960fb5481565b348015620009cd57600080fd5b50610104546200055d906001600160a01b031681565b348015620009f057600080fd5b506200042562000a023660046200463c565b62002ce5565b34801562000a1557600080fd5b506200078e62000a2736600462004ffa565b62002da3565b34801562000a3a57600080fd5b5062000a7b62000a4c366004620046bc565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b0390941684526020840192909252151590820152606001620003be565b34801562000ab057600080fd5b50620003d960fc5481565b34801562000ac857600080fd5b506200055d62002f30565b34801562000ae057600080fd5b50620003b262000af23660046200477e565b62002fcb565b34801562000b0557600080fd5b506200055d73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000b2f57600080fd5b50620003d9600081565b34801562000b4657600080fd5b50620003b262000b58366004620046bc565b62002ff6565b34801562000b6b57600080fd5b506200042562000b7d366004620046bc565b62003040565b34801562000b9057600080fd5b5060ff546200055d9061010090046001600160a01b031681565b34801562000bb757600080fd5b50620004256200306d565b34801562000bcf57600080fd5b5062000bda620030a4565b604051620003be9190620050e1565b34801562000bf657600080fd5b50620004256200313b565b34801562000c0e57600080fd5b50620003d962003245565b34801562000c2657600080fd5b506200042562000c38366004620046bc565b62003257565b34801562000c4b57600080fd5b5062000bda6200328c565b34801562000c6357600080fd5b506200042562000c753660046200477e565b6200329c565b34801562000c8857600080fd5b50610107546200055d906001600160a01b031681565b34801562000cab57600080fd5b50620003d961271081565b34801562000cc357600080fd5b50610105546200055d906001600160a01b031681565b34801562000ce657600080fd5b506200078e62000cf8366004620050f6565b620032be565b34801562000d0b57600080fd5b50620003b262000d1d366004620046bc565b6200337f565b34801562000d3057600080fd5b506200042562000d42366004620046bc565b6200339c565b34801562000d5557600080fd5b50610100546200055d906001600160a01b031681565b34801562000d7857600080fd5b50604080518082019091526003815262302e3160e81b602082015262000bda565b62000da36200340d565b62000db2612710600a6200517f565b81111562000dd35760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e196200344a565b62000e2482620034a5565b62000e2f81620034ce565b62000e3a8162003509565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e8357604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f379190620051af565b600381111562000f4b5762000f4b62005199565b0362000fd05760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f82908890600090600401620051cf565b6020604051808303816000875af115801562000fa2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc89190620051e8565b9050620010cc565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001013573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010399190620051af565b60038111156200104d576200104d62005199565b14620010cc5760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010839088908690600401620051cf565b6020604051808303816000875af1158015620010a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c99190620051e8565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec90620011789087908790859062005202565b60405180910390a15050506200118e6001606555565b5050565b6200119c6200340d565b620011a78162003538565b50565b620011b462003596565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011e16200340d565b620011a781620035f9565b620011f782620034a5565b620012028162003509565b6200120e33826200368b565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200125657604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a88282620036be565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012da92919062005226565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b0316816200131b61271060646200517f565b60fc5460fb546200132d91906200517f565b62001339919062005240565b905060006200134c61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137a90309060040162004718565b602060405180830381865afa15801562001398573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013be9190620051e8565b60fb54620013cd91906200517f565b620013d9919062005240565b9050808260fb54620013ec919062005263565b620013f8919062005263565b935050505090565b61010d60205281600052604060002081815481106200141e57600080fd5b6000918252602090912001546001600160a01b03169150829050565b600054600290610100900460ff161580156200145d575060005460ff8083169116105b620014855760405162461bcd60e51b81526004016200147c9062005279565b60405180910390fd5b6000805461ffff191660ff831617610100179055620014a362003596565b620014ae8462003509565b620014b98362003509565b620014c48262003509565b620014cf846200339c565b61010280546001600160a01b038581166001600160a01b0319928316179092556101018054928516929091169190911790556000805461ff001916905560405160ff82168152600080516020620061bf8339815191529060200160405180910390a150505050565b6200154282620012e6565b6200154d81620037f4565b62001559838362003800565b505050565b620015686200340d565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000e04565b600054610100900460ff1615808015620015bf5750600054600160ff909116105b80620015e45750620015d1306200388a565b158015620015e4575060005460ff166001145b620016035760405162461bcd60e51b81526004016200147c9062005279565b6000805460ff19166001179055801562001627576000805461ff0019166101001790555b620016328262003257565b6200163c62003899565b62001646620038cd565b620016626000805160206200615f8339815191526000620038f7565b62001671856020015162003509565b6200168185610100015162003509565b84516200168e9062003509565b6200169d8560a0015162003509565b606085015115620016b757620016b78560c0015162003509565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001712576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200174f908262005355565b506101608501516101099062001766908262005355565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017db906000805160206200615f8339815191529062003800565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001856919062005421565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620018e2576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018bc57620018bc62005441565b60200260200101906001600160a01b031690816001600160a01b03168152505062001a1f565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200192d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001957919081019062005457565b90508051600262001969919062005263565b6001600160401b03811115620019835762001983620047a6565b604051908082528060200260200182016040528015620019ad578160200160208202803683370190505b50915060005b815181101562001a1c57818181518110620019d257620019d262005441565b6020026020010151838281518110620019ef57620019ef62005441565b6001600160a01b03909216602092830291909101909101528062001a1381620054f0565b915050620019b3565b50505b6101065481516001600160a01b0390911690829062001a41906001906200550c565b8151811062001a545762001a5462005441565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a8691906200550c565b8151811062001a995762001a9962005441565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001aec929161010891309088906004016200560e565b6020604051808303816000875af115801562001b0c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b329190620051e8565b60fe55805162001b4b9061010f9060208401906200456a565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001bbd92909161010891906200566e565b60405180910390a150801562001bfc576000805461ff001916905560405160018152600080516020620061bf8339815191529060200160405180910390a15b5050505050565b62001c0d6200344a565b33600081815261010c602052604081206101005490916001600160a01b039091169062001c3e61271060646200517f565b60fc5460fb5462001c5091906200517f565b62001c5c919062005240565b9050600062001c6f61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001c9d90309060040162004718565b602060405180830381865afa15801562001cbb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ce19190620051e8565b60fb5462001cf091906200517f565b62001cfc919062005240565b905062001d098562002ff6565b62001e535760028401805460ff1916600190811790915560fb5490850181905562001d639086903090849062001d4190879062005263565b62001d4d919062005263565b610105546001600160a01b03169291906200394c565b811562001d905760ff546101055462001d90916001600160a01b03918216916101009091041684620039a8565b801562001e155762001e15836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001dda573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e00919062005421565b610105546001600160a01b03169083620039a8565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001e4a929190620051cf565b60405180910390a15b505050505062001e636001606555565b565b6001600160a01b038116331462001ed75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200147c565b6200118e8282620039ca565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f2e5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f6262003a34565b6001600160a01b03161462001f8b5760405162461bcd60e51b81526004016200147c90620056d8565b62001f968162003a51565b60408051600080825260208201909252620011a79183919062003a93565b62001fbe6200340d565b62001fc98162003509565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e04939216919062005226565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200206c5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620020a062003a34565b6001600160a01b031614620020c95760405162461bcd60e51b81526004016200147c90620056d8565b620020d48262003a51565b6200118e8282600162003a93565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200211862002f30565b6040516024016200212c9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200216b90620045d0565b6200217892919062005736565b604051809103906000f08015801562002195573d6000803e3d6000fd5b509050620021a681878787620032be565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620022505760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200147c565b506000805160206200619f83398151915290565b6200226e6200344a565b6200227862003c0b565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620022dc57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620022bd575b50505050509050600080600090505b825181101562002417578281815181106200230a576200230a62005441565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002341929190620051cf565b6020604051808303816000875af115801562002361573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023879190620051e8565b9150811562002402576001600160a01b038416600090815261010b602052604081208451849290869085908110620023c357620023c362005441565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620023fc919062005263565b90915550505b806200240e81620054f0565b915050620022eb565b506101055462002433906001600160a01b03168430876200394c565b6001600160a01b038316600090815261010c6020526040812060010180548692906200246190849062005263565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200249a9085908790620051cf565b60405180910390a1505050620011a76001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b9281169116620024e662002f30565b604051602401620024fa9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200253990620045d0565b6200254692919062005736565b604051809103906000f08015801562002563573d6000803e3d6000fd5b509050620025748187878762002da3565b60c087015191945092506001600160a01b03166200267f576103e88560e00151511115620025fd5760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200147c565b6000836040516020016200261291906200575c565b60405160208183030381529060405280519060200120905060005b8660e00151518110156200267c5762002667828860e00151838151811062002659576200265962005441565b602002602001015162003800565b806200267381620054f0565b9150506200262d565b50505b620026db836040516020016200269691906200575c565b6040516020818303038152906040528051906020012084604051602001620026bf919062005779565b60405160208183030381529060405280519060200120620038f7565b6200270f83604051602001620026f2919062005779565b604051602081830303815290604052805190602001208362003800565b50935093915050565b620027226200344a565b6200272c62003c0b565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620027609086906200550c565b10156200278057604051634e23e81760e11b815260040160405180910390fd5b610105546200279a906001600160a01b03168486620039a8565b60005b825481101562002a4a576000838281548110620027be57620027be62005441565b6000918252602090912001546001600160a01b03169050620027e88163f1801e6160e01b62003c34565b156200296e57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b906200281e9088908a90600401620051cf565b6020604051808303816000875af11580156200283e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028649190620051e8565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620028a557620028a562005441565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620028f9576040516311423e6360e31b815260048101859052602481018290526044016200147c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200292c576200292c62005441565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620029629084906200550c565b90915550505062002a34565b8354849062002980906001906200550c565b8154811062002993576200299362005441565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029c657620029c662005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002a075762002a076200579c565b600082815260209020810160001990810180546001600160a01b031916905501905562002a348162003538565b508062002a4181620054f0565b9150506200279d565b506001600160a01b038316600090815261010c60205260408120600101805486929062002a799084906200550c565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200249a9085908790620051cf565b62002abc6200344a565b62002ac66200340d565b60ff80541662002ae9576040516365b1ee3960e11b815260040160405180910390fd5b62002af48262002ff6565b62002b1257604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002b638362003c5c565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002bb89216908490620039a8565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002bf19392919062005202565b60405180910390a1506200118e6001606555565b62002c0f62003596565b62001e63600062003d71565b62002c256200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c71573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c9b9190810190620057b2565b60200151905062002cac8162003509565b6200118e8162003538565b6001600160a01b03808316600090815261010b60209081526040808320938516835292905220545b92915050565b62002cef6200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002d3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002d659190810190620057b2565b60200151905062002d768162003509565b62002d926001600160a01b03821663f1801e6160e01b62003c34565b156200118e576200118e81620035f9565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dce5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b906020016200597d565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9c979695949392919062005a26565b6020604051808303816000875af115801562002ebc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee29190620051e8565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1d95949392919062005a97565b60405180910390a1505094509492505050565b60008062002f466033546001600160a01b031690565b9050806001600160a01b03163b60000362002f6057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002fbd575060408051601f3d908101601f1916820190925262002fba9181019062005421565b60015b62002cdf57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b6200304a62003596565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b031633146200309a576040516375e686b760e11b815260040160405180910390fd5b62001e6362003dc3565b6101098054620030b490620052c7565b80601f0160208091040260200160405190810160405280929190818152602001828054620030e290620052c7565b8015620031335780601f10620031075761010080835404028352916020019162003133565b820191906000526020600020905b8154815290600101906020018083116200311557829003601f168201915b505050505081565b620031456200344a565b336200315181620034a5565b6200315c8162003c5c565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620031d79190620045de565b602081015161010554620031f9916001600160a01b03909116908490620039a8565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003230929190620051cf565b60405180910390a1505062001e636001606555565b62003254612710600a6200517f565b81565b600054610100900460ff16620032815760405162461bcd60e51b81526004016200147c9062005ad3565b620011a78162003d71565b6101088054620030b490620052c7565b620032a782620012e6565b620032b281620037f4565b620015598383620039ca565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032e95750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200334757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003328575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b9060200162005b1e565b600062002cdf6000805160206200615f8339815191528362002fcb565b620033a662003596565b6001600160a01b038116620032815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200147c565b620034286000805160206200615f8339815191523362002fcb565b62001e63573360405163fc4be72f60e01b81526004016200147c919062004718565b6002606554036200349e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200147c565b6002606555565b620034b08162002ff6565b620011a757604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff16620011a7576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b038116620011a7576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620035438162003509565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e0490839062004718565b33620035a162002f30565b6001600160a01b03161462001e635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200147c565b6001600160a01b038116600090815261010a602052604090205460ff161562003635576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000e0490839062004718565b806001600160a01b0316826001600160a01b0316146200118e5760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b8154811015620037ee57826001600160a01b031682828154811062003702576200370262005441565b6000918252602090912001546001600160a01b031603620037d957815482906200372f906001906200550c565b8154811062003742576200374262005441565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003775576200377562005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620037b657620037b66200579c565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620037e581620054f0565b915050620036d9565b50505050565b620011a7813362003e27565b6200380c828262002fcb565b6200118e57600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620038463390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620038c35760405162461bcd60e51b81526004016200147c9062005ad3565b62001e6362003e8b565b600054610100900460ff1662001e635760405162461bcd60e51b81526004016200147c9062005ad3565b60006200390483620012e6565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b620037ee846323b872dd60e01b858585604051602401620039709392919062005202565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003eb5565b620015598363a9059cbb60e01b848460405160240162003970929190620051cf565b620039d6828262002fcb565b156200118e57600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200619f833981519152546001600160a01b031690565b3362003a5c62002f30565b6001600160a01b031614620011a7573362003a7662002f30565b60405163163678e960e01b81526004016200147c92919062005226565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003ac957620015598362003f91565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003b26575060408051601f3d908101601f1916820190925262003b2391810190620051e8565b60015b62003b8b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200147c565b6000805160206200619f833981519152811462003bfd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200147c565b506200155983838362004030565b62003c163362002ff6565b62001e6357604051636a5cfb6d60e01b815260040160405180910390fd5b600062003c41836200405b565b801562003c55575062003c55838362004093565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003cc957602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003caa575b5050505050905060005b8151811015620015595781818151811062003cf25762003cf262005441565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003d27919062004718565b600060405180830381600087803b15801562003d4257600080fd5b505af115801562003d57573d6000803e3d6000fd5b50505050808062003d6890620054f0565b91505062003cd3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003e1d9060009062004718565b60405180910390a1565b62003e33828262002fcb565b6200118e5762003e43816200411e565b62003e5083602062004131565b60405160200162003e6392919062005ba7565b60408051601f198184030181529082905262461bcd60e51b82526200147c91600401620050e1565b600054610100900460ff16620035315760405162461bcd60e51b81526004016200147c9062005ad3565b600062003f0c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042ea9092919063ffffffff16565b905080516000148062003f3057508080602001905181019062003f30919062005c1a565b620015595760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200147c565b62003f9c816200388a565b620040005760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200147c565b6000805160206200619f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200403b8362004303565b600082511180620040495750805b156200155957620037ee838362004345565b600062004070826301ffc9a760e01b62004093565b801562002cdf57506200408c826001600160e01b031962004093565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004106575060208210155b8015620041135750600081115b979650505050505050565b606062002cdf6001600160a01b03831660145b60606000620041428360026200517f565b6200414f90600262005263565b6001600160401b03811115620041695762004169620047a6565b6040519080825280601f01601f19166020018201604052801562004194576020820181803683370190505b509050600360fc1b81600081518110620041b257620041b262005441565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041e457620041e462005441565b60200101906001600160f81b031916908160001a90535060006200420a8460026200517f565b6200421790600162005263565b90505b600181111562004299576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200424f576200424f62005441565b1a60f81b82828151811062004268576200426862005441565b60200101906001600160f81b031916908160001a90535060049490941c93620042918162005c3a565b90506200421a565b50831562003c555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200147c565b6060620042fb84846000856200436d565b949350505050565b6200430e8162003f91565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003c558383604051806060016040528060278152602001620061df6027913962004445565b606082471015620043d05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200147c565b600080866001600160a01b03168587604051620043ee919062005c54565b60006040518083038185875af1925050503d80600081146200442d576040519150601f19603f3d011682016040523d82523d6000602084013e62004432565b606091505b50915091506200411387838387620044c3565b6060600080856001600160a01b03168560405162004464919062005c54565b600060405180830381855af49150503d8060008114620044a1576040519150601f19603f3d011682016040523d82523d6000602084013e620044a6565b606091505b5091509150620044b986838387620044c3565b9695505050505050565b60608315620045375782516000036200452f57620044e1856200388a565b6200452f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200147c565b5081620042fb565b620042fb83838151156200454e5781518083602001fd5b8060405162461bcd60e51b81526004016200147c9190620050e1565b828054828255906000526020600020908101928215620045c2579160200282015b82811115620045c257825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200458b565b5062002fc7929150620045f9565b6104ec8062005c7383390190565b5080546000825590600052602060002090810190620011a791905b5b8082111562002fc75760008155600101620045fa565b6000602082840312156200462357600080fd5b81356001600160e01b03198116811462003c5557600080fd5b6000602082840312156200464f57600080fd5b5035919050565b6001600160a01b0381168114620011a757600080fd5b8035620046798162004656565b919050565b600080604083850312156200469257600080fd5b82356200469f8162004656565b91506020830135620046b18162004656565b809150509250929050565b600060208284031215620046cf57600080fd5b813562003c558162004656565b60008060408385031215620046f057600080fd5b8235620046fd8162004656565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6000806000606084860312156200474257600080fd5b83356200474f8162004656565b92506020840135620047618162004656565b91506040840135620047738162004656565b809150509250925092565b600080604083850312156200479257600080fd5b823591506020830135620046b18162004656565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620047e157620047e1620047a6565b60405290565b60405161018081016001600160401b0381118282101715620047e157620047e1620047a6565b60405160c081016001600160401b0381118282101715620047e157620047e1620047a6565b60405161010081016001600160401b0381118282101715620047e157620047e1620047a6565b604051601f8201601f191681016001600160401b0381118282101715620048835762004883620047a6565b604052919050565b60006001600160401b03821115620048a757620048a7620047a6565b50601f01601f191660200190565b6000620048cc620048c6846200488b565b62004858565b9050828152838383011115620048e157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200490a57600080fd5b62003c5583833560208501620048b5565b6000604082840312156200492e57600080fd5b62004938620047bc565b82358152905060208201356001600160401b038111156200495857600080fd5b6200496684828501620048f8565b60208301525092915050565b8015158114620011a757600080fd5b8035620046798162004972565b60008060008060808587031215620049a557600080fd5b84356001600160401b0380821115620049bd57600080fd5b908601906101808289031215620049d357600080fd5b620049dd620047e7565b620049e8836200466c565b8152620049f8602084016200466c565b602082015260408301356040820152606083013560608201526080830135608082015262004a2960a084016200466c565b60a082015262004a3c60c084016200466c565b60c082015260e08301358281111562004a5457600080fd5b62004a628a8286016200491b565b60e08301525061010062004a788185016200466c565b90820152610120838101358381111562004a9157600080fd5b62004a9f8b828701620048f8565b82840152505061014062004ab581850162004981565b90820152610160838101358381111562004ace57600080fd5b62004adc8b828701620048f8565b82840152505080965050505062004af6602086016200466c565b925062004b06604086016200466c565b915062004b16606086016200466c565b905092959194509250565b6000806040838503121562004b3557600080fd5b823562004b428162004656565b915060208301356001600160401b0381111562004b5e57600080fd5b8301601f8101851362004b7057600080fd5b62004b8185823560208401620048b5565b9150509250929050565b60006080828403121562004b9e57600080fd5b604051608081016001600160401b038111828210171562004bc35762004bc3620047a6565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200467957600080fd5b60048110620011a757600080fd5b8035620046798162004c04565b60006020828403121562004c3257600080fd5b604051602081016001600160401b038111828210171562004c575762004c57620047a6565b6040529135825250919050565b600060c0828403121562004c7757600080fd5b62004c816200480d565b9050813562004c908162004656565b8152602082013562004ca28162004656565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004ceb57600080fd5b60405160e081016001600160401b038111828210171562004d105762004d10620047a6565b60405290508062004d22848462004b8b565b815262004d326080840162004bf4565b602082015260a083013562004d478162004c04565b604082015262004d5b8460c0850162004c1f565b606082015262004d6f8460e0850162004c64565b60808201526101a083013562004d858162004656565b60a082015262004d996101c084016200466c565b60c08201525092915050565b6000806000610220848603121562004dbc57600080fd5b833562004dc98162004656565b925062004dda856020860162004cd7565b91506102008401356001600160401b0381111562004df757600080fd5b62004e05868287016200491b565b9150509250925092565b60006001600160401b0382111562004e2b5762004e2b620047a6565b5060051b60200190565b600082601f83011262004e4757600080fd5b8135602062004e5a620048c68362004e0f565b82815260059290921b8401810191818101908684111562004e7a57600080fd5b8286015b8481101562004ea257803562004e948162004656565b835291830191830162004e7e565b509695505050505050565b6000610200828403121562004ec157600080fd5b62004ecb62004832565b905062004ed9838362004b8b565b815262004ee96080830162004bf4565b602082015262004efc60a0830162004c12565b604082015262004f108360c0840162004c1f565b606082015262004f248360e0840162004c64565b608082015262004f386101a083016200466c565b60a082015262004f4c6101c083016200466c565b60c08201526101e08201356001600160401b0381111562004f6c57600080fd5b62004f7a8482850162004e35565b60e08301525092915050565b60008060006060848603121562004f9c57600080fd5b833562004fa98162004656565b925060208401356001600160401b038082111562004fc657600080fd5b62004fd48783880162004ead565b9350604086013591508082111562004feb57600080fd5b5062004e05868287016200491b565b600080600080608085870312156200501157600080fd5b84356200501e8162004656565b93506020850135620050308162004656565b925060408501356001600160401b03808211156200504d57600080fd5b6200505b8883890162004ead565b935060608701359150808211156200507257600080fd5b5062005081878288016200491b565b91505092959194509250565b60005b83811015620050aa57818101518382015260200162005090565b50506000910152565b60008151808452620050cd8160208601602086016200508d565b601f01601f19169290920160200192915050565b60208152600062003c556020830184620050b3565b60008060008061024085870312156200510e57600080fd5b84356200511b8162004656565b935060208501356200512d8162004656565b92506200513e866040870162004cd7565b91506102208501356001600160401b038111156200515b57600080fd5b62005081878288016200491b565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762002cdf5762002cdf62005169565b634e487b7160e01b600052602160045260246000fd5b600060208284031215620051c257600080fd5b815162003c558162004c04565b6001600160a01b03929092168252602082015260400190565b600060208284031215620051fb57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200525e57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562002cdf5762002cdf62005169565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c90821680620052dc57607f821691505b602082108103620052fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200155957600081815260208120601f850160051c810160208610156200532c5750805b601f850160051c820191505b818110156200534d5782815560010162005338565b505050505050565b81516001600160401b03811115620053715762005371620047a6565b6200538981620053828454620052c7565b8462005303565b602080601f831160018114620053c15760008415620053a85750858301515b600019600386901b1c1916600185901b1785556200534d565b600085815260208120601f198616915b82811015620053f257888601518255948401946001909101908401620053d1565b5085821015620054115787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200543457600080fd5b815162003c558162004656565b634e487b7160e01b600052603260045260246000fd5b600060208083850312156200546b57600080fd5b82516001600160401b038111156200548257600080fd5b8301601f810185136200549457600080fd5b8051620054a5620048c68262004e0f565b81815260059190911b82018301908381019087831115620054c557600080fd5b928401925b8284101562004113578351620054e08162004656565b82529284019290840190620054ca565b60006001820162005505576200550562005169565b5060010190565b8181038181111562002cdf5762002cdf62005169565b600081546200553181620052c7565b8085526020600183811680156200555157600181146200556c576200559c565b60ff1985168884015283151560051b8801830195506200559c565b866000528260002060005b85811015620055945781548a820186015290830190840162005577565b890184019650505b505050505092915050565b805182526000602082015160406020850152620042fb6040850182620050b3565b600081518084526020808501945080840160005b83811015620056035781516001600160a01b031687529582019590820190600101620055dc565b509495945050505050565b85815260a0602082015260006200562960a083018762005522565b82810360408401526200563d8187620055a7565b6001600160a01b038616606085015283810360808501529050620056628185620055c8565b98975050505050505050565b83815260606020820152600062005689606083018562005522565b8281036040840152620044b98185620055a7565b6020808252602c908201526000805160206200617f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200617f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042fb90830184620050b3565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057c657600080fd5b82516001600160401b0380821115620057de57600080fd5b9084019060c08287031215620057f357600080fd5b620057fd6200480d565b8251815283830151620058108162004656565b818501526040830151620058248162004656565b60408201526060830151828111156200583c57600080fd5b8301604081890312156200584f57600080fd5b62005859620047bc565b8151815285820151848111156200586f57600080fd5b82019350601f840189136200588357600080fd5b8351915062005896620048c6836200488b565b8281528987848701011115620058ab57600080fd5b620058bc838883018988016200508d565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b6003811062005921576200592162005199565b9052565b6004811062005921576200592162005199565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b6020815262005991602082018351620058e8565b60006020830151620059a760a08401826200590e565b506040830151620059bc60c084018262005925565b5060608301515160e08301526080830151620059dd61010084018262005938565b5060a0830151620059f36101c08401826200470b565b5060c083015162005a096101e08401826200470b565b5060e083015161020083810152620042fb610220840182620055c8565b878152600060018060a01b03808916602084015260e0604084015262005a5060e0840189620050b3565b818816606085015286608085015283810360a085015262005a728187620055a7565b91505082810360c084015262005a898185620055c8565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200411390830184620055a7565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e08201905062005b34828451620058e8565b602083015162005b4860808401826200590e565b50604083015162005b5d60a084018262005925565b5060608301515160c0830152608083015162005b7d60e084018262005938565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005bdb8160178501602088016200508d565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005c0e8160288401602088016200508d565b01602801949350505050565b60006020828403121562005c2d57600080fd5b815162003c558162004972565b60008162005c4c5762005c4c62005169565b506000190190565b6000825162005c688184602087016200508d565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e0910e566be8360c1691430fc249ed379beac4d95da38df41d05cad036526e3764736f6c63430008130033","sourceMap":"446:1123:113:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1302:228;;;;;;;;;;-1:-1:-1;1302:228:113;;;;;:::i;:::-;-1:-1:-1;;;;;;1487:36:113;1388:4;1487:36;;;:22;:36;;;;;;;;;1302:228;;;;470:14:131;;463:22;445:41;;433:2;418:18;1302:228:113;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:131;;;631:2;616:18;23771:115:104;497:177:131;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;655:506:113:-;;;;;;;;;;-1:-1:-1;655:506:113;;;;;:::i;:::-;;:::i;19069:151:104:-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;13339:25:131;;;-1:-1:-1;;;;;13400:32:131;;;13395:2;13380:18;;13373:60;13312:18;12647:531:104;13165:274:131;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;584:1317:105:-;;;;;;;;;;-1:-1:-1;584:1317:105;;;;;:::i;:::-;;:::i;6550:31:104:-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;;:::i;5795:34::-;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;1907:660:105:-;;;;;;;;;;-1:-1:-1;1907:660:105;;;;;:::i;:::-;;:::i;7605:60:104:-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;17946:32:131;;;17928:51;;18010:2;17995:18;;17988:34;;;;18065:14;18058:22;18038:18;;;18031:50;17916:2;17901:18;7605:60:104;17732:355:131;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;1171:93:113;;;;;;;;;;-1:-1:-1;1245:12:113;;;;;;;;;;;;-1:-1:-1;;;1245:12:113;;;;1171:93;;24088:288:104;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:131;;;24332:37:104;;631:2:131;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;655:506:113:-;4882:13:47;;805:1:113;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;;;;;;;;;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;1355:13:45::1;:11;:13::i;:::-;828:26:113::2;847:6;828:18;:26::i;:::-;864:37;883:17;864:18;:37::i;:::-;911:44;930:24;911:18;:44::i;:::-;974:25;992:6;974:17;:25::i;:::-;1018:16;:36:::0;;-1:-1:-1;;;;;1018:36:113;;::::2;-1:-1:-1::0;;;;;;1018:36:113;;::::2;;::::0;;;1064:23:::2;:50:::0;;;;::::2;::::0;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;5055:21:47;;-1:-1:-1;;5055:21:47;;;5091:20;;23187:4:131;23175:17;;23157:36;;-1:-1:-1;;;;;;;;;;;5091:20:47;23145:2:131;23130:18;5091:20:47;;;;;;;655:506:113;;;;:::o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:131;;;24043:32:104;;631:2:131;616:18;24043:32:104;497:177:131;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;23157:36:131;;-1:-1:-1;;;;;;;;;;;3721:14:47;23145:2:131;23130:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;30819:2:131;6476:83:43;;;30801:21:131;30858:2;30838:18;;;30831:30;30897:34;30877:18;;;30870:62;-1:-1:-1;;;30948:18:131;;;30941:45;31003:19;;6476:83:43;30617:411:131;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;33087:2:131;2064:92:64;;;33069:21:131;33126:2;33106:18;;;33099:30;33165:34;33145:18;;;33138:62;-1:-1:-1;;;33216:18:131;;;33209:54;33280:19;;2064:92:64;32885:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;584:1317:105;877:16;;973:4;;980:23;;742:14;;;;;;-1:-1:-1;;;;;877:16:105;;;;-1:-1:-1;;;935:28:105;973:4;;;980:23;1005:7;:5;:7::i;:::-;912:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;912:101:105;;;;;;;;;;;;;;-1:-1:-1;;;;;912:101:105;-1:-1:-1;;;;;;912:101:105;;;;;;;;;;835:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;790:247;;1068:53;1079:13;1094:6;1102:7;1111:9;1068:10;:53::i;:::-;1144:19;;;;1047:74;;-1:-1:-1;1047:74:105;-1:-1:-1;;;;;;1136:42:105;1132:454;;1232:4;1198:7;:24;;;:31;:38;1194:134;;;1256:57;;-1:-1:-1;;;1256:57:105;;33512:2:131;1256:57:105;;;33494:21:131;33551:2;33531:18;;;33524:30;33590:34;33570:18;;;33563:62;-1:-1:-1;;;33641:18:131;;;33634:45;33696:19;;1256:57:105;33310:411:131;1194:134:105;1341:21;1405:6;1375:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1365:48;;;;;;1341:72;;1432:9;1427:149;1451:7;:24;;;:31;1447:1;:35;1427:149;;;1507:54;1518:13;1533:7;:24;;;1558:1;1533:27;;;;;;;;:::i;:::-;;;;;;;1507:10;:54::i;:::-;1484:3;;;;:::i;:::-;;;;1427:149;;;;1180:406;1132:454;1667:141;1734:6;1704:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1694:48;;;;;;1790:6;1754:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1744:54;;;;;;1667:13;:141::i;:::-;1818:76;1875:6;1839:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1829:54;;;;;;1885:8;1818:10;:76::i;:::-;780:1121;584:1317;;;;;;:::o;17322:1562:104:-;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;34565:25:131::0;;;34606:18;;;34599:34;;;34538:18;;18259:57:104::1;34391:248:131::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:131;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:131;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;18890:173::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;18890:173;;;;;:::o;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:131;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:131;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;1907:660:105:-;2098:14;;5412:42:104;-1:-1:-1;;;;;2178:20:105;;;2174:65;;-1:-1:-1;2222:6:105;2174:65;2259:9;2248:20;;2279:31;2313:14;2279:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2279:48:105;;;;;;;;;;;;;;;;-1:-1:-1;;2347:4:105;;2394:9;;2415:19;;2279:48;;-1:-1:-1;;;;;;2347:4:105;;;;:33;;-1:-1:-1;2394:9:105;;-1:-1:-1;2405:8:105;;-1:-1:-1;2415:19:105;;2426:7;;2415:19;;;:::i;:::-;;;;;;;;;;;;;2436:5;2443:1;2446:9;2457:14;2347:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2338:143;;2497:63;2509:6;2517:8;2535:4;2542:6;2550:9;2497:63;;;;;;;;;;:::i;:::-;;;;;;;;2132:435;;1907:660;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;41855:2:131;2415:73:45::1;::::0;::::1;41837:21:131::0;41894:2;41874:18;;;41867:30;41933:34;41913:18;;;41906:62;-1:-1:-1;;;41984:18:131;;;41977:36;42030:19;;2415:73:45::1;41653:402:131::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;42262:2:131;2725:63:48;;;42244:21:131;42301:2;42281:18;;;42274:30;42340:33;42320:18;;;42313:61;42391:18;;2725:63:48;42060:355:131;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;42622:2:131;1675:68:45;;;42604:21:131;;;42641:18;;;42634:30;42700:34;42680:18;;;42673:62;42752:18;;1675:68:45;42420:356:131;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;42983:2:131;3262:56:60;;;42965:21:131;43022:2;43002:18;;;42995:30;43061:34;43041:18;;;43034:62;-1:-1:-1;;;43112:18:131;;;43105:44;43166:19;;3262:56:60;42781:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;43398:2:131;3140:82:60;;;43380:21:131;43437:2;43417:18;;;43410:30;43476:34;43456:18;;;43449:62;-1:-1:-1;;;43527:18:131;;;43520:39;43576:19;;3140:82:60;43196:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;45091:2:131;5697:111:73;;;45073:21:131;45130:2;45110:18;;;45103:30;45169:34;45149:18;;;45142:62;-1:-1:-1;;;45220:18:131;;;45213:40;45270:19;;5697:111:73;44889:406:131;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;45502:2:131;1479:95:60;;;45484:21:131;45541:2;45521:18;;;45514:30;45580:34;45560:18;;;45553:62;-1:-1:-1;;;45631:18:131;;;45624:43;45684:19;;1479:95:60;45300:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;45876:33:131;;4592:71:81;;;;45858:52:131;;;;4592:71:81;;;;;;;;;;45831:18:131;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;46264:2:131;2228:55:52;;;46246:21:131;;;46283:18;;;46276:30;46342:34;46322:18;;;46315:62;46394:18;;2228:55:52;46062:356:131;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;46625:2:131;5354:81:76;;;46607:21:131;46664:2;46644:18;;;46637:30;46703:34;46683:18;;;46676:62;-1:-1:-1;;;46754:18:131;;;46747:36;46800:19;;5354:81:76;46423:402:131;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;47324:2:131;8113:60:76;;;47306:21:131;47363:2;47343:18;;;47336:30;47402:31;47382:18;;;47375:59;47451:18;;8113:60:76;47122:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:131;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:131;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:131;;861:180;-1:-1:-1;861:180:131:o;1046:131::-;-1:-1:-1;;;;;1121:31:131;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:131;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:131:o;2471:104::-;-1:-1:-1;;;;;2537:31:131;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:131;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:529::-;2865:6;2873;2881;2934:2;2922:9;2913:7;2909:23;2905:32;2902:52;;;2950:1;2947;2940:12;2902:52;2989:9;2976:23;3008:31;3033:5;3008:31;:::i;:::-;3058:5;-1:-1:-1;3115:2:131;3100:18;;3087:32;3128:33;3087:32;3128:33;:::i;:::-;3180:7;-1:-1:-1;3239:2:131;3224:18;;3211:32;3252:33;3211:32;3252:33;:::i;:::-;3304:7;3294:17;;;2788:529;;;;;:::o;3322:315::-;3390:6;3398;3451:2;3439:9;3430:7;3426:23;3422:32;3419:52;;;3467:1;3464;3457:12;3419:52;3503:9;3490:23;3480:33;;3563:2;3552:9;3548:18;3535:32;3576:31;3601:5;3576:31;:::i;3642:127::-;3703:10;3698:3;3694:20;3691:1;3684:31;3734:4;3731:1;3724:15;3758:4;3755:1;3748:15;3774:257;3846:4;3840:11;;;3878:17;;-1:-1:-1;;;;;3910:34:131;;3946:22;;;3907:62;3904:88;;;3972:18;;:::i;:::-;4008:4;4001:24;3774:257;:::o;4036:255::-;4108:2;4102:9;4150:6;4138:19;;-1:-1:-1;;;;;4172:34:131;;4208:22;;;4169:62;4166:88;;;4234:18;;:::i;4296:253::-;4368:2;4362:9;4410:4;4398:17;;-1:-1:-1;;;;;4430:34:131;;4466:22;;;4427:62;4424:88;;;4492:18;;:::i;4554:255::-;4626:2;4620:9;4668:6;4656:19;;-1:-1:-1;;;;;4690:34:131;;4726:22;;;4687:62;4684:88;;;4752:18;;:::i;4814:275::-;4885:2;4879:9;4950:2;4931:13;;-1:-1:-1;;4927:27:131;4915:40;;-1:-1:-1;;;;;4970:34:131;;5006:22;;;4967:62;4964:88;;;5032:18;;:::i;:::-;5068:2;5061:22;4814:275;;-1:-1:-1;4814:275:131:o;5094:187::-;5143:4;-1:-1:-1;;;;;5165:30:131;;5162:56;;;5198:18;;:::i;:::-;-1:-1:-1;5264:2:131;5243:15;-1:-1:-1;;5239:29:131;5270:4;5235:40;;5094:187::o;5286:338::-;5351:5;5380:53;5396:36;5425:6;5396:36;:::i;:::-;5380:53;:::i;:::-;5371:62;;5456:6;5449:5;5442:21;5496:3;5487:6;5482:3;5478:16;5475:25;5472:45;;;5513:1;5510;5503:12;5472:45;5562:6;5557:3;5550:4;5543:5;5539:16;5526:43;5616:1;5609:4;5600:6;5593:5;5589:18;5585:29;5578:40;5286:338;;;;;:::o;5629:222::-;5672:5;5725:3;5718:4;5710:6;5706:17;5702:27;5692:55;;5743:1;5740;5733:12;5692:55;5765:80;5841:3;5832:6;5819:20;5812:4;5804:6;5800:17;5765:80;:::i;5856:411::-;5911:5;5959:4;5947:9;5942:3;5938:19;5934:30;5931:50;;;5977:1;5974;5967:12;5931:50;5999:22;;:::i;:::-;6044:23;;6030:38;;5990:31;-1:-1:-1;6119:2:131;6104:18;;6091:32;-1:-1:-1;;;;;6135:30:131;;6132:50;;;6178:1;6175;6168:12;6132:50;6214:46;6256:3;6247:6;6236:9;6232:22;6214:46;:::i;:::-;6209:2;6202:5;6198:14;6191:70;;5856:411;;;;:::o;6272:118::-;6358:5;6351:13;6344:21;6337:5;6334:32;6324:60;;6380:1;6377;6370:12;6395:128;6460:20;;6489:28;6460:20;6489:28;:::i;6528:1871::-;6670:6;6678;6686;6694;6747:3;6735:9;6726:7;6722:23;6718:33;6715:53;;;6764:1;6761;6754:12;6715:53;6791:23;;-1:-1:-1;;;;;6863:14:131;;;6860:34;;;6890:1;6887;6880:12;6860:34;6913:22;;;;6969:6;6951:16;;;6947:29;6944:49;;;6989:1;6986;6979:12;6944:49;7015:22;;:::i;:::-;7060;7079:2;7060:22;:::i;:::-;7053:5;7046:37;7115:31;7142:2;7138;7134:11;7115:31;:::i;:::-;7110:2;7103:5;7099:14;7092:55;7200:2;7196;7192:11;7179:25;7174:2;7167:5;7163:14;7156:49;7258:2;7254;7250:11;7237:25;7232:2;7225:5;7221:14;7214:49;7317:3;7313:2;7309:12;7296:26;7290:3;7283:5;7279:15;7272:51;7356:32;7383:3;7379:2;7375:12;7356:32;:::i;:::-;7350:3;7343:5;7339:15;7332:57;7422:32;7449:3;7445:2;7441:12;7422:32;:::i;:::-;7416:3;7409:5;7405:15;7398:57;7501:3;7497:2;7493:12;7480:26;7531:2;7521:8;7518:16;7515:36;;;7547:1;7544;7537:12;7515:36;7584:54;7630:7;7619:8;7615:2;7611:17;7584:54;:::i;:::-;7578:3;7571:5;7567:15;7560:79;;7658:3;7693:31;7720:2;7716;7712:11;7693:31;:::i;:::-;7677:14;;;7670:55;7744:3;7785:11;;;7772:25;7809:16;;;7806:36;;;7838:1;7835;7828:12;7806:36;7874:45;7911:7;7900:8;7896:2;7892:17;7874:45;:::i;:::-;7869:2;7862:5;7858:14;7851:69;;;7939:3;7974:28;7998:2;7994;7990:11;7974:28;:::i;:::-;7958:14;;;7951:52;8022:3;8063:11;;;8050:25;8087:16;;;8084:36;;;8116:1;8113;8106:12;8084:36;8152:45;8189:7;8178:8;8174:2;8170:17;8152:45;:::i;:::-;8147:2;8140:5;8136:14;8129:69;;;8217:5;8207:15;;;;;8241:38;8275:2;8264:9;8260:18;8241:38;:::i;:::-;8231:48;;8298:38;8332:2;8321:9;8317:18;8298:38;:::i;:::-;8288:48;;8355:38;8389:2;8378:9;8374:18;8355:38;:::i;:::-;8345:48;;6528:1871;;;;;;;:::o;8664:585::-;8741:6;8749;8802:2;8790:9;8781:7;8777:23;8773:32;8770:52;;;8818:1;8815;8808:12;8770:52;8857:9;8844:23;8876:31;8901:5;8876:31;:::i;:::-;8926:5;-1:-1:-1;8982:2:131;8967:18;;8954:32;-1:-1:-1;;;;;8998:30:131;;8995:50;;;9041:1;9038;9031:12;8995:50;9064:22;;9117:4;9109:13;;9105:27;-1:-1:-1;9095:55:131;;9146:1;9143;9136:12;9095:55;9169:74;9235:7;9230:2;9217:16;9212:2;9208;9204:11;9169:74;:::i;:::-;9159:84;;;8664:585;;;;;:::o;9254:605::-;9309:5;9357:4;9345:9;9340:3;9336:19;9332:30;9329:50;;;9375:1;9372;9365:12;9329:50;9408:2;9402:9;9450:4;9438:17;;-1:-1:-1;;;;;9470:34:131;;9506:22;;;9467:62;9464:88;;;9532:18;;:::i;:::-;9572:10;9568:2;9561:22;;9601:6;9592:15;;9644:9;9631:23;9623:6;9616:39;9716:2;9705:9;9701:18;9688:32;9683:2;9675:6;9671:15;9664:57;9782:2;9771:9;9767:18;9754:32;9749:2;9741:6;9737:15;9730:57;9848:2;9837:9;9833:18;9820:32;9815:2;9807:6;9803:15;9796:57;;9254:605;;;;:::o;9864:153::-;9942:20;;9991:1;9981:12;;9971:40;;10007:1;10004;9997:12;10022:110;10106:1;10099:5;10096:12;10086:40;;10122:1;10119;10112:12;10137:152;10214:20;;10243:40;10214:20;10243:40;:::i;10294:416::-;10358:5;10406:4;10394:9;10389:3;10385:19;10381:30;10378:50;;;10424:1;10421;10414:12;10378:50;10457:2;10451:9;10499:4;10487:17;;-1:-1:-1;;;;;10519:34:131;;10555:22;;;10516:62;10513:88;;;10581:18;;:::i;:::-;10617:2;10610:22;10680:23;;10665:39;;-1:-1:-1;10650:6:131;10294:416;-1:-1:-1;10294:416:131:o;10715:701::-;10778:5;10826:4;10814:9;10809:3;10805:19;10801:30;10798:50;;;10844:1;10841;10834:12;10798:50;10866:22;;:::i;:::-;10857:31;;10925:9;10912:23;10944:33;10969:7;10944:33;:::i;:::-;10986:22;;11060:2;11045:18;;11032:32;11073:33;11032:32;11073:33;:::i;:::-;11138:7;11133:2;11126:5;11122:14;11115:31;;11206:2;11195:9;11191:18;11178:32;11173:2;11166:5;11162:14;11155:56;11271:2;11260:9;11256:18;11243:32;11238:2;11231:5;11227:14;11220:56;11337:3;11326:9;11322:19;11309:33;11303:3;11296:5;11292:15;11285:58;11404:3;11393:9;11389:19;11376:33;11370:3;11363:5;11359:15;11352:58;10715:701;;;;:::o;11421:1090::-;11496:5;11544:6;11532:9;11527:3;11523:19;11519:32;11516:52;;;11564:1;11561;11554:12;11516:52;11597:2;11591:9;11639:4;11627:17;;-1:-1:-1;;;;;11659:34:131;;11695:22;;;11656:62;11653:88;;;11721:18;;:::i;:::-;11757:2;11750:22;11790:6;-1:-1:-1;11790:6:131;11820:42;11858:3;11847:9;11820:42;:::i;:::-;11812:6;11805:58;11898:49;11942:3;11931:9;11927:19;11898:49;:::i;:::-;11891:4;11883:6;11879:17;11872:76;12000:3;11989:9;11985:19;11972:33;12014:42;12048:7;12014:42;:::i;:::-;12084:2;12072:15;;12065:32;12132:61;12189:3;12183;12168:19;;12132:61;:::i;:::-;12125:4;12117:6;12113:17;12106:88;12228:61;12285:3;12278:4;12267:9;12263:20;12228:61;:::i;:::-;12222:3;12214:6;12210:16;12203:87;12342:3;12331:9;12327:19;12314:33;12356;12381:7;12356:33;:::i;:::-;12417:3;12405:16;;12398:33;12465:39;12499:3;12484:19;;12465:39;:::i;:::-;12459:3;12451:6;12447:16;12440:65;;11421:1090;;;;:::o;12516:644::-;12668:6;12676;12684;12737:3;12725:9;12716:7;12712:23;12708:33;12705:53;;;12754:1;12751;12744:12;12705:53;12793:9;12780:23;12812:31;12837:5;12812:31;:::i;:::-;12862:5;-1:-1:-1;12886:75:131;12953:7;12948:2;12933:18;;12886:75;:::i;:::-;12876:85;-1:-1:-1;13012:3:131;12997:19;;12984:33;-1:-1:-1;;;;;13029:30:131;;13026:50;;;13072:1;13069;13062:12;13026:50;13095:59;13146:7;13137:6;13126:9;13122:22;13095:59;:::i;:::-;13085:69;;;12516:644;;;;;:::o;13444:183::-;13504:4;-1:-1:-1;;;;;13526:30:131;;13523:56;;;13559:18;;:::i;:::-;-1:-1:-1;13604:1:131;13600:14;13616:4;13596:25;;13444:183::o;13632:737::-;13686:5;13739:3;13732:4;13724:6;13720:17;13716:27;13706:55;;13757:1;13754;13747:12;13706:55;13793:6;13780:20;13819:4;13843:60;13859:43;13899:2;13859:43;:::i;13843:60::-;13937:15;;;14023:1;14019:10;;;;14007:23;;14003:32;;;13968:12;;;;14047:15;;;14044:35;;;14075:1;14072;14065:12;14044:35;14111:2;14103:6;14099:15;14123:217;14139:6;14134:3;14131:15;14123:217;;;14219:3;14206:17;14236:31;14261:5;14236:31;:::i;:::-;14280:18;;14318:12;;;;14156;;14123:217;;;-1:-1:-1;14358:5:131;13632:737;-1:-1:-1;;;;;;13632:737:131:o;14374:974::-;14455:5;14503:6;14491:9;14486:3;14482:19;14478:32;14475:52;;;14523:1;14520;14513:12;14475:52;14545:22;;:::i;:::-;14536:31;;14590:42;14628:3;14617:9;14590:42;:::i;:::-;14583:5;14576:57;14667:49;14711:3;14700:9;14696:19;14667:49;:::i;:::-;14660:4;14653:5;14649:16;14642:75;14751:48;14794:3;14783:9;14779:19;14751:48;:::i;:::-;14744:4;14737:5;14733:16;14726:74;14834:61;14891:3;14885;14874:9;14870:19;14834:61;:::i;:::-;14827:4;14820:5;14816:16;14809:87;14929:60;14985:3;14979;14968:9;14964:19;14929:60;:::i;:::-;14923:3;14916:5;14912:15;14905:85;15023:39;15057:3;15046:9;15042:19;15023:39;:::i;:::-;15017:3;15010:5;15006:15;14999:64;15096:39;15130:3;15119:9;15115:19;15096:39;:::i;:::-;15090:3;15079:15;;15072:64;15187:3;15172:19;;15159:33;-1:-1:-1;;;;;15204:30:131;;15201:50;;;15247:1;15244;15237:12;15201:50;15284:57;15337:3;15328:6;15317:9;15313:22;15284:57;:::i;:::-;15278:3;15271:5;15267:15;15260:82;;14374:974;;;;:::o;15353:777::-;15505:6;15513;15521;15574:2;15562:9;15553:7;15549:23;15545:32;15542:52;;;15590:1;15587;15580:12;15542:52;15629:9;15616:23;15648:31;15673:5;15648:31;:::i;:::-;15698:5;-1:-1:-1;15754:2:131;15739:18;;15726:32;-1:-1:-1;;;;;15807:14:131;;;15804:34;;;15834:1;15831;15824:12;15804:34;15857:85;15934:7;15925:6;15914:9;15910:22;15857:85;:::i;:::-;15847:95;;15995:2;15984:9;15980:18;15967:32;15951:48;;16024:2;16014:8;16011:16;16008:36;;;16040:1;16037;16030:12;16008:36;;16063:61;16116:7;16105:8;16094:9;16090:24;16063:61;:::i;16808:919::-;16969:6;16977;16985;16993;17046:3;17034:9;17025:7;17021:23;17017:33;17014:53;;;17063:1;17060;17053:12;17014:53;17102:9;17089:23;17121:31;17146:5;17121:31;:::i;:::-;17171:5;-1:-1:-1;17228:2:131;17213:18;;17200:32;17241:33;17200:32;17241:33;:::i;:::-;17293:7;-1:-1:-1;17351:2:131;17336:18;;17323:32;-1:-1:-1;;;;;17404:14:131;;;17401:34;;;17431:1;17428;17421:12;17401:34;17454:85;17531:7;17522:6;17511:9;17507:22;17454:85;:::i;:::-;17444:95;;17592:2;17581:9;17577:18;17564:32;17548:48;;17621:2;17611:8;17608:16;17605:36;;;17637:1;17634;17627:12;17605:36;;17660:61;17713:7;17702:8;17691:9;17687:24;17660:61;:::i;:::-;17650:71;;;16808:919;;;;;;;:::o;18092:250::-;18177:1;18187:113;18201:6;18198:1;18195:13;18187:113;;;18277:11;;;18271:18;18258:11;;;18251:39;18223:2;18216:10;18187:113;;;-1:-1:-1;;18334:1:131;18316:16;;18309:27;18092:250::o;18347:271::-;18389:3;18427:5;18421:12;18454:6;18449:3;18442:19;18470:76;18539:6;18532:4;18527:3;18523:14;18516:4;18509:5;18505:16;18470:76;:::i;:::-;18600:2;18579:15;-1:-1:-1;;18575:29:131;18566:39;;;;18607:4;18562:50;;18347:271;-1:-1:-1;;18347:271:131:o;18623:220::-;18772:2;18761:9;18754:21;18735:4;18792:45;18833:2;18822:9;18818:18;18810:6;18792:45;:::i;19295:785::-;19456:6;19464;19472;19480;19533:3;19521:9;19512:7;19508:23;19504:33;19501:53;;;19550:1;19547;19540:12;19501:53;19589:9;19576:23;19608:31;19633:5;19608:31;:::i;:::-;19658:5;-1:-1:-1;19715:2:131;19700:18;;19687:32;19728:33;19687:32;19728:33;:::i;:::-;19780:7;-1:-1:-1;19806:75:131;19873:7;19868:2;19853:18;;19806:75;:::i;:::-;19796:85;-1:-1:-1;19932:3:131;19917:19;;19904:33;-1:-1:-1;;;;;19949:30:131;;19946:50;;;19992:1;19989;19982:12;19946:50;20015:59;20066:7;20057:6;20046:9;20042:22;20015:59;:::i;20085:127::-;20146:10;20141:3;20137:20;20134:1;20127:31;20177:4;20174:1;20167:15;20201:4;20198:1;20191:15;20217:168;20290:9;;;20321;;20338:15;;;20332:22;;20318:37;20308:71;;20359:18;;:::i;20390:127::-;20451:10;20446:3;20442:20;20439:1;20432:31;20482:4;20479:1;20472:15;20506:4;20503:1;20496:15;20522:277;20609:6;20662:2;20650:9;20641:7;20637:23;20633:32;20630:52;;;20678:1;20675;20668:12;20630:52;20710:9;20704:16;20729:40;20763:5;20729:40;:::i;20804:282::-;-1:-1:-1;;;;;21004:32:131;;;;20986:51;;21068:2;21053:18;;21046:34;20974:2;20959:18;;20804:282::o;21091:184::-;21161:6;21214:2;21202:9;21193:7;21189:23;21185:32;21182:52;;;21230:1;21227;21220:12;21182:52;-1:-1:-1;21253:16:131;;21091:184;-1:-1:-1;21091:184:131:o;21559:375::-;-1:-1:-1;;;;;21817:15:131;;;21799:34;;21869:15;;;;21864:2;21849:18;;21842:43;21916:2;21901:18;;21894:34;;;;21749:2;21734:18;;21559:375::o;21939:304::-;-1:-1:-1;;;;;22169:15:131;;;22151:34;;22221:15;;22216:2;22201:18;;22194:43;22101:2;22086:18;;21939:304::o;22248:217::-;22288:1;22314;22304:132;;22358:10;22353:3;22349:20;22346:1;22339:31;22393:4;22390:1;22383:15;22421:4;22418:1;22411:15;22304:132;-1:-1:-1;22450:9:131;;22248:217::o;22470:125::-;22535:9;;;22556:10;;;22553:36;;;22569:18;;:::i;22600:410::-;22802:2;22784:21;;;22841:2;22821:18;;;22814:30;22880:34;22875:2;22860:18;;22853:62;-1:-1:-1;;;22946:2:131;22931:18;;22924:44;23000:3;22985:19;;22600:410::o;23204:380::-;23283:1;23279:12;;;;23326;;;23347:61;;23401:4;23393:6;23389:17;23379:27;;23347:61;23454:2;23446:6;23443:14;23423:18;23420:38;23417:161;;23500:10;23495:3;23491:20;23488:1;23481:31;23535:4;23532:1;23525:15;23563:4;23560:1;23553:15;23417:161;;23204:380;;;:::o;23715:545::-;23817:2;23812:3;23809:11;23806:448;;;23853:1;23878:5;23874:2;23867:17;23923:4;23919:2;23909:19;23993:2;23981:10;23977:19;23974:1;23970:27;23964:4;23960:38;24029:4;24017:10;24014:20;24011:47;;;-1:-1:-1;24052:4:131;24011:47;24107:2;24102:3;24098:12;24095:1;24091:20;24085:4;24081:31;24071:41;;24162:82;24180:2;24173:5;24170:13;24162:82;;;24225:17;;;24206:1;24195:13;24162:82;;;24166:3;;;23715:545;;;:::o;24436:1352::-;24556:10;;-1:-1:-1;;;;;24578:30:131;;24575:56;;;24611:18;;:::i;:::-;24640:97;24730:6;24690:38;24722:4;24716:11;24690:38;:::i;:::-;24684:4;24640:97;:::i;:::-;24792:4;;24856:2;24845:14;;24873:1;24868:663;;;;25575:1;25592:6;25589:89;;;-1:-1:-1;25644:19:131;;;25638:26;25589:89;-1:-1:-1;;24393:1:131;24389:11;;;24385:24;24381:29;24371:40;24417:1;24413:11;;;24368:57;25691:81;;24838:944;;24868:663;23662:1;23655:14;;;23699:4;23686:18;;-1:-1:-1;;24904:20:131;;;25022:236;25036:7;25033:1;25030:14;25022:236;;;25125:19;;;25119:26;25104:42;;25217:27;;;;25185:1;25173:14;;;;25052:19;;25022:236;;;25026:3;25286:6;25277:7;25274:19;25271:201;;;25347:19;;;25341:26;-1:-1:-1;;25430:1:131;25426:14;;;25442:3;25422:24;25418:37;25414:42;25399:58;25384:74;;25271:201;-1:-1:-1;;;;;25518:1:131;25502:14;;;25498:22;25485:36;;-1:-1:-1;24436:1352:131:o;25793:251::-;25863:6;25916:2;25904:9;25895:7;25891:23;25887:32;25884:52;;;25932:1;25929;25922:12;25884:52;25964:9;25958:16;25983:31;26008:5;25983:31;:::i;26049:127::-;26110:10;26105:3;26101:20;26098:1;26091:31;26141:4;26138:1;26131:15;26165:4;26162:1;26155:15;26181:956;26276:6;26307:2;26350;26338:9;26329:7;26325:23;26321:32;26318:52;;;26366:1;26363;26356:12;26318:52;26393:16;;-1:-1:-1;;;;;26421:30:131;;26418:50;;;26464:1;26461;26454:12;26418:50;26487:22;;26540:4;26532:13;;26528:27;-1:-1:-1;26518:55:131;;26569:1;26566;26559:12;26518:55;26598:2;26592:9;26621:60;26637:43;26677:2;26637:43;:::i;26621:60::-;26715:15;;;26797:1;26793:10;;;;26785:19;;26781:28;;;26746:12;;;;26821:19;;;26818:39;;;26853:1;26850;26843:12;26818:39;26877:11;;;;26897:210;26913:6;26908:3;26905:15;26897:210;;;26986:3;26980:10;27003:31;27028:5;27003:31;:::i;:::-;27047:18;;26930:12;;;;27085;;;;26897:210;;27142:135;27181:3;27202:17;;;27199:43;;27222:18;;:::i;:::-;-1:-1:-1;27269:1:131;27258:13;;27142:135::o;27282:128::-;27349:9;;;27370:11;;;27367:37;;;27384:18;;:::i;27415:772::-;27465:3;27506:5;27500:12;27535:36;27561:9;27535:36;:::i;:::-;27580:19;;;27618:4;27641:1;27658:18;;;27685:146;;;;27845:1;27840:341;;;;27651:530;;27685:146;-1:-1:-1;;27727:24:131;;27713:12;;;27706:46;27799:14;;27792:22;27789:1;27785:30;27776:40;;27772:49;;;-1:-1:-1;27685:146:131;;27840:341;27871:5;27868:1;27861:16;27918:2;27915:1;27905:16;27943:1;27957:174;27971:6;27968:1;27965:13;27957:174;;;28058:14;;28040:11;;;28036:20;;28029:44;28101:16;;;;27986:10;;27957:174;;;28155:11;;28151:20;;;-1:-1:-1;;27651:530:131;;;;;;27415:772;;;;:::o;28192:252::-;28279:5;28273:12;28268:3;28261:25;28243:3;28332:4;28325:5;28321:16;28315:23;28370:4;28363;28358:3;28354:14;28347:28;28391:47;28432:4;28427:3;28423:14;28409:12;28391:47;:::i;28449:461::-;28502:3;28540:5;28534:12;28567:6;28562:3;28555:19;28593:4;28622:2;28617:3;28613:12;28606:19;;28659:2;28652:5;28648:14;28680:1;28690:195;28704:6;28701:1;28698:13;28690:195;;;28769:13;;-1:-1:-1;;;;;28765:39:131;28753:52;;28825:12;;;;28860:15;;;;28801:1;28719:9;28690:195;;;-1:-1:-1;28901:3:131;;28449:461;-1:-1:-1;;;;;28449:461:131:o;28915:804::-;29275:6;29264:9;29257:25;29318:3;29313:2;29302:9;29298:18;29291:31;29238:4;29345:54;29394:3;29383:9;29379:19;29371:6;29345:54;:::i;:::-;29447:9;29439:6;29435:22;29430:2;29419:9;29415:18;29408:50;29481:42;29516:6;29508;29481:42;:::i;:::-;-1:-1:-1;;;;;29559:32:131;;29554:2;29539:18;;29532:60;29629:22;;;29623:3;29608:19;;29601:51;29467:56;-1:-1:-1;29669:44:131;29467:56;29698:6;29669:44;:::i;:::-;29661:52;28915:804;-1:-1:-1;;;;;;;;28915:804:131:o;29913:500::-;30167:6;30156:9;30149:25;30210:2;30205;30194:9;30190:18;30183:30;30130:4;30236:53;30285:2;30274:9;30270:18;30262:6;30236:53;:::i;:::-;30337:9;30329:6;30325:22;30320:2;30309:9;30305:18;30298:50;30365:42;30400:6;30392;30365:42;:::i;31033:408::-;31235:2;31217:21;;;31274:2;31254:18;;;31247:30;-1:-1:-1;;;;;;;;;;;31308:2:131;31293:18;;31286:62;-1:-1:-1;;;31379:2:131;31364:18;;31357:42;31431:3;31416:19;;31033:408::o;31446:::-;31648:2;31630:21;;;31687:2;31667:18;;;31660:30;-1:-1:-1;;;;;;;;;;;31721:2:131;31706:18;;31699:62;-1:-1:-1;;;31792:2:131;31777:18;;31770:42;31844:3;31829:19;;31446:408::o;32176:384::-;-1:-1:-1;;;;;32434:15:131;;;32416:34;;32486:15;;;32481:2;32466:18;;32459:43;32538:15;;;32533:2;32518:18;;32511:43;32366:2;32351:18;;32176:384::o;32565:315::-;-1:-1:-1;;;;;32740:32:131;;32722:51;;32809:2;32804;32789:18;;32782:30;;;-1:-1:-1;;32829:45:131;;32855:18;;32847:6;32829:45;:::i;33726:324::-;-1:-1:-1;;;33956:24:131;;34005:1;33996:11;;33989:27;;;;34041:2;34032:12;;33726:324::o;34055:331::-;-1:-1:-1;;;34285:30:131;;34340:2;34331:12;;34324:28;;;;34377:2;34368:12;;34055:331::o;34644:127::-;34705:10;34700:3;34696:20;34693:1;34686:31;34736:4;34733:1;34726:15;34760:4;34757:1;34750:15;34776:1653;34868:6;34899:2;34942;34930:9;34921:7;34917:23;34913:32;34910:52;;;34958:1;34955;34948:12;34910:52;34985:16;;-1:-1:-1;;;;;35050:14:131;;;35047:34;;;35077:1;35074;35067:12;35047:34;35100:22;;;;35156:4;35138:16;;;35134:27;35131:47;;;35174:1;35171;35164:12;35131:47;35200:22;;:::i;:::-;35251:2;35245:9;35238:5;35231:24;35293:2;35289;35285:11;35279:18;35306:33;35331:7;35306:33;:::i;:::-;35355:14;;;35348:31;35417:2;35409:11;;35403:18;35430:33;35403:18;35430:33;:::i;:::-;35490:2;35479:14;;35472:31;35542:2;35534:11;;35528:18;35558:16;;;35555:36;;;35587:1;35584;35577:12;35555:36;35610:17;;35661:2;35643:16;;;35639:25;35636:45;;;35677:1;35674;35667:12;35636:45;35705:22;;:::i;:::-;35758:2;35752:9;35743:7;35736:26;35801:2;35797;35793:11;35787:18;35830:2;35820:8;35817:16;35814:36;;;35846:1;35843;35836:12;35814:36;35869:17;;;-1:-1:-1;35917:4:131;35909:13;;35905:27;-1:-1:-1;35895:55:131;;35946:1;35943;35936:12;35895:55;35975:2;35969:9;35959:19;;36000:49;36016:32;36045:2;36016:32;:::i;36000:49::-;36072:2;36065:5;36058:17;36112:7;36107:2;36102;36098;36094:11;36090:20;36087:33;36084:53;;;36133:1;36130;36123:12;36084:53;36146:67;36210:2;36205;36198:5;36194:14;36189:2;36185;36181:11;36146:67;:::i;:::-;36229:16;;;36222:31;;;;-1:-1:-1;36280:2:131;36269:14;;36262:31;;;;-1:-1:-1;36340:3:131;36332:12;;;36326:19;36309:15;;;36302:44;36393:3;36385:12;;;36379:19;36362:15;;;36355:44;36273:5;34776:1653;-1:-1:-1;;;34776:1653:131:o;36434:261::-;36514:5;36508:12;36503:3;36496:25;36570:4;36563:5;36559:16;36553:23;36546:4;36541:3;36537:14;36530:47;36626:4;36619:5;36615:16;36609:23;36602:4;36597:3;36593:14;36586:47;36682:4;36675:5;36671:16;36665:23;36658:4;36653:3;36649:14;36642:47;;;36434:261::o;36700:143::-;36784:1;36777:5;36774:12;36764:46;;36790:18;;:::i;:::-;36819;;36700:143::o;36848:142::-;36931:1;36924:5;36921:12;36911:46;;36937:18;;:::i;36995:437::-;37119:12;;-1:-1:-1;;;;;37115:21:131;;;37103:34;;37190:4;37179:16;;;37173:23;37169:32;;;37153:14;;;37146:56;37251:4;37240:16;;;37234:23;37218:14;;;37211:47;37307:4;37296:16;;;37290:23;37274:14;;;37267:47;37363:4;37352:16;;;37346:23;37330:14;;;37323:47;37083:3;37408:16;;;37402:23;37386:14;;37379:47;36995:437::o;37437:1197::-;37664:2;37653:9;37646:21;37676:61;37733:2;37722:9;37718:18;37709:6;37703:13;37676:61;:::i;:::-;37627:4;37784:2;37776:6;37772:15;37766:22;37797:63;37855:3;37844:9;37840:19;37826:12;37797:63;:::i;:::-;;37909:4;37901:6;37897:17;37891:24;37924:64;37983:3;37972:9;37968:19;37952:14;37924:64;:::i;:::-;;38049:4;38041:6;38037:17;38031:24;38025:31;38019:3;38008:9;38004:19;37997:60;38106:4;38098:6;38094:17;38088:24;38121:71;38187:3;38176:9;38172:19;38156:14;38121:71;:::i;:::-;;38241:3;38233:6;38229:16;38223:23;38255:55;38305:3;38294:9;38290:19;38274:14;38255:55;:::i;:::-;;38359:3;38351:6;38347:16;38341:23;38373:55;38423:3;38412:9;38408:19;38392:14;38373:55;:::i;:::-;-1:-1:-1;38477:3:131;38465:16;;38459:23;38501:6;38523:18;;;38516:30;38563:65;38623:3;38608:19;;38459:23;38563:65;:::i;38639:979::-;39064:6;39053:9;39046:25;39027:4;39107:1;39103;39098:3;39094:11;39090:19;39157:2;39149:6;39145:15;39140:2;39129:9;39125:18;39118:43;39197:3;39192:2;39181:9;39177:18;39170:31;39224:46;39265:3;39254:9;39250:19;39242:6;39224:46;:::i;:::-;39318:2;39310:6;39306:15;39301:2;39290:9;39286:18;39279:43;39359:6;39353:3;39342:9;39338:19;39331:35;39415:9;39407:6;39403:22;39397:3;39386:9;39382:19;39375:51;39449:42;39484:6;39476;39449:42;:::i;:::-;39435:56;;;39540:9;39532:6;39528:22;39522:3;39511:9;39507:19;39500:51;39568:44;39605:6;39597;39568:44;:::i;:::-;39560:52;38639:979;-1:-1:-1;;;;;;;;;;38639:979:131:o;39623:613::-;39898:25;;;-1:-1:-1;;;;;39997:15:131;;;39992:2;39977:18;;39970:43;40049:15;;;40044:2;40029:18;;40022:43;40101:15;;40096:2;40081:18;;40074:43;39950:3;40148;40133:19;;40126:32;;;39879:4;;40175:55;;40210:19;;40202:6;40175:55;:::i;40241:407::-;40443:2;40425:21;;;40482:2;40462:18;;;40455:30;40521:34;40516:2;40501:18;;40494:62;-1:-1:-1;;;40587:2:131;40572:18;;40565:41;40638:3;40623:19;;40241:407::o;40653:995::-;40843:4;40885:3;40874:9;40870:19;40862:27;;40898:52;40940:9;40931:6;40925:13;40898:52;:::i;:::-;40997:4;40989:6;40985:17;40979:24;41012:64;41070:4;41059:9;41055:20;41041:12;41012:64;:::i;:::-;;41125:4;41117:6;41113:17;41107:24;41140:65;41199:4;41188:9;41184:20;41168:14;41140:65;:::i;:::-;;41267:4;41259:6;41255:17;41249:24;41243:31;41236:4;41225:9;41221:20;41214:61;41324:4;41316:6;41312:17;41306:24;41339:72;41405:4;41394:9;41390:20;41374:14;41339:72;:::i;:::-;-1:-1:-1;41460:4:131;41448:17;;41442:24;-1:-1:-1;;;;;41544:23:131;;;41535:6;41520:22;;41513:55;41630:4;41618:17;;;41612:24;41608:33;;;41599:6;41584:22;;;41577:65;40653:995;:::o;43822:812::-;-1:-1:-1;;;44228:3:131;44221:38;44203:3;44288:6;44282:13;44304:75;44372:6;44367:2;44362:3;44358:12;44351:4;44343:6;44339:17;44304:75;:::i;:::-;-1:-1:-1;;;44438:2:131;44398:16;;;44430:11;;;44423:40;44488:13;;44510:76;44488:13;44572:2;44564:11;;44557:4;44545:17;;44510:76;:::i;:::-;44606:17;44625:2;44602:26;;43822:812;-1:-1:-1;;;;43822:812:131:o;44639:245::-;44706:6;44759:2;44747:9;44738:7;44734:23;44730:32;44727:52;;;44775:1;44772;44765:12;44727:52;44807:9;44801:16;44826:28;44848:5;44826:28;:::i;45921:136::-;45960:3;45988:5;45978:39;;45997:18;;:::i;:::-;-1:-1:-1;;;46033:18:131;;45921:136::o;46830:287::-;46959:3;46997:6;46991:13;47013:66;47072:6;47067:3;47060:4;47052:6;47048:17;47013:66;:::i;:::-;47095:16;;;;;46830:287;-1:-1:-1;;46830:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7917,"length":32},{"start":7984,"length":32},{"start":8235,"length":32},{"start":8302,"length":32},{"start":8640,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"579eb7e5","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"8659ffdd","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","initializeV2(address,address,address)":"2c3bb44a","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol\":\"RegistryCommunityFacet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol\":{\"keccak256\":\"0xdc719818c047c2661360f46596c4adc254b4e495b2b50cce5afeb321b9afc6ab\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://58bb478271901109763674e94bd24d5e64a812d6f0341fdfd5f95835a9669111\",\"dweb:/ipfs/QmaGXR2rY2xpYc4yyrbH5sd3125UVCrTrh3FJqKiQowads\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99\",\"dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"_interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol":"RegistryCommunityFacet"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol":{"keccak256":"0xdc719818c047c2661360f46596c4adc254b4e495b2b50cce5afeb321b9afc6ab","urls":["bzz-raw://58bb478271901109763674e94bd24d5e64a812d6f0341fdfd5f95835a9669111","dweb:/ipfs/QmaGXR2rY2xpYc4yyrbH5sd3125UVCrTrh3FJqKiQowads"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af","urls":["bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99","dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE"],"license":"MIT"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75245"},{"astId":70502,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)74978"},{"astId":70505,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"},{"astId":74029,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"322","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)74978":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75245":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol","id":74031,"exportedSymbols":{"Clone":[3002],"ERC1967Proxy":[55021],"LibDiamond":[74937],"ProxyOwnableUpgrader":[70199],"RegistryCommunityFacet":[74030],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:1528:113","nodes":[{"id":73942,"nodeType":"PragmaDirective","src":"42:24:113","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73944,"nodeType":"ImportDirective","src":"68:66:113","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"@src/diamonds/libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":74938,"symbolAliases":[{"foreign":{"id":73943,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74937,"src":"76:10:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73946,"nodeType":"ImportDirective","src":"136:88:113","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":73945,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"144:21:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73948,"nodeType":"ImportDirective","src":"225:67:113","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":73947,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"233:20:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73950,"nodeType":"ImportDirective","src":"293:84:113","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":73949,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"301:12:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73952,"nodeType":"ImportDirective","src":"378:65:113","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":74031,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":73951,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"386:5:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74030,"nodeType":"ContractDefinition","src":"446:1123:113","nodes":[{"id":73993,"nodeType":"FunctionDefinition","src":"655:506:113","nodes":[],"body":{"id":73992,"nodeType":"Block","src":"818:343:113","nodes":[],"statements":[{"expression":{"arguments":[{"id":73969,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73956,"src":"847:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73968,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"828:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73970,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"828:26:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73971,"nodeType":"ExpressionStatement","src":"828:26:113"},{"expression":{"arguments":[{"id":73973,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73958,"src":"883:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73972,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"864:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73974,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"864:37:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73975,"nodeType":"ExpressionStatement","src":"864:37:113"},{"expression":{"arguments":[{"id":73977,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73960,"src":"930:24:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73976,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"911:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73978,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"911:44:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73979,"nodeType":"ExpressionStatement","src":"911:44:113"},{"expression":{"arguments":[{"id":73981,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73956,"src":"992:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73980,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"974:17:113","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73982,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"974:25:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73983,"nodeType":"ExpressionStatement","src":"974:25:113"},{"expression":{"id":73986,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73984,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"1018:16:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73985,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73958,"src":"1037:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1018:36:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73987,"nodeType":"ExpressionStatement","src":"1018:36:113"},{"expression":{"id":73990,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73988,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"1064:23:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73989,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73960,"src":"1090:24:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1064:50:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73991,"nodeType":"ExpressionStatement","src":"1064:50:113"}]},"functionSelector":"2c3bb44a","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":73963,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"805:1:113","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":73964,"kind":"modifierInvocation","modifierName":{"id":73962,"name":"reinitializer","nameLocations":["791:13:113"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"791:13:113"},"nodeType":"ModifierInvocation","src":"791:16:113"},{"id":73966,"kind":"modifierInvocation","modifierName":{"id":73965,"name":"onlyOwner","nameLocations":["808:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"808:9:113"},"nodeType":"ModifierInvocation","src":"808:9:113"}],"name":"initializeV2","nameLocation":"664:12:113","parameters":{"id":73961,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73956,"mutability":"mutable","name":"_owner","nameLocation":"694:6:113","nodeType":"VariableDeclaration","scope":73993,"src":"686:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73955,"name":"address","nodeType":"ElementaryTypeName","src":"686:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73958,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"718:17:113","nodeType":"VariableDeclaration","scope":73993,"src":"710:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73957,"name":"address","nodeType":"ElementaryTypeName","src":"710:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73960,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"753:24:113","nodeType":"VariableDeclaration","scope":73993,"src":"745:32:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73959,"name":"address","nodeType":"ElementaryTypeName","src":"745:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"676:107:113"},"returnParameters":{"id":73967,"nodeType":"ParameterList","parameters":[],"src":"818:0:113"},"scope":74030,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74002,"nodeType":"FunctionDefinition","src":"1171:93:113","nodes":[],"body":{"id":74001,"nodeType":"Block","src":"1235:29:113","nodes":[],"statements":[{"expression":{"hexValue":"302e31","id":73999,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1252:5:113","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cd160c72d102a6747abd189ac21d4a1f802e3fcc1bb8fc78cc4d558df0c7c21","typeString":"literal_string \"0.1\""},"value":"0.1"},"functionReturnParameters":73998,"id":74000,"nodeType":"Return","src":"1245:12:113"}]},"baseFunctions":[70440],"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"1180:7:113","overrides":{"id":73995,"nodeType":"OverrideSpecifier","overrides":[],"src":"1202:8:113"},"parameters":{"id":73994,"nodeType":"ParameterList","parameters":[],"src":"1187:2:113"},"returnParameters":{"id":73998,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73997,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74002,"src":"1220:13:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":73996,"name":"string","nodeType":"ElementaryTypeName","src":"1220:6:113","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1219:15:113"},"scope":74030,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":74025,"nodeType":"FunctionDefinition","src":"1302:228:113","nodes":[],"body":{"id":74024,"nodeType":"Block","src":"1394:136:113","nodes":[],"statements":[{"assignments":[74014],"declarations":[{"constant":false,"id":74014,"mutability":"mutable","name":"ds","nameLocation":"1438:2:113","nodeType":"VariableDeclaration","scope":74024,"src":"1404:36:113","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage"},"typeName":{"id":74013,"nodeType":"UserDefinedTypeName","pathNode":{"id":74012,"name":"LibDiamond.DiamondStorage","nameLocations":["1404:10:113","1415:14:113"],"nodeType":"IdentifierPath","referencedDeclaration":74308,"src":"1404:25:113"},"referencedDeclaration":74308,"src":"1404:25:113","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage"}},"visibility":"internal"}],"id":74018,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":74015,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74937,"src":"1443:10:113","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_LibDiamond_$74937_$","typeString":"type(library LibDiamond)"}},"id":74016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1454:14:113","memberName":"diamondStorage","nodeType":"MemberAccess","referencedDeclaration":74320,"src":"1443:25:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_DiamondStorage_$74308_storage_ptr_$","typeString":"function () pure returns (struct LibDiamond.DiamondStorage storage pointer)"}},"id":74017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1443:27:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage storage pointer"}},"nodeType":"VariableDeclarationStatement","src":"1404:66:113"},{"expression":{"baseExpression":{"expression":{"id":74019,"name":"ds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74014,"src":"1487:2:113","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74308_storage_ptr","typeString":"struct LibDiamond.DiamondStorage storage pointer"}},"id":74020,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1490:19:113","memberName":"supportedInterfaces","nodeType":"MemberAccess","referencedDeclaration":74303,"src":"1487:22:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes4_$_t_bool_$","typeString":"mapping(bytes4 => bool)"}},"id":74022,"indexExpression":{"id":74021,"name":"_interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74004,"src":"1510:12:113","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1487:36:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":74009,"id":74023,"nodeType":"Return","src":"1480:43:113"}]},"baseFunctions":[52437],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"1311:17:113","overrides":{"id":74006,"nodeType":"OverrideSpecifier","overrides":[],"src":"1362:8:113"},"parameters":{"id":74005,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74004,"mutability":"mutable","name":"_interfaceId","nameLocation":"1336:12:113","nodeType":"VariableDeclaration","scope":74025,"src":"1329:19:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":74003,"name":"bytes4","nodeType":"ElementaryTypeName","src":"1329:6:113","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"1328:21:113"},"returnParameters":{"id":74009,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74008,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74025,"src":"1388:4:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74007,"name":"bool","nodeType":"ElementaryTypeName","src":"1388:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1387:6:113"},"scope":74030,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":74029,"nodeType":"VariableDeclaration","src":"1541:25:113","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"1561:5:113","scope":74030,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74026,"name":"uint256","nodeType":"ElementaryTypeName","src":"1541:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74028,"length":{"hexValue":"3530","id":74027,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1549:2:113","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1541:11:113","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73953,"name":"RegistryCommunityV0_1","nameLocations":["481:21:113"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"481:21:113"},"id":73954,"nodeType":"InheritanceSpecifier","src":"481:21:113"}],"canonicalName":"RegistryCommunityFacet","contractDependencies":[55021],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74030,72403,72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityFacet","nameLocation":"455:22:113","scope":74031,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":113} \ No newline at end of file +{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"_interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161623b6200004d60003960008181611eed01528181611f300152818161202b0152818161206e01526121c0015261623b6000f3fe608060405260043610620003505760003560e01c806301ffc9a714620003555780630331383c14620003c757806308386eba14620003e85780630d12bbdb14620004005780630d4a8b491462000427578063175188e8146200044c5780631b71f0e414620004715780631f787d281462000496578063223e547914620004b157806322bcf99914620004d6578063248a9ca314620004fb57806328c309e914620005205780632b38c69c14620005385780632c3bb44a146200056c5780632c611c4a14620005915780632f2ff15d14620005cf57806331f61bca14620005f45780633396045914620006195780633419635514620006315780633517aa7d146200065657806336568abe146200066e5780633659cfe61462000693578063397e254314620006b85780633a871fe114620006dd578063477a5cc014620007125780634f1ef2861462000752578063524e59e8146200076957806352d1902d14620007ac578063559de05d14620007c4578063579eb7e514620007e95780635c94e4d2146200080e5780635ecf71c5146200083157806365e3864c14620008565780636871eb4d146200089357806368decabb14620008b85780636c53db9a14620008db578063715018a614620008fe57806373265c371462000916578063733a2d1f146200093b57806377122d5614620009605780637817ee4f146200098357806378a0b8a914620009a85780637b10399914620009c057806382d6a1e714620009e35780638659ffdd1462000a0857806388cfe6841462000a2d5780638961be6b1462000aa35780638da5cb5b1462000abb57806391d148541462000ad3578063a0cf0aea1462000af8578063a217fddf1462000b22578063a230c5241462000b39578063b0d3713a1462000b5e578063b3f006741462000b83578063b5058c501462000baa578063b64e39af1462000bc2578063b99b43701462000be9578063bc063e1a1462000c01578063c4d66de81462000c19578063c6d572ae1462000c3e578063d547741f1462000c56578063d6d8428d1462000c7b578063d7050f071462000c9e578063db61d65c1462000cb6578063e16d0e321462000cd9578063ebd7dc521462000cfe578063f2fde38b1462000d23578063f86c5f891462000d48578063ffa1ad741462000d6b575b600080fd5b3480156200036257600080fd5b50620003b26200037436600462004610565b6001600160e01b03191660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e602052604090205460ff1690565b60405190151581526020015b60405180910390f35b348015620003d457600080fd5b5060fb545b604051908152602001620003be565b348015620003f557600080fd5b50620003d960fe5481565b3480156200040d57600080fd5b50620004256200041f3660046200463c565b62000d99565b005b3480156200043457600080fd5b5062000425620004463660046200467e565b62000e0f565b3480156200045957600080fd5b50620004256200046b366004620046bc565b62001192565b3480156200047e57600080fd5b506200042562000490366004620046bc565b620011aa565b348015620004a357600080fd5b5060ff8054620003b2911681565b348015620004be57600080fd5b5062000425620004d0366004620046bc565b620011d7565b348015620004e357600080fd5b5062000425620004f53660046200467e565b620011ec565b3480156200050857600080fd5b50620003d96200051a3660046200463c565b620012e6565b3480156200052d57600080fd5b50620003d9620012fb565b3480156200054557600080fd5b506200055d62000557366004620046dc565b62001400565b604051620003be919062004718565b3480156200057957600080fd5b50620004256200058b3660046200472c565b6200143a565b3480156200059e57600080fd5b50620003d9620005b0366004620046bc565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005dc57600080fd5b5062000425620005ee3660046200477e565b62001537565b3480156200060157600080fd5b5062000425620006133660046200463c565b6200155e565b3480156200062657600080fd5b50620003d960fd5481565b3480156200063e57600080fd5b5062000425620006503660046200498e565b6200159e565b3480156200066357600080fd5b506200042562001c03565b3480156200067b57600080fd5b50620004256200068d3660046200477e565b62001e65565b348015620006a057600080fd5b5062000425620006b2366004620046bc565b62001ee3565b348015620006c557600080fd5b5062000425620006d7366004620046bc565b62001fb4565b348015620006ea57600080fd5b50620003b2620006fc366004620046bc565b61010a6020526000908152604090205460ff1681565b3480156200071f57600080fd5b50620003b2620007313660046200467e565b61010e60209081526000928352604080842090915290825290205460ff1681565b620004256200076336600462004b21565b62002021565b3480156200077657600080fd5b506200078e6200078836600462004da5565b620020e2565b604080519283526001600160a01b03909116602083015201620003be565b348015620007b957600080fd5b50620003d9620021b3565b348015620007d157600080fd5b5062000425620007e33660046200463c565b62002264565b348015620007f657600080fd5b506200078e6200080836600462004f86565b620024b0565b3480156200081b57600080fd5b50610102546200055d906001600160a01b031681565b3480156200083e57600080fd5b5062000425620008503660046200463c565b62002718565b3480156200086357600080fd5b50620003d9620008753660046200467e565b61010b60209081526000928352604080842090915290825290205481565b348015620008a057600080fd5b5062000425620008b23660046200467e565b62002ab2565b348015620008c557600080fd5b50610103546200055d906001600160a01b031681565b348015620008e857600080fd5b50610106546200055d906001600160a01b031681565b3480156200090b57600080fd5b506200042562002c05565b3480156200092357600080fd5b5062000425620009353660046200463c565b62002c1b565b3480156200094857600080fd5b50620003d96000805160206200615f83398151915281565b3480156200096d57600080fd5b50610101546200055d906001600160a01b031681565b3480156200099057600080fd5b50620003d9620009a23660046200467e565b62002cb7565b348015620009b557600080fd5b50620003d960fb5481565b348015620009cd57600080fd5b50610104546200055d906001600160a01b031681565b348015620009f057600080fd5b506200042562000a023660046200463c565b62002ce5565b34801562000a1557600080fd5b506200078e62000a2736600462004ffa565b62002da3565b34801562000a3a57600080fd5b5062000a7b62000a4c366004620046bc565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b0390941684526020840192909252151590820152606001620003be565b34801562000ab057600080fd5b50620003d960fc5481565b34801562000ac857600080fd5b506200055d62002f30565b34801562000ae057600080fd5b50620003b262000af23660046200477e565b62002fcb565b34801562000b0557600080fd5b506200055d73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000b2f57600080fd5b50620003d9600081565b34801562000b4657600080fd5b50620003b262000b58366004620046bc565b62002ff6565b34801562000b6b57600080fd5b506200042562000b7d366004620046bc565b62003040565b34801562000b9057600080fd5b5060ff546200055d9061010090046001600160a01b031681565b34801562000bb757600080fd5b50620004256200306d565b34801562000bcf57600080fd5b5062000bda620030a4565b604051620003be9190620050e1565b34801562000bf657600080fd5b50620004256200313b565b34801562000c0e57600080fd5b50620003d962003245565b34801562000c2657600080fd5b506200042562000c38366004620046bc565b62003257565b34801562000c4b57600080fd5b5062000bda6200328c565b34801562000c6357600080fd5b506200042562000c753660046200477e565b6200329c565b34801562000c8857600080fd5b50610107546200055d906001600160a01b031681565b34801562000cab57600080fd5b50620003d961271081565b34801562000cc357600080fd5b50610105546200055d906001600160a01b031681565b34801562000ce657600080fd5b506200078e62000cf8366004620050f6565b620032be565b34801562000d0b57600080fd5b50620003b262000d1d366004620046bc565b6200337f565b34801562000d3057600080fd5b506200042562000d42366004620046bc565b6200339c565b34801562000d5557600080fd5b50610100546200055d906001600160a01b031681565b34801562000d7857600080fd5b50604080518082019091526003815262302e3160e81b602082015262000bda565b62000da36200340d565b62000db2612710600a6200517f565b81111562000dd35760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e196200344a565b62000e2482620034a5565b62000e2f81620034ce565b62000e3a8162003509565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e8357604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f379190620051af565b600381111562000f4b5762000f4b62005199565b0362000fd05760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f82908890600090600401620051cf565b6020604051808303816000875af115801562000fa2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc89190620051e8565b9050620010cc565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001013573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010399190620051af565b60038111156200104d576200104d62005199565b14620010cc5760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010839088908690600401620051cf565b6020604051808303816000875af1158015620010a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c99190620051e8565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec90620011789087908790859062005202565b60405180910390a15050506200118e6001606555565b5050565b6200119c6200340d565b620011a78162003538565b50565b620011b462003596565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011e16200340d565b620011a781620035f9565b620011f782620034a5565b620012028162003509565b6200120e33826200368b565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200125657604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a88282620036be565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012da92919062005226565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b0316816200131b61271060646200517f565b60fc5460fb546200132d91906200517f565b62001339919062005240565b905060006200134c61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137a90309060040162004718565b602060405180830381865afa15801562001398573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013be9190620051e8565b60fb54620013cd91906200517f565b620013d9919062005240565b9050808260fb54620013ec919062005263565b620013f8919062005263565b935050505090565b61010d60205281600052604060002081815481106200141e57600080fd5b6000918252602090912001546001600160a01b03169150829050565b600054600290610100900460ff161580156200145d575060005460ff8083169116105b620014855760405162461bcd60e51b81526004016200147c9062005279565b60405180910390fd5b6000805461ffff191660ff831617610100179055620014a362003596565b620014ae8462003509565b620014b98362003509565b620014c48262003509565b620014cf846200339c565b61010280546001600160a01b038581166001600160a01b0319928316179092556101018054928516929091169190911790556000805461ff001916905560405160ff82168152600080516020620061bf8339815191529060200160405180910390a150505050565b6200154282620012e6565b6200154d81620037f4565b62001559838362003800565b505050565b620015686200340d565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000e04565b600054610100900460ff1615808015620015bf5750600054600160ff909116105b80620015e45750620015d1306200388a565b158015620015e4575060005460ff166001145b620016035760405162461bcd60e51b81526004016200147c9062005279565b6000805460ff19166001179055801562001627576000805461ff0019166101001790555b620016328262003257565b6200163c62003899565b62001646620038cd565b620016626000805160206200615f8339815191526000620038f7565b62001671856020015162003509565b6200168185610100015162003509565b84516200168e9062003509565b6200169d8560a0015162003509565b606085015115620016b757620016b78560c0015162003509565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001712576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200174f908262005355565b506101608501516101099062001766908262005355565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017db906000805160206200615f8339815191529062003800565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001856919062005421565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620018e2576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018bc57620018bc62005441565b60200260200101906001600160a01b031690816001600160a01b03168152505062001a1f565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200192d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001957919081019062005457565b90508051600262001969919062005263565b6001600160401b03811115620019835762001983620047a6565b604051908082528060200260200182016040528015620019ad578160200160208202803683370190505b50915060005b815181101562001a1c57818181518110620019d257620019d262005441565b6020026020010151838281518110620019ef57620019ef62005441565b6001600160a01b03909216602092830291909101909101528062001a1381620054f0565b915050620019b3565b50505b6101065481516001600160a01b0390911690829062001a41906001906200550c565b8151811062001a545762001a5462005441565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a8691906200550c565b8151811062001a995762001a9962005441565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001aec929161010891309088906004016200560e565b6020604051808303816000875af115801562001b0c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b329190620051e8565b60fe55805162001b4b9061010f9060208401906200456a565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001bbd92909161010891906200566e565b60405180910390a150801562001bfc576000805461ff001916905560405160018152600080516020620061bf8339815191529060200160405180910390a15b5050505050565b62001c0d6200344a565b33600081815261010c602052604081206101005490916001600160a01b039091169062001c3e61271060646200517f565b60fc5460fb5462001c5091906200517f565b62001c5c919062005240565b9050600062001c6f61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001c9d90309060040162004718565b602060405180830381865afa15801562001cbb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ce19190620051e8565b60fb5462001cf091906200517f565b62001cfc919062005240565b905062001d098562002ff6565b62001e535760028401805460ff1916600190811790915560fb5490850181905562001d639086903090849062001d4190879062005263565b62001d4d919062005263565b610105546001600160a01b03169291906200394c565b811562001d905760ff546101055462001d90916001600160a01b03918216916101009091041684620039a8565b801562001e155762001e15836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001dda573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e00919062005421565b610105546001600160a01b03169083620039a8565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001e4a929190620051cf565b60405180910390a15b505050505062001e636001606555565b565b6001600160a01b038116331462001ed75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200147c565b6200118e8282620039ca565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f2e5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f6262003a34565b6001600160a01b03161462001f8b5760405162461bcd60e51b81526004016200147c90620056d8565b62001f968162003a51565b60408051600080825260208201909252620011a79183919062003a93565b62001fbe6200340d565b62001fc98162003509565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e04939216919062005226565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200206c5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620020a062003a34565b6001600160a01b031614620020c95760405162461bcd60e51b81526004016200147c90620056d8565b620020d48262003a51565b6200118e8282600162003a93565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200211862002f30565b6040516024016200212c9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200216b90620045d0565b6200217892919062005736565b604051809103906000f08015801562002195573d6000803e3d6000fd5b509050620021a681878787620032be565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620022505760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200147c565b506000805160206200619f83398151915290565b6200226e6200344a565b6200227862003c0b565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620022dc57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620022bd575b50505050509050600080600090505b825181101562002417578281815181106200230a576200230a62005441565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002341929190620051cf565b6020604051808303816000875af115801562002361573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023879190620051e8565b9150811562002402576001600160a01b038416600090815261010b602052604081208451849290869085908110620023c357620023c362005441565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620023fc919062005263565b90915550505b806200240e81620054f0565b915050620022eb565b506101055462002433906001600160a01b03168430876200394c565b6001600160a01b038316600090815261010c6020526040812060010180548692906200246190849062005263565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200249a9085908790620051cf565b60405180910390a1505050620011a76001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b9281169116620024e662002f30565b604051602401620024fa9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200253990620045d0565b6200254692919062005736565b604051809103906000f08015801562002563573d6000803e3d6000fd5b509050620025748187878762002da3565b60c087015191945092506001600160a01b03166200267f576103e88560e00151511115620025fd5760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200147c565b6000836040516020016200261291906200575c565b60405160208183030381529060405280519060200120905060005b8660e00151518110156200267c5762002667828860e00151838151811062002659576200265962005441565b602002602001015162003800565b806200267381620054f0565b9150506200262d565b50505b620026db836040516020016200269691906200575c565b6040516020818303038152906040528051906020012084604051602001620026bf919062005779565b60405160208183030381529060405280519060200120620038f7565b6200270f83604051602001620026f2919062005779565b604051602081830303815290604052805190602001208362003800565b50935093915050565b620027226200344a565b6200272c62003c0b565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620027609086906200550c565b10156200278057604051634e23e81760e11b815260040160405180910390fd5b610105546200279a906001600160a01b03168486620039a8565b60005b825481101562002a4a576000838281548110620027be57620027be62005441565b6000918252602090912001546001600160a01b03169050620027e88163f1801e6160e01b62003c34565b156200296e57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b906200281e9088908a90600401620051cf565b6020604051808303816000875af11580156200283e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028649190620051e8565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620028a557620028a562005441565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620028f9576040516311423e6360e31b815260048101859052602481018290526044016200147c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200292c576200292c62005441565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620029629084906200550c565b90915550505062002a34565b8354849062002980906001906200550c565b8154811062002993576200299362005441565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029c657620029c662005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002a075762002a076200579c565b600082815260209020810160001990810180546001600160a01b031916905501905562002a348162003538565b508062002a4181620054f0565b9150506200279d565b506001600160a01b038316600090815261010c60205260408120600101805486929062002a799084906200550c565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200249a9085908790620051cf565b62002abc6200344a565b62002ac66200340d565b60ff80541662002ae9576040516365b1ee3960e11b815260040160405180910390fd5b62002af48262002ff6565b62002b1257604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002b638362003c5c565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002bb89216908490620039a8565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002bf19392919062005202565b60405180910390a1506200118e6001606555565b62002c0f62003596565b62001e63600062003d71565b62002c256200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c71573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c9b9190810190620057b2565b60200151905062002cac8162003509565b6200118e8162003538565b6001600160a01b03808316600090815261010b60209081526040808320938516835292905220545b92915050565b62002cef6200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002d3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002d659190810190620057b2565b60200151905062002d768162003509565b62002d926001600160a01b03821663f1801e6160e01b62003c34565b156200118e576200118e81620035f9565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dce5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b906020016200597d565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9c979695949392919062005a26565b6020604051808303816000875af115801562002ebc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee29190620051e8565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1d95949392919062005a97565b60405180910390a1505094509492505050565b60008062002f466033546001600160a01b031690565b9050806001600160a01b03163b60000362002f6057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002fbd575060408051601f3d908101601f1916820190925262002fba9181019062005421565b60015b62002cdf57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b6200304a62003596565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b031633146200309a576040516375e686b760e11b815260040160405180910390fd5b62001e6362003dc3565b6101098054620030b490620052c7565b80601f0160208091040260200160405190810160405280929190818152602001828054620030e290620052c7565b8015620031335780601f10620031075761010080835404028352916020019162003133565b820191906000526020600020905b8154815290600101906020018083116200311557829003601f168201915b505050505081565b620031456200344a565b336200315181620034a5565b6200315c8162003c5c565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620031d79190620045de565b602081015161010554620031f9916001600160a01b03909116908490620039a8565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003230929190620051cf565b60405180910390a1505062001e636001606555565b62003254612710600a6200517f565b81565b600054610100900460ff16620032815760405162461bcd60e51b81526004016200147c9062005ad3565b620011a78162003d71565b6101088054620030b490620052c7565b620032a782620012e6565b620032b281620037f4565b620015598383620039ca565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032e95750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200334757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003328575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b9060200162005b1e565b600062002cdf6000805160206200615f8339815191528362002fcb565b620033a662003596565b6001600160a01b038116620032815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200147c565b620034286000805160206200615f8339815191523362002fcb565b62001e63573360405163fc4be72f60e01b81526004016200147c919062004718565b6002606554036200349e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200147c565b6002606555565b620034b08162002ff6565b620011a757604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff16620011a7576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b038116620011a7576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620035438162003509565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e0490839062004718565b33620035a162002f30565b6001600160a01b03161462001e635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200147c565b6001600160a01b038116600090815261010a602052604090205460ff161562003635576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000e0490839062004718565b806001600160a01b0316826001600160a01b0316146200118e5760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b8154811015620037ee57826001600160a01b031682828154811062003702576200370262005441565b6000918252602090912001546001600160a01b031603620037d957815482906200372f906001906200550c565b8154811062003742576200374262005441565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003775576200377562005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620037b657620037b66200579c565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620037e581620054f0565b915050620036d9565b50505050565b620011a7813362003e27565b6200380c828262002fcb565b6200118e57600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620038463390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620038c35760405162461bcd60e51b81526004016200147c9062005ad3565b62001e6362003e8b565b600054610100900460ff1662001e635760405162461bcd60e51b81526004016200147c9062005ad3565b60006200390483620012e6565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b620037ee846323b872dd60e01b858585604051602401620039709392919062005202565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003eb5565b620015598363a9059cbb60e01b848460405160240162003970929190620051cf565b620039d6828262002fcb565b156200118e57600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200619f833981519152546001600160a01b031690565b3362003a5c62002f30565b6001600160a01b031614620011a7573362003a7662002f30565b60405163163678e960e01b81526004016200147c92919062005226565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003ac957620015598362003f91565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003b26575060408051601f3d908101601f1916820190925262003b2391810190620051e8565b60015b62003b8b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200147c565b6000805160206200619f833981519152811462003bfd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200147c565b506200155983838362004030565b62003c163362002ff6565b62001e6357604051636a5cfb6d60e01b815260040160405180910390fd5b600062003c41836200405b565b801562003c55575062003c55838362004093565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003cc957602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003caa575b5050505050905060005b8151811015620015595781818151811062003cf25762003cf262005441565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003d27919062004718565b600060405180830381600087803b15801562003d4257600080fd5b505af115801562003d57573d6000803e3d6000fd5b50505050808062003d6890620054f0565b91505062003cd3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003e1d9060009062004718565b60405180910390a1565b62003e33828262002fcb565b6200118e5762003e43816200411e565b62003e5083602062004131565b60405160200162003e6392919062005ba7565b60408051601f198184030181529082905262461bcd60e51b82526200147c91600401620050e1565b600054610100900460ff16620035315760405162461bcd60e51b81526004016200147c9062005ad3565b600062003f0c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042ea9092919063ffffffff16565b905080516000148062003f3057508080602001905181019062003f30919062005c1a565b620015595760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200147c565b62003f9c816200388a565b620040005760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200147c565b6000805160206200619f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200403b8362004303565b600082511180620040495750805b156200155957620037ee838362004345565b600062004070826301ffc9a760e01b62004093565b801562002cdf57506200408c826001600160e01b031962004093565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004106575060208210155b8015620041135750600081115b979650505050505050565b606062002cdf6001600160a01b03831660145b60606000620041428360026200517f565b6200414f90600262005263565b6001600160401b03811115620041695762004169620047a6565b6040519080825280601f01601f19166020018201604052801562004194576020820181803683370190505b509050600360fc1b81600081518110620041b257620041b262005441565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041e457620041e462005441565b60200101906001600160f81b031916908160001a90535060006200420a8460026200517f565b6200421790600162005263565b90505b600181111562004299576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200424f576200424f62005441565b1a60f81b82828151811062004268576200426862005441565b60200101906001600160f81b031916908160001a90535060049490941c93620042918162005c3a565b90506200421a565b50831562003c555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200147c565b6060620042fb84846000856200436d565b949350505050565b6200430e8162003f91565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003c558383604051806060016040528060278152602001620061df6027913962004445565b606082471015620043d05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200147c565b600080866001600160a01b03168587604051620043ee919062005c54565b60006040518083038185875af1925050503d80600081146200442d576040519150601f19603f3d011682016040523d82523d6000602084013e62004432565b606091505b50915091506200411387838387620044c3565b6060600080856001600160a01b03168560405162004464919062005c54565b600060405180830381855af49150503d8060008114620044a1576040519150601f19603f3d011682016040523d82523d6000602084013e620044a6565b606091505b5091509150620044b986838387620044c3565b9695505050505050565b60608315620045375782516000036200452f57620044e1856200388a565b6200452f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200147c565b5081620042fb565b620042fb83838151156200454e5781518083602001fd5b8060405162461bcd60e51b81526004016200147c9190620050e1565b828054828255906000526020600020908101928215620045c2579160200282015b82811115620045c257825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200458b565b5062002fc7929150620045f9565b6104ec8062005c7383390190565b5080546000825590600052602060002090810190620011a791905b5b8082111562002fc75760008155600101620045fa565b6000602082840312156200462357600080fd5b81356001600160e01b03198116811462003c5557600080fd5b6000602082840312156200464f57600080fd5b5035919050565b6001600160a01b0381168114620011a757600080fd5b8035620046798162004656565b919050565b600080604083850312156200469257600080fd5b82356200469f8162004656565b91506020830135620046b18162004656565b809150509250929050565b600060208284031215620046cf57600080fd5b813562003c558162004656565b60008060408385031215620046f057600080fd5b8235620046fd8162004656565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6000806000606084860312156200474257600080fd5b83356200474f8162004656565b92506020840135620047618162004656565b91506040840135620047738162004656565b809150509250925092565b600080604083850312156200479257600080fd5b823591506020830135620046b18162004656565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620047e157620047e1620047a6565b60405290565b60405161018081016001600160401b0381118282101715620047e157620047e1620047a6565b60405160c081016001600160401b0381118282101715620047e157620047e1620047a6565b60405161010081016001600160401b0381118282101715620047e157620047e1620047a6565b604051601f8201601f191681016001600160401b0381118282101715620048835762004883620047a6565b604052919050565b60006001600160401b03821115620048a757620048a7620047a6565b50601f01601f191660200190565b6000620048cc620048c6846200488b565b62004858565b9050828152838383011115620048e157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200490a57600080fd5b62003c5583833560208501620048b5565b6000604082840312156200492e57600080fd5b62004938620047bc565b82358152905060208201356001600160401b038111156200495857600080fd5b6200496684828501620048f8565b60208301525092915050565b8015158114620011a757600080fd5b8035620046798162004972565b60008060008060808587031215620049a557600080fd5b84356001600160401b0380821115620049bd57600080fd5b908601906101808289031215620049d357600080fd5b620049dd620047e7565b620049e8836200466c565b8152620049f8602084016200466c565b602082015260408301356040820152606083013560608201526080830135608082015262004a2960a084016200466c565b60a082015262004a3c60c084016200466c565b60c082015260e08301358281111562004a5457600080fd5b62004a628a8286016200491b565b60e08301525061010062004a788185016200466c565b90820152610120838101358381111562004a9157600080fd5b62004a9f8b828701620048f8565b82840152505061014062004ab581850162004981565b90820152610160838101358381111562004ace57600080fd5b62004adc8b828701620048f8565b82840152505080965050505062004af6602086016200466c565b925062004b06604086016200466c565b915062004b16606086016200466c565b905092959194509250565b6000806040838503121562004b3557600080fd5b823562004b428162004656565b915060208301356001600160401b0381111562004b5e57600080fd5b8301601f8101851362004b7057600080fd5b62004b8185823560208401620048b5565b9150509250929050565b60006080828403121562004b9e57600080fd5b604051608081016001600160401b038111828210171562004bc35762004bc3620047a6565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200467957600080fd5b60048110620011a757600080fd5b8035620046798162004c04565b60006020828403121562004c3257600080fd5b604051602081016001600160401b038111828210171562004c575762004c57620047a6565b6040529135825250919050565b600060c0828403121562004c7757600080fd5b62004c816200480d565b9050813562004c908162004656565b8152602082013562004ca28162004656565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004ceb57600080fd5b60405160e081016001600160401b038111828210171562004d105762004d10620047a6565b60405290508062004d22848462004b8b565b815262004d326080840162004bf4565b602082015260a083013562004d478162004c04565b604082015262004d5b8460c0850162004c1f565b606082015262004d6f8460e0850162004c64565b60808201526101a083013562004d858162004656565b60a082015262004d996101c084016200466c565b60c08201525092915050565b6000806000610220848603121562004dbc57600080fd5b833562004dc98162004656565b925062004dda856020860162004cd7565b91506102008401356001600160401b0381111562004df757600080fd5b62004e05868287016200491b565b9150509250925092565b60006001600160401b0382111562004e2b5762004e2b620047a6565b5060051b60200190565b600082601f83011262004e4757600080fd5b8135602062004e5a620048c68362004e0f565b82815260059290921b8401810191818101908684111562004e7a57600080fd5b8286015b8481101562004ea257803562004e948162004656565b835291830191830162004e7e565b509695505050505050565b6000610200828403121562004ec157600080fd5b62004ecb62004832565b905062004ed9838362004b8b565b815262004ee96080830162004bf4565b602082015262004efc60a0830162004c12565b604082015262004f108360c0840162004c1f565b606082015262004f248360e0840162004c64565b608082015262004f386101a083016200466c565b60a082015262004f4c6101c083016200466c565b60c08201526101e08201356001600160401b0381111562004f6c57600080fd5b62004f7a8482850162004e35565b60e08301525092915050565b60008060006060848603121562004f9c57600080fd5b833562004fa98162004656565b925060208401356001600160401b038082111562004fc657600080fd5b62004fd48783880162004ead565b9350604086013591508082111562004feb57600080fd5b5062004e05868287016200491b565b600080600080608085870312156200501157600080fd5b84356200501e8162004656565b93506020850135620050308162004656565b925060408501356001600160401b03808211156200504d57600080fd5b6200505b8883890162004ead565b935060608701359150808211156200507257600080fd5b5062005081878288016200491b565b91505092959194509250565b60005b83811015620050aa57818101518382015260200162005090565b50506000910152565b60008151808452620050cd8160208601602086016200508d565b601f01601f19169290920160200192915050565b60208152600062003c556020830184620050b3565b60008060008061024085870312156200510e57600080fd5b84356200511b8162004656565b935060208501356200512d8162004656565b92506200513e866040870162004cd7565b91506102208501356001600160401b038111156200515b57600080fd5b62005081878288016200491b565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762002cdf5762002cdf62005169565b634e487b7160e01b600052602160045260246000fd5b600060208284031215620051c257600080fd5b815162003c558162004c04565b6001600160a01b03929092168252602082015260400190565b600060208284031215620051fb57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200525e57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562002cdf5762002cdf62005169565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c90821680620052dc57607f821691505b602082108103620052fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200155957600081815260208120601f850160051c810160208610156200532c5750805b601f850160051c820191505b818110156200534d5782815560010162005338565b505050505050565b81516001600160401b03811115620053715762005371620047a6565b6200538981620053828454620052c7565b8462005303565b602080601f831160018114620053c15760008415620053a85750858301515b600019600386901b1c1916600185901b1785556200534d565b600085815260208120601f198616915b82811015620053f257888601518255948401946001909101908401620053d1565b5085821015620054115787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200543457600080fd5b815162003c558162004656565b634e487b7160e01b600052603260045260246000fd5b600060208083850312156200546b57600080fd5b82516001600160401b038111156200548257600080fd5b8301601f810185136200549457600080fd5b8051620054a5620048c68262004e0f565b81815260059190911b82018301908381019087831115620054c557600080fd5b928401925b8284101562004113578351620054e08162004656565b82529284019290840190620054ca565b60006001820162005505576200550562005169565b5060010190565b8181038181111562002cdf5762002cdf62005169565b600081546200553181620052c7565b8085526020600183811680156200555157600181146200556c576200559c565b60ff1985168884015283151560051b8801830195506200559c565b866000528260002060005b85811015620055945781548a820186015290830190840162005577565b890184019650505b505050505092915050565b805182526000602082015160406020850152620042fb6040850182620050b3565b600081518084526020808501945080840160005b83811015620056035781516001600160a01b031687529582019590820190600101620055dc565b509495945050505050565b85815260a0602082015260006200562960a083018762005522565b82810360408401526200563d8187620055a7565b6001600160a01b038616606085015283810360808501529050620056628185620055c8565b98975050505050505050565b83815260606020820152600062005689606083018562005522565b8281036040840152620044b98185620055a7565b6020808252602c908201526000805160206200617f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200617f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042fb90830184620050b3565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057c657600080fd5b82516001600160401b0380821115620057de57600080fd5b9084019060c08287031215620057f357600080fd5b620057fd6200480d565b8251815283830151620058108162004656565b818501526040830151620058248162004656565b60408201526060830151828111156200583c57600080fd5b8301604081890312156200584f57600080fd5b62005859620047bc565b8151815285820151848111156200586f57600080fd5b82019350601f840189136200588357600080fd5b8351915062005896620048c6836200488b565b8281528987848701011115620058ab57600080fd5b620058bc838883018988016200508d565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b6003811062005921576200592162005199565b9052565b6004811062005921576200592162005199565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b6020815262005991602082018351620058e8565b60006020830151620059a760a08401826200590e565b506040830151620059bc60c084018262005925565b5060608301515160e08301526080830151620059dd61010084018262005938565b5060a0830151620059f36101c08401826200470b565b5060c083015162005a096101e08401826200470b565b5060e083015161020083810152620042fb610220840182620055c8565b878152600060018060a01b03808916602084015260e0604084015262005a5060e0840189620050b3565b818816606085015286608085015283810360a085015262005a728187620055a7565b91505082810360c084015262005a898185620055c8565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200411390830184620055a7565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e08201905062005b34828451620058e8565b602083015162005b4860808401826200590e565b50604083015162005b5d60a084018262005925565b5060608301515160c0830152608083015162005b7d60e084018262005938565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005bdb8160178501602088016200508d565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005c0e8160288401602088016200508d565b01602801949350505050565b60006020828403121562005c2d57600080fd5b815162003c558162004972565b60008162005c4c5762005c4c62005169565b506000190190565b6000825162005c688184602087016200508d565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122093fddaea8151c463dae3fddbc0c6f0b6e6826650796de78e0a29a4499ce959f464736f6c63430008130033","sourceMap":"446:1123:115:-:0;;;1088:4:64;1045:48;;446:1123:115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003505760003560e01c806301ffc9a714620003555780630331383c14620003c757806308386eba14620003e85780630d12bbdb14620004005780630d4a8b491462000427578063175188e8146200044c5780631b71f0e414620004715780631f787d281462000496578063223e547914620004b157806322bcf99914620004d6578063248a9ca314620004fb57806328c309e914620005205780632b38c69c14620005385780632c3bb44a146200056c5780632c611c4a14620005915780632f2ff15d14620005cf57806331f61bca14620005f45780633396045914620006195780633419635514620006315780633517aa7d146200065657806336568abe146200066e5780633659cfe61462000693578063397e254314620006b85780633a871fe114620006dd578063477a5cc014620007125780634f1ef2861462000752578063524e59e8146200076957806352d1902d14620007ac578063559de05d14620007c4578063579eb7e514620007e95780635c94e4d2146200080e5780635ecf71c5146200083157806365e3864c14620008565780636871eb4d146200089357806368decabb14620008b85780636c53db9a14620008db578063715018a614620008fe57806373265c371462000916578063733a2d1f146200093b57806377122d5614620009605780637817ee4f146200098357806378a0b8a914620009a85780637b10399914620009c057806382d6a1e714620009e35780638659ffdd1462000a0857806388cfe6841462000a2d5780638961be6b1462000aa35780638da5cb5b1462000abb57806391d148541462000ad3578063a0cf0aea1462000af8578063a217fddf1462000b22578063a230c5241462000b39578063b0d3713a1462000b5e578063b3f006741462000b83578063b5058c501462000baa578063b64e39af1462000bc2578063b99b43701462000be9578063bc063e1a1462000c01578063c4d66de81462000c19578063c6d572ae1462000c3e578063d547741f1462000c56578063d6d8428d1462000c7b578063d7050f071462000c9e578063db61d65c1462000cb6578063e16d0e321462000cd9578063ebd7dc521462000cfe578063f2fde38b1462000d23578063f86c5f891462000d48578063ffa1ad741462000d6b575b600080fd5b3480156200036257600080fd5b50620003b26200037436600462004610565b6001600160e01b03191660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131e602052604090205460ff1690565b60405190151581526020015b60405180910390f35b348015620003d457600080fd5b5060fb545b604051908152602001620003be565b348015620003f557600080fd5b50620003d960fe5481565b3480156200040d57600080fd5b50620004256200041f3660046200463c565b62000d99565b005b3480156200043457600080fd5b5062000425620004463660046200467e565b62000e0f565b3480156200045957600080fd5b50620004256200046b366004620046bc565b62001192565b3480156200047e57600080fd5b506200042562000490366004620046bc565b620011aa565b348015620004a357600080fd5b5060ff8054620003b2911681565b348015620004be57600080fd5b5062000425620004d0366004620046bc565b620011d7565b348015620004e357600080fd5b5062000425620004f53660046200467e565b620011ec565b3480156200050857600080fd5b50620003d96200051a3660046200463c565b620012e6565b3480156200052d57600080fd5b50620003d9620012fb565b3480156200054557600080fd5b506200055d62000557366004620046dc565b62001400565b604051620003be919062004718565b3480156200057957600080fd5b50620004256200058b3660046200472c565b6200143a565b3480156200059e57600080fd5b50620003d9620005b0366004620046bc565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005dc57600080fd5b5062000425620005ee3660046200477e565b62001537565b3480156200060157600080fd5b5062000425620006133660046200463c565b6200155e565b3480156200062657600080fd5b50620003d960fd5481565b3480156200063e57600080fd5b5062000425620006503660046200498e565b6200159e565b3480156200066357600080fd5b506200042562001c03565b3480156200067b57600080fd5b50620004256200068d3660046200477e565b62001e65565b348015620006a057600080fd5b5062000425620006b2366004620046bc565b62001ee3565b348015620006c557600080fd5b5062000425620006d7366004620046bc565b62001fb4565b348015620006ea57600080fd5b50620003b2620006fc366004620046bc565b61010a6020526000908152604090205460ff1681565b3480156200071f57600080fd5b50620003b2620007313660046200467e565b61010e60209081526000928352604080842090915290825290205460ff1681565b620004256200076336600462004b21565b62002021565b3480156200077657600080fd5b506200078e6200078836600462004da5565b620020e2565b604080519283526001600160a01b03909116602083015201620003be565b348015620007b957600080fd5b50620003d9620021b3565b348015620007d157600080fd5b5062000425620007e33660046200463c565b62002264565b348015620007f657600080fd5b506200078e6200080836600462004f86565b620024b0565b3480156200081b57600080fd5b50610102546200055d906001600160a01b031681565b3480156200083e57600080fd5b5062000425620008503660046200463c565b62002718565b3480156200086357600080fd5b50620003d9620008753660046200467e565b61010b60209081526000928352604080842090915290825290205481565b348015620008a057600080fd5b5062000425620008b23660046200467e565b62002ab2565b348015620008c557600080fd5b50610103546200055d906001600160a01b031681565b348015620008e857600080fd5b50610106546200055d906001600160a01b031681565b3480156200090b57600080fd5b506200042562002c05565b3480156200092357600080fd5b5062000425620009353660046200463c565b62002c1b565b3480156200094857600080fd5b50620003d96000805160206200615f83398151915281565b3480156200096d57600080fd5b50610101546200055d906001600160a01b031681565b3480156200099057600080fd5b50620003d9620009a23660046200467e565b62002cb7565b348015620009b557600080fd5b50620003d960fb5481565b348015620009cd57600080fd5b50610104546200055d906001600160a01b031681565b348015620009f057600080fd5b506200042562000a023660046200463c565b62002ce5565b34801562000a1557600080fd5b506200078e62000a2736600462004ffa565b62002da3565b34801562000a3a57600080fd5b5062000a7b62000a4c366004620046bc565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b0390941684526020840192909252151590820152606001620003be565b34801562000ab057600080fd5b50620003d960fc5481565b34801562000ac857600080fd5b506200055d62002f30565b34801562000ae057600080fd5b50620003b262000af23660046200477e565b62002fcb565b34801562000b0557600080fd5b506200055d73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000b2f57600080fd5b50620003d9600081565b34801562000b4657600080fd5b50620003b262000b58366004620046bc565b62002ff6565b34801562000b6b57600080fd5b506200042562000b7d366004620046bc565b62003040565b34801562000b9057600080fd5b5060ff546200055d9061010090046001600160a01b031681565b34801562000bb757600080fd5b50620004256200306d565b34801562000bcf57600080fd5b5062000bda620030a4565b604051620003be9190620050e1565b34801562000bf657600080fd5b50620004256200313b565b34801562000c0e57600080fd5b50620003d962003245565b34801562000c2657600080fd5b506200042562000c38366004620046bc565b62003257565b34801562000c4b57600080fd5b5062000bda6200328c565b34801562000c6357600080fd5b506200042562000c753660046200477e565b6200329c565b34801562000c8857600080fd5b50610107546200055d906001600160a01b031681565b34801562000cab57600080fd5b50620003d961271081565b34801562000cc357600080fd5b50610105546200055d906001600160a01b031681565b34801562000ce657600080fd5b506200078e62000cf8366004620050f6565b620032be565b34801562000d0b57600080fd5b50620003b262000d1d366004620046bc565b6200337f565b34801562000d3057600080fd5b506200042562000d42366004620046bc565b6200339c565b34801562000d5557600080fd5b50610100546200055d906001600160a01b031681565b34801562000d7857600080fd5b50604080518082019091526003815262302e3160e81b602082015262000bda565b62000da36200340d565b62000db2612710600a6200517f565b81111562000dd35760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e196200344a565b62000e2482620034a5565b62000e2f81620034ce565b62000e3a8162003509565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e8357604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f11573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f379190620051af565b600381111562000f4b5762000f4b62005199565b0362000fd05760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f82908890600090600401620051cf565b6020604051808303816000875af115801562000fa2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fc89190620051e8565b9050620010cc565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001013573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010399190620051af565b60038111156200104d576200104d62005199565b14620010cc5760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010839088908690600401620051cf565b6020604051808303816000875af1158015620010a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010c99190620051e8565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec90620011789087908790859062005202565b60405180910390a15050506200118e6001606555565b5050565b6200119c6200340d565b620011a78162003538565b50565b620011b462003596565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011e16200340d565b620011a781620035f9565b620011f782620034a5565b620012028162003509565b6200120e33826200368b565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200125657604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b815282822093825292909252812055620012a88282620036be565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012da92919062005226565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b0316816200131b61271060646200517f565b60fc5460fb546200132d91906200517f565b62001339919062005240565b905060006200134c61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200137a90309060040162004718565b602060405180830381865afa15801562001398573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013be9190620051e8565b60fb54620013cd91906200517f565b620013d9919062005240565b9050808260fb54620013ec919062005263565b620013f8919062005263565b935050505090565b61010d60205281600052604060002081815481106200141e57600080fd5b6000918252602090912001546001600160a01b03169150829050565b600054600290610100900460ff161580156200145d575060005460ff8083169116105b620014855760405162461bcd60e51b81526004016200147c9062005279565b60405180910390fd5b6000805461ffff191660ff831617610100179055620014a362003596565b620014ae8462003509565b620014b98362003509565b620014c48262003509565b620014cf846200339c565b61010280546001600160a01b038581166001600160a01b0319928316179092556101018054928516929091169190911790556000805461ff001916905560405160ff82168152600080516020620061bf8339815191529060200160405180910390a150505050565b6200154282620012e6565b6200154d81620037f4565b62001559838362003800565b505050565b620015686200340d565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000e04565b600054610100900460ff1615808015620015bf5750600054600160ff909116105b80620015e45750620015d1306200388a565b158015620015e4575060005460ff166001145b620016035760405162461bcd60e51b81526004016200147c9062005279565b6000805460ff19166001179055801562001627576000805461ff0019166101001790555b620016328262003257565b6200163c62003899565b62001646620038cd565b620016626000805160206200615f8339815191526000620038f7565b62001671856020015162003509565b6200168185610100015162003509565b84516200168e9062003509565b6200169d8560a0015162003509565b606085015115620016b757620016b78560c0015162003509565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001712576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200174f908262005355565b506101608501516101099062001766908262005355565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620017db906000805160206200615f8339815191529062003800565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001830573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001856919062005421565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620018e2576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018bc57620018bc62005441565b60200260200101906001600160a01b031690816001600160a01b03168152505062001a1f565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200192d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001957919081019062005457565b90508051600262001969919062005263565b6001600160401b03811115620019835762001983620047a6565b604051908082528060200260200182016040528015620019ad578160200160208202803683370190505b50915060005b815181101562001a1c57818181518110620019d257620019d262005441565b6020026020010151838281518110620019ef57620019ef62005441565b6001600160a01b03909216602092830291909101909101528062001a1381620054f0565b915050620019b3565b50505b6101065481516001600160a01b0390911690829062001a41906001906200550c565b8151811062001a545762001a5462005441565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a8691906200550c565b8151811062001a995762001a9962005441565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001aec929161010891309088906004016200560e565b6020604051808303816000875af115801562001b0c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001b329190620051e8565b60fe55805162001b4b9061010f9060208401906200456a565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001bbd92909161010891906200566e565b60405180910390a150801562001bfc576000805461ff001916905560405160018152600080516020620061bf8339815191529060200160405180910390a15b5050505050565b62001c0d6200344a565b33600081815261010c602052604081206101005490916001600160a01b039091169062001c3e61271060646200517f565b60fc5460fb5462001c5091906200517f565b62001c5c919062005240565b9050600062001c6f61271060646200517f565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001c9d90309060040162004718565b602060405180830381865afa15801562001cbb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ce19190620051e8565b60fb5462001cf091906200517f565b62001cfc919062005240565b905062001d098562002ff6565b62001e535760028401805460ff1916600190811790915560fb5490850181905562001d639086903090849062001d4190879062005263565b62001d4d919062005263565b610105546001600160a01b03169291906200394c565b811562001d905760ff546101055462001d90916001600160a01b03918216916101009091041684620039a8565b801562001e155762001e15836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001dda573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e00919062005421565b610105546001600160a01b03169083620039a8565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001e4a929190620051cf565b60405180910390a15b505050505062001e636001606555565b565b6001600160a01b038116331462001ed75760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200147c565b6200118e8282620039ca565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f2e5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f6262003a34565b6001600160a01b03161462001f8b5760405162461bcd60e51b81526004016200147c90620056d8565b62001f968162003a51565b60408051600080825260208201909252620011a79183919062003a93565b62001fbe6200340d565b62001fc98162003509565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e04939216919062005226565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200206c5760405162461bcd60e51b81526004016200147c906200569d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620020a062003a34565b6001600160a01b031614620020c95760405162461bcd60e51b81526004016200147c90620056d8565b620020d48262003a51565b6200118e8282600162003a93565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200211862002f30565b6040516024016200212c9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200216b90620045d0565b6200217892919062005736565b604051809103906000f08015801562002195573d6000803e3d6000fd5b509050620021a681878787620032be565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620022505760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200147c565b506000805160206200619f83398151915290565b6200226e6200344a565b6200227862003c0b565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620022dc57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620022bd575b50505050509050600080600090505b825181101562002417578281815181106200230a576200230a62005441565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002341929190620051cf565b6020604051808303816000875af115801562002361573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620023879190620051e8565b9150811562002402576001600160a01b038416600090815261010b602052604081208451849290869085908110620023c357620023c362005441565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620023fc919062005263565b90915550505b806200240e81620054f0565b915050620022eb565b506101055462002433906001600160a01b03168430876200394c565b6001600160a01b038316600090815261010c6020526040812060010180548692906200246190849062005263565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200249a9085908790620051cf565b60405180910390a1505050620011a76001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b9281169116620024e662002f30565b604051602401620024fa9392919062005713565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200253990620045d0565b6200254692919062005736565b604051809103906000f08015801562002563573d6000803e3d6000fd5b509050620025748187878762002da3565b60c087015191945092506001600160a01b03166200267f576103e88560e00151511115620025fd5760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200147c565b6000836040516020016200261291906200575c565b60405160208183030381529060405280519060200120905060005b8660e00151518110156200267c5762002667828860e00151838151811062002659576200265962005441565b602002602001015162003800565b806200267381620054f0565b9150506200262d565b50505b620026db836040516020016200269691906200575c565b6040516020818303038152906040528051906020012084604051602001620026bf919062005779565b60405160208183030381529060405280519060200120620038f7565b6200270f83604051602001620026f2919062005779565b604051602081830303815290604052805190602001208362003800565b50935093915050565b620027226200344a565b6200272c62003c0b565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620027609086906200550c565b10156200278057604051634e23e81760e11b815260040160405180910390fd5b610105546200279a906001600160a01b03168486620039a8565b60005b825481101562002a4a576000838281548110620027be57620027be62005441565b6000918252602090912001546001600160a01b03169050620027e88163f1801e6160e01b62003c34565b156200296e57604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b906200281e9088908a90600401620051cf565b6020604051808303816000875af11580156200283e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028649190620051e8565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620028a557620028a562005441565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620028f9576040516311423e6360e31b815260048101859052602481018290526044016200147c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200292c576200292c62005441565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620029629084906200550c565b90915550505062002a34565b8354849062002980906001906200550c565b8154811062002993576200299362005441565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029c657620029c662005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002a075762002a076200579c565b600082815260209020810160001990810180546001600160a01b031916905501905562002a348162003538565b508062002a4181620054f0565b9150506200279d565b506001600160a01b038316600090815261010c60205260408120600101805486929062002a799084906200550c565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200249a9085908790620051cf565b62002abc6200344a565b62002ac66200340d565b60ff80541662002ae9576040516365b1ee3960e11b815260040160405180910390fd5b62002af48262002ff6565b62002b1257604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002b638362003c5c565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002bb89216908490620039a8565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002bf19392919062005202565b60405180910390a1506200118e6001606555565b62002c0f62003596565b62001e63600062003d71565b62002c256200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c71573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c9b9190810190620057b2565b60200151905062002cac8162003509565b6200118e8162003538565b6001600160a01b03808316600090815261010b60209081526040808320938516835292905220545b92915050565b62002cef6200340d565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002d3b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002d659190810190620057b2565b60200151905062002d768162003509565b62002d926001600160a01b03821663f1801e6160e01b62003c34565b156200118e576200118e81620035f9565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dce5750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e0d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b906020016200597d565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e9c979695949392919062005a26565b6020604051808303816000875af115801562002ebc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002ee29190620051e8565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f1d95949392919062005a97565b60405180910390a1505094509492505050565b60008062002f466033546001600160a01b031690565b9050806001600160a01b03163b60000362002f6057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002fbd575060408051601f3d908101601f1916820190925262002fba9181019062005421565b60015b62002cdf57919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b6200304a62003596565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b031633146200309a576040516375e686b760e11b815260040160405180910390fd5b62001e6362003dc3565b6101098054620030b490620052c7565b80601f0160208091040260200160405190810160405280929190818152602001828054620030e290620052c7565b8015620031335780601f10620031075761010080835404028352916020019162003133565b820191906000526020600020905b8154815290600101906020018083116200311557829003601f168201915b505050505081565b620031456200344a565b336200315181620034a5565b6200315c8162003c5c565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620031d79190620045de565b602081015161010554620031f9916001600160a01b03909116908490620039a8565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003230929190620051cf565b60405180910390a1505062001e636001606555565b62003254612710600a6200517f565b81565b600054610100900460ff16620032815760405162461bcd60e51b81526004016200147c9062005ad3565b620011a78162003d71565b6101088054620030b490620052c7565b620032a782620012e6565b620032b281620037f4565b620015598383620039ca565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620032e95750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200334757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003328575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e64908b9060200162005b1e565b600062002cdf6000805160206200615f8339815191528362002fcb565b620033a662003596565b6001600160a01b038116620032815760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200147c565b620034286000805160206200615f8339815191523362002fcb565b62001e63573360405163fc4be72f60e01b81526004016200147c919062004718565b6002606554036200349e5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200147c565b6002606555565b620034b08162002ff6565b620011a757604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff16620011a7576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b038116620011a7576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620035438162003509565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e0490839062004718565b33620035a162002f30565b6001600160a01b03161462001e635760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200147c565b6001600160a01b038116600090815261010a602052604090205460ff161562003635576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000e0490839062004718565b806001600160a01b0316826001600160a01b0316146200118e5760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b8154811015620037ee57826001600160a01b031682828154811062003702576200370262005441565b6000918252602090912001546001600160a01b031603620037d957815482906200372f906001906200550c565b8154811062003742576200374262005441565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003775576200377562005441565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620037b657620037b66200579c565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620037e581620054f0565b915050620036d9565b50505050565b620011a7813362003e27565b6200380c828262002fcb565b6200118e57600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620038463390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620038c35760405162461bcd60e51b81526004016200147c9062005ad3565b62001e6362003e8b565b600054610100900460ff1662001e635760405162461bcd60e51b81526004016200147c9062005ad3565b60006200390483620012e6565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b620037ee846323b872dd60e01b858585604051602401620039709392919062005202565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003eb5565b620015598363a9059cbb60e01b848460405160240162003970929190620051cf565b620039d6828262002fcb565b156200118e57600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200619f833981519152546001600160a01b031690565b3362003a5c62002f30565b6001600160a01b031614620011a7573362003a7662002f30565b60405163163678e960e01b81526004016200147c92919062005226565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003ac957620015598362003f91565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003b26575060408051601f3d908101601f1916820190925262003b2391810190620051e8565b60015b62003b8b5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200147c565b6000805160206200619f833981519152811462003bfd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200147c565b506200155983838362004030565b62003c163362002ff6565b62001e6357604051636a5cfb6d60e01b815260040160405180910390fd5b600062003c41836200405b565b801562003c55575062003c55838362004093565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003cc957602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003caa575b5050505050905060005b8151811015620015595781818151811062003cf25762003cf262005441565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003d27919062004718565b600060405180830381600087803b15801562003d4257600080fd5b505af115801562003d57573d6000803e3d6000fd5b50505050808062003d6890620054f0565b91505062003cd3565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003e1d9060009062004718565b60405180910390a1565b62003e33828262002fcb565b6200118e5762003e43816200411e565b62003e5083602062004131565b60405160200162003e6392919062005ba7565b60408051601f198184030181529082905262461bcd60e51b82526200147c91600401620050e1565b600054610100900460ff16620035315760405162461bcd60e51b81526004016200147c9062005ad3565b600062003f0c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620042ea9092919063ffffffff16565b905080516000148062003f3057508080602001905181019062003f30919062005c1a565b620015595760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200147c565b62003f9c816200388a565b620040005760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200147c565b6000805160206200619f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200403b8362004303565b600082511180620040495750805b156200155957620037ee838362004345565b600062004070826301ffc9a760e01b62004093565b801562002cdf57506200408c826001600160e01b031962004093565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004106575060208210155b8015620041135750600081115b979650505050505050565b606062002cdf6001600160a01b03831660145b60606000620041428360026200517f565b6200414f90600262005263565b6001600160401b03811115620041695762004169620047a6565b6040519080825280601f01601f19166020018201604052801562004194576020820181803683370190505b509050600360fc1b81600081518110620041b257620041b262005441565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041e457620041e462005441565b60200101906001600160f81b031916908160001a90535060006200420a8460026200517f565b6200421790600162005263565b90505b600181111562004299576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106200424f576200424f62005441565b1a60f81b82828151811062004268576200426862005441565b60200101906001600160f81b031916908160001a90535060049490941c93620042918162005c3a565b90506200421a565b50831562003c555760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200147c565b6060620042fb84846000856200436d565b949350505050565b6200430e8162003f91565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003c558383604051806060016040528060278152602001620061df6027913962004445565b606082471015620043d05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200147c565b600080866001600160a01b03168587604051620043ee919062005c54565b60006040518083038185875af1925050503d80600081146200442d576040519150601f19603f3d011682016040523d82523d6000602084013e62004432565b606091505b50915091506200411387838387620044c3565b6060600080856001600160a01b03168560405162004464919062005c54565b600060405180830381855af49150503d8060008114620044a1576040519150601f19603f3d011682016040523d82523d6000602084013e620044a6565b606091505b5091509150620044b986838387620044c3565b9695505050505050565b60608315620045375782516000036200452f57620044e1856200388a565b6200452f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200147c565b5081620042fb565b620042fb83838151156200454e5781518083602001fd5b8060405162461bcd60e51b81526004016200147c9190620050e1565b828054828255906000526020600020908101928215620045c2579160200282015b82811115620045c257825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200458b565b5062002fc7929150620045f9565b6104ec8062005c7383390190565b5080546000825590600052602060002090810190620011a791905b5b8082111562002fc75760008155600101620045fa565b6000602082840312156200462357600080fd5b81356001600160e01b03198116811462003c5557600080fd5b6000602082840312156200464f57600080fd5b5035919050565b6001600160a01b0381168114620011a757600080fd5b8035620046798162004656565b919050565b600080604083850312156200469257600080fd5b82356200469f8162004656565b91506020830135620046b18162004656565b809150509250929050565b600060208284031215620046cf57600080fd5b813562003c558162004656565b60008060408385031215620046f057600080fd5b8235620046fd8162004656565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6000806000606084860312156200474257600080fd5b83356200474f8162004656565b92506020840135620047618162004656565b91506040840135620047738162004656565b809150509250925092565b600080604083850312156200479257600080fd5b823591506020830135620046b18162004656565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620047e157620047e1620047a6565b60405290565b60405161018081016001600160401b0381118282101715620047e157620047e1620047a6565b60405160c081016001600160401b0381118282101715620047e157620047e1620047a6565b60405161010081016001600160401b0381118282101715620047e157620047e1620047a6565b604051601f8201601f191681016001600160401b0381118282101715620048835762004883620047a6565b604052919050565b60006001600160401b03821115620048a757620048a7620047a6565b50601f01601f191660200190565b6000620048cc620048c6846200488b565b62004858565b9050828152838383011115620048e157600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200490a57600080fd5b62003c5583833560208501620048b5565b6000604082840312156200492e57600080fd5b62004938620047bc565b82358152905060208201356001600160401b038111156200495857600080fd5b6200496684828501620048f8565b60208301525092915050565b8015158114620011a757600080fd5b8035620046798162004972565b60008060008060808587031215620049a557600080fd5b84356001600160401b0380821115620049bd57600080fd5b908601906101808289031215620049d357600080fd5b620049dd620047e7565b620049e8836200466c565b8152620049f8602084016200466c565b602082015260408301356040820152606083013560608201526080830135608082015262004a2960a084016200466c565b60a082015262004a3c60c084016200466c565b60c082015260e08301358281111562004a5457600080fd5b62004a628a8286016200491b565b60e08301525061010062004a788185016200466c565b90820152610120838101358381111562004a9157600080fd5b62004a9f8b828701620048f8565b82840152505061014062004ab581850162004981565b90820152610160838101358381111562004ace57600080fd5b62004adc8b828701620048f8565b82840152505080965050505062004af6602086016200466c565b925062004b06604086016200466c565b915062004b16606086016200466c565b905092959194509250565b6000806040838503121562004b3557600080fd5b823562004b428162004656565b915060208301356001600160401b0381111562004b5e57600080fd5b8301601f8101851362004b7057600080fd5b62004b8185823560208401620048b5565b9150509250929050565b60006080828403121562004b9e57600080fd5b604051608081016001600160401b038111828210171562004bc35762004bc3620047a6565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200467957600080fd5b60048110620011a757600080fd5b8035620046798162004c04565b60006020828403121562004c3257600080fd5b604051602081016001600160401b038111828210171562004c575762004c57620047a6565b6040529135825250919050565b600060c0828403121562004c7757600080fd5b62004c816200480d565b9050813562004c908162004656565b8152602082013562004ca28162004656565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004ceb57600080fd5b60405160e081016001600160401b038111828210171562004d105762004d10620047a6565b60405290508062004d22848462004b8b565b815262004d326080840162004bf4565b602082015260a083013562004d478162004c04565b604082015262004d5b8460c0850162004c1f565b606082015262004d6f8460e0850162004c64565b60808201526101a083013562004d858162004656565b60a082015262004d996101c084016200466c565b60c08201525092915050565b6000806000610220848603121562004dbc57600080fd5b833562004dc98162004656565b925062004dda856020860162004cd7565b91506102008401356001600160401b0381111562004df757600080fd5b62004e05868287016200491b565b9150509250925092565b60006001600160401b0382111562004e2b5762004e2b620047a6565b5060051b60200190565b600082601f83011262004e4757600080fd5b8135602062004e5a620048c68362004e0f565b82815260059290921b8401810191818101908684111562004e7a57600080fd5b8286015b8481101562004ea257803562004e948162004656565b835291830191830162004e7e565b509695505050505050565b6000610200828403121562004ec157600080fd5b62004ecb62004832565b905062004ed9838362004b8b565b815262004ee96080830162004bf4565b602082015262004efc60a0830162004c12565b604082015262004f108360c0840162004c1f565b606082015262004f248360e0840162004c64565b608082015262004f386101a083016200466c565b60a082015262004f4c6101c083016200466c565b60c08201526101e08201356001600160401b0381111562004f6c57600080fd5b62004f7a8482850162004e35565b60e08301525092915050565b60008060006060848603121562004f9c57600080fd5b833562004fa98162004656565b925060208401356001600160401b038082111562004fc657600080fd5b62004fd48783880162004ead565b9350604086013591508082111562004feb57600080fd5b5062004e05868287016200491b565b600080600080608085870312156200501157600080fd5b84356200501e8162004656565b93506020850135620050308162004656565b925060408501356001600160401b03808211156200504d57600080fd5b6200505b8883890162004ead565b935060608701359150808211156200507257600080fd5b5062005081878288016200491b565b91505092959194509250565b60005b83811015620050aa57818101518382015260200162005090565b50506000910152565b60008151808452620050cd8160208601602086016200508d565b601f01601f19169290920160200192915050565b60208152600062003c556020830184620050b3565b60008060008061024085870312156200510e57600080fd5b84356200511b8162004656565b935060208501356200512d8162004656565b92506200513e866040870162004cd7565b91506102208501356001600160401b038111156200515b57600080fd5b62005081878288016200491b565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762002cdf5762002cdf62005169565b634e487b7160e01b600052602160045260246000fd5b600060208284031215620051c257600080fd5b815162003c558162004c04565b6001600160a01b03929092168252602082015260400190565b600060208284031215620051fb57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200525e57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562002cdf5762002cdf62005169565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c90821680620052dc57607f821691505b602082108103620052fd57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200155957600081815260208120601f850160051c810160208610156200532c5750805b601f850160051c820191505b818110156200534d5782815560010162005338565b505050505050565b81516001600160401b03811115620053715762005371620047a6565b6200538981620053828454620052c7565b8462005303565b602080601f831160018114620053c15760008415620053a85750858301515b600019600386901b1c1916600185901b1785556200534d565b600085815260208120601f198616915b82811015620053f257888601518255948401946001909101908401620053d1565b5085821015620054115787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200543457600080fd5b815162003c558162004656565b634e487b7160e01b600052603260045260246000fd5b600060208083850312156200546b57600080fd5b82516001600160401b038111156200548257600080fd5b8301601f810185136200549457600080fd5b8051620054a5620048c68262004e0f565b81815260059190911b82018301908381019087831115620054c557600080fd5b928401925b8284101562004113578351620054e08162004656565b82529284019290840190620054ca565b60006001820162005505576200550562005169565b5060010190565b8181038181111562002cdf5762002cdf62005169565b600081546200553181620052c7565b8085526020600183811680156200555157600181146200556c576200559c565b60ff1985168884015283151560051b8801830195506200559c565b866000528260002060005b85811015620055945781548a820186015290830190840162005577565b890184019650505b505050505092915050565b805182526000602082015160406020850152620042fb6040850182620050b3565b600081518084526020808501945080840160005b83811015620056035781516001600160a01b031687529582019590820190600101620055dc565b509495945050505050565b85815260a0602082015260006200562960a083018762005522565b82810360408401526200563d8187620055a7565b6001600160a01b038616606085015283810360808501529050620056628185620055c8565b98975050505050505050565b83815260606020820152600062005689606083018562005522565b8281036040840152620044b98185620055a7565b6020808252602c908201526000805160206200617f83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200617f83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042fb90830184620050b3565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057c657600080fd5b82516001600160401b0380821115620057de57600080fd5b9084019060c08287031215620057f357600080fd5b620057fd6200480d565b8251815283830151620058108162004656565b818501526040830151620058248162004656565b60408201526060830151828111156200583c57600080fd5b8301604081890312156200584f57600080fd5b62005859620047bc565b8151815285820151848111156200586f57600080fd5b82019350601f840189136200588357600080fd5b8351915062005896620048c6836200488b565b8281528987848701011115620058ab57600080fd5b620058bc838883018988016200508d565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b6003811062005921576200592162005199565b9052565b6004811062005921576200592162005199565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b6020815262005991602082018351620058e8565b60006020830151620059a760a08401826200590e565b506040830151620059bc60c084018262005925565b5060608301515160e08301526080830151620059dd61010084018262005938565b5060a0830151620059f36101c08401826200470b565b5060c083015162005a096101e08401826200470b565b5060e083015161020083810152620042fb610220840182620055c8565b878152600060018060a01b03808916602084015260e0604084015262005a5060e0840189620050b3565b818816606085015286608085015283810360a085015262005a728187620055a7565b91505082810360c084015262005a898185620055c8565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a0608082018190526000906200411390830184620055a7565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e08201905062005b34828451620058e8565b602083015162005b4860808401826200590e565b50604083015162005b5d60a084018262005925565b5060608301515160c0830152608083015162005b7d60e084018262005938565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005bdb8160178501602088016200508d565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005c0e8160288401602088016200508d565b01602801949350505050565b60006020828403121562005c2d57600080fd5b815162003c558162004972565b60008162005c4c5762005c4c62005169565b506000190190565b6000825162005c688184602087016200508d565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122093fddaea8151c463dae3fddbc0c6f0b6e6826650796de78e0a29a4499ce959f464736f6c63430008130033","sourceMap":"446:1123:115:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1302:228;;;;;;;;;;-1:-1:-1;1302:228:115;;;;;:::i;:::-;-1:-1:-1;;;;;;1487:36:115;1388:4;1487:36;;;:22;:36;;;;;;;;;1302:228;;;;470:14:136;;463:22;445:41;;433:2;418:18;1302:228:115;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:136;;;631:2;616:18;23771:115:104;497:177:136;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4862:129:43:-;;;;;;;;;;-1:-1:-1;4862:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;655:506:115:-;;;;;;;;;;-1:-1:-1;655:506:115;;;;;:::i;:::-;;:::i;19069:151:104:-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5287:145:43;;;;;;;;;;-1:-1:-1;5287:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6396:214:43:-;;;;;;;;;;-1:-1:-1;6396:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;13339:25:136;;;-1:-1:-1;;;;;13400:32:136;;;13395:2;13380:18;;13373:60;13312:18;12647:531:104;13165:274:136;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;584:1317:105:-;;;;;;;;;;-1:-1:-1;584:1317:105;;;;;:::i;:::-;;:::i;6550:31:104:-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;;:::i;5795:34::-;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;1907:660:105:-;;;;;;;;;;-1:-1:-1;1907:660:105;;;;;:::i;:::-;;:::i;7605:60:104:-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;17946:32:136;;;17928:51;;18010:2;17995:18;;17988:34;;;;18065:14;18058:22;18038:18;;;18031:50;17916:2;17901:18;7605:60:104;17732:355:136;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3357:145:43:-;;;;;;;;;;-1:-1:-1;3357:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2336:49:43;;;;;;;;;;-1:-1:-1;2336:49:43;2381:4;2336:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5712:147:43:-;;;;;;;;;;-1:-1:-1;5712:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;1171:93:115;;;;;;;;;;-1:-1:-1;1245:12:115;;;;;;;;;;;;-1:-1:-1;;;1245:12:115;;;;1171:93;;24088:288:104;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:136;;;24332:37:104;;631:2:136;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4862:129:43:-;4936:7;4962:12;;;:6;:12;;;;;:22;;;;4862:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;655:506:115:-;4882:13:47;;805:1:115;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;;;;;;;;;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;4982:22;5014:20;;;1355:13:45::1;:11;:13::i;:::-;828:26:115::2;847:6;828:18;:26::i;:::-;864:37;883:17;864:18;:37::i;:::-;911:44;930:24;911:18;:44::i;:::-;974:25;992:6;974:17;:25::i;:::-;1018:16;:36:::0;;-1:-1:-1;;;;;1018:36:115;;::::2;-1:-1:-1::0;;;;;;1018:36:115;;::::2;;::::0;;;1064:23:::2;:50:::0;;;;::::2;::::0;;;::::2;::::0;;;::::2;::::0;;-1:-1:-1;5055:21:47;;-1:-1:-1;;5055:21:47;;;5091:20;;23187:4:136;23175:17;;23157:36;;-1:-1:-1;;;;;;;;;;;5091:20:47;23145:2:136;23130:18;5091:20:47;;;;;;;655:506:115;;;;:::o;5287:145:43:-;5370:18;5383:4;5370:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5400:25:::1;5411:4;5417:7;5400:10;:25::i;:::-;5287:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:136;;;24043:32:104;;631:2:136;616:18;24043:32:104;497:177:136;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2381:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;23157:36:136;;-1:-1:-1;;;;;;;;;;;3721:14:47;23145:2:136;23130:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6396:214:43:-;-1:-1:-1;;;;;6491:23:43;;965:10:51;6491:23:43;6483:83;;;;-1:-1:-1;;;6483:83:43;;30819:2:136;6483:83:43;;;30801:21:136;30858:2;30838:18;;;30831:30;30897:34;30877:18;;;30870:62;-1:-1:-1;;;30948:18:136;;;30941:45;31003:19;;6483:83:43;30617:411:136;6483:83:43;6577:26;6589:4;6595:7;6577:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;33087:2:136;2064:92:64;;;33069:21:136;33126:2;33106:18;;;33099:30;33165:34;33145:18;;;33138:62;-1:-1:-1;;;33216:18:136;;;33209:54;33280:19;;2064:92:64;32885:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;584:1317:105;877:16;;973:4;;980:23;;742:14;;;;;;-1:-1:-1;;;;;877:16:105;;;;-1:-1:-1;;;935:28:105;973:4;;;980:23;1005:7;:5;:7::i;:::-;912:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;912:101:105;;;;;;;;;;;;;;-1:-1:-1;;;;;912:101:105;-1:-1:-1;;;;;;912:101:105;;;;;;;;;;835:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;790:247;;1068:53;1079:13;1094:6;1102:7;1111:9;1068:10;:53::i;:::-;1144:19;;;;1047:74;;-1:-1:-1;1047:74:105;-1:-1:-1;;;;;;1136:42:105;1132:454;;1232:4;1198:7;:24;;;:31;:38;1194:134;;;1256:57;;-1:-1:-1;;;1256:57:105;;33512:2:136;1256:57:105;;;33494:21:136;33551:2;33531:18;;;33524:30;33590:34;33570:18;;;33563:62;-1:-1:-1;;;33641:18:136;;;33634:45;33696:19;;1256:57:105;33310:411:136;1194:134:105;1341:21;1405:6;1375:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1365:48;;;;;;1341:72;;1432:9;1427:149;1451:7;:24;;;:31;1447:1;:35;1427:149;;;1507:54;1518:13;1533:7;:24;;;1558:1;1533:27;;;;;;;;:::i;:::-;;;;;;;1507:10;:54::i;:::-;1484:3;;;;:::i;:::-;;;;1427:149;;;;1180:406;1132:454;1667:141;1734:6;1704:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1694:48;;;;;;1790:6;1754:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1744:54;;;;;;1667:13;:141::i;:::-;1818:76;1875:6;1839:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1829:54;;;;;;1885:8;1818:10;:76::i;:::-;780:1121;584:1317;;;;;;:::o;17322:1562:104:-;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;34565:25:136::0;;;34606:18;;;34599:34;;;34538:18;;18259:57:104::1;34391:248:136::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:136;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:136;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;18890:173::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;18890:173;;;;;:::o;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:136;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:136;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;1907:660:105:-;2098:14;;5412:42:104;-1:-1:-1;;;;;2178:20:105;;;2174:65;;-1:-1:-1;2222:6:105;2174:65;2259:9;2248:20;;2279:31;2313:14;2279:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2279:48:105;;;;;;;;;;;;;;;;-1:-1:-1;;2347:4:105;;2394:9;;2415:19;;2279:48;;-1:-1:-1;;;;;;2347:4:105;;;;:33;;-1:-1:-1;2394:9:105;;-1:-1:-1;2405:8:105;;-1:-1:-1;2415:19:105;;2426:7;;2415:19;;;:::i;:::-;;;;;;;;;;;;;2436:5;2443:1;2446:9;2457:14;2347:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2338:143;;2497:63;2509:6;2517:8;2535:4;2542:6;2550:9;2497:63;;;;;;;;;;:::i;:::-;;;;;;;;2132:435;;1907:660;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3357:145:43:-;3443:4;3466:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3466:29:43;;;;;;;;;;;;;;;3357:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5712:147:43:-;5796:18;5809:4;5796:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5826:26:::1;5838:4;5844:7;5826:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;41855:2:136;2415:73:45::1;::::0;::::1;41837:21:136::0;41894:2;41874:18;;;41867:30;41933:34;41913:18;;;41906:62;-1:-1:-1;;;41984:18:136;;;41977:36;42030:19;;2415:73:45::1;41653:402:136::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;42262:2:136;2725:63:48;;;42244:21:136;42301:2;42281:18;;;42274:30;42340:33;42320:18;;;42313:61;42391:18;;2725:63:48;42060:355:136;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;42622:2:136;1675:68:45;;;42604:21:136;;;42641:18;;;42634:30;42700:34;42680:18;;;42673:62;42752:18;;1675:68:45;42420:356:136;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3796:103:43:-;3862:30;3873:4;965:10:51;3862::43;:30::i;7945:233::-;8028:22;8036:4;8042:7;8028;:22::i;:::-;8023:149;;8066:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8066:29:43;;;;;;;;;:36;;-1:-1:-1;;8066:36:43;8098:4;8066:36;;;8148:12;965:10:51;;886:96;8148:12:43;-1:-1:-1;;;;;8121:40:43;8139:7;-1:-1:-1;;;;;8121:40:43;8133:4;8121:40;;;;;;;;;;7945:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2854:60:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7530:247:43:-;7613:25;7641:18;7654:4;7641:12;:18::i;:::-;7669:12;;;;:6;:12;;;;;;:22;;:34;;;7718:52;7613:46;;-1:-1:-1;7694:9:43;;7613:46;;7676:4;;7718:52;;7669:12;7718:52;7603:174;7530:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8349:234:43:-;8432:22;8440:4;8446:7;8432;:22::i;:::-;8428:149;;;8502:5;8470:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8470:29:43;;;;;;;;;;:37;;-1:-1:-1;;8470:37:43;;;8526:40;965:10:51;;8470:12:43;;8526:40;;8502:5;8526:40;8349:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;42983:2:136;3262:56:60;;;42965:21:136;43022:2;43002:18;;;42995:30;43061:34;43041:18;;;43034:62;-1:-1:-1;;;43112:18:136;;;43105:44;43166:19;;3262:56:60;42781:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;43398:2:136;3140:82:60;;;43380:21:136;43437:2;43417:18;;;43410:30;43476:34;43456:18;;;43449:62;-1:-1:-1;;;43527:18:136;;;43520:39;43576:19;;3140:82:60;43196:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4180:501:43:-;4268:22;4276:4;4282:7;4268;:22::i;:::-;4263:412;;4451:39;4482:7;4451:30;:39::i;:::-;4561:49;4600:4;4607:2;4561:30;:49::i;:::-;4358:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4358:274:43;;;;;;;;;;-1:-1:-1;;;4306:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;45091:2:136;5697:111:73;;;45073:21:136;45130:2;45110:18;;;45103:30;45169:34;45149:18;;;45142:62;-1:-1:-1;;;45220:18:136;;;45213:40;45270:19;;5697:111:73;44889:406:136;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;45502:2:136;1479:95:60;;;45484:21:136;45541:2;45521:18;;;45514:30;45580:34;45560:18;;;45553:62;-1:-1:-1;;;45631:18:136;;;45624:43;45684:19;;1479:95:60;45300:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;45876:33:136;;4592:71:81;;;;45858:52:136;;;;4592:71:81;;;;;;;;;;45831:18:136;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;46264:2:136;2228:55:52;;;46246:21:136;;;46283:18;;;46276:30;46342:34;46322:18;;;46315:62;46394:18;;2228:55:52;46062:356:136;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;46625:2:136;5354:81:76;;;46607:21:136;46664:2;46644:18;;;46637:30;46703:34;46683:18;;;46676:62;-1:-1:-1;;;46754:18:136;;;46747:36;46800:19;;5354:81:76;46423:402:136;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;47324:2:136;8113:60:76;;;47306:21:136;47363:2;47343:18;;;47336:30;47402:31;47382:18;;;47375:59;47451:18;;8113:60:76;47122:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:136;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:136;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:136;;861:180;-1:-1:-1;861:180:136:o;1046:131::-;-1:-1:-1;;;;;1121:31:136;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:136;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:136:o;2471:104::-;-1:-1:-1;;;;;2537:31:136;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:136;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:529::-;2865:6;2873;2881;2934:2;2922:9;2913:7;2909:23;2905:32;2902:52;;;2950:1;2947;2940:12;2902:52;2989:9;2976:23;3008:31;3033:5;3008:31;:::i;:::-;3058:5;-1:-1:-1;3115:2:136;3100:18;;3087:32;3128:33;3087:32;3128:33;:::i;:::-;3180:7;-1:-1:-1;3239:2:136;3224:18;;3211:32;3252:33;3211:32;3252:33;:::i;:::-;3304:7;3294:17;;;2788:529;;;;;:::o;3322:315::-;3390:6;3398;3451:2;3439:9;3430:7;3426:23;3422:32;3419:52;;;3467:1;3464;3457:12;3419:52;3503:9;3490:23;3480:33;;3563:2;3552:9;3548:18;3535:32;3576:31;3601:5;3576:31;:::i;3642:127::-;3703:10;3698:3;3694:20;3691:1;3684:31;3734:4;3731:1;3724:15;3758:4;3755:1;3748:15;3774:257;3846:4;3840:11;;;3878:17;;-1:-1:-1;;;;;3910:34:136;;3946:22;;;3907:62;3904:88;;;3972:18;;:::i;:::-;4008:4;4001:24;3774:257;:::o;4036:255::-;4108:2;4102:9;4150:6;4138:19;;-1:-1:-1;;;;;4172:34:136;;4208:22;;;4169:62;4166:88;;;4234:18;;:::i;4296:253::-;4368:2;4362:9;4410:4;4398:17;;-1:-1:-1;;;;;4430:34:136;;4466:22;;;4427:62;4424:88;;;4492:18;;:::i;4554:255::-;4626:2;4620:9;4668:6;4656:19;;-1:-1:-1;;;;;4690:34:136;;4726:22;;;4687:62;4684:88;;;4752:18;;:::i;4814:275::-;4885:2;4879:9;4950:2;4931:13;;-1:-1:-1;;4927:27:136;4915:40;;-1:-1:-1;;;;;4970:34:136;;5006:22;;;4967:62;4964:88;;;5032:18;;:::i;:::-;5068:2;5061:22;4814:275;;-1:-1:-1;4814:275:136:o;5094:187::-;5143:4;-1:-1:-1;;;;;5165:30:136;;5162:56;;;5198:18;;:::i;:::-;-1:-1:-1;5264:2:136;5243:15;-1:-1:-1;;5239:29:136;5270:4;5235:40;;5094:187::o;5286:338::-;5351:5;5380:53;5396:36;5425:6;5396:36;:::i;:::-;5380:53;:::i;:::-;5371:62;;5456:6;5449:5;5442:21;5496:3;5487:6;5482:3;5478:16;5475:25;5472:45;;;5513:1;5510;5503:12;5472:45;5562:6;5557:3;5550:4;5543:5;5539:16;5526:43;5616:1;5609:4;5600:6;5593:5;5589:18;5585:29;5578:40;5286:338;;;;;:::o;5629:222::-;5672:5;5725:3;5718:4;5710:6;5706:17;5702:27;5692:55;;5743:1;5740;5733:12;5692:55;5765:80;5841:3;5832:6;5819:20;5812:4;5804:6;5800:17;5765:80;:::i;5856:411::-;5911:5;5959:4;5947:9;5942:3;5938:19;5934:30;5931:50;;;5977:1;5974;5967:12;5931:50;5999:22;;:::i;:::-;6044:23;;6030:38;;5990:31;-1:-1:-1;6119:2:136;6104:18;;6091:32;-1:-1:-1;;;;;6135:30:136;;6132:50;;;6178:1;6175;6168:12;6132:50;6214:46;6256:3;6247:6;6236:9;6232:22;6214:46;:::i;:::-;6209:2;6202:5;6198:14;6191:70;;5856:411;;;;:::o;6272:118::-;6358:5;6351:13;6344:21;6337:5;6334:32;6324:60;;6380:1;6377;6370:12;6395:128;6460:20;;6489:28;6460:20;6489:28;:::i;6528:1871::-;6670:6;6678;6686;6694;6747:3;6735:9;6726:7;6722:23;6718:33;6715:53;;;6764:1;6761;6754:12;6715:53;6791:23;;-1:-1:-1;;;;;6863:14:136;;;6860:34;;;6890:1;6887;6880:12;6860:34;6913:22;;;;6969:6;6951:16;;;6947:29;6944:49;;;6989:1;6986;6979:12;6944:49;7015:22;;:::i;:::-;7060;7079:2;7060:22;:::i;:::-;7053:5;7046:37;7115:31;7142:2;7138;7134:11;7115:31;:::i;:::-;7110:2;7103:5;7099:14;7092:55;7200:2;7196;7192:11;7179:25;7174:2;7167:5;7163:14;7156:49;7258:2;7254;7250:11;7237:25;7232:2;7225:5;7221:14;7214:49;7317:3;7313:2;7309:12;7296:26;7290:3;7283:5;7279:15;7272:51;7356:32;7383:3;7379:2;7375:12;7356:32;:::i;:::-;7350:3;7343:5;7339:15;7332:57;7422:32;7449:3;7445:2;7441:12;7422:32;:::i;:::-;7416:3;7409:5;7405:15;7398:57;7501:3;7497:2;7493:12;7480:26;7531:2;7521:8;7518:16;7515:36;;;7547:1;7544;7537:12;7515:36;7584:54;7630:7;7619:8;7615:2;7611:17;7584:54;:::i;:::-;7578:3;7571:5;7567:15;7560:79;;7658:3;7693:31;7720:2;7716;7712:11;7693:31;:::i;:::-;7677:14;;;7670:55;7744:3;7785:11;;;7772:25;7809:16;;;7806:36;;;7838:1;7835;7828:12;7806:36;7874:45;7911:7;7900:8;7896:2;7892:17;7874:45;:::i;:::-;7869:2;7862:5;7858:14;7851:69;;;7939:3;7974:28;7998:2;7994;7990:11;7974:28;:::i;:::-;7958:14;;;7951:52;8022:3;8063:11;;;8050:25;8087:16;;;8084:36;;;8116:1;8113;8106:12;8084:36;8152:45;8189:7;8178:8;8174:2;8170:17;8152:45;:::i;:::-;8147:2;8140:5;8136:14;8129:69;;;8217:5;8207:15;;;;;8241:38;8275:2;8264:9;8260:18;8241:38;:::i;:::-;8231:48;;8298:38;8332:2;8321:9;8317:18;8298:38;:::i;:::-;8288:48;;8355:38;8389:2;8378:9;8374:18;8355:38;:::i;:::-;8345:48;;6528:1871;;;;;;;:::o;8664:585::-;8741:6;8749;8802:2;8790:9;8781:7;8777:23;8773:32;8770:52;;;8818:1;8815;8808:12;8770:52;8857:9;8844:23;8876:31;8901:5;8876:31;:::i;:::-;8926:5;-1:-1:-1;8982:2:136;8967:18;;8954:32;-1:-1:-1;;;;;8998:30:136;;8995:50;;;9041:1;9038;9031:12;8995:50;9064:22;;9117:4;9109:13;;9105:27;-1:-1:-1;9095:55:136;;9146:1;9143;9136:12;9095:55;9169:74;9235:7;9230:2;9217:16;9212:2;9208;9204:11;9169:74;:::i;:::-;9159:84;;;8664:585;;;;;:::o;9254:605::-;9309:5;9357:4;9345:9;9340:3;9336:19;9332:30;9329:50;;;9375:1;9372;9365:12;9329:50;9408:2;9402:9;9450:4;9438:17;;-1:-1:-1;;;;;9470:34:136;;9506:22;;;9467:62;9464:88;;;9532:18;;:::i;:::-;9572:10;9568:2;9561:22;;9601:6;9592:15;;9644:9;9631:23;9623:6;9616:39;9716:2;9705:9;9701:18;9688:32;9683:2;9675:6;9671:15;9664:57;9782:2;9771:9;9767:18;9754:32;9749:2;9741:6;9737:15;9730:57;9848:2;9837:9;9833:18;9820:32;9815:2;9807:6;9803:15;9796:57;;9254:605;;;;:::o;9864:153::-;9942:20;;9991:1;9981:12;;9971:40;;10007:1;10004;9997:12;10022:110;10106:1;10099:5;10096:12;10086:40;;10122:1;10119;10112:12;10137:152;10214:20;;10243:40;10214:20;10243:40;:::i;10294:416::-;10358:5;10406:4;10394:9;10389:3;10385:19;10381:30;10378:50;;;10424:1;10421;10414:12;10378:50;10457:2;10451:9;10499:4;10487:17;;-1:-1:-1;;;;;10519:34:136;;10555:22;;;10516:62;10513:88;;;10581:18;;:::i;:::-;10617:2;10610:22;10680:23;;10665:39;;-1:-1:-1;10650:6:136;10294:416;-1:-1:-1;10294:416:136:o;10715:701::-;10778:5;10826:4;10814:9;10809:3;10805:19;10801:30;10798:50;;;10844:1;10841;10834:12;10798:50;10866:22;;:::i;:::-;10857:31;;10925:9;10912:23;10944:33;10969:7;10944:33;:::i;:::-;10986:22;;11060:2;11045:18;;11032:32;11073:33;11032:32;11073:33;:::i;:::-;11138:7;11133:2;11126:5;11122:14;11115:31;;11206:2;11195:9;11191:18;11178:32;11173:2;11166:5;11162:14;11155:56;11271:2;11260:9;11256:18;11243:32;11238:2;11231:5;11227:14;11220:56;11337:3;11326:9;11322:19;11309:33;11303:3;11296:5;11292:15;11285:58;11404:3;11393:9;11389:19;11376:33;11370:3;11363:5;11359:15;11352:58;10715:701;;;;:::o;11421:1090::-;11496:5;11544:6;11532:9;11527:3;11523:19;11519:32;11516:52;;;11564:1;11561;11554:12;11516:52;11597:2;11591:9;11639:4;11627:17;;-1:-1:-1;;;;;11659:34:136;;11695:22;;;11656:62;11653:88;;;11721:18;;:::i;:::-;11757:2;11750:22;11790:6;-1:-1:-1;11790:6:136;11820:42;11858:3;11847:9;11820:42;:::i;:::-;11812:6;11805:58;11898:49;11942:3;11931:9;11927:19;11898:49;:::i;:::-;11891:4;11883:6;11879:17;11872:76;12000:3;11989:9;11985:19;11972:33;12014:42;12048:7;12014:42;:::i;:::-;12084:2;12072:15;;12065:32;12132:61;12189:3;12183;12168:19;;12132:61;:::i;:::-;12125:4;12117:6;12113:17;12106:88;12228:61;12285:3;12278:4;12267:9;12263:20;12228:61;:::i;:::-;12222:3;12214:6;12210:16;12203:87;12342:3;12331:9;12327:19;12314:33;12356;12381:7;12356:33;:::i;:::-;12417:3;12405:16;;12398:33;12465:39;12499:3;12484:19;;12465:39;:::i;:::-;12459:3;12451:6;12447:16;12440:65;;11421:1090;;;;:::o;12516:644::-;12668:6;12676;12684;12737:3;12725:9;12716:7;12712:23;12708:33;12705:53;;;12754:1;12751;12744:12;12705:53;12793:9;12780:23;12812:31;12837:5;12812:31;:::i;:::-;12862:5;-1:-1:-1;12886:75:136;12953:7;12948:2;12933:18;;12886:75;:::i;:::-;12876:85;-1:-1:-1;13012:3:136;12997:19;;12984:33;-1:-1:-1;;;;;13029:30:136;;13026:50;;;13072:1;13069;13062:12;13026:50;13095:59;13146:7;13137:6;13126:9;13122:22;13095:59;:::i;:::-;13085:69;;;12516:644;;;;;:::o;13444:183::-;13504:4;-1:-1:-1;;;;;13526:30:136;;13523:56;;;13559:18;;:::i;:::-;-1:-1:-1;13604:1:136;13600:14;13616:4;13596:25;;13444:183::o;13632:737::-;13686:5;13739:3;13732:4;13724:6;13720:17;13716:27;13706:55;;13757:1;13754;13747:12;13706:55;13793:6;13780:20;13819:4;13843:60;13859:43;13899:2;13859:43;:::i;13843:60::-;13937:15;;;14023:1;14019:10;;;;14007:23;;14003:32;;;13968:12;;;;14047:15;;;14044:35;;;14075:1;14072;14065:12;14044:35;14111:2;14103:6;14099:15;14123:217;14139:6;14134:3;14131:15;14123:217;;;14219:3;14206:17;14236:31;14261:5;14236:31;:::i;:::-;14280:18;;14318:12;;;;14156;;14123:217;;;-1:-1:-1;14358:5:136;13632:737;-1:-1:-1;;;;;;13632:737:136:o;14374:974::-;14455:5;14503:6;14491:9;14486:3;14482:19;14478:32;14475:52;;;14523:1;14520;14513:12;14475:52;14545:22;;:::i;:::-;14536:31;;14590:42;14628:3;14617:9;14590:42;:::i;:::-;14583:5;14576:57;14667:49;14711:3;14700:9;14696:19;14667:49;:::i;:::-;14660:4;14653:5;14649:16;14642:75;14751:48;14794:3;14783:9;14779:19;14751:48;:::i;:::-;14744:4;14737:5;14733:16;14726:74;14834:61;14891:3;14885;14874:9;14870:19;14834:61;:::i;:::-;14827:4;14820:5;14816:16;14809:87;14929:60;14985:3;14979;14968:9;14964:19;14929:60;:::i;:::-;14923:3;14916:5;14912:15;14905:85;15023:39;15057:3;15046:9;15042:19;15023:39;:::i;:::-;15017:3;15010:5;15006:15;14999:64;15096:39;15130:3;15119:9;15115:19;15096:39;:::i;:::-;15090:3;15079:15;;15072:64;15187:3;15172:19;;15159:33;-1:-1:-1;;;;;15204:30:136;;15201:50;;;15247:1;15244;15237:12;15201:50;15284:57;15337:3;15328:6;15317:9;15313:22;15284:57;:::i;:::-;15278:3;15271:5;15267:15;15260:82;;14374:974;;;;:::o;15353:777::-;15505:6;15513;15521;15574:2;15562:9;15553:7;15549:23;15545:32;15542:52;;;15590:1;15587;15580:12;15542:52;15629:9;15616:23;15648:31;15673:5;15648:31;:::i;:::-;15698:5;-1:-1:-1;15754:2:136;15739:18;;15726:32;-1:-1:-1;;;;;15807:14:136;;;15804:34;;;15834:1;15831;15824:12;15804:34;15857:85;15934:7;15925:6;15914:9;15910:22;15857:85;:::i;:::-;15847:95;;15995:2;15984:9;15980:18;15967:32;15951:48;;16024:2;16014:8;16011:16;16008:36;;;16040:1;16037;16030:12;16008:36;;16063:61;16116:7;16105:8;16094:9;16090:24;16063:61;:::i;16808:919::-;16969:6;16977;16985;16993;17046:3;17034:9;17025:7;17021:23;17017:33;17014:53;;;17063:1;17060;17053:12;17014:53;17102:9;17089:23;17121:31;17146:5;17121:31;:::i;:::-;17171:5;-1:-1:-1;17228:2:136;17213:18;;17200:32;17241:33;17200:32;17241:33;:::i;:::-;17293:7;-1:-1:-1;17351:2:136;17336:18;;17323:32;-1:-1:-1;;;;;17404:14:136;;;17401:34;;;17431:1;17428;17421:12;17401:34;17454:85;17531:7;17522:6;17511:9;17507:22;17454:85;:::i;:::-;17444:95;;17592:2;17581:9;17577:18;17564:32;17548:48;;17621:2;17611:8;17608:16;17605:36;;;17637:1;17634;17627:12;17605:36;;17660:61;17713:7;17702:8;17691:9;17687:24;17660:61;:::i;:::-;17650:71;;;16808:919;;;;;;;:::o;18092:250::-;18177:1;18187:113;18201:6;18198:1;18195:13;18187:113;;;18277:11;;;18271:18;18258:11;;;18251:39;18223:2;18216:10;18187:113;;;-1:-1:-1;;18334:1:136;18316:16;;18309:27;18092:250::o;18347:271::-;18389:3;18427:5;18421:12;18454:6;18449:3;18442:19;18470:76;18539:6;18532:4;18527:3;18523:14;18516:4;18509:5;18505:16;18470:76;:::i;:::-;18600:2;18579:15;-1:-1:-1;;18575:29:136;18566:39;;;;18607:4;18562:50;;18347:271;-1:-1:-1;;18347:271:136:o;18623:220::-;18772:2;18761:9;18754:21;18735:4;18792:45;18833:2;18822:9;18818:18;18810:6;18792:45;:::i;19295:785::-;19456:6;19464;19472;19480;19533:3;19521:9;19512:7;19508:23;19504:33;19501:53;;;19550:1;19547;19540:12;19501:53;19589:9;19576:23;19608:31;19633:5;19608:31;:::i;:::-;19658:5;-1:-1:-1;19715:2:136;19700:18;;19687:32;19728:33;19687:32;19728:33;:::i;:::-;19780:7;-1:-1:-1;19806:75:136;19873:7;19868:2;19853:18;;19806:75;:::i;:::-;19796:85;-1:-1:-1;19932:3:136;19917:19;;19904:33;-1:-1:-1;;;;;19949:30:136;;19946:50;;;19992:1;19989;19982:12;19946:50;20015:59;20066:7;20057:6;20046:9;20042:22;20015:59;:::i;20085:127::-;20146:10;20141:3;20137:20;20134:1;20127:31;20177:4;20174:1;20167:15;20201:4;20198:1;20191:15;20217:168;20290:9;;;20321;;20338:15;;;20332:22;;20318:37;20308:71;;20359:18;;:::i;20390:127::-;20451:10;20446:3;20442:20;20439:1;20432:31;20482:4;20479:1;20472:15;20506:4;20503:1;20496:15;20522:277;20609:6;20662:2;20650:9;20641:7;20637:23;20633:32;20630:52;;;20678:1;20675;20668:12;20630:52;20710:9;20704:16;20729:40;20763:5;20729:40;:::i;20804:282::-;-1:-1:-1;;;;;21004:32:136;;;;20986:51;;21068:2;21053:18;;21046:34;20974:2;20959:18;;20804:282::o;21091:184::-;21161:6;21214:2;21202:9;21193:7;21189:23;21185:32;21182:52;;;21230:1;21227;21220:12;21182:52;-1:-1:-1;21253:16:136;;21091:184;-1:-1:-1;21091:184:136:o;21559:375::-;-1:-1:-1;;;;;21817:15:136;;;21799:34;;21869:15;;;;21864:2;21849:18;;21842:43;21916:2;21901:18;;21894:34;;;;21749:2;21734:18;;21559:375::o;21939:304::-;-1:-1:-1;;;;;22169:15:136;;;22151:34;;22221:15;;22216:2;22201:18;;22194:43;22101:2;22086:18;;21939:304::o;22248:217::-;22288:1;22314;22304:132;;22358:10;22353:3;22349:20;22346:1;22339:31;22393:4;22390:1;22383:15;22421:4;22418:1;22411:15;22304:132;-1:-1:-1;22450:9:136;;22248:217::o;22470:125::-;22535:9;;;22556:10;;;22553:36;;;22569:18;;:::i;22600:410::-;22802:2;22784:21;;;22841:2;22821:18;;;22814:30;22880:34;22875:2;22860:18;;22853:62;-1:-1:-1;;;22946:2:136;22931:18;;22924:44;23000:3;22985:19;;22600:410::o;23204:380::-;23283:1;23279:12;;;;23326;;;23347:61;;23401:4;23393:6;23389:17;23379:27;;23347:61;23454:2;23446:6;23443:14;23423:18;23420:38;23417:161;;23500:10;23495:3;23491:20;23488:1;23481:31;23535:4;23532:1;23525:15;23563:4;23560:1;23553:15;23417:161;;23204:380;;;:::o;23715:545::-;23817:2;23812:3;23809:11;23806:448;;;23853:1;23878:5;23874:2;23867:17;23923:4;23919:2;23909:19;23993:2;23981:10;23977:19;23974:1;23970:27;23964:4;23960:38;24029:4;24017:10;24014:20;24011:47;;;-1:-1:-1;24052:4:136;24011:47;24107:2;24102:3;24098:12;24095:1;24091:20;24085:4;24081:31;24071:41;;24162:82;24180:2;24173:5;24170:13;24162:82;;;24225:17;;;24206:1;24195:13;24162:82;;;24166:3;;;23715:545;;;:::o;24436:1352::-;24556:10;;-1:-1:-1;;;;;24578:30:136;;24575:56;;;24611:18;;:::i;:::-;24640:97;24730:6;24690:38;24722:4;24716:11;24690:38;:::i;:::-;24684:4;24640:97;:::i;:::-;24792:4;;24856:2;24845:14;;24873:1;24868:663;;;;25575:1;25592:6;25589:89;;;-1:-1:-1;25644:19:136;;;25638:26;25589:89;-1:-1:-1;;24393:1:136;24389:11;;;24385:24;24381:29;24371:40;24417:1;24413:11;;;24368:57;25691:81;;24838:944;;24868:663;23662:1;23655:14;;;23699:4;23686:18;;-1:-1:-1;;24904:20:136;;;25022:236;25036:7;25033:1;25030:14;25022:236;;;25125:19;;;25119:26;25104:42;;25217:27;;;;25185:1;25173:14;;;;25052:19;;25022:236;;;25026:3;25286:6;25277:7;25274:19;25271:201;;;25347:19;;;25341:26;-1:-1:-1;;25430:1:136;25426:14;;;25442:3;25422:24;25418:37;25414:42;25399:58;25384:74;;25271:201;-1:-1:-1;;;;;25518:1:136;25502:14;;;25498:22;25485:36;;-1:-1:-1;24436:1352:136:o;25793:251::-;25863:6;25916:2;25904:9;25895:7;25891:23;25887:32;25884:52;;;25932:1;25929;25922:12;25884:52;25964:9;25958:16;25983:31;26008:5;25983:31;:::i;26049:127::-;26110:10;26105:3;26101:20;26098:1;26091:31;26141:4;26138:1;26131:15;26165:4;26162:1;26155:15;26181:956;26276:6;26307:2;26350;26338:9;26329:7;26325:23;26321:32;26318:52;;;26366:1;26363;26356:12;26318:52;26393:16;;-1:-1:-1;;;;;26421:30:136;;26418:50;;;26464:1;26461;26454:12;26418:50;26487:22;;26540:4;26532:13;;26528:27;-1:-1:-1;26518:55:136;;26569:1;26566;26559:12;26518:55;26598:2;26592:9;26621:60;26637:43;26677:2;26637:43;:::i;26621:60::-;26715:15;;;26797:1;26793:10;;;;26785:19;;26781:28;;;26746:12;;;;26821:19;;;26818:39;;;26853:1;26850;26843:12;26818:39;26877:11;;;;26897:210;26913:6;26908:3;26905:15;26897:210;;;26986:3;26980:10;27003:31;27028:5;27003:31;:::i;:::-;27047:18;;26930:12;;;;27085;;;;26897:210;;27142:135;27181:3;27202:17;;;27199:43;;27222:18;;:::i;:::-;-1:-1:-1;27269:1:136;27258:13;;27142:135::o;27282:128::-;27349:9;;;27370:11;;;27367:37;;;27384:18;;:::i;27415:772::-;27465:3;27506:5;27500:12;27535:36;27561:9;27535:36;:::i;:::-;27580:19;;;27618:4;27641:1;27658:18;;;27685:146;;;;27845:1;27840:341;;;;27651:530;;27685:146;-1:-1:-1;;27727:24:136;;27713:12;;;27706:46;27799:14;;27792:22;27789:1;27785:30;27776:40;;27772:49;;;-1:-1:-1;27685:146:136;;27840:341;27871:5;27868:1;27861:16;27918:2;27915:1;27905:16;27943:1;27957:174;27971:6;27968:1;27965:13;27957:174;;;28058:14;;28040:11;;;28036:20;;28029:44;28101:16;;;;27986:10;;27957:174;;;28155:11;;28151:20;;;-1:-1:-1;;27651:530:136;;;;;;27415:772;;;;:::o;28192:252::-;28279:5;28273:12;28268:3;28261:25;28243:3;28332:4;28325:5;28321:16;28315:23;28370:4;28363;28358:3;28354:14;28347:28;28391:47;28432:4;28427:3;28423:14;28409:12;28391:47;:::i;28449:461::-;28502:3;28540:5;28534:12;28567:6;28562:3;28555:19;28593:4;28622:2;28617:3;28613:12;28606:19;;28659:2;28652:5;28648:14;28680:1;28690:195;28704:6;28701:1;28698:13;28690:195;;;28769:13;;-1:-1:-1;;;;;28765:39:136;28753:52;;28825:12;;;;28860:15;;;;28801:1;28719:9;28690:195;;;-1:-1:-1;28901:3:136;;28449:461;-1:-1:-1;;;;;28449:461:136:o;28915:804::-;29275:6;29264:9;29257:25;29318:3;29313:2;29302:9;29298:18;29291:31;29238:4;29345:54;29394:3;29383:9;29379:19;29371:6;29345:54;:::i;:::-;29447:9;29439:6;29435:22;29430:2;29419:9;29415:18;29408:50;29481:42;29516:6;29508;29481:42;:::i;:::-;-1:-1:-1;;;;;29559:32:136;;29554:2;29539:18;;29532:60;29629:22;;;29623:3;29608:19;;29601:51;29467:56;-1:-1:-1;29669:44:136;29467:56;29698:6;29669:44;:::i;:::-;29661:52;28915:804;-1:-1:-1;;;;;;;;28915:804:136:o;29913:500::-;30167:6;30156:9;30149:25;30210:2;30205;30194:9;30190:18;30183:30;30130:4;30236:53;30285:2;30274:9;30270:18;30262:6;30236:53;:::i;:::-;30337:9;30329:6;30325:22;30320:2;30309:9;30305:18;30298:50;30365:42;30400:6;30392;30365:42;:::i;31033:408::-;31235:2;31217:21;;;31274:2;31254:18;;;31247:30;-1:-1:-1;;;;;;;;;;;31308:2:136;31293:18;;31286:62;-1:-1:-1;;;31379:2:136;31364:18;;31357:42;31431:3;31416:19;;31033:408::o;31446:::-;31648:2;31630:21;;;31687:2;31667:18;;;31660:30;-1:-1:-1;;;;;;;;;;;31721:2:136;31706:18;;31699:62;-1:-1:-1;;;31792:2:136;31777:18;;31770:42;31844:3;31829:19;;31446:408::o;32176:384::-;-1:-1:-1;;;;;32434:15:136;;;32416:34;;32486:15;;;32481:2;32466:18;;32459:43;32538:15;;;32533:2;32518:18;;32511:43;32366:2;32351:18;;32176:384::o;32565:315::-;-1:-1:-1;;;;;32740:32:136;;32722:51;;32809:2;32804;32789:18;;32782:30;;;-1:-1:-1;;32829:45:136;;32855:18;;32847:6;32829:45;:::i;33726:324::-;-1:-1:-1;;;33956:24:136;;34005:1;33996:11;;33989:27;;;;34041:2;34032:12;;33726:324::o;34055:331::-;-1:-1:-1;;;34285:30:136;;34340:2;34331:12;;34324:28;;;;34377:2;34368:12;;34055:331::o;34644:127::-;34705:10;34700:3;34696:20;34693:1;34686:31;34736:4;34733:1;34726:15;34760:4;34757:1;34750:15;34776:1653;34868:6;34899:2;34942;34930:9;34921:7;34917:23;34913:32;34910:52;;;34958:1;34955;34948:12;34910:52;34985:16;;-1:-1:-1;;;;;35050:14:136;;;35047:34;;;35077:1;35074;35067:12;35047:34;35100:22;;;;35156:4;35138:16;;;35134:27;35131:47;;;35174:1;35171;35164:12;35131:47;35200:22;;:::i;:::-;35251:2;35245:9;35238:5;35231:24;35293:2;35289;35285:11;35279:18;35306:33;35331:7;35306:33;:::i;:::-;35355:14;;;35348:31;35417:2;35409:11;;35403:18;35430:33;35403:18;35430:33;:::i;:::-;35490:2;35479:14;;35472:31;35542:2;35534:11;;35528:18;35558:16;;;35555:36;;;35587:1;35584;35577:12;35555:36;35610:17;;35661:2;35643:16;;;35639:25;35636:45;;;35677:1;35674;35667:12;35636:45;35705:22;;:::i;:::-;35758:2;35752:9;35743:7;35736:26;35801:2;35797;35793:11;35787:18;35830:2;35820:8;35817:16;35814:36;;;35846:1;35843;35836:12;35814:36;35869:17;;;-1:-1:-1;35917:4:136;35909:13;;35905:27;-1:-1:-1;35895:55:136;;35946:1;35943;35936:12;35895:55;35975:2;35969:9;35959:19;;36000:49;36016:32;36045:2;36016:32;:::i;36000:49::-;36072:2;36065:5;36058:17;36112:7;36107:2;36102;36098;36094:11;36090:20;36087:33;36084:53;;;36133:1;36130;36123:12;36084:53;36146:67;36210:2;36205;36198:5;36194:14;36189:2;36185;36181:11;36146:67;:::i;:::-;36229:16;;;36222:31;;;;-1:-1:-1;36280:2:136;36269:14;;36262:31;;;;-1:-1:-1;36340:3:136;36332:12;;;36326:19;36309:15;;;36302:44;36393:3;36385:12;;;36379:19;36362:15;;;36355:44;36273:5;34776:1653;-1:-1:-1;;;34776:1653:136:o;36434:261::-;36514:5;36508:12;36503:3;36496:25;36570:4;36563:5;36559:16;36553:23;36546:4;36541:3;36537:14;36530:47;36626:4;36619:5;36615:16;36609:23;36602:4;36597:3;36593:14;36586:47;36682:4;36675:5;36671:16;36665:23;36658:4;36653:3;36649:14;36642:47;;;36434:261::o;36700:143::-;36784:1;36777:5;36774:12;36764:46;;36790:18;;:::i;:::-;36819;;36700:143::o;36848:142::-;36931:1;36924:5;36921:12;36911:46;;36937:18;;:::i;36995:437::-;37119:12;;-1:-1:-1;;;;;37115:21:136;;;37103:34;;37190:4;37179:16;;;37173:23;37169:32;;;37153:14;;;37146:56;37251:4;37240:16;;;37234:23;37218:14;;;37211:47;37307:4;37296:16;;;37290:23;37274:14;;;37267:47;37363:4;37352:16;;;37346:23;37330:14;;;37323:47;37083:3;37408:16;;;37402:23;37386:14;;37379:47;36995:437::o;37437:1197::-;37664:2;37653:9;37646:21;37676:61;37733:2;37722:9;37718:18;37709:6;37703:13;37676:61;:::i;:::-;37627:4;37784:2;37776:6;37772:15;37766:22;37797:63;37855:3;37844:9;37840:19;37826:12;37797:63;:::i;:::-;;37909:4;37901:6;37897:17;37891:24;37924:64;37983:3;37972:9;37968:19;37952:14;37924:64;:::i;:::-;;38049:4;38041:6;38037:17;38031:24;38025:31;38019:3;38008:9;38004:19;37997:60;38106:4;38098:6;38094:17;38088:24;38121:71;38187:3;38176:9;38172:19;38156:14;38121:71;:::i;:::-;;38241:3;38233:6;38229:16;38223:23;38255:55;38305:3;38294:9;38290:19;38274:14;38255:55;:::i;:::-;;38359:3;38351:6;38347:16;38341:23;38373:55;38423:3;38412:9;38408:19;38392:14;38373:55;:::i;:::-;-1:-1:-1;38477:3:136;38465:16;;38459:23;38501:6;38523:18;;;38516:30;38563:65;38623:3;38608:19;;38459:23;38563:65;:::i;38639:979::-;39064:6;39053:9;39046:25;39027:4;39107:1;39103;39098:3;39094:11;39090:19;39157:2;39149:6;39145:15;39140:2;39129:9;39125:18;39118:43;39197:3;39192:2;39181:9;39177:18;39170:31;39224:46;39265:3;39254:9;39250:19;39242:6;39224:46;:::i;:::-;39318:2;39310:6;39306:15;39301:2;39290:9;39286:18;39279:43;39359:6;39353:3;39342:9;39338:19;39331:35;39415:9;39407:6;39403:22;39397:3;39386:9;39382:19;39375:51;39449:42;39484:6;39476;39449:42;:::i;:::-;39435:56;;;39540:9;39532:6;39528:22;39522:3;39511:9;39507:19;39500:51;39568:44;39605:6;39597;39568:44;:::i;:::-;39560:52;38639:979;-1:-1:-1;;;;;;;;;;38639:979:136:o;39623:613::-;39898:25;;;-1:-1:-1;;;;;39997:15:136;;;39992:2;39977:18;;39970:43;40049:15;;;40044:2;40029:18;;40022:43;40101:15;;40096:2;40081:18;;40074:43;39950:3;40148;40133:19;;40126:32;;;39879:4;;40175:55;;40210:19;;40202:6;40175:55;:::i;40241:407::-;40443:2;40425:21;;;40482:2;40462:18;;;40455:30;40521:34;40516:2;40501:18;;40494:62;-1:-1:-1;;;40587:2:136;40572:18;;40565:41;40638:3;40623:19;;40241:407::o;40653:995::-;40843:4;40885:3;40874:9;40870:19;40862:27;;40898:52;40940:9;40931:6;40925:13;40898:52;:::i;:::-;40997:4;40989:6;40985:17;40979:24;41012:64;41070:4;41059:9;41055:20;41041:12;41012:64;:::i;:::-;;41125:4;41117:6;41113:17;41107:24;41140:65;41199:4;41188:9;41184:20;41168:14;41140:65;:::i;:::-;;41267:4;41259:6;41255:17;41249:24;41243:31;41236:4;41225:9;41221:20;41214:61;41324:4;41316:6;41312:17;41306:24;41339:72;41405:4;41394:9;41390:20;41374:14;41339:72;:::i;:::-;-1:-1:-1;41460:4:136;41448:17;;41442:24;-1:-1:-1;;;;;41544:23:136;;;41535:6;41520:22;;41513:55;41630:4;41618:17;;;41612:24;41608:33;;;41599:6;41584:22;;;41577:65;40653:995;:::o;43822:812::-;-1:-1:-1;;;44228:3:136;44221:38;44203:3;44288:6;44282:13;44304:75;44372:6;44367:2;44362:3;44358:12;44351:4;44343:6;44339:17;44304:75;:::i;:::-;-1:-1:-1;;;44438:2:136;44398:16;;;44430:11;;;44423:40;44488:13;;44510:76;44488:13;44572:2;44564:11;;44557:4;44545:17;;44510:76;:::i;:::-;44606:17;44625:2;44602:26;;43822:812;-1:-1:-1;;;;43822:812:136:o;44639:245::-;44706:6;44759:2;44747:9;44738:7;44734:23;44730:32;44727:52;;;44775:1;44772;44765:12;44727:52;44807:9;44801:16;44826:28;44848:5;44826:28;:::i;45921:136::-;45960:3;45988:5;45978:39;;45997:18;;:::i;:::-;-1:-1:-1;;;46033:18:136;;45921:136::o;46830:287::-;46959:3;46997:6;46991:13;47013:66;47072:6;47067:3;47060:4;47052:6;47048:17;47013:66;:::i;:::-;47095:16;;;;;46830:287;-1:-1:-1;;46830:287:136:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7917,"length":32},{"start":7984,"length":32},{"start":8235,"length":32},{"start":8302,"length":32},{"start":8640,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"579eb7e5","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"8659ffdd","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","initializeV2(address,address,address)":"2c3bb44a","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol\":\"RegistryCommunityFacet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol\":{\"keccak256\":\"0xdc719818c047c2661360f46596c4adc254b4e495b2b50cce5afeb321b9afc6ab\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://58bb478271901109763674e94bd24d5e64a812d6f0341fdfd5f95835a9669111\",\"dweb:/ipfs/QmaGXR2rY2xpYc4yyrbH5sd3125UVCrTrh3FJqKiQowads\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0x01675a91456b875c07bc26e3715dd8be8471e405db41ff77b89109922a8d187f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://69a8844c1a0993d94b0d2f468323e93f04e2bba8a1f7012318b96e5b2a892344\",\"dweb:/ipfs/QmYMr41yUDJDFH19qieAqzPyFDApUyQu5wtajnHMfmKGzB\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"_interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol":"RegistryCommunityFacet"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol":{"keccak256":"0xdc719818c047c2661360f46596c4adc254b4e495b2b50cce5afeb321b9afc6ab","urls":["bzz-raw://58bb478271901109763674e94bd24d5e64a812d6f0341fdfd5f95835a9669111","dweb:/ipfs/QmaGXR2rY2xpYc4yyrbH5sd3125UVCrTrh3FJqKiQowads"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0x01675a91456b875c07bc26e3715dd8be8471e405db41ff77b89109922a8d187f","urls":["bzz-raw://69a8844c1a0993d94b0d2f468323e93f04e2bba8a1f7012318b96e5b2a892344","dweb:/ipfs/QmYMr41yUDJDFH19qieAqzPyFDApUyQu5wtajnHMfmKGzB"],"license":"MIT"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75878"},{"astId":70502,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)75611"},{"astId":70505,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"},{"astId":74298,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"__gap","offset":0,"slot":"322","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)75611":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75878":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol:RegistryCommunityFacet","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/facets/RegistryCommunityFacet.sol","id":74300,"exportedSymbols":{"Clone":[3002],"ERC1967Proxy":[55021],"LibDiamond":[75442],"ProxyOwnableUpgrader":[70199],"RegistryCommunityFacet":[74299],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:1528:115","nodes":[{"id":74211,"nodeType":"PragmaDirective","src":"42:24:115","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74213,"nodeType":"ImportDirective","src":"68:66:115","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"@src/diamonds/libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":74300,"sourceUnit":75443,"symbolAliases":[{"foreign":{"id":74212,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75442,"src":"76:10:115","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74215,"nodeType":"ImportDirective","src":"136:88:115","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":74300,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":74214,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"144:21:115","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74217,"nodeType":"ImportDirective","src":"225:67:115","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74300,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":74216,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"233:20:115","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74219,"nodeType":"ImportDirective","src":"293:84:115","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74300,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":74218,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"301:12:115","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74221,"nodeType":"ImportDirective","src":"378:65:115","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":74300,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":74220,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"386:5:115","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74299,"nodeType":"ContractDefinition","src":"446:1123:115","nodes":[{"id":74262,"nodeType":"FunctionDefinition","src":"655:506:115","nodes":[],"body":{"id":74261,"nodeType":"Block","src":"818:343:115","nodes":[],"statements":[{"expression":{"arguments":[{"id":74238,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74225,"src":"847:6:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74237,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"828:18:115","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"828:26:115","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74240,"nodeType":"ExpressionStatement","src":"828:26:115"},{"expression":{"arguments":[{"id":74242,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74227,"src":"883:17:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74241,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"864:18:115","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74243,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"864:37:115","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74244,"nodeType":"ExpressionStatement","src":"864:37:115"},{"expression":{"arguments":[{"id":74246,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74229,"src":"930:24:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74245,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"911:18:115","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"911:44:115","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74248,"nodeType":"ExpressionStatement","src":"911:44:115"},{"expression":{"arguments":[{"id":74250,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74225,"src":"992:6:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74249,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"974:17:115","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74251,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"974:25:115","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74252,"nodeType":"ExpressionStatement","src":"974:25:115"},{"expression":{"id":74255,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74253,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"1018:16:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74254,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74227,"src":"1037:17:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1018:36:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74256,"nodeType":"ExpressionStatement","src":"1018:36:115"},{"expression":{"id":74259,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74257,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"1064:23:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74258,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74229,"src":"1090:24:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1064:50:115","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74260,"nodeType":"ExpressionStatement","src":"1064:50:115"}]},"functionSelector":"2c3bb44a","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":74232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"805:1:115","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":74233,"kind":"modifierInvocation","modifierName":{"id":74231,"name":"reinitializer","nameLocations":["791:13:115"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"791:13:115"},"nodeType":"ModifierInvocation","src":"791:16:115"},{"id":74235,"kind":"modifierInvocation","modifierName":{"id":74234,"name":"onlyOwner","nameLocations":["808:9:115"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"808:9:115"},"nodeType":"ModifierInvocation","src":"808:9:115"}],"name":"initializeV2","nameLocation":"664:12:115","parameters":{"id":74230,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74225,"mutability":"mutable","name":"_owner","nameLocation":"694:6:115","nodeType":"VariableDeclaration","scope":74262,"src":"686:14:115","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74224,"name":"address","nodeType":"ElementaryTypeName","src":"686:7:115","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74227,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"718:17:115","nodeType":"VariableDeclaration","scope":74262,"src":"710:25:115","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74226,"name":"address","nodeType":"ElementaryTypeName","src":"710:7:115","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74229,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"753:24:115","nodeType":"VariableDeclaration","scope":74262,"src":"745:32:115","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74228,"name":"address","nodeType":"ElementaryTypeName","src":"745:7:115","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"676:107:115"},"returnParameters":{"id":74236,"nodeType":"ParameterList","parameters":[],"src":"818:0:115"},"scope":74299,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74271,"nodeType":"FunctionDefinition","src":"1171:93:115","nodes":[],"body":{"id":74270,"nodeType":"Block","src":"1235:29:115","nodes":[],"statements":[{"expression":{"hexValue":"302e31","id":74268,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1252:5:115","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cd160c72d102a6747abd189ac21d4a1f802e3fcc1bb8fc78cc4d558df0c7c21","typeString":"literal_string \"0.1\""},"value":"0.1"},"functionReturnParameters":74267,"id":74269,"nodeType":"Return","src":"1245:12:115"}]},"baseFunctions":[70440],"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"1180:7:115","overrides":{"id":74264,"nodeType":"OverrideSpecifier","overrides":[],"src":"1202:8:115"},"parameters":{"id":74263,"nodeType":"ParameterList","parameters":[],"src":"1187:2:115"},"returnParameters":{"id":74267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74266,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74271,"src":"1220:13:115","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":74265,"name":"string","nodeType":"ElementaryTypeName","src":"1220:6:115","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1219:15:115"},"scope":74299,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":74294,"nodeType":"FunctionDefinition","src":"1302:228:115","nodes":[],"body":{"id":74293,"nodeType":"Block","src":"1394:136:115","nodes":[],"statements":[{"assignments":[74283],"declarations":[{"constant":false,"id":74283,"mutability":"mutable","name":"ds","nameLocation":"1438:2:115","nodeType":"VariableDeclaration","scope":74293,"src":"1404:36:115","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74761_storage_ptr","typeString":"struct LibDiamond.DiamondStorage"},"typeName":{"id":74282,"nodeType":"UserDefinedTypeName","pathNode":{"id":74281,"name":"LibDiamond.DiamondStorage","nameLocations":["1404:10:115","1415:14:115"],"nodeType":"IdentifierPath","referencedDeclaration":74761,"src":"1404:25:115"},"referencedDeclaration":74761,"src":"1404:25:115","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74761_storage_ptr","typeString":"struct LibDiamond.DiamondStorage"}},"visibility":"internal"}],"id":74287,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":74284,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75442,"src":"1443:10:115","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_LibDiamond_$75442_$","typeString":"type(library LibDiamond)"}},"id":74285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1454:14:115","memberName":"diamondStorage","nodeType":"MemberAccess","referencedDeclaration":74780,"src":"1443:25:115","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_DiamondStorage_$74761_storage_ptr_$","typeString":"function () pure returns (struct LibDiamond.DiamondStorage storage pointer)"}},"id":74286,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1443:27:115","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74761_storage_ptr","typeString":"struct LibDiamond.DiamondStorage storage pointer"}},"nodeType":"VariableDeclarationStatement","src":"1404:66:115"},{"expression":{"baseExpression":{"expression":{"id":74288,"name":"ds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74283,"src":"1487:2:115","typeDescriptions":{"typeIdentifier":"t_struct$_DiamondStorage_$74761_storage_ptr","typeString":"struct LibDiamond.DiamondStorage storage pointer"}},"id":74289,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1490:19:115","memberName":"supportedInterfaces","nodeType":"MemberAccess","referencedDeclaration":74751,"src":"1487:22:115","typeDescriptions":{"typeIdentifier":"t_mapping$_t_bytes4_$_t_bool_$","typeString":"mapping(bytes4 => bool)"}},"id":74291,"indexExpression":{"id":74290,"name":"_interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74273,"src":"1510:12:115","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1487:36:115","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":74278,"id":74292,"nodeType":"Return","src":"1480:43:115"}]},"baseFunctions":[52437],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"1311:17:115","overrides":{"id":74275,"nodeType":"OverrideSpecifier","overrides":[],"src":"1362:8:115"},"parameters":{"id":74274,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74273,"mutability":"mutable","name":"_interfaceId","nameLocation":"1336:12:115","nodeType":"VariableDeclaration","scope":74294,"src":"1329:19:115","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":74272,"name":"bytes4","nodeType":"ElementaryTypeName","src":"1329:6:115","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"1328:21:115"},"returnParameters":{"id":74278,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74277,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74294,"src":"1388:4:115","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74276,"name":"bool","nodeType":"ElementaryTypeName","src":"1388:4:115","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1387:6:115"},"scope":74299,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":74298,"nodeType":"VariableDeclaration","src":"1541:25:115","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"1561:5:115","scope":74299,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74295,"name":"uint256","nodeType":"ElementaryTypeName","src":"1541:7:115","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74297,"length":{"hexValue":"3530","id":74296,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1549:2:115","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1541:11:115","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74222,"name":"RegistryCommunityV0_1","nameLocations":["481:21:115"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"481:21:115"},"id":74223,"nodeType":"InheritanceSpecifier","src":"481:21:115"}],"canonicalName":"RegistryCommunityFacet","contractDependencies":[55021],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74299,72403,72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityFacet","nameLocation":"455:22:115","scope":74300,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":115} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json b/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json index e9a1093c..73c133b4 100644 --- a/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json +++ b/pkg/contracts/out/RegistryCommunityV0_0.sol/RegistryCommunityV0_0.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161597a6200004d60003960008181611dde01528181611e2101528181611f1c01528181611f5f01526120c3015261597a6000f3fe6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bc565b62000cf4565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041e8565b62000d2c565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422a565b62000da2565b348015620003fd57600080fd5b50620003c96200040f36600462004268565b62001125565b3480156200042257600080fd5b50620003c96200043436600462004268565b6200113d565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c96200047436600462004268565b6200116a565b3480156200048757600080fd5b50620003c9620004993660046200422a565b6200117f565b348015620004ac57600080fd5b506200037d620004be366004620041e8565b62001279565b348015620004d157600080fd5b506200037d6200128e565b348015620004e957600080fd5b5062000501620004fb36600462004288565b62001393565b604051620003629190620042c4565b3480156200051d57600080fd5b506200037d6200052f36600462004268565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042d8565b620013cd565b3480156200058057600080fd5b50620003c962000592366004620041e8565b620013f4565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450c565b62001434565b348015620005e257600080fd5b50620003c962001af4565b348015620005fa57600080fd5b50620003c96200060c366004620042d8565b62001d56565b3480156200061f57600080fd5b50620003c96200063136600462004268565b62001dd4565b3480156200064457600080fd5b50620003c96200065636600462004268565b62001ea5565b3480156200066957600080fd5b50620003566200067b36600462004268565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422a565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e23660046200469f565b62001f12565b348015620006f557600080fd5b506200070d62000707366004620048c9565b62001fd3565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b6565b3480156200075057600080fd5b50620003c962000762366004620041e8565b62002167565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041e8565b620023b3565b348015620007bd57600080fd5b506200037d620007cf3660046200422a565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422a565b6200274d565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a0565b3480156200087d57600080fd5b50620003c96200088f366004620041e8565b620028b6565b348015620008a257600080fd5b506200037d600080516020620058be83398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422a565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041e8565b62002952565b3480156200099557600080fd5b50620009d6620009a736600462004268565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a10565b34801562000a3b57600080fd5b506200035662000a4d366004620042d8565b62002aab565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab336600462004268565b62002ad6565b34801562000ac657600080fd5b50620003c962000ad836600462004268565b62002b20565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b4d565b34801562000b2a57600080fd5b5062000b3562002b84565b60405162000362919062004987565b34801562000b5157600080fd5b50620003c962002c1b565b34801562000b6957600080fd5b506200037d62002d25565b34801562000b8157600080fd5b50620003c962000b9336600462004268565b62002d37565b34801562000ba657600080fd5b5062000b3562002d6c565b34801562000bbe57600080fd5b50620003c962000bd0366004620042d8565b62002d7c565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499c565b62002d9e565b34801562000c6657600080fd5b506200035662000c7836600462004268565b62002f2b565b34801562000c8b57600080fd5b50620003c962000c9d36600462004268565b62002f48565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b35565b60006001600160e01b03198216637965db0b60e01b148062000d2657506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3662002fb9565b62000d45612710600a62004a31565b81111562000d665760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000dac62002ff6565b62000db78262003051565b62000dc2816200307a565b62000dcd81620030b5565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1657604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000eca919062004a61565b600381111562000ede5762000ede62004a4b565b0362000f635760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1590889060009060040162004a81565b6020604051808303816000875af115801562000f35573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5b919062004a9a565b90506200105f565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcc919062004a61565b600381111562000fe05762000fe062004a4b565b146200105f5760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001016908890869060040162004a81565b6020604051808303816000875af115801562001036573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105c919062004a9a565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110b9087908790859062004ab4565b60405180910390a1505050620011216001606555565b5050565b6200112f62002fb9565b6200113a81620030e4565b50565b6200114762003142565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117462002fb9565b6200113a81620031a5565b6200118a8262003051565b6200119581620030b5565b620011a1338262003237565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011e957604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123b82826200326a565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200126d92919062004ad8565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012ae612710606462004a31565b60fc5460fb54620012c0919062004a31565b620012cc919062004af2565b90506000620012df612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200130d903090600401620042c4565b602060405180830381865afa1580156200132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001351919062004a9a565b60fb5462001360919062004a31565b6200136c919062004af2565b9050808260fb546200137f919062004b15565b6200138b919062004b15565b935050505090565b61010d6020528160005260406000208181548110620013b157600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013d88262001279565b620013e381620033a0565b620013ef8383620033ac565b505050565b620013fe62002fb9565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d97565b600054610100900460ff1615808015620014555750600054600160ff909116105b806200147a5750620014673062003436565b1580156200147a575060005460ff166001145b620014e35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001507576000805461ff0019166101001790555b620015128262002d37565b6200151c62003445565b6200152662003479565b62001542600080516020620058be8339815191526000620034a3565b620015518560200151620030b5565b62001561856101000151620030b5565b84516200156e90620030b5565b6200157d8560a00151620030b5565b6060850151156200159757620015978560c00151620030b5565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f2576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200162f908262004bb9565b506101608501516101099062001646908262004bb9565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016bb90600080516020620058be83398151915290620033ac565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001710573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001736919062004c85565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c25760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179c576200179c62004ca5565b60200260200101906001600160a01b031690816001600160a01b031681525050620018ff565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200180d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001837919081019062004cbb565b90508051600262001849919062004b15565b6001600160401b0381111562001863576200186362004300565b6040519080825280602002602001820160405280156200188d578160200160208202803683370190505b50915060005b8151811015620018fc57818181518110620018b257620018b262004ca5565b6020026020010151838281518110620018cf57620018cf62004ca5565b6001600160a01b039092166020928302919091019091015280620018f38162004d79565b91505062001893565b50505b6101065481516001600160a01b03909116908290620019219060019062004d95565b8151811062001934576200193462004ca5565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001966919062004d95565b8151811062001979576200197962004ca5565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cc9291610108913090889060040162004e97565b6020604051808303816000875af1158015620019ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a12919062004a9a565b60fe55805162001a2b9061010f90602084019062004116565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001a9d929091610108919062004eeb565b60405180910390a150801562001aed576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001afe62002ff6565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b2f612710606462004a31565b60fc5460fb5462001b41919062004a31565b62001b4d919062004af2565b9050600062001b60612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b8e903090600401620042c4565b602060405180830381865afa15801562001bac573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd2919062004a9a565b60fb5462001be1919062004a31565b62001bed919062004af2565b905062001bfa8562002ad6565b62001d445760028401805460ff1916600190811790915560fb5490850181905562001c549086903090849062001c3290879062004b15565b62001c3e919062004b15565b610105546001600160a01b0316929190620034f8565b811562001c815760ff546101055462001c81916001600160a01b0391821691610100909104168462003554565b801562001d065762001d06836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001ccb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf1919062004c85565b610105546001600160a01b0316908362003554565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3b92919062004a81565b60405180910390a15b505050505062001d546001606555565b565b6001600160a01b038116331462001dc85760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014da565b62001121828262003576565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e1f5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e53620035e0565b6001600160a01b03161462001e7c5760405162461bcd60e51b8152600401620014da9062004f55565b62001e8781620035fd565b604080516000808252602082019092526200113a918391906200363f565b62001eaf62002fb9565b62001eba81620030b5565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d97939216919062004ad8565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f5d5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f91620035e0565b6001600160a01b03161462001fba5760405162461bcd60e51b8152600401620014da9062004f55565b62001fc582620035fd565b62001121828260016200363f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200962002a10565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200206e906200417c565b6200207b92919062004f90565b604051809103906000f08015801562002098573d6000803e3d6000fd5b509050620020a98187878762002d9e565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021535760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014da565b50600080516020620058fe83398151915290565b6200217162002ff6565b6200217b620037b7565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021df57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c0575b50505050509050600080600090505b82518110156200231a578281815181106200220d576200220d62004ca5565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224492919062004a81565b6020604051808303816000875af115801562002264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228a919062004a9a565b9150811562002305576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c657620022c662004ca5565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620022ff919062004b15565b90915550505b80620023118162004d79565b915050620021ee565b506101055462002336906001600160a01b0316843087620034f8565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236490849062004b15565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200239d908590879062004a81565b60405180910390a15050506200113a6001606555565b620023bd62002ff6565b620023c7620037b7565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fb90869062004d95565b10156200241b57604051634e23e81760e11b815260040160405180910390fd5b6101055462002435906001600160a01b0316848662003554565b60005b8254811015620026e557600083828154811062002459576200245962004ca5565b6000918252602090912001546001600160a01b03169050620024838163f1801e6160e01b620037e0565b156200260957604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024b99088908a9060040162004a81565b6020604051808303816000875af1158015620024d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024ff919062004a9a565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002540576200254062004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002594576040516311423e6360e31b81526004810185905260248101829052604401620014da565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025c757620025c762004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620025fd90849062004d95565b909155505050620026cf565b835484906200261b9060019062004d95565b815481106200262e576200262e62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002661576200266162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a257620026a262004fb6565b600082815260209020810160001990810180546001600160a01b0319169055019055620026cf81620030e4565b5080620026dc8162004d79565b91505062002438565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271490849062004d95565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200239d908590879062004a81565b6200275762002ff6565b6200276162002fb9565b60ff80541662002784576040516365b1ee3960e11b815260040160405180910390fd5b6200278f8262002ad6565b620027ad57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff16151590820152620027fe8362003808565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002853921690849062003554565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288c9392919062004ab4565b60405180910390a150620011216001606555565b620028aa62003142565b62001d5460006200391d565b620028c062002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002936919081019062004fcc565b6020015190506200294781620030b5565b6200112181620030e4565b6200295c62002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d2919081019062004fcc565b602001519050620029e381620030b5565b620029ff6001600160a01b03821663f1801e6160e01b620037e0565b1562001121576200112181620031a5565b60008062002a266033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002a9d575060408051601f3d908101601f1916820190925262002a9a9181019062004c85565b60015b62000d2657919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2a62003142565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7a576040516375e686b760e11b815260040160405180910390fd5b62001d546200396f565b610109805462002b949062004b2b565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc29062004b2b565b801562002c135780601f1062002be75761010080835404028352916020019162002c13565b820191906000526020600020905b81548152906001019060200180831162002bf557829003601f168201915b505050505081565b62002c2562002ff6565b3362002c318162003051565b62002c3c8162003808565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cb791906200418a565b60208101516101055462002cd9916001600160a01b0390911690849062003554565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1092919062004a81565b60405180910390a1505062001d546001606555565b62002d34612710600a62004a31565b81565b600054610100900460ff1662002d615760405162461bcd60e51b8152600401620014da9062005102565b6200113a816200391d565b610108805462002b949062004b2b565b62002d878262001279565b62002d9281620033a0565b620013ef838362003576565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dc95750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e08575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e5f908b9060200162005177565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e97979695949392919062005259565b6020604051808303816000875af115801562002eb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002edd919062004a9a565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f18959493929190620052ca565b60405180910390a1505094509492505050565b600062000d26600080516020620058be8339815191528362002aab565b62002f5262003142565b6001600160a01b03811662002d615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014da565b62002fd4600080516020620058be8339815191523362002aab565b62001d54573360405163fc4be72f60e01b8152600401620014da9190620042c4565b6002606554036200304a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014da565b6002606555565b6200305c8162002ad6565b6200113a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113a576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113a576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030ef81620030b5565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d97908390620042c4565b336200314d62002a10565b6001600160a01b03161462001d545760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014da565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e1576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d97908390620042c4565b806001600160a01b0316826001600160a01b031614620011215760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339a57826001600160a01b0316828281548110620032ae57620032ae62004ca5565b6000918252602090912001546001600160a01b031603620033855781548290620032db9060019062004d95565b81548110620032ee57620032ee62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003321576200332162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003362576200336262004fb6565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033918162004d79565b91505062003285565b50505050565b6200113a8133620039d3565b620033b8828262002aab565b6200112157600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f23390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff166200346f5760405162461bcd60e51b8152600401620014da9062005102565b62001d5462003a37565b600054610100900460ff1662001d545760405162461bcd60e51b8152600401620014da9062005102565b6000620034b08362001279565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339a846323b872dd60e01b8585856040516024016200351c9392919062004ab4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a61565b620013ef8363a9059cbb60e01b84846040516024016200351c92919062004a81565b62003582828262002aab565b156200112157600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020620058fe833981519152546001600160a01b031690565b336200360862002a10565b6001600160a01b0316146200113a57336200362262002a10565b60405163163678e960e01b8152600401620014da92919062004ad8565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367557620013ef8362003b3d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d2575060408051601f3d908101601f19168201909252620036cf9181019062004a9a565b60015b620037375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014da565b600080516020620058fe8339815191528114620037a95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014da565b50620013ef83838362003bdc565b620037c23362002ad6565b62001d5457604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037ed8362003c07565b801562003801575062003801838362003c3f565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387557602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003856575b5050505050905060005b8151811015620013ef578181815181106200389e576200389e62004ca5565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d39190620042c4565b600060405180830381600087803b158015620038ee57600080fd5b505af115801562003903573d6000803e3d6000fd5b505050508080620039149062004d79565b9150506200387f565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039c990600090620042c4565b60405180910390a1565b620039df828262002aab565b6200112157620039ef8162003cca565b620039fc83602062003cdd565b60405160200162003a0f92919062005306565b60408051601f198184030181529082905262461bcd60e51b8252620014da9160040162004987565b600054610100900460ff16620030dd5760405162461bcd60e51b8152600401620014da9062005102565b600062003ab8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e969092919063ffffffff16565b905080516000148062003adc57508080602001905181019062003adc919062005379565b620013ef5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014da565b62003b488162003436565b62003bac5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014da565b600080516020620058fe83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003be78362003eaf565b60008251118062003bf55750805b15620013ef576200339a838362003ef1565b600062003c1c826301ffc9a760e01b62003c3f565b801562000d26575062003c38826001600160e01b031962003c3f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb2575060208210155b801562003cbf5750600081115b979650505050505050565b606062000d266001600160a01b03831660145b6060600062003cee83600262004a31565b62003cfb90600262004b15565b6001600160401b0381111562003d155762003d1562004300565b6040519080825280601f01601f19166020018201604052801562003d40576020820181803683370190505b509050600360fc1b8160008151811062003d5e5762003d5e62004ca5565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d905762003d9062004ca5565b60200101906001600160f81b031916908160001a905350600062003db684600262004a31565b62003dc390600162004b15565b90505b600181111562003e45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfb5762003dfb62004ca5565b1a60f81b82828151811062003e145762003e1462004ca5565b60200101906001600160f81b031916908160001a90535060049490941c9362003e3d8162005399565b905062003dc6565b508315620038015760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014da565b606062003ea7848460008562003f19565b949350505050565b62003eba8162003b3d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200380183836040518060600160405280602781526020016200591e6027913962003ff1565b60608247101562003f7c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014da565b600080866001600160a01b0316858760405162003f9a9190620053b3565b60006040518083038185875af1925050503d806000811462003fd9576040519150601f19603f3d011682016040523d82523d6000602084013e62003fde565b606091505b509150915062003cbf878383876200406f565b6060600080856001600160a01b031685604051620040109190620053b3565b600060405180830381855af49150503d80600081146200404d576040519150601f19603f3d011682016040523d82523d6000602084013e62004052565b606091505b509150915062004065868383876200406f565b9695505050505050565b60608315620040e3578251600003620040db576200408d8562003436565b620040db5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014da565b508162003ea7565b62003ea78383815115620040fa5781518083602001fd5b8060405162461bcd60e51b8152600401620014da919062004987565b8280548282559060005260206000209081019282156200416e579160200282015b828111156200416e57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062004137565b5062002aa7929150620041a5565b6104ec80620053d283390190565b50805460008255906000526020600020908101906200113a91905b5b8082111562002aa75760008155600101620041a6565b600060208284031215620041cf57600080fd5b81356001600160e01b0319811681146200380157600080fd5b600060208284031215620041fb57600080fd5b5035919050565b6001600160a01b03811681146200113a57600080fd5b8035620042258162004202565b919050565b600080604083850312156200423e57600080fd5b82356200424b8162004202565b915060208301356200425d8162004202565b809150509250929050565b6000602082840312156200427b57600080fd5b8135620038018162004202565b600080604083850312156200429c57600080fd5b8235620042a98162004202565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ec57600080fd5b8235915060208301356200425d8162004202565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433b576200433b62004300565b60405290565b60405161018081016001600160401b03811182821017156200433b576200433b62004300565b60405160c081016001600160401b03811182821017156200433b576200433b62004300565b60405160e081016001600160401b03811182821017156200433b576200433b62004300565b604051608081016001600160401b03811182821017156200433b576200433b62004300565b604051601f8201601f191681016001600160401b038111828210171562004401576200440162004300565b604052919050565b60006001600160401b0382111562004425576200442562004300565b50601f01601f191660200190565b60006200444a620044448462004409565b620043d6565b90508281528383830111156200445f57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448857600080fd5b620038018383356020850162004433565b600060408284031215620044ac57600080fd5b620044b662004316565b82358152905060208201356001600160401b03811115620044d657600080fd5b620044e48482850162004476565b60208301525092915050565b80151581146200113a57600080fd5b80356200422581620044f0565b600080600080608085870312156200452357600080fd5b84356001600160401b03808211156200453b57600080fd5b9086019061018082890312156200455157600080fd5b6200455b62004341565b620045668362004218565b8152620045766020840162004218565b6020820152604083013560408201526060830135606082015260808301356080820152620045a760a0840162004218565b60a0820152620045ba60c0840162004218565b60c082015260e083013582811115620045d257600080fd5b620045e08a82860162004499565b60e083015250610100620045f681850162004218565b9082015261012083810135838111156200460f57600080fd5b6200461d8b82870162004476565b82840152505061014062004633818501620044ff565b9082015261016083810135838111156200464c57600080fd5b6200465a8b82870162004476565b828401525050809650505050620046746020860162004218565b9250620046846040860162004218565b9150620046946060860162004218565b905092959194509250565b60008060408385031215620046b357600080fd5b8235620046c08162004202565b915060208301356001600160401b03811115620046dc57600080fd5b8301601f81018513620046ee57600080fd5b620046ff8582356020840162004433565b9150509250929050565b8035600381106200422557600080fd5b600481106200113a57600080fd5b8035620042258162004719565b6000602082840312156200474757600080fd5b604051602081016001600160401b03811182821017156200476c576200476c62004300565b6040529135825250919050565b600060c082840312156200478c57600080fd5b6200479662004367565b90508135620047a58162004202565b81526020820135620047b78162004202565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480157600080fd5b6200480b6200438c565b915060808112156200481c57600080fd5b5062004827620043b1565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485b6080830162004709565b60208201526200486e60a0830162004727565b6040820152620048828360c0840162004734565b6060820152620048968360e0840162004779565b6080820152620048aa6101a0830162004218565b60a0820152620048be6101c0830162004218565b60c082015292915050565b60008060006102208486031215620048e057600080fd5b8335620048ed8162004202565b9250620048fe8560208601620047ec565b91506102008401356001600160401b038111156200491b57600080fd5b620049298682870162004499565b9150509250925092565b60005b838110156200495057818101518382015260200162004936565b50506000910152565b600081518084526200497381602086016020860162004933565b601f01601f19169290920160200192915050565b60208152600062003801602083018462004959565b6000806000806102408587031215620049b457600080fd5b8435620049c18162004202565b93506020850135620049d38162004202565b9250620049e48660408701620047ec565b91506102208501356001600160401b0381111562004a0157600080fd5b62004a0f8782880162004499565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d265762000d2662004a1b565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7457600080fd5b8151620038018162004719565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004aad57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d265762000d2662004a1b565b600181811c9082168062004b4057607f821691505b60208210810362004b6157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013ef57600081815260208120601f850160051c8101602086101562004b905750805b601f850160051c820191505b8181101562004bb15782815560010162004b9c565b505050505050565b81516001600160401b0381111562004bd55762004bd562004300565b62004bed8162004be6845462004b2b565b8462004b67565b602080601f83116001811462004c25576000841562004c0c5750858301515b600019600386901b1c1916600185901b17855562004bb1565b600085815260208120601f198616915b8281101562004c565788860151825594840194600190910190840162004c35565b508582101562004c755787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9857600080fd5b8151620038018162004202565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004ccf57600080fd5b82516001600160401b038082111562004ce757600080fd5b818501915085601f83011262004cfc57600080fd5b81518181111562004d115762004d1162004300565b8060051b915062004d24848301620043d6565b818152918301840191848101908884111562004d3f57600080fd5b938501935b8385101562004d6d578451925062004d5c8362004202565b828252938501939085019062004d44565b98975050505050505050565b60006001820162004d8e5762004d8e62004a1b565b5060010190565b8181038181111562000d265762000d2662004a1b565b6000815462004dba8162004b2b565b80855260206001838116801562004dda576001811462004df55762004e25565b60ff1985168884015283151560051b88018301955062004e25565b866000528260002060005b8581101562004e1d5781548a820186015290830190840162004e00565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003ea7604085018262004959565b600081518084526020808501945080840160005b8381101562004e8c5781516001600160a01b03168752958201959082019060010162004e65565b509495945050505050565b85815260a06020820152600062004eb260a083018762004dab565b828103604084015262004ec6818762004e30565b6001600160a01b03861660608501528381036080850152905062004d6d818562004e51565b83815260606020820152600062004f06606083018562004dab565b828103604084015262004065818562004e30565b6020808252602c90820152600080516020620058de83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058de83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003ea79083018462004959565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe057600080fd5b82516001600160401b038082111562004ff857600080fd5b9084019060c082870312156200500d57600080fd5b6200501762004367565b82518152838301516200502a8162004202565b8185015260408301516200503e8162004202565b60408201526060830151828111156200505657600080fd5b8301604081890312156200506957600080fd5b6200507362004316565b8151815285820151848111156200508957600080fd5b82019350601f840189136200509d57600080fd5b83519150620050b0620044448362004409565b8281528987848701011115620050c557600080fd5b620050d68388830189880162004933565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005160576200516062004a4b565b9052565b6004811062005160576200516062004a4b565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051b960808401826200514d565b506040830151620051ce60a084018262005164565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523c6101a0840182620042b7565b5060c0830151620052526101c0840182620042b7565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528360e084018962004959565b818816606085015286608085015283810360a0850152620052a5818762004e30565b91505082810360c0840152620052bc818562004e51565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cbf9083018462004e30565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533a81601785016020880162004933565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200536d81602884016020880162004933565b01602801949350505050565b6000602082840312156200538c57600080fd5b81516200380181620044f0565b600081620053ab57620053ab62004a1b565b506000190190565b60008251620053c781846020870162004933565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122052959655105f56f9563f8494a08f9520e14031dbdb68ee3670df7a0f08d24d6264736f6c63430008130033","sourceMap":"2850:23276:104:-:0;;;1088:4:64;1045:48;;2850:23276:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bc565b62000cf4565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041e8565b62000d2c565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422a565b62000da2565b348015620003fd57600080fd5b50620003c96200040f36600462004268565b62001125565b3480156200042257600080fd5b50620003c96200043436600462004268565b6200113d565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c96200047436600462004268565b6200116a565b3480156200048757600080fd5b50620003c9620004993660046200422a565b6200117f565b348015620004ac57600080fd5b506200037d620004be366004620041e8565b62001279565b348015620004d157600080fd5b506200037d6200128e565b348015620004e957600080fd5b5062000501620004fb36600462004288565b62001393565b604051620003629190620042c4565b3480156200051d57600080fd5b506200037d6200052f36600462004268565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042d8565b620013cd565b3480156200058057600080fd5b50620003c962000592366004620041e8565b620013f4565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450c565b62001434565b348015620005e257600080fd5b50620003c962001af4565b348015620005fa57600080fd5b50620003c96200060c366004620042d8565b62001d56565b3480156200061f57600080fd5b50620003c96200063136600462004268565b62001dd4565b3480156200064457600080fd5b50620003c96200065636600462004268565b62001ea5565b3480156200066957600080fd5b50620003566200067b36600462004268565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422a565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e23660046200469f565b62001f12565b348015620006f557600080fd5b506200070d62000707366004620048c9565b62001fd3565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b6565b3480156200075057600080fd5b50620003c962000762366004620041e8565b62002167565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041e8565b620023b3565b348015620007bd57600080fd5b506200037d620007cf3660046200422a565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422a565b6200274d565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a0565b3480156200087d57600080fd5b50620003c96200088f366004620041e8565b620028b6565b348015620008a257600080fd5b506200037d600080516020620058be83398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422a565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041e8565b62002952565b3480156200099557600080fd5b50620009d6620009a736600462004268565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a10565b34801562000a3b57600080fd5b506200035662000a4d366004620042d8565b62002aab565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab336600462004268565b62002ad6565b34801562000ac657600080fd5b50620003c962000ad836600462004268565b62002b20565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b4d565b34801562000b2a57600080fd5b5062000b3562002b84565b60405162000362919062004987565b34801562000b5157600080fd5b50620003c962002c1b565b34801562000b6957600080fd5b506200037d62002d25565b34801562000b8157600080fd5b50620003c962000b9336600462004268565b62002d37565b34801562000ba657600080fd5b5062000b3562002d6c565b34801562000bbe57600080fd5b50620003c962000bd0366004620042d8565b62002d7c565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499c565b62002d9e565b34801562000c6657600080fd5b506200035662000c7836600462004268565b62002f2b565b34801562000c8b57600080fd5b50620003c962000c9d36600462004268565b62002f48565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b35565b60006001600160e01b03198216637965db0b60e01b148062000d2657506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3662002fb9565b62000d45612710600a62004a31565b81111562000d665760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000dac62002ff6565b62000db78262003051565b62000dc2816200307a565b62000dcd81620030b5565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1657604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000eca919062004a61565b600381111562000ede5762000ede62004a4b565b0362000f635760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1590889060009060040162004a81565b6020604051808303816000875af115801562000f35573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5b919062004a9a565b90506200105f565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcc919062004a61565b600381111562000fe05762000fe062004a4b565b146200105f5760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001016908890869060040162004a81565b6020604051808303816000875af115801562001036573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105c919062004a9a565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110b9087908790859062004ab4565b60405180910390a1505050620011216001606555565b5050565b6200112f62002fb9565b6200113a81620030e4565b50565b6200114762003142565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117462002fb9565b6200113a81620031a5565b6200118a8262003051565b6200119581620030b5565b620011a1338262003237565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011e957604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123b82826200326a565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200126d92919062004ad8565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012ae612710606462004a31565b60fc5460fb54620012c0919062004a31565b620012cc919062004af2565b90506000620012df612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200130d903090600401620042c4565b602060405180830381865afa1580156200132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001351919062004a9a565b60fb5462001360919062004a31565b6200136c919062004af2565b9050808260fb546200137f919062004b15565b6200138b919062004b15565b935050505090565b61010d6020528160005260406000208181548110620013b157600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013d88262001279565b620013e381620033a0565b620013ef8383620033ac565b505050565b620013fe62002fb9565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d97565b600054610100900460ff1615808015620014555750600054600160ff909116105b806200147a5750620014673062003436565b1580156200147a575060005460ff166001145b620014e35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001507576000805461ff0019166101001790555b620015128262002d37565b6200151c62003445565b6200152662003479565b62001542600080516020620058be8339815191526000620034a3565b620015518560200151620030b5565b62001561856101000151620030b5565b84516200156e90620030b5565b6200157d8560a00151620030b5565b6060850151156200159757620015978560c00151620030b5565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f2576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200162f908262004bb9565b506101608501516101099062001646908262004bb9565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016bb90600080516020620058be83398151915290620033ac565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001710573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001736919062004c85565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c25760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179c576200179c62004ca5565b60200260200101906001600160a01b031690816001600160a01b031681525050620018ff565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200180d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001837919081019062004cbb565b90508051600262001849919062004b15565b6001600160401b0381111562001863576200186362004300565b6040519080825280602002602001820160405280156200188d578160200160208202803683370190505b50915060005b8151811015620018fc57818181518110620018b257620018b262004ca5565b6020026020010151838281518110620018cf57620018cf62004ca5565b6001600160a01b039092166020928302919091019091015280620018f38162004d79565b91505062001893565b50505b6101065481516001600160a01b03909116908290620019219060019062004d95565b8151811062001934576200193462004ca5565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001966919062004d95565b8151811062001979576200197962004ca5565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cc9291610108913090889060040162004e97565b6020604051808303816000875af1158015620019ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a12919062004a9a565b60fe55805162001a2b9061010f90602084019062004116565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001a9d929091610108919062004eeb565b60405180910390a150801562001aed576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001afe62002ff6565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b2f612710606462004a31565b60fc5460fb5462001b41919062004a31565b62001b4d919062004af2565b9050600062001b60612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b8e903090600401620042c4565b602060405180830381865afa15801562001bac573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd2919062004a9a565b60fb5462001be1919062004a31565b62001bed919062004af2565b905062001bfa8562002ad6565b62001d445760028401805460ff1916600190811790915560fb5490850181905562001c549086903090849062001c3290879062004b15565b62001c3e919062004b15565b610105546001600160a01b0316929190620034f8565b811562001c815760ff546101055462001c81916001600160a01b0391821691610100909104168462003554565b801562001d065762001d06836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001ccb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf1919062004c85565b610105546001600160a01b0316908362003554565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3b92919062004a81565b60405180910390a15b505050505062001d546001606555565b565b6001600160a01b038116331462001dc85760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014da565b62001121828262003576565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e1f5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e53620035e0565b6001600160a01b03161462001e7c5760405162461bcd60e51b8152600401620014da9062004f55565b62001e8781620035fd565b604080516000808252602082019092526200113a918391906200363f565b62001eaf62002fb9565b62001eba81620030b5565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d97939216919062004ad8565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f5d5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f91620035e0565b6001600160a01b03161462001fba5760405162461bcd60e51b8152600401620014da9062004f55565b62001fc582620035fd565b62001121828260016200363f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200962002a10565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200206e906200417c565b6200207b92919062004f90565b604051809103906000f08015801562002098573d6000803e3d6000fd5b509050620020a98187878762002d9e565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021535760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014da565b50600080516020620058fe83398151915290565b6200217162002ff6565b6200217b620037b7565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021df57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c0575b50505050509050600080600090505b82518110156200231a578281815181106200220d576200220d62004ca5565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224492919062004a81565b6020604051808303816000875af115801562002264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228a919062004a9a565b9150811562002305576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c657620022c662004ca5565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620022ff919062004b15565b90915550505b80620023118162004d79565b915050620021ee565b506101055462002336906001600160a01b0316843087620034f8565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236490849062004b15565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200239d908590879062004a81565b60405180910390a15050506200113a6001606555565b620023bd62002ff6565b620023c7620037b7565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fb90869062004d95565b10156200241b57604051634e23e81760e11b815260040160405180910390fd5b6101055462002435906001600160a01b0316848662003554565b60005b8254811015620026e557600083828154811062002459576200245962004ca5565b6000918252602090912001546001600160a01b03169050620024838163f1801e6160e01b620037e0565b156200260957604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024b99088908a9060040162004a81565b6020604051808303816000875af1158015620024d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024ff919062004a9a565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002540576200254062004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002594576040516311423e6360e31b81526004810185905260248101829052604401620014da565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025c757620025c762004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620025fd90849062004d95565b909155505050620026cf565b835484906200261b9060019062004d95565b815481106200262e576200262e62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002661576200266162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a257620026a262004fb6565b600082815260209020810160001990810180546001600160a01b0319169055019055620026cf81620030e4565b5080620026dc8162004d79565b91505062002438565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271490849062004d95565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200239d908590879062004a81565b6200275762002ff6565b6200276162002fb9565b60ff80541662002784576040516365b1ee3960e11b815260040160405180910390fd5b6200278f8262002ad6565b620027ad57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff16151590820152620027fe8362003808565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002853921690849062003554565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288c9392919062004ab4565b60405180910390a150620011216001606555565b620028aa62003142565b62001d5460006200391d565b620028c062002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002936919081019062004fcc565b6020015190506200294781620030b5565b6200112181620030e4565b6200295c62002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d2919081019062004fcc565b602001519050620029e381620030b5565b620029ff6001600160a01b03821663f1801e6160e01b620037e0565b1562001121576200112181620031a5565b60008062002a266033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002a9d575060408051601f3d908101601f1916820190925262002a9a9181019062004c85565b60015b62000d2657919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2a62003142565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7a576040516375e686b760e11b815260040160405180910390fd5b62001d546200396f565b610109805462002b949062004b2b565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc29062004b2b565b801562002c135780601f1062002be75761010080835404028352916020019162002c13565b820191906000526020600020905b81548152906001019060200180831162002bf557829003601f168201915b505050505081565b62002c2562002ff6565b3362002c318162003051565b62002c3c8162003808565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cb791906200418a565b60208101516101055462002cd9916001600160a01b0390911690849062003554565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1092919062004a81565b60405180910390a1505062001d546001606555565b62002d34612710600a62004a31565b81565b600054610100900460ff1662002d615760405162461bcd60e51b8152600401620014da9062005102565b6200113a816200391d565b610108805462002b949062004b2b565b62002d878262001279565b62002d9281620033a0565b620013ef838362003576565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dc95750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e08575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e5f908b9060200162005177565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e97979695949392919062005259565b6020604051808303816000875af115801562002eb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002edd919062004a9a565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f18959493929190620052ca565b60405180910390a1505094509492505050565b600062000d26600080516020620058be8339815191528362002aab565b62002f5262003142565b6001600160a01b03811662002d615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014da565b62002fd4600080516020620058be8339815191523362002aab565b62001d54573360405163fc4be72f60e01b8152600401620014da9190620042c4565b6002606554036200304a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014da565b6002606555565b6200305c8162002ad6565b6200113a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113a576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113a576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030ef81620030b5565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d97908390620042c4565b336200314d62002a10565b6001600160a01b03161462001d545760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014da565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e1576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d97908390620042c4565b806001600160a01b0316826001600160a01b031614620011215760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339a57826001600160a01b0316828281548110620032ae57620032ae62004ca5565b6000918252602090912001546001600160a01b031603620033855781548290620032db9060019062004d95565b81548110620032ee57620032ee62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003321576200332162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003362576200336262004fb6565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033918162004d79565b91505062003285565b50505050565b6200113a8133620039d3565b620033b8828262002aab565b6200112157600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f23390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff166200346f5760405162461bcd60e51b8152600401620014da9062005102565b62001d5462003a37565b600054610100900460ff1662001d545760405162461bcd60e51b8152600401620014da9062005102565b6000620034b08362001279565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339a846323b872dd60e01b8585856040516024016200351c9392919062004ab4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a61565b620013ef8363a9059cbb60e01b84846040516024016200351c92919062004a81565b62003582828262002aab565b156200112157600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020620058fe833981519152546001600160a01b031690565b336200360862002a10565b6001600160a01b0316146200113a57336200362262002a10565b60405163163678e960e01b8152600401620014da92919062004ad8565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367557620013ef8362003b3d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d2575060408051601f3d908101601f19168201909252620036cf9181019062004a9a565b60015b620037375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014da565b600080516020620058fe8339815191528114620037a95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014da565b50620013ef83838362003bdc565b620037c23362002ad6565b62001d5457604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037ed8362003c07565b801562003801575062003801838362003c3f565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387557602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003856575b5050505050905060005b8151811015620013ef578181815181106200389e576200389e62004ca5565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d39190620042c4565b600060405180830381600087803b158015620038ee57600080fd5b505af115801562003903573d6000803e3d6000fd5b505050508080620039149062004d79565b9150506200387f565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039c990600090620042c4565b60405180910390a1565b620039df828262002aab565b6200112157620039ef8162003cca565b620039fc83602062003cdd565b60405160200162003a0f92919062005306565b60408051601f198184030181529082905262461bcd60e51b8252620014da9160040162004987565b600054610100900460ff16620030dd5760405162461bcd60e51b8152600401620014da9062005102565b600062003ab8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e969092919063ffffffff16565b905080516000148062003adc57508080602001905181019062003adc919062005379565b620013ef5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014da565b62003b488162003436565b62003bac5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014da565b600080516020620058fe83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003be78362003eaf565b60008251118062003bf55750805b15620013ef576200339a838362003ef1565b600062003c1c826301ffc9a760e01b62003c3f565b801562000d26575062003c38826001600160e01b031962003c3f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb2575060208210155b801562003cbf5750600081115b979650505050505050565b606062000d266001600160a01b03831660145b6060600062003cee83600262004a31565b62003cfb90600262004b15565b6001600160401b0381111562003d155762003d1562004300565b6040519080825280601f01601f19166020018201604052801562003d40576020820181803683370190505b509050600360fc1b8160008151811062003d5e5762003d5e62004ca5565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d905762003d9062004ca5565b60200101906001600160f81b031916908160001a905350600062003db684600262004a31565b62003dc390600162004b15565b90505b600181111562003e45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfb5762003dfb62004ca5565b1a60f81b82828151811062003e145762003e1462004ca5565b60200101906001600160f81b031916908160001a90535060049490941c9362003e3d8162005399565b905062003dc6565b508315620038015760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014da565b606062003ea7848460008562003f19565b949350505050565b62003eba8162003b3d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200380183836040518060600160405280602781526020016200591e6027913962003ff1565b60608247101562003f7c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014da565b600080866001600160a01b0316858760405162003f9a9190620053b3565b60006040518083038185875af1925050503d806000811462003fd9576040519150601f19603f3d011682016040523d82523d6000602084013e62003fde565b606091505b509150915062003cbf878383876200406f565b6060600080856001600160a01b031685604051620040109190620053b3565b600060405180830381855af49150503d80600081146200404d576040519150601f19603f3d011682016040523d82523d6000602084013e62004052565b606091505b509150915062004065868383876200406f565b9695505050505050565b60608315620040e3578251600003620040db576200408d8562003436565b620040db5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014da565b508162003ea7565b62003ea78383815115620040fa5781518083602001fd5b8060405162461bcd60e51b8152600401620014da919062004987565b8280548282559060005260206000209081019282156200416e579160200282015b828111156200416e57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062004137565b5062002aa7929150620041a5565b6104ec80620053d283390190565b50805460008255906000526020600020908101906200113a91905b5b8082111562002aa75760008155600101620041a6565b600060208284031215620041cf57600080fd5b81356001600160e01b0319811681146200380157600080fd5b600060208284031215620041fb57600080fd5b5035919050565b6001600160a01b03811681146200113a57600080fd5b8035620042258162004202565b919050565b600080604083850312156200423e57600080fd5b82356200424b8162004202565b915060208301356200425d8162004202565b809150509250929050565b6000602082840312156200427b57600080fd5b8135620038018162004202565b600080604083850312156200429c57600080fd5b8235620042a98162004202565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ec57600080fd5b8235915060208301356200425d8162004202565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433b576200433b62004300565b60405290565b60405161018081016001600160401b03811182821017156200433b576200433b62004300565b60405160c081016001600160401b03811182821017156200433b576200433b62004300565b60405160e081016001600160401b03811182821017156200433b576200433b62004300565b604051608081016001600160401b03811182821017156200433b576200433b62004300565b604051601f8201601f191681016001600160401b038111828210171562004401576200440162004300565b604052919050565b60006001600160401b0382111562004425576200442562004300565b50601f01601f191660200190565b60006200444a620044448462004409565b620043d6565b90508281528383830111156200445f57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448857600080fd5b620038018383356020850162004433565b600060408284031215620044ac57600080fd5b620044b662004316565b82358152905060208201356001600160401b03811115620044d657600080fd5b620044e48482850162004476565b60208301525092915050565b80151581146200113a57600080fd5b80356200422581620044f0565b600080600080608085870312156200452357600080fd5b84356001600160401b03808211156200453b57600080fd5b9086019061018082890312156200455157600080fd5b6200455b62004341565b620045668362004218565b8152620045766020840162004218565b6020820152604083013560408201526060830135606082015260808301356080820152620045a760a0840162004218565b60a0820152620045ba60c0840162004218565b60c082015260e083013582811115620045d257600080fd5b620045e08a82860162004499565b60e083015250610100620045f681850162004218565b9082015261012083810135838111156200460f57600080fd5b6200461d8b82870162004476565b82840152505061014062004633818501620044ff565b9082015261016083810135838111156200464c57600080fd5b6200465a8b82870162004476565b828401525050809650505050620046746020860162004218565b9250620046846040860162004218565b9150620046946060860162004218565b905092959194509250565b60008060408385031215620046b357600080fd5b8235620046c08162004202565b915060208301356001600160401b03811115620046dc57600080fd5b8301601f81018513620046ee57600080fd5b620046ff8582356020840162004433565b9150509250929050565b8035600381106200422557600080fd5b600481106200113a57600080fd5b8035620042258162004719565b6000602082840312156200474757600080fd5b604051602081016001600160401b03811182821017156200476c576200476c62004300565b6040529135825250919050565b600060c082840312156200478c57600080fd5b6200479662004367565b90508135620047a58162004202565b81526020820135620047b78162004202565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480157600080fd5b6200480b6200438c565b915060808112156200481c57600080fd5b5062004827620043b1565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485b6080830162004709565b60208201526200486e60a0830162004727565b6040820152620048828360c0840162004734565b6060820152620048968360e0840162004779565b6080820152620048aa6101a0830162004218565b60a0820152620048be6101c0830162004218565b60c082015292915050565b60008060006102208486031215620048e057600080fd5b8335620048ed8162004202565b9250620048fe8560208601620047ec565b91506102008401356001600160401b038111156200491b57600080fd5b620049298682870162004499565b9150509250925092565b60005b838110156200495057818101518382015260200162004936565b50506000910152565b600081518084526200497381602086016020860162004933565b601f01601f19169290920160200192915050565b60208152600062003801602083018462004959565b6000806000806102408587031215620049b457600080fd5b8435620049c18162004202565b93506020850135620049d38162004202565b9250620049e48660408701620047ec565b91506102208501356001600160401b0381111562004a0157600080fd5b62004a0f8782880162004499565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d265762000d2662004a1b565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7457600080fd5b8151620038018162004719565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004aad57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d265762000d2662004a1b565b600181811c9082168062004b4057607f821691505b60208210810362004b6157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013ef57600081815260208120601f850160051c8101602086101562004b905750805b601f850160051c820191505b8181101562004bb15782815560010162004b9c565b505050505050565b81516001600160401b0381111562004bd55762004bd562004300565b62004bed8162004be6845462004b2b565b8462004b67565b602080601f83116001811462004c25576000841562004c0c5750858301515b600019600386901b1c1916600185901b17855562004bb1565b600085815260208120601f198616915b8281101562004c565788860151825594840194600190910190840162004c35565b508582101562004c755787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9857600080fd5b8151620038018162004202565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004ccf57600080fd5b82516001600160401b038082111562004ce757600080fd5b818501915085601f83011262004cfc57600080fd5b81518181111562004d115762004d1162004300565b8060051b915062004d24848301620043d6565b818152918301840191848101908884111562004d3f57600080fd5b938501935b8385101562004d6d578451925062004d5c8362004202565b828252938501939085019062004d44565b98975050505050505050565b60006001820162004d8e5762004d8e62004a1b565b5060010190565b8181038181111562000d265762000d2662004a1b565b6000815462004dba8162004b2b565b80855260206001838116801562004dda576001811462004df55762004e25565b60ff1985168884015283151560051b88018301955062004e25565b866000528260002060005b8581101562004e1d5781548a820186015290830190840162004e00565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003ea7604085018262004959565b600081518084526020808501945080840160005b8381101562004e8c5781516001600160a01b03168752958201959082019060010162004e65565b509495945050505050565b85815260a06020820152600062004eb260a083018762004dab565b828103604084015262004ec6818762004e30565b6001600160a01b03861660608501528381036080850152905062004d6d818562004e51565b83815260606020820152600062004f06606083018562004dab565b828103604084015262004065818562004e30565b6020808252602c90820152600080516020620058de83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058de83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003ea79083018462004959565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe057600080fd5b82516001600160401b038082111562004ff857600080fd5b9084019060c082870312156200500d57600080fd5b6200501762004367565b82518152838301516200502a8162004202565b8185015260408301516200503e8162004202565b60408201526060830151828111156200505657600080fd5b8301604081890312156200506957600080fd5b6200507362004316565b8151815285820151848111156200508957600080fd5b82019350601f840189136200509d57600080fd5b83519150620050b0620044448362004409565b8281528987848701011115620050c557600080fd5b620050d68388830189880162004933565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005160576200516062004a4b565b9052565b6004811062005160576200516062004a4b565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051b960808401826200514d565b506040830151620051ce60a084018262005164565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523c6101a0840182620042b7565b5060c0830151620052526101c0840182620042b7565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528360e084018962004959565b818816606085015286608085015283810360a0850152620052a5818762004e30565b91505082810360c0840152620052bc818562004e51565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cbf9083018462004e30565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533a81601785016020880162004933565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200536d81602884016020880162004933565b01602801949350505050565b6000602082840312156200538c57600080fd5b81516200380181620044f0565b600081620053ab57620053ab62004a1b565b506000190190565b60008251620053c781846020870162004933565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122052959655105f56f9563f8494a08f9520e14031dbdb68ee3670df7a0f08d24d6264736f6c63430008130033","sourceMap":"2850:23276:104:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:43;;;;;;;;;;-1:-1:-1;3050:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:131;;463:22;445:41;;433:2;418:18;3050:213:43;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:131;;;631:2;616:18;23771:115:104;497:177:131;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19069:151::-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;12444:25:131;;;-1:-1:-1;;;;;12505:32:131;;;12500:2;12485:18;;12478:60;12417:18;12647:531:104;12270:274:131;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;6550:31::-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18890:173;5795:34;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;7605:60::-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;13436:32:131;;;13418:51;;13500:2;13485:18;;13478:34;;;;13555:14;13548:22;13528:18;;;13521:50;13406:2;13391:18;7605:60:104;13222:355:131;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;5202:92;;;;;;;;;;-1:-1:-1;5275:12:104;;;;;;;;;;;;-1:-1:-1;;;5275:12:104;;;;5202:92;;3050:213:43;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;24088:288:104:-;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:131;;;24332:37:104;;631:2:131;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:131;;;24043:32:104;;631:2:131;616:18;24043:32:104;497:177:131;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;18292:2:131;3325:201:47;;;18274:21:131;18331:2;18311:18;;;18304:30;18370:34;18350:18;;;18343:62;-1:-1:-1;;;18421:18:131;;;18414:44;18475:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;25926:36:131;;3721:14:47;;25914:2:131;25899:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;26175:2:131;6476:83:43;;;26157:21:131;26214:2;26194:18;;;26187:30;26253:34;26233:18;;;26226:62;-1:-1:-1;;;26304:18:131;;;26297:45;26359:19;;6476:83:43;25973:411:131;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;-1:-1:-1;;;;;27790:15:131;;;12975:101:104;;;27772:34:131;27842:15;;;27822:18;;;27815:43;27894:15;;;27874:18;;;27867:43;27707:18;;12975:101:104;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28443:2:131;2064:92:64;;;28425:21:131;28482:2;28462:18;;;28455:30;28521:34;28501:18;;;28494:62;-1:-1:-1;;;28572:18:131;;;28565:54;28636:19;;2064:92:64;28241:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;17322:1562:104;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;28840:25:131::0;;;28881:18;;;28874:34;;;28813:18;;18259:57:104::1;28666:248:131::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:131;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:131;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:131;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:131;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;:::-;;;;;;;;;;;;;13713:5;13720:1;13723:9;13734:14;13624:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13615:143;;13774:63;13786:6;13794:8;13812:4;13819:6;13827:9;13774:63;;;;;;;;;;:::i;:::-;;;;;;;;13409:435;;13184:660;;;;;;;:::o;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35022:2:131;2415:73:45::1;::::0;::::1;35004:21:131::0;35061:2;35041:18;;;35034:30;35100:34;35080:18;;;35073:62;-1:-1:-1;;;35151:18:131;;;35144:36;35197:19;;2415:73:45::1;34820:402:131::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;35429:2:131;2725:63:48;;;35411:21:131;35468:2;35448:18;;;35441:30;35507:33;35487:18;;;35480:61;35558:18;;2725:63:48;35227:355:131;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;35789:2:131;1675:68:45;;;35771:21:131;;;35808:18;;;35801:30;35867:34;35847:18;;;35840:62;35919:18;;1675:68:45;35587:356:131;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;36150:2:131;3262:56:60;;;36132:21:131;36189:2;36169:18;;;36162:30;36228:34;36208:18;;;36201:62;-1:-1:-1;;;36279:18:131;;;36272:44;36333:19;;3262:56:60;35948:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;36565:2:131;3140:82:60;;;36547:21:131;36604:2;36584:18;;;36577:30;36643:34;36623:18;;;36616:62;-1:-1:-1;;;36694:18:131;;;36687:39;36743:19;;3140:82:60;36363:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;38258:2:131;5697:111:73;;;38240:21:131;38297:2;38277:18;;;38270:30;38336:34;38316:18;;;38309:62;-1:-1:-1;;;38387:18:131;;;38380:40;38437:19;;5697:111:73;38056:406:131;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;38669:2:131;1479:95:60;;;38651:21:131;38708:2;38688:18;;;38681:30;38747:34;38727:18;;;38720:62;-1:-1:-1;;;38798:18:131;;;38791:43;38851:19;;1479:95:60;38467:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;39043:33:131;;4592:71:81;;;;39025:52:131;;;;4592:71:81;;;;;;;;;;38998:18:131;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;39431:2:131;2228:55:52;;;39413:21:131;;;39450:18;;;39443:30;39509:34;39489:18;;;39482:62;39561:18;;2228:55:52;39229:356:131;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;39792:2:131;5354:81:76;;;39774:21:131;39831:2;39811:18;;;39804:30;39870:34;39850:18;;;39843:62;-1:-1:-1;;;39921:18:131;;;39914:36;39967:19;;5354:81:76;39590:402:131;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;40491:2:131;8113:60:76;;;40473:21:131;40530:2;40510:18;;;40503:30;40569:31;40549:18;;;40542:59;40618:18;;8113:60:76;40289:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:131;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:131;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:131;;861:180;-1:-1:-1;861:180:131:o;1046:131::-;-1:-1:-1;;;;;1121:31:131;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:131;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:131:o;2471:104::-;-1:-1:-1;;;;;2537:31:131;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:131;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:131;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:131;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:131;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:253::-;4092:2;4086:9;4134:4;4122:17;;-1:-1:-1;;;;;4154:34:131;;4190:22;;;4151:62;4148:88;;;4216:18;;:::i;4278:253::-;4350:2;4344:9;4392:4;4380:17;;-1:-1:-1;;;;;4412:34:131;;4448:22;;;4409:62;4406:88;;;4474:18;;:::i;4536:275::-;4607:2;4601:9;4672:2;4653:13;;-1:-1:-1;;4649:27:131;4637:40;;-1:-1:-1;;;;;4692:34:131;;4728:22;;;4689:62;4686:88;;;4754:18;;:::i;:::-;4790:2;4783:22;4536:275;;-1:-1:-1;4536:275:131:o;4816:187::-;4865:4;-1:-1:-1;;;;;4887:30:131;;4884:56;;;4920:18;;:::i;:::-;-1:-1:-1;4986:2:131;4965:15;-1:-1:-1;;4961:29:131;4992:4;4957:40;;4816:187::o;5008:338::-;5073:5;5102:53;5118:36;5147:6;5118:36;:::i;:::-;5102:53;:::i;:::-;5093:62;;5178:6;5171:5;5164:21;5218:3;5209:6;5204:3;5200:16;5197:25;5194:45;;;5235:1;5232;5225:12;5194:45;5284:6;5279:3;5272:4;5265:5;5261:16;5248:43;5338:1;5331:4;5322:6;5315:5;5311:18;5307:29;5300:40;5008:338;;;;;:::o;5351:222::-;5394:5;5447:3;5440:4;5432:6;5428:17;5424:27;5414:55;;5465:1;5462;5455:12;5414:55;5487:80;5563:3;5554:6;5541:20;5534:4;5526:6;5522:17;5487:80;:::i;5578:411::-;5633:5;5681:4;5669:9;5664:3;5660:19;5656:30;5653:50;;;5699:1;5696;5689:12;5653:50;5721:22;;:::i;:::-;5766:23;;5752:38;;5712:31;-1:-1:-1;5841:2:131;5826:18;;5813:32;-1:-1:-1;;;;;5857:30:131;;5854:50;;;5900:1;5897;5890:12;5854:50;5936:46;5978:3;5969:6;5958:9;5954:22;5936:46;:::i;:::-;5931:2;5924:5;5920:14;5913:70;;5578:411;;;;:::o;5994:118::-;6080:5;6073:13;6066:21;6059:5;6056:32;6046:60;;6102:1;6099;6092:12;6117:128;6182:20;;6211:28;6182:20;6211:28;:::i;6250:1871::-;6392:6;6400;6408;6416;6469:3;6457:9;6448:7;6444:23;6440:33;6437:53;;;6486:1;6483;6476:12;6437:53;6513:23;;-1:-1:-1;;;;;6585:14:131;;;6582:34;;;6612:1;6609;6602:12;6582:34;6635:22;;;;6691:6;6673:16;;;6669:29;6666:49;;;6711:1;6708;6701:12;6666:49;6737:22;;:::i;:::-;6782;6801:2;6782:22;:::i;:::-;6775:5;6768:37;6837:31;6864:2;6860;6856:11;6837:31;:::i;:::-;6832:2;6825:5;6821:14;6814:55;6922:2;6918;6914:11;6901:25;6896:2;6889:5;6885:14;6878:49;6980:2;6976;6972:11;6959:25;6954:2;6947:5;6943:14;6936:49;7039:3;7035:2;7031:12;7018:26;7012:3;7005:5;7001:15;6994:51;7078:32;7105:3;7101:2;7097:12;7078:32;:::i;:::-;7072:3;7065:5;7061:15;7054:57;7144:32;7171:3;7167:2;7163:12;7144:32;:::i;:::-;7138:3;7131:5;7127:15;7120:57;7223:3;7219:2;7215:12;7202:26;7253:2;7243:8;7240:16;7237:36;;;7269:1;7266;7259:12;7237:36;7306:54;7352:7;7341:8;7337:2;7333:17;7306:54;:::i;:::-;7300:3;7293:5;7289:15;7282:79;;7380:3;7415:31;7442:2;7438;7434:11;7415:31;:::i;:::-;7399:14;;;7392:55;7466:3;7507:11;;;7494:25;7531:16;;;7528:36;;;7560:1;7557;7550:12;7528:36;7596:45;7633:7;7622:8;7618:2;7614:17;7596:45;:::i;:::-;7591:2;7584:5;7580:14;7573:69;;;7661:3;7696:28;7720:2;7716;7712:11;7696:28;:::i;:::-;7680:14;;;7673:52;7744:3;7785:11;;;7772:25;7809:16;;;7806:36;;;7838:1;7835;7828:12;7806:36;7874:45;7911:7;7900:8;7896:2;7892:17;7874:45;:::i;:::-;7869:2;7862:5;7858:14;7851:69;;;7939:5;7929:15;;;;;7963:38;7997:2;7986:9;7982:18;7963:38;:::i;:::-;7953:48;;8020:38;8054:2;8043:9;8039:18;8020:38;:::i;:::-;8010:48;;8077:38;8111:2;8100:9;8096:18;8077:38;:::i;:::-;8067:48;;6250:1871;;;;;;;:::o;8386:585::-;8463:6;8471;8524:2;8512:9;8503:7;8499:23;8495:32;8492:52;;;8540:1;8537;8530:12;8492:52;8579:9;8566:23;8598:31;8623:5;8598:31;:::i;:::-;8648:5;-1:-1:-1;8704:2:131;8689:18;;8676:32;-1:-1:-1;;;;;8720:30:131;;8717:50;;;8763:1;8760;8753:12;8717:50;8786:22;;8839:4;8831:13;;8827:27;-1:-1:-1;8817:55:131;;8868:1;8865;8858:12;8817:55;8891:74;8957:7;8952:2;8939:16;8934:2;8930;8926:11;8891:74;:::i;:::-;8881:84;;;8386:585;;;;;:::o;8976:153::-;9054:20;;9103:1;9093:12;;9083:40;;9119:1;9116;9109:12;9134:110;9218:1;9211:5;9208:12;9198:40;;9234:1;9231;9224:12;9249:152;9326:20;;9355:40;9326:20;9355:40;:::i;9406:416::-;9470:5;9518:4;9506:9;9501:3;9497:19;9493:30;9490:50;;;9536:1;9533;9526:12;9490:50;9569:2;9563:9;9611:4;9599:17;;-1:-1:-1;;;;;9631:34:131;;9667:22;;;9628:62;9625:88;;;9693:18;;:::i;:::-;9729:2;9722:22;9792:23;;9777:39;;-1:-1:-1;9762:6:131;9406:416;-1:-1:-1;9406:416:131:o;9827:701::-;9890:5;9938:4;9926:9;9921:3;9917:19;9913:30;9910:50;;;9956:1;9953;9946:12;9910:50;9978:22;;:::i;:::-;9969:31;;10037:9;10024:23;10056:33;10081:7;10056:33;:::i;:::-;10098:22;;10172:2;10157:18;;10144:32;10185:33;10144:32;10185:33;:::i;:::-;10250:7;10245:2;10238:5;10234:14;10227:31;;10318:2;10307:9;10303:18;10290:32;10285:2;10278:5;10274:14;10267:56;10383:2;10372:9;10368:18;10355:32;10350:2;10343:5;10339:14;10332:56;10449:3;10438:9;10434:19;10421:33;10415:3;10408:5;10404:15;10397:58;10516:3;10505:9;10501:19;10488:33;10482:3;10475:5;10471:15;10464:58;9827:701;;;;:::o;10533:1083::-;10608:5;10647:9;10642:3;10638:19;10677:6;10673:2;10669:15;10666:35;;;10697:1;10694;10687:12;10666:35;10719:22;;:::i;:::-;10710:31;;10761:4;10757:2;10753:13;10750:33;;;10779:1;10776;10769:12;10750:33;;10807:22;;:::i;:::-;10867:9;10854:23;10845:7;10838:40;10940:2;10929:9;10925:18;10912:32;10907:2;10898:7;10894:16;10887:58;11007:2;10996:9;10992:18;10979:32;10974:2;10965:7;10961:16;10954:58;11074:2;11063:9;11059:18;11046:32;11041:2;11032:7;11028:16;11021:58;11102:7;11095:5;11088:22;;11142:50;11186:4;11175:9;11171:20;11142:50;:::i;:::-;11137:2;11130:5;11126:14;11119:74;11225:48;11268:3;11257:9;11253:19;11225:48;:::i;:::-;11220:2;11213:5;11209:14;11202:72;11306:61;11363:3;11357;11346:9;11342:19;11306:61;:::i;:::-;11301:2;11294:5;11290:14;11283:85;11402:61;11459:3;11452:4;11441:9;11437:20;11402:61;:::i;:::-;11395:4;11388:5;11384:16;11377:87;11497:39;11531:3;11520:9;11516:19;11497:39;:::i;:::-;11491:3;11484:5;11480:15;11473:64;11570:39;11604:3;11593:9;11589:19;11570:39;:::i;:::-;11564:3;11557:5;11553:15;11546:64;10533:1083;;;;:::o;11621:644::-;11773:6;11781;11789;11842:3;11830:9;11821:7;11817:23;11813:33;11810:53;;;11859:1;11856;11849:12;11810:53;11898:9;11885:23;11917:31;11942:5;11917:31;:::i;:::-;11967:5;-1:-1:-1;11991:75:131;12058:7;12053:2;12038:18;;11991:75;:::i;:::-;11981:85;-1:-1:-1;12117:3:131;12102:19;;12089:33;-1:-1:-1;;;;;12134:30:131;;12131:50;;;12177:1;12174;12167:12;12131:50;12200:59;12251:7;12242:6;12231:9;12227:22;12200:59;:::i;:::-;12190:69;;;11621:644;;;;;:::o;13582:250::-;13667:1;13677:113;13691:6;13688:1;13685:13;13677:113;;;13767:11;;;13761:18;13748:11;;;13741:39;13713:2;13706:10;13677:113;;;-1:-1:-1;;13824:1:131;13806:16;;13799:27;13582:250::o;13837:271::-;13879:3;13917:5;13911:12;13944:6;13939:3;13932:19;13960:76;14029:6;14022:4;14017:3;14013:14;14006:4;13999:5;13995:16;13960:76;:::i;:::-;14090:2;14069:15;-1:-1:-1;;14065:29:131;14056:39;;;;14097:4;14052:50;;13837:271;-1:-1:-1;;13837:271:131:o;14113:220::-;14262:2;14251:9;14244:21;14225:4;14282:45;14323:2;14312:9;14308:18;14300:6;14282:45;:::i;14785:785::-;14946:6;14954;14962;14970;15023:3;15011:9;15002:7;14998:23;14994:33;14991:53;;;15040:1;15037;15030:12;14991:53;15079:9;15066:23;15098:31;15123:5;15098:31;:::i;:::-;15148:5;-1:-1:-1;15205:2:131;15190:18;;15177:32;15218:33;15177:32;15218:33;:::i;:::-;15270:7;-1:-1:-1;15296:75:131;15363:7;15358:2;15343:18;;15296:75;:::i;:::-;15286:85;-1:-1:-1;15422:3:131;15407:19;;15394:33;-1:-1:-1;;;;;15439:30:131;;15436:50;;;15482:1;15479;15472:12;15436:50;15505:59;15556:7;15547:6;15536:9;15532:22;15505:59;:::i;:::-;15495:69;;;14785:785;;;;;;;:::o;15575:127::-;15636:10;15631:3;15627:20;15624:1;15617:31;15667:4;15664:1;15657:15;15691:4;15688:1;15681:15;15707:168;15780:9;;;15811;;15828:15;;;15822:22;;15808:37;15798:71;;15849:18;;:::i;15880:127::-;15941:10;15936:3;15932:20;15929:1;15922:31;15972:4;15969:1;15962:15;15996:4;15993:1;15986:15;16012:277;16099:6;16152:2;16140:9;16131:7;16127:23;16123:32;16120:52;;;16168:1;16165;16158:12;16120:52;16200:9;16194:16;16219:40;16253:5;16219:40;:::i;16294:282::-;-1:-1:-1;;;;;16494:32:131;;;;16476:51;;16558:2;16543:18;;16536:34;16464:2;16449:18;;16294:282::o;16581:184::-;16651:6;16704:2;16692:9;16683:7;16679:23;16675:32;16672:52;;;16720:1;16717;16710:12;16672:52;-1:-1:-1;16743:16:131;;16581:184;-1:-1:-1;16581:184:131:o;17049:375::-;-1:-1:-1;;;;;17307:15:131;;;17289:34;;17359:15;;;;17354:2;17339:18;;17332:43;17406:2;17391:18;;17384:34;;;;17239:2;17224:18;;17049:375::o;17429:304::-;-1:-1:-1;;;;;17659:15:131;;;17641:34;;17711:15;;17706:2;17691:18;;17684:43;17591:2;17576:18;;17429:304::o;17738:217::-;17778:1;17804;17794:132;;17848:10;17843:3;17839:20;17836:1;17829:31;17883:4;17880:1;17873:15;17911:4;17908:1;17901:15;17794:132;-1:-1:-1;17940:9:131;;17738:217::o;17960:125::-;18025:9;;;18046:10;;;18043:36;;;18059:18;;:::i;18505:380::-;18584:1;18580:12;;;;18627;;;18648:61;;18702:4;18694:6;18690:17;18680:27;;18648:61;18755:2;18747:6;18744:14;18724:18;18721:38;18718:161;;18801:10;18796:3;18792:20;18789:1;18782:31;18836:4;18833:1;18826:15;18864:4;18861:1;18854:15;18718:161;;18505:380;;;:::o;19016:545::-;19118:2;19113:3;19110:11;19107:448;;;19154:1;19179:5;19175:2;19168:17;19224:4;19220:2;19210:19;19294:2;19282:10;19278:19;19275:1;19271:27;19265:4;19261:38;19330:4;19318:10;19315:20;19312:47;;;-1:-1:-1;19353:4:131;19312:47;19408:2;19403:3;19399:12;19396:1;19392:20;19386:4;19382:31;19372:41;;19463:82;19481:2;19474:5;19471:13;19463:82;;;19526:17;;;19507:1;19496:13;19463:82;;;19467:3;;;19016:545;;;:::o;19737:1352::-;19857:10;;-1:-1:-1;;;;;19879:30:131;;19876:56;;;19912:18;;:::i;:::-;19941:97;20031:6;19991:38;20023:4;20017:11;19991:38;:::i;:::-;19985:4;19941:97;:::i;:::-;20093:4;;20157:2;20146:14;;20174:1;20169:663;;;;20876:1;20893:6;20890:89;;;-1:-1:-1;20945:19:131;;;20939:26;20890:89;-1:-1:-1;;19694:1:131;19690:11;;;19686:24;19682:29;19672:40;19718:1;19714:11;;;19669:57;20992:81;;20139:944;;20169:663;18963:1;18956:14;;;19000:4;18987:18;;-1:-1:-1;;20205:20:131;;;20323:236;20337:7;20334:1;20331:14;20323:236;;;20426:19;;;20420:26;20405:42;;20518:27;;;;20486:1;20474:14;;;;20353:19;;20323:236;;;20327:3;20587:6;20578:7;20575:19;20572:201;;;20648:19;;;20642:26;-1:-1:-1;;20731:1:131;20727:14;;;20743:3;20723:24;20719:37;20715:42;20700:58;20685:74;;20572:201;-1:-1:-1;;;;;20819:1:131;20803:14;;;20799:22;20786:36;;-1:-1:-1;19737:1352:131:o;21094:251::-;21164:6;21217:2;21205:9;21196:7;21192:23;21188:32;21185:52;;;21233:1;21230;21223:12;21185:52;21265:9;21259:16;21284:31;21309:5;21284:31;:::i;21350:127::-;21411:10;21406:3;21402:20;21399:1;21392:31;21442:4;21439:1;21432:15;21466:4;21463:1;21456:15;21482:1011;21577:6;21608:2;21651;21639:9;21630:7;21626:23;21622:32;21619:52;;;21667:1;21664;21657:12;21619:52;21694:16;;-1:-1:-1;;;;;21759:14:131;;;21756:34;;;21786:1;21783;21776:12;21756:34;21824:6;21813:9;21809:22;21799:32;;21869:7;21862:4;21858:2;21854:13;21850:27;21840:55;;21891:1;21888;21881:12;21840:55;21920:2;21914:9;21942:2;21938;21935:10;21932:36;;;21948:18;;:::i;:::-;21994:2;21991:1;21987:10;21977:20;;22017:28;22041:2;22037;22033:11;22017:28;:::i;:::-;22079:15;;;22149:11;;;22145:20;;;22110:12;;;;22177:19;;;22174:39;;;22209:1;22206;22199:12;22174:39;22233:11;;;;22253:210;22269:6;22264:3;22261:15;22253:210;;;22342:3;22336:10;22323:23;;22359:31;22384:5;22359:31;:::i;:::-;22403:18;;;22286:12;;;;22441;;;;22253:210;;;22482:5;21482:1011;-1:-1:-1;;;;;;;;21482:1011:131:o;22498:135::-;22537:3;22558:17;;;22555:43;;22578:18;;:::i;:::-;-1:-1:-1;22625:1:131;22614:13;;22498:135::o;22638:128::-;22705:9;;;22726:11;;;22723:37;;;22740:18;;:::i;22771:772::-;22821:3;22862:5;22856:12;22891:36;22917:9;22891:36;:::i;:::-;22936:19;;;22974:4;22997:1;23014:18;;;23041:146;;;;23201:1;23196:341;;;;23007:530;;23041:146;-1:-1:-1;;23083:24:131;;23069:12;;;23062:46;23155:14;;23148:22;23145:1;23141:30;23132:40;;23128:49;;;-1:-1:-1;23041:146:131;;23196:341;23227:5;23224:1;23217:16;23274:2;23271:1;23261:16;23299:1;23313:174;23327:6;23324:1;23321:13;23313:174;;;23414:14;;23396:11;;;23392:20;;23385:44;23457:16;;;;23342:10;;23313:174;;;23511:11;;23507:20;;;-1:-1:-1;;23007:530:131;;;;;;22771:772;;;;:::o;23548:252::-;23635:5;23629:12;23624:3;23617:25;23599:3;23688:4;23681:5;23677:16;23671:23;23726:4;23719;23714:3;23710:14;23703:28;23747:47;23788:4;23783:3;23779:14;23765:12;23747:47;:::i;23805:461::-;23858:3;23896:5;23890:12;23923:6;23918:3;23911:19;23949:4;23978:2;23973:3;23969:12;23962:19;;24015:2;24008:5;24004:14;24036:1;24046:195;24060:6;24057:1;24054:13;24046:195;;;24125:13;;-1:-1:-1;;;;;24121:39:131;24109:52;;24181:12;;;;24216:15;;;;24157:1;24075:9;24046:195;;;-1:-1:-1;24257:3:131;;23805:461;-1:-1:-1;;;;;23805:461:131:o;24271:804::-;24631:6;24620:9;24613:25;24674:3;24669:2;24658:9;24654:18;24647:31;24594:4;24701:54;24750:3;24739:9;24735:19;24727:6;24701:54;:::i;:::-;24803:9;24795:6;24791:22;24786:2;24775:9;24771:18;24764:50;24837:42;24872:6;24864;24837:42;:::i;:::-;-1:-1:-1;;;;;24915:32:131;;24910:2;24895:18;;24888:60;24985:22;;;24979:3;24964:19;;24957:51;24823:56;-1:-1:-1;25025:44:131;24823:56;25054:6;25025:44;:::i;25269:500::-;25523:6;25512:9;25505:25;25566:2;25561;25550:9;25546:18;25539:30;25486:4;25592:53;25641:2;25630:9;25626:18;25618:6;25592:53;:::i;:::-;25693:9;25685:6;25681:22;25676:2;25665:9;25661:18;25654:50;25721:42;25756:6;25748;25721:42;:::i;26389:408::-;26591:2;26573:21;;;26630:2;26610:18;;;26603:30;-1:-1:-1;;;;;;;;;;;26664:2:131;26649:18;;26642:62;-1:-1:-1;;;26735:2:131;26720:18;;26713:42;26787:3;26772:19;;26389:408::o;26802:::-;27004:2;26986:21;;;27043:2;27023:18;;;27016:30;-1:-1:-1;;;;;;;;;;;27077:2:131;27062:18;;27055:62;-1:-1:-1;;;27148:2:131;27133:18;;27126:42;27200:3;27185:19;;26802:408::o;27921:315::-;-1:-1:-1;;;;;28096:32:131;;28078:51;;28165:2;28160;28145:18;;28138:30;;;-1:-1:-1;;28185:45:131;;28211:18;;28203:6;28185:45;:::i;28919:127::-;28980:10;28975:3;28971:20;28968:1;28961:31;29011:4;29008:1;29001:15;29035:4;29032:1;29025:15;29051:1653;29143:6;29174:2;29217;29205:9;29196:7;29192:23;29188:32;29185:52;;;29233:1;29230;29223:12;29185:52;29260:16;;-1:-1:-1;;;;;29325:14:131;;;29322:34;;;29352:1;29349;29342:12;29322:34;29375:22;;;;29431:4;29413:16;;;29409:27;29406:47;;;29449:1;29446;29439:12;29406:47;29475:22;;:::i;:::-;29526:2;29520:9;29513:5;29506:24;29568:2;29564;29560:11;29554:18;29581:33;29606:7;29581:33;:::i;:::-;29630:14;;;29623:31;29692:2;29684:11;;29678:18;29705:33;29678:18;29705:33;:::i;:::-;29765:2;29754:14;;29747:31;29817:2;29809:11;;29803:18;29833:16;;;29830:36;;;29862:1;29859;29852:12;29830:36;29885:17;;29936:2;29918:16;;;29914:25;29911:45;;;29952:1;29949;29942:12;29911:45;29980:22;;:::i;:::-;30033:2;30027:9;30018:7;30011:26;30076:2;30072;30068:11;30062:18;30105:2;30095:8;30092:16;30089:36;;;30121:1;30118;30111:12;30089:36;30144:17;;;-1:-1:-1;30192:4:131;30184:13;;30180:27;-1:-1:-1;30170:55:131;;30221:1;30218;30211:12;30170:55;30250:2;30244:9;30234:19;;30275:49;30291:32;30320:2;30291:32;:::i;30275:49::-;30347:2;30340:5;30333:17;30387:7;30382:2;30377;30373;30369:11;30365:20;30362:33;30359:53;;;30408:1;30405;30398:12;30359:53;30421:67;30485:2;30480;30473:5;30469:14;30464:2;30460;30456:11;30421:67;:::i;:::-;30504:16;;;30497:31;;;;-1:-1:-1;30555:2:131;30544:14;;30537:31;;;;-1:-1:-1;30615:3:131;30607:12;;;30601:19;30584:15;;;30577:44;30668:3;30660:12;;;30654:19;30637:15;;;30630:44;30548:5;29051:1653;-1:-1:-1;;;29051:1653:131:o;30709:407::-;30911:2;30893:21;;;30950:2;30930:18;;;30923:30;30989:34;30984:2;30969:18;;30962:62;-1:-1:-1;;;31055:2:131;31040:18;;31033:41;31106:3;31091:19;;30709:407::o;31121:143::-;31205:1;31198:5;31195:12;31185:46;;31211:18;;:::i;:::-;31240;;31121:143::o;31269:142::-;31352:1;31345:5;31342:12;31332:46;;31358:18;;:::i;31953:1260::-;32143:4;32185:3;32174:9;32170:19;32162:27;;32214:6;32208:13;32254:2;32248:9;32237;32230:28;32310:4;32306:2;32302:13;32296:20;32289:4;32278:9;32274:20;32267:50;32369:4;32365:2;32361:13;32355:20;32348:4;32337:9;32333:20;32326:50;32428:4;32424:2;32420:13;32414:20;32407:4;32396:9;32392:20;32385:50;;32482:4;32474:6;32470:17;32464:24;32497:64;32555:4;32544:9;32540:20;32526:12;32497:64;:::i;:::-;;32610:4;32602:6;32598:17;32592:24;32625:65;32684:4;32673:9;32669:20;32653:14;32625:65;:::i;:::-;-1:-1:-1;32739:4:131;32727:17;;;32721:24;31491:12;32821:4;32806:20;;31479:25;32876:4;32864:17;;;32858:24;31635:12;;-1:-1:-1;;;;;31631:21:131;;;32957:4;32942:20;;31619:34;31706:4;31695:16;;31689:23;31685:32;31669:14;;;31662:56;31767:4;31756:16;;31750:23;31734:14;;;31727:47;31812:16;;;31806:23;31790:14;;;31783:47;31868:16;;31862:23;31846:14;;;31839:47;31599:3;31924:16;;;31918:23;31902:14;;;31895:47;33000:17;;32994:24;33027:58;33077:6;33062:22;;32994:24;33027:58;:::i;:::-;;33134:4;33126:6;33122:17;33116:24;33149:58;33199:6;33188:9;33184:22;33168:14;33149:58;:::i;:::-;;31953:1260;;;;:::o;33218:979::-;33643:6;33632:9;33625:25;33606:4;33686:1;33682;33677:3;33673:11;33669:19;33736:2;33728:6;33724:15;33719:2;33708:9;33704:18;33697:43;33776:3;33771:2;33760:9;33756:18;33749:31;33803:46;33844:3;33833:9;33829:19;33821:6;33803:46;:::i;:::-;33897:2;33889:6;33885:15;33880:2;33869:9;33865:18;33858:43;33938:6;33932:3;33921:9;33917:19;33910:35;33994:9;33986:6;33982:22;33976:3;33965:9;33961:19;33954:51;34028:42;34063:6;34055;34028:42;:::i;:::-;34014:56;;;34119:9;34111:6;34107:22;34101:3;34090:9;34086:19;34079:51;34147:44;34184:6;34176;34147:44;:::i;:::-;34139:52;33218:979;-1:-1:-1;;;;;;;;;;33218:979:131:o;34202:613::-;34477:25;;;-1:-1:-1;;;;;34576:15:131;;;34571:2;34556:18;;34549:43;34628:15;;;34623:2;34608:18;;34601:43;34680:15;;34675:2;34660:18;;34653:43;34529:3;34727;34712:19;;34705:32;;;34458:4;;34754:55;;34789:19;;34781:6;34754:55;:::i;36989:812::-;-1:-1:-1;;;37395:3:131;37388:38;37370:3;37455:6;37449:13;37471:75;37539:6;37534:2;37529:3;37525:12;37518:4;37510:6;37506:17;37471:75;:::i;:::-;-1:-1:-1;;;37605:2:131;37565:16;;;37597:11;;;37590:40;37655:13;;37677:76;37655:13;37739:2;37731:11;;37724:4;37712:17;;37677:76;:::i;:::-;37773:17;37792:2;37769:26;;36989:812;-1:-1:-1;;;;36989:812:131:o;37806:245::-;37873:6;37926:2;37914:9;37905:7;37901:23;37897:32;37894:52;;;37942:1;37939;37932:12;37894:52;37974:9;37968:16;37993:28;38015:5;37993:28;:::i;39088:136::-;39127:3;39155:5;39145:39;;39164:18;;:::i;:::-;-1:-1:-1;;;39200:18:131;;39088:136::o;39997:287::-;40126:3;40164:6;40158:13;40180:66;40239:6;40234:3;40227:4;40219:6;40215:17;40180:66;:::i;:::-;40262:16;;;;;39997:287;-1:-1:-1;;39997:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7646,"length":32},{"start":7713,"length":32},{"start":7964,"length":32},{"start":8031,"length":32},{"start":8387,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":\"RegistryCommunityV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":"RegistryCommunityV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75245"},{"astId":70502,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)74978"},{"astId":70505,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)74978":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75245":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","id":72175,"exportedSymbols":{"AccessControlUpgradeable":[52697],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"ERC165Checker":[57919],"ERC1967Proxy":[55021],"FAllo":[74978],"IAllo":[2610],"IERC20":[56528],"IPointStrategy":[65536],"IRegistry":[2802],"IRegistryFactory":[70017],"ISafe":[75245],"Member":[70271],"Metadata":[3098],"PointSystem":[65545],"ProxyOwnableUpgrader":[70199],"ReentrancyGuardUpgradeable":[53237],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"SafeERC20":[56965],"Strategies":[70275],"UUPSUpgradeable":[55672],"Upgrades":[61176]},"nodeType":"SourceUnit","src":"42:26085:104","nodes":[{"id":70201,"nodeType":"PragmaDirective","src":"42:24:104","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70203,"nodeType":"ImportDirective","src":"68:70:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":56529,"symbolAliases":[{"foreign":{"id":70202,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56528,"src":"76:6:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70205,"nodeType":"ImportDirective","src":"139:82:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","file":"@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":56966,"symbolAliases":[{"foreign":{"id":70204,"name":"SafeERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56965,"src":"147:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70207,"nodeType":"ImportDirective","src":"222:92:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165Checker.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":57920,"symbolAliases":[{"foreign":{"id":70206,"name":"ERC165Checker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57919,"src":"230:13:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70209,"nodeType":"ImportDirective","src":"315:88:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":70208,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"323:15:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70211,"nodeType":"ImportDirective","src":"405:132:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":53238,"symbolAliases":[{"foreign":{"id":70210,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53237,"src":"413:26:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70213,"nodeType":"ImportDirective","src":"538:126:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":52698,"symbolAliases":[{"foreign":{"id":70212,"name":"AccessControlUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52697,"src":"546:24:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70215,"nodeType":"ImportDirective","src":"666:66:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"allo-v2-contracts/core/interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":2611,"symbolAliases":[{"foreign":{"id":70214,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"674:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70217,"nodeType":"ImportDirective","src":"733:65:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":70216,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"741:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70220,"nodeType":"ImportDirective","src":"799:84:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":70218,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"807:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70219,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"818:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70222,"nodeType":"ImportDirective","src":"884:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","file":"../interfaces/FAllo.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":74979,"symbolAliases":[{"foreign":{"id":70221,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74978,"src":"892:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70224,"nodeType":"ImportDirective","src":"931:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ISafe.sol","file":"../interfaces/ISafe.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":75262,"symbolAliases":[{"foreign":{"id":70223,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75245,"src":"939:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70226,"nodeType":"ImportDirective","src":"978:57:104","nodes":[],"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","file":"../IRegistryFactory.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":70018,"symbolAliases":[{"foreign":{"id":70225,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"986:16:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70231,"nodeType":"ImportDirective","src":"1036:143:104","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":70227,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"1049:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70228,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"1069:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70229,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"1089:30:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70230,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"1125:11:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70233,"nodeType":"ImportDirective","src":"1180:66:104","nodes":[],"absolutePath":"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol","file":"@openzeppelin/foundry/LegacyUpgrades.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":61297,"symbolAliases":[{"foreign":{"id":70232,"name":"Upgrades","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61176,"src":"1188:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70235,"nodeType":"ImportDirective","src":"1247:84:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":70234,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"1255:12:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70237,"nodeType":"ImportDirective","src":"1332:65:104","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":70236,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"1340:20:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70264,"nodeType":"StructDefinition","src":"2292:368:104","nodes":[],"canonicalName":"RegistryCommunityInitializeParamsV0_0","members":[{"constant":false,"id":70239,"mutability":"mutable","name":"_allo","nameLocation":"2351:5:104","nodeType":"VariableDeclaration","scope":70264,"src":"2343:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70238,"name":"address","nodeType":"ElementaryTypeName","src":"2343:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70242,"mutability":"mutable","name":"_gardenToken","nameLocation":"2369:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2362:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":70241,"nodeType":"UserDefinedTypeName","pathNode":{"id":70240,"name":"IERC20","nameLocations":["2362:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"2362:6:104"},"referencedDeclaration":56528,"src":"2362:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":70244,"mutability":"mutable","name":"_registerStakeAmount","nameLocation":"2395:20:104","nodeType":"VariableDeclaration","scope":70264,"src":"2387:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70243,"name":"uint256","nodeType":"ElementaryTypeName","src":"2387:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70246,"mutability":"mutable","name":"_communityFee","nameLocation":"2429:13:104","nodeType":"VariableDeclaration","scope":70264,"src":"2421:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70245,"name":"uint256","nodeType":"ElementaryTypeName","src":"2421:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70248,"mutability":"mutable","name":"_nonce","nameLocation":"2456:6:104","nodeType":"VariableDeclaration","scope":70264,"src":"2448:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70247,"name":"uint256","nodeType":"ElementaryTypeName","src":"2448:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70250,"mutability":"mutable","name":"_registryFactory","nameLocation":"2476:16:104","nodeType":"VariableDeclaration","scope":70264,"src":"2468:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70249,"name":"address","nodeType":"ElementaryTypeName","src":"2468:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70252,"mutability":"mutable","name":"_feeReceiver","nameLocation":"2506:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2498:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70251,"name":"address","nodeType":"ElementaryTypeName","src":"2498:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70255,"mutability":"mutable","name":"_metadata","nameLocation":"2533:9:104","nodeType":"VariableDeclaration","scope":70264,"src":"2524:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":70254,"nodeType":"UserDefinedTypeName","pathNode":{"id":70253,"name":"Metadata","nameLocations":["2524:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2524:8:104"},"referencedDeclaration":3098,"src":"2524:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":70257,"mutability":"mutable","name":"_councilSafe","nameLocation":"2564:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2548:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":70256,"name":"address","nodeType":"ElementaryTypeName","src":"2548:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":70259,"mutability":"mutable","name":"_communityName","nameLocation":"2589:14:104","nodeType":"VariableDeclaration","scope":70264,"src":"2582:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70258,"name":"string","nodeType":"ElementaryTypeName","src":"2582:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70261,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"2614:14:104","nodeType":"VariableDeclaration","scope":70264,"src":"2609:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70260,"name":"bool","nodeType":"ElementaryTypeName","src":"2609:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":70263,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"2641:16:104","nodeType":"VariableDeclaration","scope":70264,"src":"2634:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70262,"name":"string","nodeType":"ElementaryTypeName","src":"2634:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"RegistryCommunityInitializeParamsV0_0","nameLocation":"2299:37:104","scope":72175,"visibility":"public"},{"id":70271,"nodeType":"StructDefinition","src":"2662:86:104","nodes":[],"canonicalName":"Member","members":[{"constant":false,"id":70266,"mutability":"mutable","name":"member","nameLocation":"2690:6:104","nodeType":"VariableDeclaration","scope":70271,"src":"2682:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70265,"name":"address","nodeType":"ElementaryTypeName","src":"2682:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70268,"mutability":"mutable","name":"stakedAmount","nameLocation":"2710:12:104","nodeType":"VariableDeclaration","scope":70271,"src":"2702:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70267,"name":"uint256","nodeType":"ElementaryTypeName","src":"2702:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70270,"mutability":"mutable","name":"isRegistered","nameLocation":"2733:12:104","nodeType":"VariableDeclaration","scope":70271,"src":"2728:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70269,"name":"bool","nodeType":"ElementaryTypeName","src":"2728:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"Member","nameLocation":"2669:6:104","scope":72175,"visibility":"public"},{"id":70275,"nodeType":"StructDefinition","src":"2750:47:104","nodes":[],"canonicalName":"Strategies","members":[{"constant":false,"id":70274,"mutability":"mutable","name":"strategies","nameLocation":"2784:10:104","nodeType":"VariableDeclaration","scope":70275,"src":"2774:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70272,"name":"address","nodeType":"ElementaryTypeName","src":"2774:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70273,"nodeType":"ArrayTypeName","src":"2774:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"Strategies","nameLocation":"2757:10:104","scope":72175,"visibility":"public"},{"id":72174,"nodeType":"ContractDefinition","src":"2850:23276:104","nodes":[{"id":70286,"nodeType":"EventDefinition","src":"3131:29:104","nodes":[],"anonymous":false,"eventSelector":"aaded18d4d508696508b945d03ff3d168110dbb73e17aeda699745655fa958d2","name":"AlloSet","nameLocation":"3137:7:104","parameters":{"id":70285,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70284,"indexed":false,"mutability":"mutable","name":"_allo","nameLocation":"3153:5:104","nodeType":"VariableDeclaration","scope":70286,"src":"3145:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70283,"name":"address","nodeType":"ElementaryTypeName","src":"3145:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3144:15:104"}},{"id":70290,"nodeType":"EventDefinition","src":"3165:36:104","nodes":[],"anonymous":false,"eventSelector":"ad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb68872","name":"CouncilSafeSet","nameLocation":"3171:14:104","parameters":{"id":70289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70288,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"3194:5:104","nodeType":"VariableDeclaration","scope":70290,"src":"3186:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70287,"name":"address","nodeType":"ElementaryTypeName","src":"3186:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3185:15:104"}},{"id":70296,"nodeType":"EventDefinition","src":"3206:74:104","nodes":[],"anonymous":false,"eventSelector":"83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8","name":"CouncilSafeChangeStarted","nameLocation":"3212:24:104","parameters":{"id":70295,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70292,"indexed":false,"mutability":"mutable","name":"_safeOwner","nameLocation":"3245:10:104","nodeType":"VariableDeclaration","scope":70296,"src":"3237:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70291,"name":"address","nodeType":"ElementaryTypeName","src":"3237:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70294,"indexed":false,"mutability":"mutable","name":"_newSafeOwner","nameLocation":"3265:13:104","nodeType":"VariableDeclaration","scope":70296,"src":"3257:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70293,"name":"address","nodeType":"ElementaryTypeName","src":"3257:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3236:43:104"}},{"id":70302,"nodeType":"EventDefinition","src":"3285:63:104","nodes":[],"anonymous":false,"eventSelector":"67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f7689","name":"MemberRegistered","nameLocation":"3291:16:104","parameters":{"id":70301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70298,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3316:7:104","nodeType":"VariableDeclaration","scope":70302,"src":"3308:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70297,"name":"address","nodeType":"ElementaryTypeName","src":"3308:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70300,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3333:13:104","nodeType":"VariableDeclaration","scope":70302,"src":"3325:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70299,"name":"uint256","nodeType":"ElementaryTypeName","src":"3325:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3307:40:104"}},{"id":70308,"nodeType":"EventDefinition","src":"3353:67:104","nodes":[],"anonymous":false,"eventSelector":"a13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f4","name":"MemberUnregistered","nameLocation":"3359:18:104","parameters":{"id":70307,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70304,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3386:7:104","nodeType":"VariableDeclaration","scope":70308,"src":"3378:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70303,"name":"address","nodeType":"ElementaryTypeName","src":"3378:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70306,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3403:15:104","nodeType":"VariableDeclaration","scope":70308,"src":"3395:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70305,"name":"uint256","nodeType":"ElementaryTypeName","src":"3395:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3377:42:104"}},{"id":70316,"nodeType":"EventDefinition","src":"3425:87:104","nodes":[],"anonymous":false,"eventSelector":"b5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3","name":"MemberKicked","nameLocation":"3431:12:104","parameters":{"id":70315,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70310,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3452:7:104","nodeType":"VariableDeclaration","scope":70316,"src":"3444:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70309,"name":"address","nodeType":"ElementaryTypeName","src":"3444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70312,"indexed":false,"mutability":"mutable","name":"_transferAddress","nameLocation":"3469:16:104","nodeType":"VariableDeclaration","scope":70316,"src":"3461:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70311,"name":"address","nodeType":"ElementaryTypeName","src":"3461:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70314,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3495:15:104","nodeType":"VariableDeclaration","scope":70316,"src":"3487:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70313,"name":"uint256","nodeType":"ElementaryTypeName","src":"3487:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3443:68:104"}},{"id":70320,"nodeType":"EventDefinition","src":"3517:43:104","nodes":[],"anonymous":false,"eventSelector":"611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6","name":"CommunityFeeUpdated","nameLocation":"3523:19:104","parameters":{"id":70319,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70318,"indexed":false,"mutability":"mutable","name":"_newFee","nameLocation":"3551:7:104","nodeType":"VariableDeclaration","scope":70320,"src":"3543:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70317,"name":"uint256","nodeType":"ElementaryTypeName","src":"3543:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3542:17:104"}},{"id":70329,"nodeType":"EventDefinition","src":"3565:89:104","nodes":[],"anonymous":false,"eventSelector":"2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed03205","name":"RegistryInitialized","nameLocation":"3571:19:104","parameters":{"id":70328,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70322,"indexed":false,"mutability":"mutable","name":"_profileId","nameLocation":"3599:10:104","nodeType":"VariableDeclaration","scope":70329,"src":"3591:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70321,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3591:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":70324,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"3618:14:104","nodeType":"VariableDeclaration","scope":70329,"src":"3611:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70323,"name":"string","nodeType":"ElementaryTypeName","src":"3611:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70327,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"3643:9:104","nodeType":"VariableDeclaration","scope":70329,"src":"3634:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70326,"nodeType":"UserDefinedTypeName","pathNode":{"id":70325,"name":"Metadata","nameLocations":["3634:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"3634:8:104"},"referencedDeclaration":3098,"src":"3634:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"3590:63:104"}},{"id":70333,"nodeType":"EventDefinition","src":"3659:39:104","nodes":[],"anonymous":false,"eventSelector":"3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1","name":"StrategyAdded","nameLocation":"3665:13:104","parameters":{"id":70332,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70331,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3687:9:104","nodeType":"VariableDeclaration","scope":70333,"src":"3679:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70330,"name":"address","nodeType":"ElementaryTypeName","src":"3679:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3678:19:104"}},{"id":70337,"nodeType":"EventDefinition","src":"3703:41:104","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"3709:15:104","parameters":{"id":70336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70335,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3733:9:104","nodeType":"VariableDeclaration","scope":70337,"src":"3725:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70334,"name":"address","nodeType":"ElementaryTypeName","src":"3725:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3724:19:104"}},{"id":70345,"nodeType":"EventDefinition","src":"3749:93:104","nodes":[],"anonymous":false,"eventSelector":"f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec","name":"MemberActivatedStrategy","nameLocation":"3755:23:104","parameters":{"id":70344,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70339,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3787:7:104","nodeType":"VariableDeclaration","scope":70345,"src":"3779:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70338,"name":"address","nodeType":"ElementaryTypeName","src":"3779:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70341,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3804:9:104","nodeType":"VariableDeclaration","scope":70345,"src":"3796:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70340,"name":"address","nodeType":"ElementaryTypeName","src":"3796:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70343,"indexed":false,"mutability":"mutable","name":"_pointsToIncrease","nameLocation":"3823:17:104","nodeType":"VariableDeclaration","scope":70345,"src":"3815:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70342,"name":"uint256","nodeType":"ElementaryTypeName","src":"3815:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3778:63:104"}},{"id":70351,"nodeType":"EventDefinition","src":"3847:68:104","nodes":[],"anonymous":false,"eventSelector":"00de109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b","name":"MemberDeactivatedStrategy","nameLocation":"3853:25:104","parameters":{"id":70350,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70347,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3887:7:104","nodeType":"VariableDeclaration","scope":70351,"src":"3879:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70346,"name":"address","nodeType":"ElementaryTypeName","src":"3879:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70349,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3904:9:104","nodeType":"VariableDeclaration","scope":70351,"src":"3896:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70348,"name":"address","nodeType":"ElementaryTypeName","src":"3896:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3878:36:104"}},{"id":70355,"nodeType":"EventDefinition","src":"3920:47:104","nodes":[],"anonymous":false,"eventSelector":"5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f","name":"BasisStakedAmountSet","nameLocation":"3926:20:104","parameters":{"id":70354,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70353,"indexed":false,"mutability":"mutable","name":"_newAmount","nameLocation":"3955:10:104","nodeType":"VariableDeclaration","scope":70355,"src":"3947:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70352,"name":"uint256","nodeType":"ElementaryTypeName","src":"3947:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3946:20:104"}},{"id":70361,"nodeType":"EventDefinition","src":"3972:67:104","nodes":[],"anonymous":false,"eventSelector":"576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f","name":"MemberPowerIncreased","nameLocation":"3978:20:104","parameters":{"id":70360,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70357,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4007:7:104","nodeType":"VariableDeclaration","scope":70361,"src":"3999:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70356,"name":"address","nodeType":"ElementaryTypeName","src":"3999:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70359,"indexed":false,"mutability":"mutable","name":"_stakedAmount","nameLocation":"4024:13:104","nodeType":"VariableDeclaration","scope":70361,"src":"4016:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70358,"name":"uint256","nodeType":"ElementaryTypeName","src":"4016:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3998:40:104"}},{"id":70367,"nodeType":"EventDefinition","src":"4044:69:104","nodes":[],"anonymous":false,"eventSelector":"6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8","name":"MemberPowerDecreased","nameLocation":"4050:20:104","parameters":{"id":70366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70363,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4079:7:104","nodeType":"VariableDeclaration","scope":70367,"src":"4071:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70362,"name":"address","nodeType":"ElementaryTypeName","src":"4071:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70365,"indexed":false,"mutability":"mutable","name":"_unstakedAmount","nameLocation":"4096:15:104","nodeType":"VariableDeclaration","scope":70367,"src":"4088:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70364,"name":"uint256","nodeType":"ElementaryTypeName","src":"4088:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4070:42:104"}},{"id":70380,"nodeType":"EventDefinition","src":"4118:110:104","nodes":[],"anonymous":false,"eventSelector":"778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d283","name":"PoolCreated","nameLocation":"4124:11:104","parameters":{"id":70379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70369,"indexed":false,"mutability":"mutable","name":"_poolId","nameLocation":"4144:7:104","nodeType":"VariableDeclaration","scope":70380,"src":"4136:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70368,"name":"uint256","nodeType":"ElementaryTypeName","src":"4136:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70371,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4161:9:104","nodeType":"VariableDeclaration","scope":70380,"src":"4153:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70370,"name":"address","nodeType":"ElementaryTypeName","src":"4153:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70373,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"4180:10:104","nodeType":"VariableDeclaration","scope":70380,"src":"4172:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70372,"name":"address","nodeType":"ElementaryTypeName","src":"4172:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70375,"indexed":false,"mutability":"mutable","name":"_token","nameLocation":"4200:6:104","nodeType":"VariableDeclaration","scope":70380,"src":"4192:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70374,"name":"address","nodeType":"ElementaryTypeName","src":"4192:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70378,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4217:9:104","nodeType":"VariableDeclaration","scope":70380,"src":"4208:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70377,"nodeType":"UserDefinedTypeName","pathNode":{"id":70376,"name":"Metadata","nameLocations":["4208:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"4208:8:104"},"referencedDeclaration":3098,"src":"4208:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"4135:92:104"}},{"id":70382,"nodeType":"ErrorDefinition","src":"4414:28:104","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4420:19:104","parameters":{"id":70381,"nodeType":"ParameterList","parameters":[],"src":"4439:2:104"}},{"id":70384,"nodeType":"ErrorDefinition","src":"4447:29:104","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4453:20:104","parameters":{"id":70383,"nodeType":"ParameterList","parameters":[],"src":"4473:2:104"}},{"id":70388,"nodeType":"ErrorDefinition","src":"4481:38:104","nodes":[],"errorSelector":"fc4be72f","name":"UserNotInCouncil","nameLocation":"4487:16:104","parameters":{"id":70387,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70386,"mutability":"mutable","name":"_user","nameLocation":"4512:5:104","nodeType":"VariableDeclaration","scope":70388,"src":"4504:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70385,"name":"address","nodeType":"ElementaryTypeName","src":"4504:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4503:15:104"}},{"id":70390,"nodeType":"ErrorDefinition","src":"4524:26:104","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4530:17:104","parameters":{"id":70389,"nodeType":"ParameterList","parameters":[],"src":"4547:2:104"}},{"id":70392,"nodeType":"ErrorDefinition","src":"4555:30:104","nodes":[],"errorSelector":"9e4a65f6","name":"UserAlreadyRegistered","nameLocation":"4561:21:104","parameters":{"id":70391,"nodeType":"ParameterList","parameters":[],"src":"4582:2:104"}},{"id":70394,"nodeType":"ErrorDefinition","src":"4590:27:104","nodes":[],"errorSelector":"e9a644b8","name":"UserNotGardenOwner","nameLocation":"4596:18:104","parameters":{"id":70393,"nodeType":"ParameterList","parameters":[],"src":"4614:2:104"}},{"id":70396,"nodeType":"ErrorDefinition","src":"4622:29:104","nodes":[],"errorSelector":"d5b9bc96","name":"UserAlreadyActivated","nameLocation":"4628:20:104","parameters":{"id":70395,"nodeType":"ParameterList","parameters":[],"src":"4648:2:104"}},{"id":70398,"nodeType":"ErrorDefinition","src":"4656:31:104","nodes":[],"errorSelector":"c12369dc","name":"UserAlreadyDeactivated","nameLocation":"4662:22:104","parameters":{"id":70397,"nodeType":"ParameterList","parameters":[],"src":"4684:2:104"}},{"id":70400,"nodeType":"ErrorDefinition","src":"4692:23:104","nodes":[],"errorSelector":"968a4d2c","name":"StrategyExists","nameLocation":"4698:14:104","parameters":{"id":70399,"nodeType":"ParameterList","parameters":[],"src":"4712:2:104"}},{"id":70402,"nodeType":"ErrorDefinition","src":"4720:25:104","nodes":[],"errorSelector":"46c26e4b","name":"StrategyDisabled","nameLocation":"4726:16:104","parameters":{"id":70401,"nodeType":"ParameterList","parameters":[],"src":"4742:2:104"}},{"id":70404,"nodeType":"ErrorDefinition","src":"4750:26:104","nodes":[],"errorSelector":"ebcd0d6e","name":"SenderNotNewOwner","nameLocation":"4756:17:104","parameters":{"id":70403,"nodeType":"ParameterList","parameters":[],"src":"4773:2:104"}},{"id":70406,"nodeType":"ErrorDefinition","src":"4781:26:104","nodes":[],"errorSelector":"bbe79611","name":"SenderNotStrategy","nameLocation":"4787:17:104","parameters":{"id":70405,"nodeType":"ParameterList","parameters":[],"src":"4804:2:104"}},{"id":70408,"nodeType":"ErrorDefinition","src":"4812:26:104","nodes":[],"errorSelector":"c70d18aa","name":"ValueCannotBeZero","nameLocation":"4818:17:104","parameters":{"id":70407,"nodeType":"ParameterList","parameters":[],"src":"4835:2:104"}},{"id":70410,"nodeType":"ErrorDefinition","src":"4843:29:104","nodes":[],"errorSelector":"fe925f7d","name":"NewFeeGreaterThanMax","nameLocation":"4849:20:104","parameters":{"id":70409,"nodeType":"ParameterList","parameters":[],"src":"4869:2:104"}},{"id":70412,"nodeType":"ErrorDefinition","src":"4877:23:104","nodes":[],"errorSelector":"cb63dc72","name":"KickNotEnabled","nameLocation":"4883:14:104","parameters":{"id":70411,"nodeType":"ParameterList","parameters":[],"src":"4897:2:104"}},{"id":70414,"nodeType":"ErrorDefinition","src":"4905:26:104","nodes":[],"errorSelector":"d4d3290e","name":"PointsDeactivated","nameLocation":"4911:17:104","parameters":{"id":70413,"nodeType":"ParameterList","parameters":[],"src":"4928:2:104"}},{"id":70416,"nodeType":"ErrorDefinition","src":"4936:29:104","nodes":[],"errorSelector":"9c47d02e","name":"DecreaseUnderMinimum","nameLocation":"4942:20:104","parameters":{"id":70415,"nodeType":"ParameterList","parameters":[],"src":"4962:2:104"}},{"id":70422,"nodeType":"ErrorDefinition","src":"4970:80:104","nodes":[],"errorSelector":"8a11f318","name":"CantDecreaseMoreThanPower","nameLocation":"4976:25:104","parameters":{"id":70421,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70418,"mutability":"mutable","name":"_decreaseAmount","nameLocation":"5010:15:104","nodeType":"VariableDeclaration","scope":70422,"src":"5002:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70417,"name":"uint256","nodeType":"ElementaryTypeName","src":"5002:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70420,"mutability":"mutable","name":"_currentPower","nameLocation":"5035:13:104","nodeType":"VariableDeclaration","scope":70422,"src":"5027:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70419,"name":"uint256","nodeType":"ElementaryTypeName","src":"5027:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5001:48:104"}},{"id":70425,"nodeType":"UsingForDirective","src":"5056:32:104","nodes":[],"global":false,"libraryName":{"id":70423,"name":"ERC165Checker","nameLocations":["5062:13:104"],"nodeType":"IdentifierPath","referencedDeclaration":57919,"src":"5062:13:104"},"typeName":{"id":70424,"name":"address","nodeType":"ElementaryTypeName","src":"5080:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70429,"nodeType":"UsingForDirective","src":"5093:27:104","nodes":[],"global":false,"libraryName":{"id":70426,"name":"SafeERC20","nameLocations":["5099:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":56965,"src":"5099:9:104"},"typeName":{"id":70428,"nodeType":"UserDefinedTypeName","pathNode":{"id":70427,"name":"IERC20","nameLocations":["5113:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"5113:6:104"},"referencedDeclaration":56528,"src":"5113:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}},{"id":70432,"nodeType":"UsingForDirective","src":"5125:24:104","nodes":[],"global":false,"libraryName":{"id":70430,"name":"Clone","nameLocations":["5131:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":3002,"src":"5131:5:104"},"typeName":{"id":70431,"name":"address","nodeType":"ElementaryTypeName","src":"5141:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70440,"nodeType":"FunctionDefinition","src":"5202:92:104","nodes":[],"body":{"id":70439,"nodeType":"Block","src":"5265:29:104","nodes":[],"statements":[{"expression":{"hexValue":"302e30","id":70437,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5282:5:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"functionReturnParameters":70436,"id":70438,"nodeType":"Return","src":"5275:12:104"}]},"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"5211:7:104","parameters":{"id":70433,"nodeType":"ParameterList","parameters":[],"src":"5218:2:104"},"returnParameters":{"id":70436,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70435,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":70440,"src":"5250:13:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70434,"name":"string","nodeType":"ElementaryTypeName","src":"5250:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5249:15:104"},"scope":72174,"stateMutability":"pure","virtual":true,"visibility":"public"},{"id":70444,"nodeType":"VariableDeclaration","src":"5379:75:104","nodes":[],"constant":true,"documentation":{"id":70441,"nodeType":"StructuredDocumentation","src":"5299:75:104","text":"@notice The native address to represent native token eg: ETH in mainnet"},"functionSelector":"a0cf0aea","mutability":"constant","name":"NATIVE","nameLocation":"5403:6:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70442,"name":"address","nodeType":"ElementaryTypeName","src":"5379:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"hexValue":"307845656565654565656545654565654565456545656545454565656565456565656565656545456545","id":70443,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5412:42:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"},"visibility":"public"},{"id":70450,"nodeType":"VariableDeclaration","src":"5544:49:104","nodes":[],"constant":true,"documentation":{"id":70445,"nodeType":"StructuredDocumentation","src":"5460:79:104","text":"@notice The precision scale used in the contract to avoid loss of precision"},"functionSelector":"d7050f07","mutability":"constant","name":"PRECISION_SCALE","nameLocation":"5568:15:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70446,"name":"uint256","nodeType":"ElementaryTypeName","src":"5544:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":70449,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70447,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5586:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":70448,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5592:1:104","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"5586:7:104","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":70456,"nodeType":"VariableDeclaration","src":"5668:54:104","nodes":[],"constant":true,"documentation":{"id":70451,"nodeType":"StructuredDocumentation","src":"5599:64:104","text":"@notice The maximum fee that can be charged to the community"},"functionSelector":"bc063e1a","mutability":"constant","name":"MAX_FEE","nameLocation":"5692:7:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70452,"name":"uint256","nodeType":"ElementaryTypeName","src":"5668:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70455,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70453,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5702:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":70454,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"5707:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5702:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70459,"nodeType":"VariableDeclaration","src":"5795:34:104","nodes":[],"constant":false,"documentation":{"id":70457,"nodeType":"StructuredDocumentation","src":"5728:62:104","text":"@notice The amount of tokens required to register a member"},"functionSelector":"78a0b8a9","mutability":"mutable","name":"registerStakeAmount","nameLocation":"5810:19:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70458,"name":"uint256","nodeType":"ElementaryTypeName","src":"5795:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70462,"nodeType":"VariableDeclaration","src":"5906:27:104","nodes":[],"constant":false,"documentation":{"id":70460,"nodeType":"StructuredDocumentation","src":"5835:66:104","text":"@notice The fee charged to the community for each registration"},"functionSelector":"8961be6b","mutability":"mutable","name":"communityFee","nameLocation":"5921:12:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70461,"name":"uint256","nodeType":"ElementaryTypeName","src":"5906:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70465,"nodeType":"VariableDeclaration","src":"6000:25:104","nodes":[],"constant":false,"documentation":{"id":70463,"nodeType":"StructuredDocumentation","src":"5939:56:104","text":"@notice The nonce used to create new strategy clones"},"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"6015:10:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70464,"name":"uint256","nodeType":"ElementaryTypeName","src":"6000:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70468,"nodeType":"VariableDeclaration","src":"6099:24:104","nodes":[],"constant":false,"documentation":{"id":70466,"nodeType":"StructuredDocumentation","src":"6031:63:104","text":"@notice The profileId of the community in the Allo Registry"},"functionSelector":"08386eba","mutability":"mutable","name":"profileId","nameLocation":"6114:9:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70467,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6099:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":70471,"nodeType":"VariableDeclaration","src":"6180:25:104","nodes":[],"constant":false,"documentation":{"id":70469,"nodeType":"StructuredDocumentation","src":"6129:46:104","text":"@notice Enable or disable the kick feature"},"functionSelector":"1f787d28","mutability":"mutable","name":"isKickEnabled","nameLocation":"6192:13:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70470,"name":"bool","nodeType":"ElementaryTypeName","src":"6180:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"public"},{"id":70474,"nodeType":"VariableDeclaration","src":"6272:26:104","nodes":[],"constant":false,"documentation":{"id":70472,"nodeType":"StructuredDocumentation","src":"6212:55:104","text":"@notice The address that receives the community fee"},"functionSelector":"b3f00674","mutability":"mutable","name":"feeReceiver","nameLocation":"6287:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70473,"name":"address","nodeType":"ElementaryTypeName","src":"6272:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70477,"nodeType":"VariableDeclaration","src":"6356:30:104","nodes":[],"constant":false,"documentation":{"id":70475,"nodeType":"StructuredDocumentation","src":"6304:47:104","text":"@notice The address of the registry factory"},"functionSelector":"f86c5f89","mutability":"mutable","name":"registryFactory","nameLocation":"6371:15:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70476,"name":"address","nodeType":"ElementaryTypeName","src":"6356:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70480,"nodeType":"VariableDeclaration","src":"6453:38:104","nodes":[],"constant":false,"documentation":{"id":70478,"nodeType":"StructuredDocumentation","src":"6392:56:104","text":"@notice The address of the collateral vault template"},"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"6468:23:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70479,"name":"address","nodeType":"ElementaryTypeName","src":"6453:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70483,"nodeType":"VariableDeclaration","src":"6550:31:104","nodes":[],"constant":false,"documentation":{"id":70481,"nodeType":"StructuredDocumentation","src":"6497:48:104","text":"@notice The address of the strategy template"},"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"6565:16:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70482,"name":"address","nodeType":"ElementaryTypeName","src":"6550:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70486,"nodeType":"VariableDeclaration","src":"6649:41:104","nodes":[],"constant":false,"documentation":{"id":70484,"nodeType":"StructuredDocumentation","src":"6587:57:104","text":"@notice The address of the pending council safe owner"},"functionSelector":"68decabb","mutability":"mutable","name":"pendingCouncilSafe","nameLocation":"6672:18:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":70485,"name":"address","nodeType":"ElementaryTypeName","src":"6649:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"public"},{"id":70490,"nodeType":"VariableDeclaration","src":"6740:25:104","nodes":[],"constant":false,"documentation":{"id":70487,"nodeType":"StructuredDocumentation","src":"6697:38:104","text":"@notice The Registry Allo contract"},"functionSelector":"7b103999","mutability":"mutable","name":"registry","nameLocation":"6757:8:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":70489,"nodeType":"UserDefinedTypeName","pathNode":{"id":70488,"name":"IRegistry","nameLocations":["6740:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"6740:9:104"},"referencedDeclaration":2802,"src":"6740:9:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"public"},{"id":70494,"nodeType":"VariableDeclaration","src":"6828:25:104","nodes":[],"constant":false,"documentation":{"id":70491,"nodeType":"StructuredDocumentation","src":"6771:52:104","text":"@notice The token used to stake in the community"},"functionSelector":"db61d65c","mutability":"mutable","name":"gardenToken","nameLocation":"6842:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":70493,"nodeType":"UserDefinedTypeName","pathNode":{"id":70492,"name":"IERC20","nameLocations":["6828:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"6828:6:104"},"referencedDeclaration":56528,"src":"6828:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"public"},{"id":70498,"nodeType":"VariableDeclaration","src":"6909:24:104","nodes":[],"constant":false,"documentation":{"id":70495,"nodeType":"StructuredDocumentation","src":"6859:45:104","text":"@notice The council safe contract address"},"functionSelector":"6c53db9a","mutability":"mutable","name":"councilSafe","nameLocation":"6922:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"},"typeName":{"id":70497,"nodeType":"UserDefinedTypeName","pathNode":{"id":70496,"name":"ISafe","nameLocations":["6909:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":75245,"src":"6909:5:104"},"referencedDeclaration":75245,"src":"6909:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"visibility":"public"},{"id":70502,"nodeType":"VariableDeclaration","src":"6981:17:104","nodes":[],"constant":false,"documentation":{"id":70499,"nodeType":"StructuredDocumentation","src":"6939:37:104","text":"@notice The Allo contract address"},"functionSelector":"d6d8428d","mutability":"mutable","name":"allo","nameLocation":"6994:4:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"},"typeName":{"id":70501,"nodeType":"UserDefinedTypeName","pathNode":{"id":70500,"name":"FAllo","nameLocations":["6981:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":74978,"src":"6981:5:104"},"referencedDeclaration":74978,"src":"6981:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"visibility":"public"},{"id":70505,"nodeType":"VariableDeclaration","src":"7040:27:104","nodes":[],"constant":false,"documentation":{"id":70503,"nodeType":"StructuredDocumentation","src":"7005:30:104","text":"@notice The community name"},"functionSelector":"c6d572ae","mutability":"mutable","name":"communityName","nameLocation":"7054:13:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":70504,"name":"string","nodeType":"ElementaryTypeName","src":"7040:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":70508,"nodeType":"VariableDeclaration","src":"7125:30:104","nodes":[],"constant":false,"documentation":{"id":70506,"nodeType":"StructuredDocumentation","src":"7073:47:104","text":"@notice The covenant IPFS hash of community"},"functionSelector":"b64e39af","mutability":"mutable","name":"covenantIpfsHash","nameLocation":"7139:16:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":70507,"name":"string","nodeType":"ElementaryTypeName","src":"7125:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":70513,"nodeType":"VariableDeclaration","src":"7271:68:104","nodes":[],"constant":false,"documentation":{"id":70509,"nodeType":"StructuredDocumentation","src":"7219:47:104","text":"@notice List of enabled/disabled strategies"},"functionSelector":"3a871fe1","mutability":"mutable","name":"enabledStrategies","nameLocation":"7322:17:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":70512,"keyName":"strategy","keyNameLocation":"7287:8:104","keyType":{"id":70510,"name":"address","nodeType":"ElementaryTypeName","src":"7279:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7271:43:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isEnabled","valueNameLocation":"7304:9:104","valueType":{"id":70511,"name":"bool","nodeType":"ElementaryTypeName","src":"7299:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"public"},{"id":70520,"nodeType":"VariableDeclaration","src":"7407:98:104","nodes":[],"constant":false,"documentation":{"id":70514,"nodeType":"StructuredDocumentation","src":"7345:57:104","text":"@notice Power points for each member in each strategy"},"functionSelector":"65e3864c","mutability":"mutable","name":"memberPowerInStrategy","nameLocation":"7484:21:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":70519,"keyName":"strategy","keyNameLocation":"7423:8:104","keyType":{"id":70515,"name":"address","nodeType":"ElementaryTypeName","src":"7415:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7407:69:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70518,"keyName":"member","keyNameLocation":"7451:6:104","keyType":{"id":70516,"name":"address","nodeType":"ElementaryTypeName","src":"7443:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7435:40:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"power","valueNameLocation":"7469:5:104","valueType":{"id":70517,"name":"uint256","nodeType":"ElementaryTypeName","src":"7461:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":70526,"nodeType":"VariableDeclaration","src":"7605:60:104","nodes":[],"constant":false,"documentation":{"id":70521,"nodeType":"StructuredDocumentation","src":"7511:89:104","text":"@notice Member information as the staked amount and if is registered in the community"},"functionSelector":"88cfe684","mutability":"mutable","name":"addressToMemberInfo","nameLocation":"7646:19:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member)"},"typeName":{"id":70525,"keyName":"member","keyNameLocation":"7621:6:104","keyType":{"id":70522,"name":"address","nodeType":"ElementaryTypeName","src":"7613:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7605:33:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70524,"nodeType":"UserDefinedTypeName","pathNode":{"id":70523,"name":"Member","nameLocations":["7631:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"7631:6:104"},"referencedDeclaration":70271,"src":"7631:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}}},"visibility":"public"},{"id":70532,"nodeType":"VariableDeclaration","src":"7736:82:104","nodes":[],"constant":false,"documentation":{"id":70527,"nodeType":"StructuredDocumentation","src":"7671:60:104","text":"@notice List of strategies for each member are activated"},"functionSelector":"2b38c69c","mutability":"mutable","name":"strategiesByMember","nameLocation":"7800:18:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"typeName":{"id":70531,"keyName":"member","keyNameLocation":"7752:6:104","keyType":{"id":70528,"name":"address","nodeType":"ElementaryTypeName","src":"7744:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7736:56:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"valueName":"strategiesAddresses","valueNameLocation":"7772:19:104","valueType":{"baseType":{"id":70529,"name":"address","nodeType":"ElementaryTypeName","src":"7762:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70530,"nodeType":"ArrayTypeName","src":"7762:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"visibility":"public"},{"id":70539,"nodeType":"VariableDeclaration","src":"7896:107:104","nodes":[],"constant":false,"documentation":{"id":70533,"nodeType":"StructuredDocumentation","src":"7824:67:104","text":"@notice Mapping to check if a member is activated in a strategy"},"functionSelector":"477a5cc0","mutability":"mutable","name":"memberActivatedInStrategies","nameLocation":"7976:27:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"typeName":{"id":70538,"keyName":"member","keyNameLocation":"7912:6:104","keyType":{"id":70534,"name":"address","nodeType":"ElementaryTypeName","src":"7904:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7896:72:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70537,"keyName":"strategy","keyNameLocation":"7938:8:104","keyType":{"id":70535,"name":"address","nodeType":"ElementaryTypeName","src":"7930:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7922:45:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isActivated","valueNameLocation":"7955:11:104","valueType":{"id":70536,"name":"bool","nodeType":"ElementaryTypeName","src":"7950:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}}},"visibility":"public"},{"id":70543,"nodeType":"VariableDeclaration","src":"8096:24:104","nodes":[],"constant":false,"documentation":{"id":70540,"nodeType":"StructuredDocumentation","src":"8010:81:104","text":"@notice List of initial members to be added as pool managers in the Allo Pool"},"mutability":"mutable","name":"initialMembers","nameLocation":"8106:14:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[]"},"typeName":{"baseType":{"id":70541,"name":"address","nodeType":"ElementaryTypeName","src":"8096:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70542,"nodeType":"ArrayTypeName","src":"8096:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"id":70549,"nodeType":"VariableDeclaration","src":"8337:68:104","nodes":[],"constant":true,"documentation":{"id":70544,"nodeType":"StructuredDocumentation","src":"8292:40:104","text":"@notice Role to council safe members"},"functionSelector":"733a2d1f","mutability":"constant","name":"COUNCIL_MEMBER","nameLocation":"8361:14:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70545,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8337:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"434f554e43494c5f4d454d424552","id":70547,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8388:16:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""},"value":"COUNCIL_MEMBER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""}],"id":70546,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"8378:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70548,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8378:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":70566,"nodeType":"FunctionDefinition","src":"8578:167:104","nodes":[],"body":{"id":70565,"nodeType":"Block","src":"8627:118:104","nodes":[],"statements":[{"condition":{"id":70557,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8641:36:104","subExpression":{"arguments":[{"id":70553,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"8650:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":70554,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8666:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8670:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8666:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70552,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"8642:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":70556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8642:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70564,"nodeType":"IfStatement","src":"8637:102:104","trueBody":{"id":70563,"nodeType":"Block","src":"8679:60:104","statements":[{"errorCall":{"arguments":[{"expression":{"id":70559,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8717:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70560,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8721:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8717:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70558,"name":"UserNotInCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70388,"src":"8700:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70561,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8700:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70562,"nodeType":"RevertStatement","src":"8693:35:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"8587:15:104","parameters":{"id":70550,"nodeType":"ParameterList","parameters":[],"src":"8602:2:104"},"returnParameters":{"id":70551,"nodeType":"ParameterList","parameters":[],"src":"8627:0:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":70580,"nodeType":"FunctionDefinition","src":"8751:152:104","nodes":[],"body":{"id":70579,"nodeType":"Block","src":"8809:94:104","nodes":[],"statements":[{"condition":{"id":70573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8823:21:104","subExpression":{"arguments":[{"expression":{"id":70570,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8833:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8837:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8833:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70569,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"8824:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":70572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8824:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70578,"nodeType":"IfStatement","src":"8819:78:104","trueBody":{"id":70577,"nodeType":"Block","src":"8846:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70574,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"8867:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70575,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8867:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70576,"nodeType":"RevertStatement","src":"8860:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberSender","nameLocation":"8760:24:104","parameters":{"id":70567,"nodeType":"ParameterList","parameters":[],"src":"8784:2:104"},"returnParameters":{"id":70568,"nodeType":"ParameterList","parameters":[],"src":"8809:0:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":70595,"nodeType":"FunctionDefinition","src":"8909:157:104","nodes":[],"body":{"id":70594,"nodeType":"Block","src":"8975:91:104","nodes":[],"statements":[{"condition":{"id":70588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8989:18:104","subExpression":{"arguments":[{"id":70586,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70582,"src":"8999:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70585,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"8990:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":70587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8990:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70593,"nodeType":"IfStatement","src":"8985:75:104","trueBody":{"id":70592,"nodeType":"Block","src":"9009:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70589,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"9030:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70590,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9030:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70591,"nodeType":"RevertStatement","src":"9023:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberAddress","nameLocation":"8918:25:104","parameters":{"id":70583,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70582,"mutability":"mutable","name":"_sender","nameLocation":"8952:7:104","nodeType":"VariableDeclaration","scope":70595,"src":"8944:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70581,"name":"address","nodeType":"ElementaryTypeName","src":"8944:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8943:17:104"},"returnParameters":{"id":70584,"nodeType":"ParameterList","parameters":[],"src":"8975:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70610,"nodeType":"FunctionDefinition","src":"9072:163:104","nodes":[],"body":{"id":70609,"nodeType":"Block","src":"9134:101:104","nodes":[],"statements":[{"condition":{"id":70603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9148:29:104","subExpression":{"baseExpression":{"id":70600,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"9149:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":70602,"indexExpression":{"id":70601,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70597,"src":"9167:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9149:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70608,"nodeType":"IfStatement","src":"9144:85:104","trueBody":{"id":70607,"nodeType":"Block","src":"9179:50:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70604,"name":"StrategyDisabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70402,"src":"9200:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9200:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70606,"nodeType":"RevertStatement","src":"9193:25:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyEnabled","nameLocation":"9081:19:104","parameters":{"id":70598,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70597,"mutability":"mutable","name":"_strategy","nameLocation":"9109:9:104","nodeType":"VariableDeclaration","scope":70610,"src":"9101:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70596,"name":"address","nodeType":"ElementaryTypeName","src":"9101:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9100:19:104"},"returnParameters":{"id":70599,"nodeType":"ParameterList","parameters":[],"src":"9134:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70626,"nodeType":"FunctionDefinition","src":"9241:172:104","nodes":[],"body":{"id":70625,"nodeType":"Block","src":"9320:93:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70619,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70617,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70612,"src":"9334:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":70618,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70614,"src":"9345:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9334:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70624,"nodeType":"IfStatement","src":"9330:77:104","trueBody":{"id":70623,"nodeType":"Block","src":"9356:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70620,"name":"SenderNotStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70406,"src":"9377:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70621,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9377:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70622,"nodeType":"RevertStatement","src":"9370:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyAddress","nameLocation":"9250:19:104","parameters":{"id":70615,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70612,"mutability":"mutable","name":"_sender","nameLocation":"9278:7:104","nodeType":"VariableDeclaration","scope":70626,"src":"9270:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70611,"name":"address","nodeType":"ElementaryTypeName","src":"9270:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70614,"mutability":"mutable","name":"_strategy","nameLocation":"9295:9:104","nodeType":"VariableDeclaration","scope":70626,"src":"9287:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70613,"name":"address","nodeType":"ElementaryTypeName","src":"9287:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9269:36:104"},"returnParameters":{"id":70616,"nodeType":"ParameterList","parameters":[],"src":"9320:0:104"},"scope":72174,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":70644,"nodeType":"FunctionDefinition","src":"9419:190:104","nodes":[],"body":{"id":70643,"nodeType":"Block","src":"9485:124:104","nodes":[],"statements":[{"condition":{"id":70637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9499:51:104","subExpression":{"baseExpression":{"baseExpression":{"id":70631,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"9500:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":70634,"indexExpression":{"expression":{"id":70632,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9528:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70633,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9532:6:104","memberName":"sender","nodeType":"MemberAccess","src":"9528:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9500:39:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":70636,"indexExpression":{"id":70635,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"9540:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9500:50:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70642,"nodeType":"IfStatement","src":"9495:108:104","trueBody":{"id":70641,"nodeType":"Block","src":"9552:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70638,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70414,"src":"9573:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9573:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70640,"nodeType":"RevertStatement","src":"9566:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyActivatedInStrategy","nameLocation":"9428:23:104","parameters":{"id":70629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70628,"mutability":"mutable","name":"_strategy","nameLocation":"9460:9:104","nodeType":"VariableDeclaration","scope":70644,"src":"9452:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70627,"name":"address","nodeType":"ElementaryTypeName","src":"9452:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9451:19:104"},"returnParameters":{"id":70630,"nodeType":"ParameterList","parameters":[],"src":"9485:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70660,"nodeType":"FunctionDefinition","src":"9615:133:104","nodes":[],"body":{"id":70659,"nodeType":"Block","src":"9675:73:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70649,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70646,"src":"9689:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":70652,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9709:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":70651,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9701:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70650,"name":"address","nodeType":"ElementaryTypeName","src":"9701:7:104","typeDescriptions":{}}},"id":70653,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9701:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9689:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70658,"nodeType":"IfStatement","src":"9685:56:104","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70655,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70382,"src":"9720:19:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9720:21:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70657,"nodeType":"RevertStatement","src":"9713:28:104"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"9624:18:104","parameters":{"id":70647,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70646,"mutability":"mutable","name":"_address","nameLocation":"9651:8:104","nodeType":"VariableDeclaration","scope":70660,"src":"9643:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70645,"name":"address","nodeType":"ElementaryTypeName","src":"9643:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9642:18:104"},"returnParameters":{"id":70648,"nodeType":"ParameterList","parameters":[],"src":"9675:0:104"},"scope":72174,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":70672,"nodeType":"FunctionDefinition","src":"9754:110:104","nodes":[],"body":{"id":70671,"nodeType":"Block","src":"9820:44:104","nodes":[],"statements":[{"expression":{"id":70669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70667,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"9830:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70668,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70662,"src":"9849:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9830:27:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70670,"nodeType":"ExpressionStatement","src":"9830:27:104"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":70665,"kind":"modifierInvocation","modifierName":{"id":70664,"name":"onlyOwner","nameLocations":["9810:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9810:9:104"},"nodeType":"ModifierInvocation","src":"9810:9:104"}],"name":"setStrategyTemplate","nameLocation":"9763:19:104","parameters":{"id":70663,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70662,"mutability":"mutable","name":"template","nameLocation":"9791:8:104","nodeType":"VariableDeclaration","scope":70672,"src":"9783:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70661,"name":"address","nodeType":"ElementaryTypeName","src":"9783:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9782:18:104"},"returnParameters":{"id":70666,"nodeType":"ParameterList","parameters":[],"src":"9820:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70684,"nodeType":"FunctionDefinition","src":"9870:124:104","nodes":[],"body":{"id":70683,"nodeType":"Block","src":"9943:51:104","nodes":[],"statements":[{"expression":{"id":70681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70679,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"9953:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70680,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70674,"src":"9979:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9953:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70682,"nodeType":"ExpressionStatement","src":"9953:34:104"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":70677,"kind":"modifierInvocation","modifierName":{"id":70676,"name":"onlyOwner","nameLocations":["9933:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9933:9:104"},"nodeType":"ModifierInvocation","src":"9933:9:104"}],"name":"setCollateralVaultTemplate","nameLocation":"9879:26:104","parameters":{"id":70675,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70674,"mutability":"mutable","name":"template","nameLocation":"9914:8:104","nodeType":"VariableDeclaration","scope":70684,"src":"9906:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70673,"name":"address","nodeType":"ElementaryTypeName","src":"9906:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9905:18:104"},"returnParameters":{"id":70678,"nodeType":"ParameterList","parameters":[],"src":"9943:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70959,"nodeType":"FunctionDefinition","src":"10144:2497:104","nodes":[],"body":{"id":70958,"nodeType":"Block","src":"10351:2290:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":70701,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70693,"src":"10378:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70698,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10361:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract super RegistryCommunityV0_0)"}},"id":70700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10367:10:104","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70134,"src":"10361:16:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":70702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10361:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70703,"nodeType":"ExpressionStatement","src":"10361:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70704,"name":"__ReentrancyGuard_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53176,"src":"10395:22:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":70705,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10395:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70706,"nodeType":"ExpressionStatement","src":"10395:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70707,"name":"__AccessControl_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52409,"src":"10429:20:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":70708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10429:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70709,"nodeType":"ExpressionStatement","src":"10429:22:104"},{"expression":{"arguments":[{"id":70711,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"10476:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":70712,"name":"DEFAULT_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52392,"src":"10492:18:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":70710,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"10462:13:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":70713,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10462:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70714,"nodeType":"ExpressionStatement","src":"10462:49:104"},{"expression":{"arguments":[{"arguments":[{"expression":{"id":70718,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10549:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70719,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10556:12:104","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70242,"src":"10549:19:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":70717,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10541:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70716,"name":"address","nodeType":"ElementaryTypeName","src":"10541:7:104","typeDescriptions":{}}},"id":70720,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10541:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70715,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10522:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10522:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70722,"nodeType":"ExpressionStatement","src":"10522:48:104"},{"expression":{"arguments":[{"expression":{"id":70724,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10599:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70725,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10606:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"10599:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70723,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10580:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10580:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70727,"nodeType":"ExpressionStatement","src":"10580:39:104"},{"expression":{"arguments":[{"expression":{"id":70729,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10648:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10655:5:104","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70239,"src":"10648:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70728,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10629:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10629:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70732,"nodeType":"ExpressionStatement","src":"10629:32:104"},{"expression":{"arguments":[{"expression":{"id":70734,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10690:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70735,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10697:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"10690:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70733,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10671:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10671:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70737,"nodeType":"ExpressionStatement","src":"10671:43:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70738,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10729:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10736:13:104","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70246,"src":"10729:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":70740,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10753:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10729:25:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70748,"nodeType":"IfStatement","src":"10725:95:104","trueBody":{"id":70747,"nodeType":"Block","src":"10756:64:104","statements":[{"expression":{"arguments":[{"expression":{"id":70743,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10789:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70744,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10796:12:104","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70252,"src":"10789:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70742,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10770:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10770:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70746,"nodeType":"ExpressionStatement","src":"10770:39:104"}]}},{"expression":{"id":70754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70749,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"10829:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70751,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10842:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10849:5:104","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70239,"src":"10842:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70750,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74978,"src":"10836:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_FAllo_$74978_$","typeString":"type(contract FAllo)"}},"id":70753,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10836:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"src":"10829:26:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":70755,"nodeType":"ExpressionStatement","src":"10829:26:104"},{"expression":{"id":70759,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70756,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"10865:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70757,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10879:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10886:12:104","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70242,"src":"10879:19:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"src":"10865:33:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":70760,"nodeType":"ExpressionStatement","src":"10865:33:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70761,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10912:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70762,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10919:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70244,"src":"10912:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":70763,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10943:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10912:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70769,"nodeType":"IfStatement","src":"10908:89:104","trueBody":{"id":70768,"nodeType":"Block","src":"10946:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70765,"name":"ValueCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70408,"src":"10967:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10967:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70767,"nodeType":"RevertStatement","src":"10960:26:104"}]}},{"expression":{"id":70773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70770,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"11006:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70771,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11028:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70772,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11035:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70244,"src":"11028:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11006:49:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70774,"nodeType":"ExpressionStatement","src":"11006:49:104"},{"expression":{"id":70778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70775,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"11065:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70776,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11080:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70777,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11087:13:104","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70246,"src":"11080:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11065:35:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70779,"nodeType":"ExpressionStatement","src":"11065:35:104"},{"expression":{"id":70783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70780,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70471,"src":"11110:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70781,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11126:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70782,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11133:14:104","memberName":"_isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":70261,"src":"11126:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11110:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70784,"nodeType":"ExpressionStatement","src":"11110:37:104"},{"expression":{"id":70788,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70785,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"11157:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70786,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11173:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70787,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11180:14:104","memberName":"_communityName","nodeType":"MemberAccess","referencedDeclaration":70259,"src":"11173:21:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11157:37:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":70789,"nodeType":"ExpressionStatement","src":"11157:37:104"},{"expression":{"id":70793,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70790,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70508,"src":"11204:16:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70791,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11223:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70792,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11230:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":70263,"src":"11223:23:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11204:42:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":70794,"nodeType":"ExpressionStatement","src":"11204:42:104"},{"expression":{"id":70798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70795,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"11257:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70796,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11275:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11282:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"11275:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11257:41:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70799,"nodeType":"ExpressionStatement","src":"11257:41:104"},{"expression":{"id":70803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70800,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70474,"src":"11308:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70801,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11322:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70802,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11329:12:104","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70252,"src":"11322:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11308:33:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70804,"nodeType":"ExpressionStatement","src":"11308:33:104"},{"expression":{"id":70810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70805,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11351:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70807,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11371:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11378:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"11371:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70806,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75245,"src":"11365:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$75245_$","typeString":"type(contract ISafe)"}},"id":70809,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11365:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"src":"11351:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"id":70811,"nodeType":"ExpressionStatement","src":"11351:40:104"},{"expression":{"arguments":[{"id":70813,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"11413:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":70814,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11429:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70815,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11436:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"11429:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70812,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"11402:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":70816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11402:47:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70817,"nodeType":"ExpressionStatement","src":"11402:47:104"},{"expression":{"id":70824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70818,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70490,"src":"11460:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70820,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"11481:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":70821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11486:11:104","memberName":"getRegistry","nodeType":"MemberAccess","referencedDeclaration":74969,"src":"11481:16:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":70822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11481:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70819,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"11471:9:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$2802_$","typeString":"type(contract IRegistry)"}},"id":70823,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11471:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"src":"11460:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":70825,"nodeType":"ExpressionStatement","src":"11460:40:104"},{"assignments":[70830],"declarations":[{"constant":false,"id":70830,"mutability":"mutable","name":"pool_initialMembers","nameLocation":"11528:19:104","nodeType":"VariableDeclaration","scope":70958,"src":"11511:36:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70828,"name":"address","nodeType":"ElementaryTypeName","src":"11511:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70829,"nodeType":"ArrayTypeName","src":"11511:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":70831,"nodeType":"VariableDeclarationStatement","src":"11511:36:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"arguments":[{"id":70834,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11607:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":70833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11599:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70832,"name":"address","nodeType":"ElementaryTypeName","src":"11599:7:104","typeDescriptions":{}}},"id":70835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11599:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11620:4:104","memberName":"code","nodeType":"MemberAccess","src":"11599:25:104","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":70837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11625:6:104","memberName":"length","nodeType":"MemberAccess","src":"11599:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":70838,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11635:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11599:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":70897,"nodeType":"Block","src":"11756:266:104","statements":[{"assignments":[70860],"declarations":[{"constant":false,"id":70860,"mutability":"mutable","name":"owners","nameLocation":"11787:6:104","nodeType":"VariableDeclaration","scope":70897,"src":"11770:23:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70858,"name":"address","nodeType":"ElementaryTypeName","src":"11770:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70859,"nodeType":"ArrayTypeName","src":"11770:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":70864,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70861,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11796:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"id":70862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11808:9:104","memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":75160,"src":"11796:21:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":70863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11796:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11770:49:104"},{"expression":{"id":70874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70865,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11833:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70869,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11869:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11876:6:104","memberName":"length","nodeType":"MemberAccess","src":"11869:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"32","id":70871,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11885:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"11869:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70868,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11855:13:104","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":70866,"name":"address","nodeType":"ElementaryTypeName","src":"11859:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70867,"nodeType":"ArrayTypeName","src":"11859:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":70873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11855:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11833:54:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70875,"nodeType":"ExpressionStatement","src":"11833:54:104"},{"body":{"id":70895,"nodeType":"Block","src":"11945:67:104","statements":[{"expression":{"id":70893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70887,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11963:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70889,"indexExpression":{"id":70888,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11983:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11963:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":70890,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11988:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70892,"indexExpression":{"id":70891,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11995:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11988:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11963:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70894,"nodeType":"ExpressionStatement","src":"11963:34:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70880,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11921:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":70881,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11925:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11932:6:104","memberName":"length","nodeType":"MemberAccess","src":"11925:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11921:17:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70896,"initializationExpression":{"assignments":[70877],"declarations":[{"constant":false,"id":70877,"mutability":"mutable","name":"i","nameLocation":"11914:1:104","nodeType":"VariableDeclaration","scope":70896,"src":"11906:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70876,"name":"uint256","nodeType":"ElementaryTypeName","src":"11906:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70879,"initialValue":{"hexValue":"30","id":70878,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11918:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"11906:13:104"},"loopExpression":{"expression":{"id":70885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11940:3:104","subExpression":{"id":70884,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11940:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70886,"nodeType":"ExpressionStatement","src":"11940:3:104"},"nodeType":"ForStatement","src":"11901:111:104"}]},"id":70898,"nodeType":"IfStatement","src":"11595:427:104","trueBody":{"id":70855,"nodeType":"Block","src":"11638:112:104","statements":[{"expression":{"id":70846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70840,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11652:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"33","id":70844,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11688:1:104","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"}],"id":70843,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11674:13:104","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":70841,"name":"address","nodeType":"ElementaryTypeName","src":"11678:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70842,"nodeType":"ArrayTypeName","src":"11678:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":70845,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11674:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11652:38:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70847,"nodeType":"ExpressionStatement","src":"11652:38:104"},{"expression":{"id":70853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70848,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11704:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70850,"indexExpression":{"hexValue":"30","id":70849,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11724:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11704:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70851,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"11729:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11733:6:104","memberName":"sender","nodeType":"MemberAccess","src":"11729:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11704:35:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70854,"nodeType":"ExpressionStatement","src":"11704:35:104"}]}},{"expression":{"id":70909,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70899,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12032:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70904,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70900,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12052:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12072:6:104","memberName":"length","nodeType":"MemberAccess","src":"12052:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":70902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12081:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"12052:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12032:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":70907,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"12094:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":70906,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12086:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70905,"name":"address","nodeType":"ElementaryTypeName","src":"12086:7:104","typeDescriptions":{}}},"id":70908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12086:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12032:74:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70910,"nodeType":"ExpressionStatement","src":"12032:74:104"},{"expression":{"id":70921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70911,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12116:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70916,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70915,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70912,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12136:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12156:6:104","memberName":"length","nodeType":"MemberAccess","src":"12136:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"32","id":70914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12165:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12136:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12116:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":70919,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12178:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":70918,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12170:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70917,"name":"address","nodeType":"ElementaryTypeName","src":"12170:7:104","typeDescriptions":{}}},"id":70920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12170:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12116:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70922,"nodeType":"ExpressionStatement","src":"12116:67:104"},{"expression":{"id":70937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70923,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"12271:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70926,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12318:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70927,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12325:6:104","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"12318:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70928,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"12333:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":70929,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12348:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70930,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12355:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70255,"src":"12348:16:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[{"id":70933,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12374:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":70932,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12366:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70931,"name":"address","nodeType":"ElementaryTypeName","src":"12366:7:104","typeDescriptions":{}}},"id":70934,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12366:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70935,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12381:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":70924,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70490,"src":"12295:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":70925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12304:13:104","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"12295:22:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":70936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12295:106:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"12271:130:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":70938,"nodeType":"ExpressionStatement","src":"12271:130:104"},{"expression":{"id":70941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70939,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"12412:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70940,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12429:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12412:36:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":70942,"nodeType":"ExpressionStatement","src":"12412:36:104"},{"expression":{"id":70945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70943,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"12459:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70944,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70689,"src":"12478:17:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12459:36:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70946,"nodeType":"ExpressionStatement","src":"12459:36:104"},{"expression":{"id":70949,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70947,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"12505:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70948,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70691,"src":"12531:24:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12505:50:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70950,"nodeType":"ExpressionStatement","src":"12505:50:104"},{"eventCall":{"arguments":[{"id":70952,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"12591:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":70953,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"12602:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":70954,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12617:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70955,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12624:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70255,"src":"12617:16:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":70951,"name":"RegistryInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70329,"src":"12571:19:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (bytes32,string memory,struct Metadata memory)"}},"id":70956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12571:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70957,"nodeType":"EmitStatement","src":"12566:68:104"}]},"functionSelector":"34196355","implemented":true,"kind":"function","modifiers":[{"id":70696,"kind":"modifierInvocation","modifierName":{"id":70695,"name":"initializer","nameLocations":["10339:11:104"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10339:11:104"},"nodeType":"ModifierInvocation","src":"10339:11:104"}],"name":"initialize","nameLocation":"10153:10:104","parameters":{"id":70694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70687,"mutability":"mutable","name":"params","nameLocation":"10218:6:104","nodeType":"VariableDeclaration","scope":70959,"src":"10173:51:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":70686,"nodeType":"UserDefinedTypeName","pathNode":{"id":70685,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["10173:37:104"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"10173:37:104"},"referencedDeclaration":70264,"src":"10173:37:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":70689,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"10242:17:104","nodeType":"VariableDeclaration","scope":70959,"src":"10234:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70688,"name":"address","nodeType":"ElementaryTypeName","src":"10234:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70691,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10277:24:104","nodeType":"VariableDeclaration","scope":70959,"src":"10269:32:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70690,"name":"address","nodeType":"ElementaryTypeName","src":"10269:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70693,"mutability":"mutable","name":"_owner","nameLocation":"10319:6:104","nodeType":"VariableDeclaration","scope":70959,"src":"10311:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70692,"name":"address","nodeType":"ElementaryTypeName","src":"10311:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10163:168:104"},"returnParameters":{"id":70697,"nodeType":"ParameterList","parameters":[],"src":"10351:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":71009,"nodeType":"FunctionDefinition","src":"12647:531:104","nodes":[],"body":{"id":71008,"nodeType":"Block","src":"12843:335:104","nodes":[],"statements":[{"assignments":[70975],"declarations":[{"constant":false,"id":70975,"mutability":"mutable","name":"strategyProxy","nameLocation":"12861:13:104","nodeType":"VariableDeclaration","scope":71008,"src":"12853:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70974,"name":"address","nodeType":"ElementaryTypeName","src":"12853:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71000,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":70983,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"12940:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70982,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12932:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70981,"name":"address","nodeType":"ElementaryTypeName","src":"12932:7:104","typeDescriptions":{}}},"id":70984,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12932:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":70987,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"12998:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":70988,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13013:4:104","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"12998:19:104","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":70989,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13018:8:104","memberName":"selector","nodeType":"MemberAccess","src":"12998:28:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":70992,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"13036:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}],"id":70991,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13028:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70990,"name":"address","nodeType":"ElementaryTypeName","src":"13028:7:104","typeDescriptions":{}}},"id":70993,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13028:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70994,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"13043:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":70995,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"13068:5:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":70996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13068:7:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70985,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"12975:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"12979:18:104","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"12975:22:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":70997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12975:101:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"12898:16:104","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":70979,"nodeType":"UserDefinedTypeName","pathNode":{"id":70978,"name":"ERC1967Proxy","nameLocations":["12902:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"12902:12:104"},"referencedDeclaration":55021,"src":"12902:12:104","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":70998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12898:192:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":70977,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12877:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70976,"name":"address","nodeType":"ElementaryTypeName","src":"12877:7:104","typeDescriptions":{}}},"id":70999,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12877:223:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"12853:247:104"},{"expression":{"arguments":[{"id":71002,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70975,"src":"13129:13:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71003,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70961,"src":"13144:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71004,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70964,"src":"13152:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},{"id":71005,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70967,"src":"13161:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71001,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[71009,71081],"referencedDeclaration":71081,"src":"13118:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_0 memory,struct Metadata memory) returns (uint256,address)"}},"id":71006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13118:53:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"functionReturnParameters":70973,"id":71007,"nodeType":"Return","src":"13111:60:104"}]},"functionSelector":"524e59e8","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"12656:10:104","parameters":{"id":70968,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70961,"mutability":"mutable","name":"_token","nameLocation":"12675:6:104","nodeType":"VariableDeclaration","scope":71009,"src":"12667:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70960,"name":"address","nodeType":"ElementaryTypeName","src":"12667:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70964,"mutability":"mutable","name":"_params","nameLocation":"12721:7:104","nodeType":"VariableDeclaration","scope":71009,"src":"12683:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":70963,"nodeType":"UserDefinedTypeName","pathNode":{"id":70962,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["12683:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"12683:30:104"},"referencedDeclaration":65657,"src":"12683:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":70967,"mutability":"mutable","name":"_metadata","nameLocation":"12746:9:104","nodeType":"VariableDeclaration","scope":71009,"src":"12730:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70966,"nodeType":"UserDefinedTypeName","pathNode":{"id":70965,"name":"Metadata","nameLocations":["12730:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12730:8:104"},"referencedDeclaration":3098,"src":"12730:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12666:90:104"},"returnParameters":{"id":70973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70970,"mutability":"mutable","name":"poolId","nameLocation":"12813:6:104","nodeType":"VariableDeclaration","scope":71009,"src":"12805:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70969,"name":"uint256","nodeType":"ElementaryTypeName","src":"12805:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70972,"mutability":"mutable","name":"strategy","nameLocation":"12829:8:104","nodeType":"VariableDeclaration","scope":71009,"src":"12821:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70971,"name":"address","nodeType":"ElementaryTypeName","src":"12821:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12804:34:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71081,"nodeType":"FunctionDefinition","src":"13184:660:104","nodes":[],"body":{"id":71080,"nodeType":"Block","src":"13409:435:104","nodes":[],"statements":[{"assignments":[71027],"declarations":[{"constant":false,"id":71027,"mutability":"mutable","name":"token","nameLocation":"13427:5:104","nodeType":"VariableDeclaration","scope":71080,"src":"13419:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71026,"name":"address","nodeType":"ElementaryTypeName","src":"13419:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71029,"initialValue":{"id":71028,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70444,"src":"13435:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"13419:22:104"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71030,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13455:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":71033,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13473:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":71032,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13465:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71031,"name":"address","nodeType":"ElementaryTypeName","src":"13465:7:104","typeDescriptions":{}}},"id":71034,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13465:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13455:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71041,"nodeType":"IfStatement","src":"13451:65:104","trueBody":{"id":71040,"nodeType":"Block","src":"13477:39:104","statements":[{"expression":{"id":71038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71036,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71027,"src":"13491:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71037,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13499:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13491:14:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71039,"nodeType":"ExpressionStatement","src":"13491:14:104"}]}},{"expression":{"id":71044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71042,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13525:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71043,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71011,"src":"13536:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13525:20:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71045,"nodeType":"ExpressionStatement","src":"13525:20:104"},{"assignments":[71050],"declarations":[{"constant":false,"id":71050,"mutability":"mutable","name":"_pool_managers","nameLocation":"13573:14:104","nodeType":"VariableDeclaration","scope":71080,"src":"13556:31:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71048,"name":"address","nodeType":"ElementaryTypeName","src":"13556:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71049,"nodeType":"ArrayTypeName","src":"13556:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71052,"initialValue":{"id":71051,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"13590:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"13556:48:104"},{"expression":{"id":71067,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71053,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71022,"src":"13615:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71056,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"13671:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":71057,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13682:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71060,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71016,"src":"13703:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"expression":{"id":71058,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13692:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":71059,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13696:6:104","memberName":"encode","nodeType":"MemberAccess","src":"13692:10:104","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":71061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13692:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":71062,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71027,"src":"13713:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71063,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13720:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":71064,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71019,"src":"13723:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":71065,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71050,"src":"13734:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":71054,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"13624:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":71055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13629:28:104","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":74964,"src":"13624:33:104","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":71066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13624:134:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"13615:143:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71068,"nodeType":"ExpressionStatement","src":"13615:143:104"},{"eventCall":{"arguments":[{"id":71070,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71022,"src":"13786:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71071,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13794:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71074,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13812:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71073,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13804:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71072,"name":"address","nodeType":"ElementaryTypeName","src":"13804:7:104","typeDescriptions":{}}},"id":71075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13804:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71076,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13819:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71077,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71019,"src":"13827:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71069,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70380,"src":"13774:11:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":71078,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13774:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71079,"nodeType":"EmitStatement","src":"13769:68:104"}]},"functionSelector":"e16d0e32","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"13193:10:104","parameters":{"id":71020,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71011,"mutability":"mutable","name":"_strategy","nameLocation":"13221:9:104","nodeType":"VariableDeclaration","scope":71081,"src":"13213:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71010,"name":"address","nodeType":"ElementaryTypeName","src":"13213:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71013,"mutability":"mutable","name":"_token","nameLocation":"13248:6:104","nodeType":"VariableDeclaration","scope":71081,"src":"13240:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71012,"name":"address","nodeType":"ElementaryTypeName","src":"13240:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71016,"mutability":"mutable","name":"_params","nameLocation":"13302:7:104","nodeType":"VariableDeclaration","scope":71081,"src":"13264:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":71015,"nodeType":"UserDefinedTypeName","pathNode":{"id":71014,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["13264:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"13264:30:104"},"referencedDeclaration":65657,"src":"13264:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":71019,"mutability":"mutable","name":"_metadata","nameLocation":"13335:9:104","nodeType":"VariableDeclaration","scope":71081,"src":"13319:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":71018,"nodeType":"UserDefinedTypeName","pathNode":{"id":71017,"name":"Metadata","nameLocations":["13319:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"13319:8:104"},"referencedDeclaration":3098,"src":"13319:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"13203:147:104"},"returnParameters":{"id":71025,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71022,"mutability":"mutable","name":"poolId","nameLocation":"13383:6:104","nodeType":"VariableDeclaration","scope":71081,"src":"13375:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71021,"name":"uint256","nodeType":"ElementaryTypeName","src":"13375:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71024,"mutability":"mutable","name":"strategy","nameLocation":"13399:8:104","nodeType":"VariableDeclaration","scope":71081,"src":"13391:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71023,"name":"address","nodeType":"ElementaryTypeName","src":"13391:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13374:34:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71198,"nodeType":"FunctionDefinition","src":"13850:1170:104","nodes":[],"body":{"id":71197,"nodeType":"Block","src":"13948:1072:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71091,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"13984:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71090,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"13958:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71092,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13958:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71093,"nodeType":"ExpressionStatement","src":"13958:34:104"},{"expression":{"arguments":[{"id":71095,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14022:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71094,"name":"onlyStrategyEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70610,"src":"14002:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14002:30:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71097,"nodeType":"ExpressionStatement","src":"14002:30:104"},{"expression":{"arguments":[{"id":71099,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14061:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71098,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"14042:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71100,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14042:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71101,"nodeType":"ExpressionStatement","src":"14042:29:104"},{"condition":{"baseExpression":{"baseExpression":{"id":71102,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"14086:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71104,"indexExpression":{"id":71103,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14114:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14086:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71106,"indexExpression":{"id":71105,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14123:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14086:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71111,"nodeType":"IfStatement","src":"14082:107:104","trueBody":{"id":71110,"nodeType":"Block","src":"14135:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71107,"name":"UserAlreadyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70396,"src":"14156:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14156:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71109,"nodeType":"RevertStatement","src":"14149:29:104"}]}},{"assignments":[71114],"declarations":[{"constant":false,"id":71114,"mutability":"mutable","name":"member","nameLocation":"14213:6:104","nodeType":"VariableDeclaration","scope":71197,"src":"14199:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":71113,"nodeType":"UserDefinedTypeName","pathNode":{"id":71112,"name":"Member","nameLocations":["14199:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"14199:6:104"},"referencedDeclaration":70271,"src":"14199:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71118,"initialValue":{"baseExpression":{"id":71115,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"14222:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71117,"indexExpression":{"id":71116,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14242:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14222:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"14199:51:104"},{"assignments":[71120],"declarations":[{"constant":false,"id":71120,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"14269:17:104","nodeType":"VariableDeclaration","scope":71197,"src":"14261:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71119,"name":"uint256","nodeType":"ElementaryTypeName","src":"14261:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71123,"initialValue":{"expression":{"id":71121,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71114,"src":"14289:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":71122,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14296:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"14289:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14261:47:104"},{"assignments":[71125],"declarations":[{"constant":false,"id":71125,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"14326:16:104","nodeType":"VariableDeclaration","scope":71197,"src":"14318:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71124,"name":"uint256","nodeType":"ElementaryTypeName","src":"14318:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71127,"initialValue":{"id":71126,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"14345:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14318:46:104"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71129,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14394:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71128,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14379:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71130,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14379:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14405:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14379:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71132,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14379:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":71133,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14425:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71134,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14437:9:104","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"14425:21:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14379:67:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71148,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14568:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71147,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14553:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14553:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14579:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14553:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14553:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":71152,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14599:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14611:5:104","memberName":"Fixed","nodeType":"MemberAccess","referencedDeclaration":65541,"src":"14599:17:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14553:63:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71166,"nodeType":"IfStatement","src":"14549:180:104","trueBody":{"id":71165,"nodeType":"Block","src":"14618:111:104","statements":[{"expression":{"id":71163,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71155,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14632:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71160,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14691:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71161,"name":"totalStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71120,"src":"14700:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":71157,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14666:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71156,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14651:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14651:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14677:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14651:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14651:67:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14632:86:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71164,"nodeType":"ExpressionStatement","src":"14632:86:104"}]}},"id":71167,"nodeType":"IfStatement","src":"14375:354:104","trueBody":{"id":71146,"nodeType":"Block","src":"14448:95:104","statements":[{"expression":{"id":71144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71136,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14462:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71141,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14521:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71142,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14530:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"arguments":[{"id":71138,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14496:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71137,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14481:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14481:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14507:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14481:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14481:51:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14462:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71145,"nodeType":"ExpressionStatement","src":"14462:70:104"}]}},{"expression":{"id":71174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71168,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"14739:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71171,"indexExpression":{"id":71169,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14761:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14739:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71172,"indexExpression":{"id":71170,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14770:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14739:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71173,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14783:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14739:60:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71175,"nodeType":"ExpressionStatement","src":"14739:60:104"},{"expression":{"id":71182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71176,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"14828:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71179,"indexExpression":{"id":71177,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14856:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14828:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71180,"indexExpression":{"id":71178,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14865:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14828:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71181,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14878:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"14828:54:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71183,"nodeType":"ExpressionStatement","src":"14828:54:104"},{"expression":{"arguments":[{"id":71188,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14926:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"baseExpression":{"id":71184,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"14893:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71186,"indexExpression":{"id":71185,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14912:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14893:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":71187,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14921:4:104","memberName":"push","nodeType":"MemberAccess","src":"14893:32:104","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer,address)"}},"id":71189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14893:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71190,"nodeType":"ExpressionStatement","src":"14893:43:104"},{"eventCall":{"arguments":[{"id":71192,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14976:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71193,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14985:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71194,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14996:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71191,"name":"MemberActivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70345,"src":"14952:23:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":71195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14952:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71196,"nodeType":"EmitStatement","src":"14947:66:104"}]},"functionSelector":"0d4a8b49","implemented":true,"kind":"function","modifiers":[{"id":71088,"kind":"modifierInvocation","modifierName":{"id":71087,"name":"nonReentrant","nameLocations":["13935:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"13935:12:104"},"nodeType":"ModifierInvocation","src":"13935:12:104"}],"name":"activateMemberInStrategy","nameLocation":"13859:24:104","parameters":{"id":71086,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71083,"mutability":"mutable","name":"_member","nameLocation":"13892:7:104","nodeType":"VariableDeclaration","scope":71198,"src":"13884:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71082,"name":"address","nodeType":"ElementaryTypeName","src":"13884:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71085,"mutability":"mutable","name":"_strategy","nameLocation":"13909:9:104","nodeType":"VariableDeclaration","scope":71198,"src":"13901:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71084,"name":"address","nodeType":"ElementaryTypeName","src":"13901:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13883:36:104"},"returnParameters":{"id":71089,"nodeType":"ParameterList","parameters":[],"src":"13948:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71257,"nodeType":"FunctionDefinition","src":"15026:699:104","nodes":[],"body":{"id":71256,"nodeType":"Block","src":"15113:612:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71206,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15149:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71205,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"15123:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15123:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71208,"nodeType":"ExpressionStatement","src":"15123:34:104"},{"expression":{"arguments":[{"id":71210,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15186:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71209,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"15167:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15167:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71212,"nodeType":"ExpressionStatement","src":"15167:29:104"},{"expression":{"arguments":[{"expression":{"id":71214,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15226:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71215,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15230:6:104","memberName":"sender","nodeType":"MemberAccess","src":"15226:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71216,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15238:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71213,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70626,"src":"15206:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":71217,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15206:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71218,"nodeType":"ExpressionStatement","src":"15206:42:104"},{"condition":{"id":71224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"15263:48:104","subExpression":{"baseExpression":{"baseExpression":{"id":71219,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"15264:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71221,"indexExpression":{"id":71220,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15292:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15264:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71223,"indexExpression":{"id":71222,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15301:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15264:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71229,"nodeType":"IfStatement","src":"15259:110:104","trueBody":{"id":71228,"nodeType":"Block","src":"15313:56:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71225,"name":"UserAlreadyDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70398,"src":"15334:22:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71226,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15334:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71227,"nodeType":"RevertStatement","src":"15327:31:104"}]}},{"expression":{"id":71236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71230,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"15379:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71233,"indexExpression":{"id":71231,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15407:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15379:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71234,"indexExpression":{"id":71232,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15416:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15379:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":71235,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15429:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15379:55:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71237,"nodeType":"ExpressionStatement","src":"15379:55:104"},{"expression":{"id":71244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71238,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"15444:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71241,"indexExpression":{"id":71239,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15466:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15444:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71242,"indexExpression":{"id":71240,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15475:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15444:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":71243,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15488:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15444:45:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71245,"nodeType":"ExpressionStatement","src":"15444:45:104"},{"expression":{"arguments":[{"id":71247,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15524:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71248,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15533:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71246,"name":"removeStrategyFromMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71310,"src":"15499:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15499:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71250,"nodeType":"ExpressionStatement","src":"15499:44:104"},{"eventCall":{"arguments":[{"id":71252,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15699:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71253,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15708:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71251,"name":"MemberDeactivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70351,"src":"15673:25:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15673:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71255,"nodeType":"EmitStatement","src":"15668:50:104"}]},"functionSelector":"22bcf999","implemented":true,"kind":"function","modifiers":[],"name":"deactivateMemberInStrategy","nameLocation":"15035:26:104","parameters":{"id":71203,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71200,"mutability":"mutable","name":"_member","nameLocation":"15070:7:104","nodeType":"VariableDeclaration","scope":71257,"src":"15062:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71199,"name":"address","nodeType":"ElementaryTypeName","src":"15062:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71202,"mutability":"mutable","name":"_strategy","nameLocation":"15087:9:104","nodeType":"VariableDeclaration","scope":71257,"src":"15079:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71201,"name":"address","nodeType":"ElementaryTypeName","src":"15079:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15061:36:104"},"returnParameters":{"id":71204,"nodeType":"ParameterList","parameters":[],"src":"15113:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71310,"nodeType":"FunctionDefinition","src":"15731:433:104","nodes":[],"body":{"id":71309,"nodeType":"Block","src":"15818:346:104","nodes":[],"statements":[{"assignments":[71268],"declarations":[{"constant":false,"id":71268,"mutability":"mutable","name":"memberStrategies","nameLocation":"15846:16:104","nodeType":"VariableDeclaration","scope":71309,"src":"15828:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71266,"name":"address","nodeType":"ElementaryTypeName","src":"15828:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71267,"nodeType":"ArrayTypeName","src":"15828:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71272,"initialValue":{"baseExpression":{"id":71269,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"15865:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71271,"indexExpression":{"id":71270,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71259,"src":"15884:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15865:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15828:64:104"},{"body":{"id":71307,"nodeType":"Block","src":"15956:202:104","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":71284,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"15974:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71286,"indexExpression":{"id":71285,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15991:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15974:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":71287,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71261,"src":"15997:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15974:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71306,"nodeType":"IfStatement","src":"15970:178:104","trueBody":{"id":71305,"nodeType":"Block","src":"16008:140:104","statements":[{"expression":{"id":71298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71289,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16026:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71291,"indexExpression":{"id":71290,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"16043:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16026:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71292,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16048:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71297,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71293,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16065:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16082:6:104","memberName":"length","nodeType":"MemberAccess","src":"16065:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71295,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16091:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"16065:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16048:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16026:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71299,"nodeType":"ExpressionStatement","src":"16026:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71300,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16111:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16128:3:104","memberName":"pop","nodeType":"MemberAccess","src":"16111:20:104","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":71303,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16111:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71304,"nodeType":"ExpressionStatement","src":"16111:22:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71277,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15922:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71278,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"15926:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15943:6:104","memberName":"length","nodeType":"MemberAccess","src":"15926:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15922:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71308,"initializationExpression":{"assignments":[71274],"declarations":[{"constant":false,"id":71274,"mutability":"mutable","name":"i","nameLocation":"15915:1:104","nodeType":"VariableDeclaration","scope":71308,"src":"15907:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71273,"name":"uint256","nodeType":"ElementaryTypeName","src":"15907:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71276,"initialValue":{"hexValue":"30","id":71275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15919:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"15907:13:104"},"loopExpression":{"expression":{"id":71282,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"15951:3:104","subExpression":{"id":71281,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15951:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71283,"nodeType":"ExpressionStatement","src":"15951:3:104"},"nodeType":"ForStatement","src":"15902:256:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyFromMember","nameLocation":"15740:24:104","parameters":{"id":71262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71259,"mutability":"mutable","name":"_member","nameLocation":"15773:7:104","nodeType":"VariableDeclaration","scope":71310,"src":"15765:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71258,"name":"address","nodeType":"ElementaryTypeName","src":"15765:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71261,"mutability":"mutable","name":"_strategy","nameLocation":"15790:9:104","nodeType":"VariableDeclaration","scope":71310,"src":"15782:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71260,"name":"address","nodeType":"ElementaryTypeName","src":"15782:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15764:36:104"},"returnParameters":{"id":71263,"nodeType":"ParameterList","parameters":[],"src":"15818:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71401,"nodeType":"FunctionDefinition","src":"16170:1009:104","nodes":[],"body":{"id":71400,"nodeType":"Block","src":"16244:935:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71317,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70580,"src":"16254:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71318,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16254:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71319,"nodeType":"ExpressionStatement","src":"16254:26:104"},{"assignments":[71321],"declarations":[{"constant":false,"id":71321,"mutability":"mutable","name":"member","nameLocation":"16298:6:104","nodeType":"VariableDeclaration","scope":71400,"src":"16290:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71320,"name":"address","nodeType":"ElementaryTypeName","src":"16290:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71324,"initialValue":{"expression":{"id":71322,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16307:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16311:6:104","memberName":"sender","nodeType":"MemberAccess","src":"16307:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16290:27:104"},{"assignments":[71329],"declarations":[{"constant":false,"id":71329,"mutability":"mutable","name":"memberStrategies","nameLocation":"16344:16:104","nodeType":"VariableDeclaration","scope":71400,"src":"16327:33:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71327,"name":"address","nodeType":"ElementaryTypeName","src":"16327:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71328,"nodeType":"ArrayTypeName","src":"16327:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71333,"initialValue":{"baseExpression":{"id":71330,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"16363:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71332,"indexExpression":{"id":71331,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16382:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16363:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"16327:62:104"},{"assignments":[71335],"declarations":[{"constant":false,"id":71335,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"16408:16:104","nodeType":"VariableDeclaration","scope":71400,"src":"16400:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71334,"name":"uint256","nodeType":"ElementaryTypeName","src":"16400:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71336,"nodeType":"VariableDeclarationStatement","src":"16400:24:104"},{"body":{"id":71375,"nodeType":"Block","src":"16489:482:104","statements":[{"expression":{"id":71358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71348,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16608:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71355,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16677:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71356,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"16685:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"baseExpression":{"id":71350,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16642:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71352,"indexExpression":{"id":71351,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16659:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16642:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71349,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"16627:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16627:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71354,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16663:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"16627:49:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16627:72:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16608:91:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71359,"nodeType":"ExpressionStatement","src":"16608:91:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71362,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71360,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16717:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":71361,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16737:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"16717:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71374,"nodeType":"IfStatement","src":"16713:232:104","trueBody":{"id":71373,"nodeType":"Block","src":"16740:205:104","statements":[{"expression":{"id":71371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71363,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"16758:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71368,"indexExpression":{"id":71364,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16780:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16758:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71369,"indexExpression":{"baseExpression":{"id":71365,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16788:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71367,"indexExpression":{"id":71366,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16805:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16788:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16758:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71370,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16812:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16758:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71372,"nodeType":"ExpressionStatement","src":"16758:70:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71344,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71341,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16455:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71342,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16459:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16476:6:104","memberName":"length","nodeType":"MemberAccess","src":"16459:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16455:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71376,"initializationExpression":{"assignments":[71338],"declarations":[{"constant":false,"id":71338,"mutability":"mutable","name":"i","nameLocation":"16448:1:104","nodeType":"VariableDeclaration","scope":71376,"src":"16440:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71337,"name":"uint256","nodeType":"ElementaryTypeName","src":"16440:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71340,"initialValue":{"hexValue":"30","id":71339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16452:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"16440:13:104"},"loopExpression":{"expression":{"id":71346,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"16484:3:104","subExpression":{"id":71345,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16484:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71347,"nodeType":"ExpressionStatement","src":"16484:3:104"},"nodeType":"ForStatement","src":"16435:536:104"},{"expression":{"arguments":[{"id":71380,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17010:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71383,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17026:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71382,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17018:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71381,"name":"address","nodeType":"ElementaryTypeName","src":"17018:7:104","typeDescriptions":{}}},"id":71384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17018:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71385,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17033:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71377,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"16981:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16993:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"16981:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":71386,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16981:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71387,"nodeType":"ExpressionStatement","src":"16981:66:104"},{"expression":{"id":71393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71388,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"17057:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71390,"indexExpression":{"id":71389,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17077:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17057:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71391,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17085:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"17057:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71392,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17101:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17057:57:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71394,"nodeType":"ExpressionStatement","src":"17057:57:104"},{"eventCall":{"arguments":[{"id":71396,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17150:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71397,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17158:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71395,"name":"MemberPowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70361,"src":"17129:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71398,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17129:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71399,"nodeType":"EmitStatement","src":"17124:48:104"}]},"functionSelector":"559de05d","implemented":true,"kind":"function","modifiers":[{"id":71315,"kind":"modifierInvocation","modifierName":{"id":71314,"name":"nonReentrant","nameLocations":["16231:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"16231:12:104"},"nodeType":"ModifierInvocation","src":"16231:12:104"}],"name":"increasePower","nameLocation":"16179:13:104","parameters":{"id":71313,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71312,"mutability":"mutable","name":"_amountStaked","nameLocation":"16201:13:104","nodeType":"VariableDeclaration","scope":71401,"src":"16193:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71311,"name":"uint256","nodeType":"ElementaryTypeName","src":"16193:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16192:23:104"},"returnParameters":{"id":71316,"nodeType":"ParameterList","parameters":[],"src":"16244:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71551,"nodeType":"FunctionDefinition","src":"17322:1562:104","nodes":[],"body":{"id":71550,"nodeType":"Block","src":"17398:1486:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71408,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70580,"src":"17408:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71409,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17408:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71410,"nodeType":"ExpressionStatement","src":"17408:26:104"},{"assignments":[71412],"declarations":[{"constant":false,"id":71412,"mutability":"mutable","name":"member","nameLocation":"17452:6:104","nodeType":"VariableDeclaration","scope":71550,"src":"17444:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71411,"name":"address","nodeType":"ElementaryTypeName","src":"17444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71415,"initialValue":{"expression":{"id":71413,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17461:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17465:6:104","memberName":"sender","nodeType":"MemberAccess","src":"17461:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17444:27:104"},{"assignments":[71420],"declarations":[{"constant":false,"id":71420,"mutability":"mutable","name":"memberStrategies","nameLocation":"17499:16:104","nodeType":"VariableDeclaration","scope":71550,"src":"17481:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71418,"name":"address","nodeType":"ElementaryTypeName","src":"17481:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71419,"nodeType":"ArrayTypeName","src":"17481:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71424,"initialValue":{"baseExpression":{"id":71421,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"17518:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71423,"indexExpression":{"id":71422,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17537:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17518:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17481:63:104"},{"assignments":[71426],"declarations":[{"constant":false,"id":71426,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"17563:16:104","nodeType":"VariableDeclaration","scope":71550,"src":"17555:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71425,"name":"uint256","nodeType":"ElementaryTypeName","src":"17555:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71427,"nodeType":"VariableDeclarationStatement","src":"17555:24:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71433,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":71428,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"17594:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71430,"indexExpression":{"id":71429,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17614:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17594:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71431,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17622:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"17594:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":71432,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"17637:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17594:58:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":71434,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"17655:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17594:80:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71440,"nodeType":"IfStatement","src":"17590:140:104","trueBody":{"id":71439,"nodeType":"Block","src":"17676:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71436,"name":"DecreaseUnderMinimum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70416,"src":"17697:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17697:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71438,"nodeType":"RevertStatement","src":"17690:29:104"}]}},{"expression":{"arguments":[{"id":71444,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17764:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71445,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"17772:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71441,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"17739:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71443,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17751:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"17739:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17739:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71447,"nodeType":"ExpressionStatement","src":"17739:49:104"},{"body":{"id":71536,"nodeType":"Block","src":"17852:897:104","statements":[{"assignments":[71460],"declarations":[{"constant":false,"id":71460,"mutability":"mutable","name":"strategy","nameLocation":"17874:8:104","nodeType":"VariableDeclaration","scope":71536,"src":"17866:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71459,"name":"address","nodeType":"ElementaryTypeName","src":"17866:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71464,"initialValue":{"baseExpression":{"id":71461,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"17885:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71463,"indexExpression":{"id":71462,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17902:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17885:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17866:38:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":71468,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"17954:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":71467,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"17949:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":71469,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17949:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":71470,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17970:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"17949:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":71465,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"17922:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17931:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"17922:26:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":71471,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17922:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71534,"nodeType":"Block","src":"18472:250:104","statements":[{"expression":{"id":71523,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71514,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18557:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71516,"indexExpression":{"id":71515,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18574:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18557:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71517,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18579:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71522,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71518,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18596:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18613:6:104","memberName":"length","nodeType":"MemberAccess","src":"18596:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71520,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18622:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"18596:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18579:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18557:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71524,"nodeType":"ExpressionStatement","src":"18557:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71525,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18642:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18659:3:104","memberName":"pop","nodeType":"MemberAccess","src":"18642:20:104","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":71528,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18642:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71529,"nodeType":"ExpressionStatement","src":"18642:22:104"},{"expression":{"arguments":[{"id":71531,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"18698:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71530,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"18682:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71532,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18682:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71533,"nodeType":"ExpressionStatement","src":"18682:25:104"}]},"id":71535,"nodeType":"IfStatement","src":"17918:804:104","trueBody":{"id":71513,"nodeType":"Block","src":"17984:482:104","statements":[{"expression":{"id":71480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71472,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18002:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71477,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18060:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71478,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18068:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":71474,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"18036:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71473,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"18021:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18021:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18046:13:104","memberName":"decreasePower","nodeType":"MemberAccess","referencedDeclaration":65529,"src":"18021:38:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71479,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18021:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18002:82:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71481,"nodeType":"ExpressionStatement","src":"18002:82:104"},{"assignments":[71483],"declarations":[{"constant":false,"id":71483,"mutability":"mutable","name":"currentPower","nameLocation":"18110:12:104","nodeType":"VariableDeclaration","scope":71513,"src":"18102:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71482,"name":"uint256","nodeType":"ElementaryTypeName","src":"18102:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71491,"initialValue":{"baseExpression":{"baseExpression":{"id":71484,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"18125:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71486,"indexExpression":{"id":71485,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18147:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18125:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71490,"indexExpression":{"baseExpression":{"id":71487,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18155:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71489,"indexExpression":{"id":71488,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18172:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18155:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18125:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"18102:73:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71492,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18197:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":71493,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71483,"src":"18216:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18197:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71511,"nodeType":"Block","src":"18341:111:104","statements":[{"expression":{"id":71509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71501,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"18363:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71506,"indexExpression":{"id":71502,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18385:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18363:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71507,"indexExpression":{"baseExpression":{"id":71503,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18393:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71505,"indexExpression":{"id":71504,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18410:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18393:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18363:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":71508,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18417:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18363:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71510,"nodeType":"ExpressionStatement","src":"18363:70:104"}]},"id":71512,"nodeType":"IfStatement","src":"18193:259:104","trueBody":{"id":71500,"nodeType":"Block","src":"18230:105:104","statements":[{"errorCall":{"arguments":[{"id":71496,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18285:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71497,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71483,"src":"18303:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71495,"name":"CantDecreaseMoreThanPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70422,"src":"18259:25:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":71498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18259:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71499,"nodeType":"RevertStatement","src":"18252:64:104"}]}}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71452,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17818:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71453,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"17822:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71454,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17839:6:104","memberName":"length","nodeType":"MemberAccess","src":"17822:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17818:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71537,"initializationExpression":{"assignments":[71449],"declarations":[{"constant":false,"id":71449,"mutability":"mutable","name":"i","nameLocation":"17811:1:104","nodeType":"VariableDeclaration","scope":71537,"src":"17803:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71448,"name":"uint256","nodeType":"ElementaryTypeName","src":"17803:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71451,"initialValue":{"hexValue":"30","id":71450,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17815:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17803:13:104"},"loopExpression":{"expression":{"id":71457,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"17847:3:104","subExpression":{"id":71456,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17847:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71458,"nodeType":"ExpressionStatement","src":"17847:3:104"},"nodeType":"ForStatement","src":"17798:951:104"},{"expression":{"id":71543,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71538,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"18758:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71540,"indexExpression":{"id":71539,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18778:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18758:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18786:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"18758:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":71542,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18802:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18758:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71544,"nodeType":"ExpressionStatement","src":"18758:59:104"},{"eventCall":{"arguments":[{"id":71546,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18853:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71547,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18861:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71545,"name":"MemberPowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70367,"src":"18832:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18832:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71549,"nodeType":"EmitStatement","src":"18827:50:104"}]},"functionSelector":"5ecf71c5","implemented":true,"kind":"function","modifiers":[{"id":71406,"kind":"modifierInvocation","modifierName":{"id":71405,"name":"nonReentrant","nameLocations":["17385:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"17385:12:104"},"nodeType":"ModifierInvocation","src":"17385:12:104"}],"name":"decreasePower","nameLocation":"17331:13:104","parameters":{"id":71404,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71403,"mutability":"mutable","name":"_amountUnstaked","nameLocation":"17353:15:104","nodeType":"VariableDeclaration","scope":71551,"src":"17345:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71402,"name":"uint256","nodeType":"ElementaryTypeName","src":"17345:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17344:25:104"},"returnParameters":{"id":71407,"nodeType":"ParameterList","parameters":[],"src":"17398:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71567,"nodeType":"FunctionDefinition","src":"18890:173:104","nodes":[],"body":{"id":71566,"nodeType":"Block","src":"18998:65:104","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":71560,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"19015:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71562,"indexExpression":{"id":71561,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71553,"src":"19037:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19015:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71564,"indexExpression":{"id":71563,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71555,"src":"19046:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19015:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71559,"id":71565,"nodeType":"Return","src":"19008:48:104"}]},"functionSelector":"7817ee4f","implemented":true,"kind":"function","modifiers":[],"name":"getMemberPowerInStrategy","nameLocation":"18899:24:104","parameters":{"id":71556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71553,"mutability":"mutable","name":"_member","nameLocation":"18932:7:104","nodeType":"VariableDeclaration","scope":71567,"src":"18924:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71552,"name":"address","nodeType":"ElementaryTypeName","src":"18924:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71555,"mutability":"mutable","name":"_strategy","nameLocation":"18949:9:104","nodeType":"VariableDeclaration","scope":71567,"src":"18941:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71554,"name":"address","nodeType":"ElementaryTypeName","src":"18941:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18923:36:104"},"returnParameters":{"id":71559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71567,"src":"18989:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71557,"name":"uint256","nodeType":"ElementaryTypeName","src":"18989:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18988:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71580,"nodeType":"FunctionDefinition","src":"19069:151:104","nodes":[],"body":{"id":71579,"nodeType":"Block","src":"19155:65:104","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":71574,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"19172:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71576,"indexExpression":{"id":71575,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71569,"src":"19192:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19172:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71577,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19201:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"19172:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71573,"id":71578,"nodeType":"Return","src":"19165:48:104"}]},"functionSelector":"2c611c4a","implemented":true,"kind":"function","modifiers":[],"name":"getMemberStakedAmount","nameLocation":"19078:21:104","parameters":{"id":71570,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71569,"mutability":"mutable","name":"_member","nameLocation":"19108:7:104","nodeType":"VariableDeclaration","scope":71580,"src":"19100:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71568,"name":"address","nodeType":"ElementaryTypeName","src":"19100:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19099:17:104"},"returnParameters":{"id":71573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71572,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71580,"src":"19146:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71571,"name":"uint256","nodeType":"ElementaryTypeName","src":"19146:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19145:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71617,"nodeType":"FunctionDefinition","src":"19226:321:104","nodes":[],"body":{"id":71616,"nodeType":"Block","src":"19286:261:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71585,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"19296:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19296:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71587,"nodeType":"ExpressionStatement","src":"19296:17:104"},{"assignments":[71589],"declarations":[{"constant":false,"id":71589,"mutability":"mutable","name":"strategy","nameLocation":"19331:8:104","nodeType":"VariableDeclaration","scope":71616,"src":"19323:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71588,"name":"address","nodeType":"ElementaryTypeName","src":"19323:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71598,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":71594,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71582,"src":"19363:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71592,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"19350:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":71593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19355:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":74977,"src":"19350:12:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":71595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19350:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":71596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19371:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"19350:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":71591,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19342:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71590,"name":"address","nodeType":"ElementaryTypeName","src":"19342:7:104","typeDescriptions":{}}},"id":71597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19342:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19323:57:104"},{"expression":{"arguments":[{"id":71600,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19409:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71599,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"19390:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19390:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71602,"nodeType":"ExpressionStatement","src":"19390:28:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":71606,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"19464:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":71605,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"19459:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":71607,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19459:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":71608,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19480:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"19459:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":71603,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19432:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71604,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19441:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"19432:26:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":71609,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19432:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71615,"nodeType":"IfStatement","src":"19428:113:104","trueBody":{"id":71614,"nodeType":"Block","src":"19494:47:104","statements":[{"expression":{"arguments":[{"id":71611,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19521:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71610,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"19508:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71612,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19508:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71613,"nodeType":"ExpressionStatement","src":"19508:22:104"}]}}]},"functionSelector":"82d6a1e7","implemented":true,"kind":"function","modifiers":[],"name":"addStrategyByPoolId","nameLocation":"19235:19:104","parameters":{"id":71583,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71582,"mutability":"mutable","name":"poolId","nameLocation":"19263:6:104","nodeType":"VariableDeclaration","scope":71617,"src":"19255:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71581,"name":"uint256","nodeType":"ElementaryTypeName","src":"19255:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19254:16:104"},"returnParameters":{"id":71584,"nodeType":"ParameterList","parameters":[],"src":"19286:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71630,"nodeType":"FunctionDefinition","src":"19553:128:104","nodes":[],"body":{"id":71629,"nodeType":"Block","src":"19611:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71622,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"19621:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19621:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71624,"nodeType":"ExpressionStatement","src":"19621:17:104"},{"expression":{"arguments":[{"id":71626,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71619,"src":"19661:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71625,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"19648:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19648:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71628,"nodeType":"ExpressionStatement","src":"19648:26:104"}]},"functionSelector":"223e5479","implemented":true,"kind":"function","modifiers":[],"name":"addStrategy","nameLocation":"19562:11:104","parameters":{"id":71620,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71619,"mutability":"mutable","name":"_newStrategy","nameLocation":"19582:12:104","nodeType":"VariableDeclaration","scope":71630,"src":"19574:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71618,"name":"address","nodeType":"ElementaryTypeName","src":"19574:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19573:22:104"},"returnParameters":{"id":71621,"nodeType":"ParameterList","parameters":[],"src":"19611:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71654,"nodeType":"FunctionDefinition","src":"19687:252:104","nodes":[],"body":{"id":71653,"nodeType":"Block","src":"19748:191:104","nodes":[],"statements":[{"condition":{"baseExpression":{"id":71635,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"19762:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71637,"indexExpression":{"id":71636,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19780:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19762:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71642,"nodeType":"IfStatement","src":"19758:85:104","trueBody":{"id":71641,"nodeType":"Block","src":"19795:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71638,"name":"StrategyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70400,"src":"19816:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19816:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71640,"nodeType":"RevertStatement","src":"19809:23:104"}]}},{"expression":{"id":71647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71643,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"19852:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71645,"indexExpression":{"id":71644,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19870:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"19852:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71646,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"19886:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"19852:38:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71648,"nodeType":"ExpressionStatement","src":"19852:38:104"},{"eventCall":{"arguments":[{"id":71650,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19919:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71649,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70333,"src":"19905:13:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71651,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19905:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71652,"nodeType":"EmitStatement","src":"19900:32:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addStrategy","nameLocation":"19696:12:104","parameters":{"id":71633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71632,"mutability":"mutable","name":"_newStrategy","nameLocation":"19717:12:104","nodeType":"VariableDeclaration","scope":71654,"src":"19709:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71631,"name":"address","nodeType":"ElementaryTypeName","src":"19709:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19708:22:104"},"returnParameters":{"id":71634,"nodeType":"ParameterList","parameters":[],"src":"19748:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71682,"nodeType":"FunctionDefinition","src":"19945:237:104","nodes":[],"body":{"id":71681,"nodeType":"Block","src":"20008:174:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71659,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20018:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20018:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71661,"nodeType":"ExpressionStatement","src":"20018:17:104"},{"assignments":[71663],"declarations":[{"constant":false,"id":71663,"mutability":"mutable","name":"strategy","nameLocation":"20053:8:104","nodeType":"VariableDeclaration","scope":71681,"src":"20045:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71662,"name":"address","nodeType":"ElementaryTypeName","src":"20045:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71672,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":71668,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71656,"src":"20085:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71666,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"20072:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":71667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":74977,"src":"20072:12:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":71669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20072:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":71670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"20093:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"20072:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":71665,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20064:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71664,"name":"address","nodeType":"ElementaryTypeName","src":"20064:7:104","typeDescriptions":{}}},"id":71671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20064:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"20045:57:104"},{"expression":{"arguments":[{"id":71674,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71663,"src":"20131:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71673,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20112:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20112:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71676,"nodeType":"ExpressionStatement","src":"20112:28:104"},{"expression":{"arguments":[{"id":71678,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71663,"src":"20166:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71677,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"20150:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20150:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71680,"nodeType":"ExpressionStatement","src":"20150:25:104"}]},"functionSelector":"73265c37","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyByPoolId","nameLocation":"19954:22:104","parameters":{"id":71657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71656,"mutability":"mutable","name":"poolId","nameLocation":"19985:6:104","nodeType":"VariableDeclaration","scope":71682,"src":"19977:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71655,"name":"uint256","nodeType":"ElementaryTypeName","src":"19977:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19976:16:104"},"returnParameters":{"id":71658,"nodeType":"ParameterList","parameters":[],"src":"20008:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71702,"nodeType":"FunctionDefinition","src":"20188:194:104","nodes":[],"body":{"id":71701,"nodeType":"Block","src":"20249:133:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71688,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20278:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71687,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20259:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20259:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71690,"nodeType":"ExpressionStatement","src":"20259:29:104"},{"expression":{"id":71695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71691,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"20298:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71693,"indexExpression":{"id":71692,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20316:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"20298:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":71694,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"20329:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"20298:36:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71696,"nodeType":"ExpressionStatement","src":"20298:36:104"},{"eventCall":{"arguments":[{"id":71698,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20365:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71697,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70337,"src":"20349:15:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71699,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20349:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71700,"nodeType":"EmitStatement","src":"20344:31:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeStrategy","nameLocation":"20197:15:104","parameters":{"id":71685,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71684,"mutability":"mutable","name":"_strategy","nameLocation":"20221:9:104","nodeType":"VariableDeclaration","scope":71702,"src":"20213:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71683,"name":"address","nodeType":"ElementaryTypeName","src":"20213:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20212:19:104"},"returnParameters":{"id":71686,"nodeType":"ParameterList","parameters":[],"src":"20249:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71715,"nodeType":"FunctionDefinition","src":"20388:128:104","nodes":[],"body":{"id":71714,"nodeType":"Block","src":"20446:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71707,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20456:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20456:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71709,"nodeType":"ExpressionStatement","src":"20456:17:104"},{"expression":{"arguments":[{"id":71711,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71704,"src":"20499:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71710,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"20483:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71712,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20483:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71713,"nodeType":"ExpressionStatement","src":"20483:26:104"}]},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategy","nameLocation":"20397:14:104","parameters":{"id":71705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71704,"mutability":"mutable","name":"_strategy","nameLocation":"20420:9:104","nodeType":"VariableDeclaration","scope":71715,"src":"20412:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71703,"name":"address","nodeType":"ElementaryTypeName","src":"20412:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20411:19:104"},"returnParameters":{"id":71706,"nodeType":"ParameterList","parameters":[],"src":"20446:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71740,"nodeType":"FunctionDefinition","src":"20522:248:104","nodes":[],"body":{"id":71739,"nodeType":"Block","src":"20584:186:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71720,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20594:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20594:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71722,"nodeType":"ExpressionStatement","src":"20594:17:104"},{"expression":{"arguments":[{"id":71724,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71717,"src":"20640:5:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71723,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20621:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20621:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71726,"nodeType":"ExpressionStatement","src":"20621:25:104"},{"expression":{"id":71729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71727,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20656:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71728,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71717,"src":"20677:5:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"20656:26:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":71730,"nodeType":"ExpressionStatement","src":"20656:26:104"},{"eventCall":{"arguments":[{"arguments":[{"id":71734,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"20730:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}],"id":71733,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20722:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71732,"name":"address","nodeType":"ElementaryTypeName","src":"20722:7:104","typeDescriptions":{}}},"id":71735,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20722:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71736,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20744:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71731,"name":"CouncilSafeChangeStarted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70296,"src":"20697:24:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20697:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71738,"nodeType":"EmitStatement","src":"20692:71:104"}]},"functionSelector":"397e2543","implemented":true,"kind":"function","modifiers":[],"name":"setCouncilSafe","nameLocation":"20531:14:104","parameters":{"id":71718,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71717,"mutability":"mutable","name":"_safe","nameLocation":"20562:5:104","nodeType":"VariableDeclaration","scope":71740,"src":"20546:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":71716,"name":"address","nodeType":"ElementaryTypeName","src":"20546:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"20545:23:104"},"returnParameters":{"id":71719,"nodeType":"ParameterList","parameters":[],"src":"20584:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71757,"nodeType":"FunctionDefinition","src":"20776:187:104","nodes":[],"body":{"id":71756,"nodeType":"Block","src":"20823:140:104","nodes":[],"statements":[{"expression":{"id":71747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71743,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"20833:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71745,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20853:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71744,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75245,"src":"20847:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$75245_$","typeString":"type(contract ISafe)"}},"id":71746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20847:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"src":"20833:39:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75245","typeString":"contract ISafe"}},"id":71748,"nodeType":"ExpressionStatement","src":"20833:39:104"},{"expression":{"id":71750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"20882:25:104","subExpression":{"id":71749,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20889:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71751,"nodeType":"ExpressionStatement","src":"20882:25:104"},{"eventCall":{"arguments":[{"id":71753,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20937:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71752,"name":"CouncilSafeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70290,"src":"20922:14:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71754,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20922:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71755,"nodeType":"EmitStatement","src":"20917:39:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_changeCouncilSafe","nameLocation":"20785:18:104","parameters":{"id":71741,"nodeType":"ParameterList","parameters":[],"src":"20803:2:104"},"returnParameters":{"id":71742,"nodeType":"ParameterList","parameters":[],"src":"20823:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71773,"nodeType":"FunctionDefinition","src":"20969:179:104","nodes":[],"body":{"id":71772,"nodeType":"Block","src":"21013:135:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71763,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71760,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21027:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21031:6:104","memberName":"sender","nodeType":"MemberAccess","src":"21027:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":71762,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"21041:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"21027:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71768,"nodeType":"IfStatement","src":"21023:89:104","trueBody":{"id":71767,"nodeType":"Block","src":"21061:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71764,"name":"SenderNotNewOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70404,"src":"21082:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71765,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21082:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71766,"nodeType":"RevertStatement","src":"21075:26:104"}]}},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71769,"name":"_changeCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71757,"src":"21121:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":71770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21121:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71771,"nodeType":"ExpressionStatement","src":"21121:20:104"}]},"functionSelector":"b5058c50","implemented":true,"kind":"function","modifiers":[],"name":"acceptCouncilSafe","nameLocation":"20978:17:104","parameters":{"id":71758,"nodeType":"ParameterList","parameters":[],"src":"20995:2:104"},"returnParameters":{"id":71759,"nodeType":"ParameterList","parameters":[],"src":"21013:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71791,"nodeType":"FunctionDefinition","src":"21154:190:104","nodes":[],"body":{"id":71790,"nodeType":"Block","src":"21234:110:104","nodes":[],"statements":[{"assignments":[71782],"declarations":[{"constant":false,"id":71782,"mutability":"mutable","name":"newMember","nameLocation":"21258:9:104","nodeType":"VariableDeclaration","scope":71790,"src":"21244:23:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":71781,"nodeType":"UserDefinedTypeName","pathNode":{"id":71780,"name":"Member","nameLocations":["21244:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"21244:6:104"},"referencedDeclaration":70271,"src":"21244:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71786,"initialValue":{"baseExpression":{"id":71783,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"21270:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71785,"indexExpression":{"id":71784,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71775,"src":"21290:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21270:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21244:54:104"},{"expression":{"expression":{"id":71787,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71782,"src":"21315:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":71788,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21325:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70270,"src":"21315:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":71779,"id":71789,"nodeType":"Return","src":"21308:29:104"}]},"functionSelector":"a230c524","implemented":true,"kind":"function","modifiers":[],"name":"isMember","nameLocation":"21163:8:104","parameters":{"id":71776,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71775,"mutability":"mutable","name":"_member","nameLocation":"21180:7:104","nodeType":"VariableDeclaration","scope":71791,"src":"21172:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71774,"name":"address","nodeType":"ElementaryTypeName","src":"21172:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21171:17:104"},"returnParameters":{"id":71779,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71778,"mutability":"mutable","name":"_isMember","nameLocation":"21223:9:104","nodeType":"VariableDeclaration","scope":71791,"src":"21218:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71777,"name":"bool","nodeType":"ElementaryTypeName","src":"21218:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"21217:16:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71910,"nodeType":"FunctionDefinition","src":"21350:1932:104","nodes":[],"body":{"id":71909,"nodeType":"Block","src":"21412:1870:104","nodes":[],"statements":[{"assignments":[71797],"declarations":[{"constant":false,"id":71797,"mutability":"mutable","name":"_member","nameLocation":"21430:7:104","nodeType":"VariableDeclaration","scope":71909,"src":"21422:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71796,"name":"address","nodeType":"ElementaryTypeName","src":"21422:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71800,"initialValue":{"expression":{"id":71798,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21440:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21444:6:104","memberName":"sender","nodeType":"MemberAccess","src":"21440:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"21422:28:104"},{"assignments":[71803],"declarations":[{"constant":false,"id":71803,"mutability":"mutable","name":"newMember","nameLocation":"21475:9:104","nodeType":"VariableDeclaration","scope":71909,"src":"21460:24:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"},"typeName":{"id":71802,"nodeType":"UserDefinedTypeName","pathNode":{"id":71801,"name":"Member","nameLocations":["21460:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"21460:6:104"},"referencedDeclaration":70271,"src":"21460:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71807,"initialValue":{"baseExpression":{"id":71804,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"21487:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71806,"indexExpression":{"id":71805,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"21507:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21487:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21460:55:104"},{"assignments":[71810],"declarations":[{"constant":false,"id":71810,"mutability":"mutable","name":"gardensFactory","nameLocation":"21542:14:104","nodeType":"VariableDeclaration","scope":71909,"src":"21525:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":71809,"nodeType":"UserDefinedTypeName","pathNode":{"id":71808,"name":"IRegistryFactory","nameLocations":["21525:16:104"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"21525:16:104"},"referencedDeclaration":70017,"src":"21525:16:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":71814,"initialValue":{"arguments":[{"id":71812,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"21576:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71811,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"21559:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":71813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21559:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"21525:67:104"},{"assignments":[71816],"declarations":[{"constant":false,"id":71816,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"21610:18:104","nodeType":"VariableDeclaration","scope":71909,"src":"21602:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71815,"name":"uint256","nodeType":"ElementaryTypeName","src":"21602:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71826,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71819,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71817,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21632:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71818,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"21654:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21632:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71820,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21631:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71823,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21671:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71822,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"21677:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21671:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71824,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21670:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21631:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21602:91:104"},{"assignments":[71828],"declarations":[{"constant":false,"id":71828,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"21711:16:104","nodeType":"VariableDeclaration","scope":71909,"src":"21703:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71827,"name":"uint256","nodeType":"ElementaryTypeName","src":"21703:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71844,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71829,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21743:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":71834,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21803:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21795:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71832,"name":"address","nodeType":"ElementaryTypeName","src":"21795:7:104","typeDescriptions":{}}},"id":71835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21795:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71830,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71810,"src":"21765:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21780:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"21765:29:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":71836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21765:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21743:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71838,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21742:68:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71841,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21814:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71840,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"21820:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21814:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71842,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21813:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21742:94:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21703:133:104"},{"condition":{"id":71848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"21850:18:104","subExpression":{"arguments":[{"id":71846,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"21860:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71845,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"21851:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":71847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21851:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71908,"nodeType":"IfStatement","src":"21846:1430:104","trueBody":{"id":71907,"nodeType":"Block","src":"21870:1406:104","statements":[{"expression":{"id":71853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":71849,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71803,"src":"21884:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member storage pointer"}},"id":71851,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21894:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70270,"src":"21884:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"21909:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"21884:29:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71854,"nodeType":"ExpressionStatement","src":"21884:29:104"},{"expression":{"id":71859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":71855,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71803,"src":"21928:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member storage pointer"}},"id":71857,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21938:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"21928:22:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71858,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21953:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21928:44:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71860,"nodeType":"ExpressionStatement","src":"21928:44:104"},{"expression":{"arguments":[{"id":71864,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"22170:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71867,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22187:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71866,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22179:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71865,"name":"address","nodeType":"ElementaryTypeName","src":"22179:7:104","typeDescriptions":{}}},"id":71868,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22179:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71869,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"22194:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71870,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22216:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22194:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71872,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"22237:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22194:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71861,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"22124:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22136:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"22124:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":71874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22124:143:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71875,"nodeType":"ExpressionStatement","src":"22124:143:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71876,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22692:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71877,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22713:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22692:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71887,"nodeType":"IfStatement","src":"22688:178:104","trueBody":{"id":71886,"nodeType":"Block","src":"22716:150:104","statements":[{"expression":{"arguments":[{"id":71882,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70474,"src":"22819:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71883,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22832:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71879,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"22794:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22806:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"22794:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71884,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22794:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71885,"nodeType":"ExpressionStatement","src":"22794:57:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71890,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71888,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"22949:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22968:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22949:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71901,"nodeType":"IfStatement","src":"22945:255:104","trueBody":{"id":71900,"nodeType":"Block","src":"22971:229:104","statements":[{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71894,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71810,"src":"23128:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23143:21:104","memberName":"getGardensFeeReceiver","nodeType":"MemberAccess","referencedDeclaration":70009,"src":"23128:36:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":71896,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23128:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71897,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"23168:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71891,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"23103:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23115:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"23103:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71898,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23103:82:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71899,"nodeType":"ExpressionStatement","src":"23103:82:104"}]}},{"eventCall":{"arguments":[{"id":71903,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"23236:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71904,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23245:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71902,"name":"MemberRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70302,"src":"23219:16:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23219:46:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71906,"nodeType":"EmitStatement","src":"23214:51:104"}]}}]},"functionSelector":"3517aa7d","implemented":true,"kind":"function","modifiers":[{"id":71794,"kind":"modifierInvocation","modifierName":{"id":71793,"name":"nonReentrant","nameLocations":["21399:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"21399:12:104"},"nodeType":"ModifierInvocation","src":"21399:12:104"}],"name":"stakeAndRegisterMember","nameLocation":"21359:22:104","parameters":{"id":71792,"nodeType":"ParameterList","parameters":[],"src":"21381:2:104"},"returnParameters":{"id":71795,"nodeType":"ParameterList","parameters":[],"src":"21412:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71959,"nodeType":"FunctionDefinition","src":"23288:477:104","nodes":[],"body":{"id":71958,"nodeType":"Block","src":"23360:405:104","nodes":[],"statements":[{"assignments":[71917],"declarations":[{"constant":false,"id":71917,"mutability":"mutable","name":"gardensFactory","nameLocation":"23387:14:104","nodeType":"VariableDeclaration","scope":71958,"src":"23370:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":71916,"nodeType":"UserDefinedTypeName","pathNode":{"id":71915,"name":"IRegistryFactory","nameLocations":["23370:16:104"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"23370:16:104"},"referencedDeclaration":70017,"src":"23370:16:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":71921,"initialValue":{"arguments":[{"id":71919,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"23421:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71918,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"23404:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":71920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23404:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"23370:67:104"},{"assignments":[71923],"declarations":[{"constant":false,"id":71923,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"23455:18:104","nodeType":"VariableDeclaration","scope":71958,"src":"23447:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71922,"name":"uint256","nodeType":"ElementaryTypeName","src":"23447:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71933,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71924,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23477:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71925,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"23499:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23477:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71927,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23476:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71930,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71928,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23516:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71929,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"23522:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23516:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71931,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23515:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23476:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23447:91:104"},{"assignments":[71935],"declarations":[{"constant":false,"id":71935,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"23556:16:104","nodeType":"VariableDeclaration","scope":71958,"src":"23548:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71934,"name":"uint256","nodeType":"ElementaryTypeName","src":"23548:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71951,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71936,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23588:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":71941,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23648:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23640:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71939,"name":"address","nodeType":"ElementaryTypeName","src":"23640:7:104","typeDescriptions":{}}},"id":71942,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23640:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71937,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71917,"src":"23610:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23625:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"23610:29:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":71943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23610:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23588:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71945,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23587:68:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71948,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71946,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23659:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71947,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"23665:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23659:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71949,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23658:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23587:94:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23548:133:104"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71956,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71952,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23699:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71953,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71923,"src":"23721:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23699:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71955,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71935,"src":"23742:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23699:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71914,"id":71957,"nodeType":"Return","src":"23692:66:104"}]},"functionSelector":"28c309e9","implemented":true,"kind":"function","modifiers":[],"name":"getStakeAmountWithFees","nameLocation":"23297:22:104","parameters":{"id":71911,"nodeType":"ParameterList","parameters":[],"src":"23319:2:104"},"returnParameters":{"id":71914,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71913,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71959,"src":"23351:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71912,"name":"uint256","nodeType":"ElementaryTypeName","src":"23351:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23350:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71967,"nodeType":"FunctionDefinition","src":"23771:115:104","nodes":[],"body":{"id":71966,"nodeType":"Block","src":"23843:43:104","nodes":[],"statements":[{"expression":{"id":71964,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23860:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71963,"id":71965,"nodeType":"Return","src":"23853:26:104"}]},"functionSelector":"0331383c","implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"23780:20:104","parameters":{"id":71960,"nodeType":"ParameterList","parameters":[],"src":"23800:2:104"},"returnParameters":{"id":71963,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71962,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71967,"src":"23834:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71961,"name":"uint256","nodeType":"ElementaryTypeName","src":"23834:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23833:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":71984,"nodeType":"FunctionDefinition","src":"23892:190:104","nodes":[],"body":{"id":71983,"nodeType":"Block","src":"23959:123:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71972,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"23969:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71973,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23969:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71974,"nodeType":"ExpressionStatement","src":"23969:17:104"},{"expression":{"id":71977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71975,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23996:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71976,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"24018:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23996:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71978,"nodeType":"ExpressionStatement","src":"23996:32:104"},{"eventCall":{"arguments":[{"id":71980,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"24064:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71979,"name":"BasisStakedAmountSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70355,"src":"24043:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":71981,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24043:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71982,"nodeType":"EmitStatement","src":"24038:37:104"}]},"functionSelector":"31f61bca","implemented":true,"kind":"function","modifiers":[],"name":"setBasisStakedAmount","nameLocation":"23901:20:104","parameters":{"id":71970,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71969,"mutability":"mutable","name":"_newAmount","nameLocation":"23930:10:104","nodeType":"VariableDeclaration","scope":71984,"src":"23922:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71968,"name":"uint256","nodeType":"ElementaryTypeName","src":"23922:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23921:20:104"},"returnParameters":{"id":71971,"nodeType":"ParameterList","parameters":[],"src":"23959:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72009,"nodeType":"FunctionDefinition","src":"24088:288:104","nodes":[],"body":{"id":72008,"nodeType":"Block","src":"24154:222:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71989,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"24164:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24164:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71991,"nodeType":"ExpressionStatement","src":"24164:17:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71994,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71992,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24195:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":71993,"name":"MAX_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70456,"src":"24214:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24195:26:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71999,"nodeType":"IfStatement","src":"24191:86:104","trueBody":{"id":71998,"nodeType":"Block","src":"24223:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71995,"name":"NewFeeGreaterThanMax","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70410,"src":"24244:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24244:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71997,"nodeType":"RevertStatement","src":"24237:29:104"}]}},{"expression":{"id":72002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72000,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"24286:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72001,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24301:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24286:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72003,"nodeType":"ExpressionStatement","src":"24286:31:104"},{"eventCall":{"arguments":[{"id":72005,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24352:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72004,"name":"CommunityFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70320,"src":"24332:19:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":72006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24332:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72007,"nodeType":"EmitStatement","src":"24327:42:104"}]},"functionSelector":"0d12bbdb","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityFee","nameLocation":"24097:15:104","parameters":{"id":71987,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71986,"mutability":"mutable","name":"_newCommunityFee","nameLocation":"24121:16:104","nodeType":"VariableDeclaration","scope":72009,"src":"24113:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71985,"name":"uint256","nodeType":"ElementaryTypeName","src":"24113:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"24112:26:104"},"returnParameters":{"id":71988,"nodeType":"ParameterList","parameters":[],"src":"24154:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72022,"nodeType":"FunctionDefinition","src":"24419:133:104","nodes":[],"body":{"id":72021,"nodeType":"Block","src":"24496:56:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":72017,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"24521:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72018,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72011,"src":"24537:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72016,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"24513:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":72019,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24513:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72015,"id":72020,"nodeType":"Return","src":"24506:39:104"}]},"functionSelector":"ebd7dc52","implemented":true,"kind":"function","modifiers":[],"name":"isCouncilMember","nameLocation":"24428:15:104","parameters":{"id":72012,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72011,"mutability":"mutable","name":"_member","nameLocation":"24452:7:104","nodeType":"VariableDeclaration","scope":72022,"src":"24444:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72010,"name":"address","nodeType":"ElementaryTypeName","src":"24444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24443:17:104"},"returnParameters":{"id":72015,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72014,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72022,"src":"24490:4:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72013,"name":"bool","nodeType":"ElementaryTypeName","src":"24490:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"24489:6:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72072,"nodeType":"FunctionDefinition","src":"24558:465:104","nodes":[],"body":{"id":72071,"nodeType":"Block","src":"24614:409:104","nodes":[],"statements":[{"assignments":[72028],"declarations":[{"constant":false,"id":72028,"mutability":"mutable","name":"_member","nameLocation":"24632:7:104","nodeType":"VariableDeclaration","scope":72071,"src":"24624:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72027,"name":"address","nodeType":"ElementaryTypeName","src":"24624:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72031,"initialValue":{"expression":{"id":72029,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24642:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72030,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24646:6:104","memberName":"sender","nodeType":"MemberAccess","src":"24642:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"24624:28:104"},{"expression":{"arguments":[{"id":72033,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24688:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72032,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"24662:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":72034,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24662:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72035,"nodeType":"ExpressionStatement","src":"24662:34:104"},{"expression":{"arguments":[{"id":72037,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24730:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72036,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72109,"src":"24706:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72038,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24706:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72039,"nodeType":"ExpressionStatement","src":"24706:32:104"},{"assignments":[72042],"declarations":[{"constant":false,"id":72042,"mutability":"mutable","name":"member","nameLocation":"24762:6:104","nodeType":"VariableDeclaration","scope":72071,"src":"24748:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":72041,"nodeType":"UserDefinedTypeName","pathNode":{"id":72040,"name":"Member","nameLocations":["24748:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"24748:6:104"},"referencedDeclaration":70271,"src":"24748:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72046,"initialValue":{"baseExpression":{"id":72043,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"24771:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72045,"indexExpression":{"id":72044,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24791:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24771:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"24748:51:104"},{"expression":{"id":72050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24809:35:104","subExpression":{"baseExpression":{"id":72047,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"24816:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72049,"indexExpression":{"id":72048,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24836:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24816:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72051,"nodeType":"ExpressionStatement","src":"24809:35:104"},{"expression":{"id":72055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24854:34:104","subExpression":{"baseExpression":{"id":72052,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"24861:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72054,"indexExpression":{"id":72053,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24880:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24861:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72056,"nodeType":"ExpressionStatement","src":"24854:34:104"},{"expression":{"arguments":[{"id":72060,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24924:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72061,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72042,"src":"24933:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72062,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24940:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"24933:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72057,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"24899:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24911:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"24899:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72063,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24899:54:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72064,"nodeType":"ExpressionStatement","src":"24899:54:104"},{"eventCall":{"arguments":[{"id":72066,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24987:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72067,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72042,"src":"24996:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25003:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"24996:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72065,"name":"MemberUnregistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70308,"src":"24968:18:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24968:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72070,"nodeType":"EmitStatement","src":"24963:53:104"}]},"functionSelector":"b99b4370","implemented":true,"kind":"function","modifiers":[{"id":72025,"kind":"modifierInvocation","modifierName":{"id":72024,"name":"nonReentrant","nameLocations":["24601:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"24601:12:104"},"nodeType":"ModifierInvocation","src":"24601:12:104"}],"name":"unregisterMember","nameLocation":"24567:16:104","parameters":{"id":72023,"nodeType":"ParameterList","parameters":[],"src":"24583:2:104"},"returnParameters":{"id":72026,"nodeType":"ParameterList","parameters":[],"src":"24614:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72109,"nodeType":"FunctionDefinition","src":"25029:474:104","nodes":[],"body":{"id":72108,"nodeType":"Block","src":"25096:407:104","nodes":[],"statements":[{"assignments":[72081],"declarations":[{"constant":false,"id":72081,"mutability":"mutable","name":"memberStrategies","nameLocation":"25123:16:104","nodeType":"VariableDeclaration","scope":72108,"src":"25106:33:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72079,"name":"address","nodeType":"ElementaryTypeName","src":"25106:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72080,"nodeType":"ArrayTypeName","src":"25106:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72085,"initialValue":{"baseExpression":{"id":72082,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"25142:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72084,"indexExpression":{"id":72083,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72074,"src":"25161:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25142:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25106:63:104"},{"body":{"id":72106,"nodeType":"Block","src":"25299:198:104","statements":[{"expression":{"arguments":[{"id":72103,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72074,"src":"25478:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"baseExpression":{"id":72098,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72081,"src":"25440:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72100,"indexExpression":{"id":72099,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25457:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25440:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72097,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"25425:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":72101,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25425:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":72102,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25461:16:104","memberName":"deactivatePoints","nodeType":"MemberAccess","referencedDeclaration":65511,"src":"25425:52:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":72104,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25425:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72105,"nodeType":"ExpressionStatement","src":"25425:61:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72093,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72090,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25265:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":72091,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72081,"src":"25269:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72092,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25286:6:104","memberName":"length","nodeType":"MemberAccess","src":"25269:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25265:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72107,"initializationExpression":{"assignments":[72087],"declarations":[{"constant":false,"id":72087,"mutability":"mutable","name":"i","nameLocation":"25258:1:104","nodeType":"VariableDeclaration","scope":72107,"src":"25250:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72086,"name":"uint256","nodeType":"ElementaryTypeName","src":"25250:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72089,"initialValue":{"hexValue":"30","id":72088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25262:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25250:13:104"},"loopExpression":{"expression":{"id":72095,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25294:3:104","subExpression":{"id":72094,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25294:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72096,"nodeType":"ExpressionStatement","src":"25294:3:104"},"nodeType":"ForStatement","src":"25245:252:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"deactivateAllStrategies","nameLocation":"25038:23:104","parameters":{"id":72075,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72074,"mutability":"mutable","name":"_member","nameLocation":"25070:7:104","nodeType":"VariableDeclaration","scope":72109,"src":"25062:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72073,"name":"address","nodeType":"ElementaryTypeName","src":"25062:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25061:17:104"},"returnParameters":{"id":72076,"nodeType":"ParameterList","parameters":[],"src":"25096:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72169,"nodeType":"FunctionDefinition","src":"25509:583:104","nodes":[],"body":{"id":72168,"nodeType":"Block","src":"25600:492:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72118,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"25610:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25610:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72120,"nodeType":"ExpressionStatement","src":"25610:17:104"},{"condition":{"id":72122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25641:14:104","subExpression":{"id":72121,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70471,"src":"25642:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72127,"nodeType":"IfStatement","src":"25637:68:104","trueBody":{"id":72126,"nodeType":"Block","src":"25657:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72123,"name":"KickNotEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70412,"src":"25678:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25678:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72125,"nodeType":"RevertStatement","src":"25671:23:104"}]}},{"condition":{"id":72131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25718:18:104","subExpression":{"arguments":[{"id":72129,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25728:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72128,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"25719:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":72130,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25719:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72136,"nodeType":"IfStatement","src":"25714:75:104","trueBody":{"id":72135,"nodeType":"Block","src":"25738:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72132,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"25759:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72133,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25759:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72134,"nodeType":"RevertStatement","src":"25752:26:104"}]}},{"assignments":[72139],"declarations":[{"constant":false,"id":72139,"mutability":"mutable","name":"member","nameLocation":"25812:6:104","nodeType":"VariableDeclaration","scope":72168,"src":"25798:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":72138,"nodeType":"UserDefinedTypeName","pathNode":{"id":72137,"name":"Member","nameLocations":["25798:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"25798:6:104"},"referencedDeclaration":70271,"src":"25798:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72143,"initialValue":{"baseExpression":{"id":72140,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"25821:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72142,"indexExpression":{"id":72141,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25841:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25821:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25798:51:104"},{"expression":{"arguments":[{"id":72145,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25883:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72144,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72109,"src":"25859:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72146,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25859:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72147,"nodeType":"ExpressionStatement","src":"25859:32:104"},{"expression":{"id":72151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"25901:35:104","subExpression":{"baseExpression":{"id":72148,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"25908:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72150,"indexExpression":{"id":72149,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25928:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"25908:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72152,"nodeType":"ExpressionStatement","src":"25901:35:104"},{"expression":{"arguments":[{"id":72156,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72113,"src":"25972:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72157,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72139,"src":"25990:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72158,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25997:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"25990:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72153,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"25947:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25959:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"25947:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25947:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72160,"nodeType":"ExpressionStatement","src":"25947:63:104"},{"eventCall":{"arguments":[{"id":72162,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"26038:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72163,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72113,"src":"26047:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72164,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72139,"src":"26065:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72165,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26072:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"26065:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72161,"name":"MemberKicked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70316,"src":"26025:12:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":72166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26025:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72167,"nodeType":"EmitStatement","src":"26020:65:104"}]},"functionSelector":"6871eb4d","implemented":true,"kind":"function","modifiers":[{"id":72116,"kind":"modifierInvocation","modifierName":{"id":72115,"name":"nonReentrant","nameLocations":["25587:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"25587:12:104"},"nodeType":"ModifierInvocation","src":"25587:12:104"}],"name":"kickMember","nameLocation":"25518:10:104","parameters":{"id":72114,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72111,"mutability":"mutable","name":"_member","nameLocation":"25537:7:104","nodeType":"VariableDeclaration","scope":72169,"src":"25529:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72110,"name":"address","nodeType":"ElementaryTypeName","src":"25529:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72113,"mutability":"mutable","name":"_transferAddress","nameLocation":"25554:16:104","nodeType":"VariableDeclaration","scope":72169,"src":"25546:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72112,"name":"address","nodeType":"ElementaryTypeName","src":"25546:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25528:43:104"},"returnParameters":{"id":72117,"nodeType":"ParameterList","parameters":[],"src":"25600:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72173,"nodeType":"VariableDeclaration","src":"26098:25:104","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"26118:5:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":72170,"name":"uint256","nodeType":"ElementaryTypeName","src":"26098:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72172,"length":{"hexValue":"3530","id":72171,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26106:2:104","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"26098:11:104","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":70277,"name":"ProxyOwnableUpgrader","nameLocations":["2884:20:104"],"nodeType":"IdentifierPath","referencedDeclaration":70199,"src":"2884:20:104"},"id":70278,"nodeType":"InheritanceSpecifier","src":"2884:20:104"},{"baseName":{"id":70279,"name":"ReentrancyGuardUpgradeable","nameLocations":["2906:26:104"],"nodeType":"IdentifierPath","referencedDeclaration":53237,"src":"2906:26:104"},"id":70280,"nodeType":"InheritanceSpecifier","src":"2906:26:104"},{"baseName":{"id":70281,"name":"AccessControlUpgradeable","nameLocations":["2934:24:104"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"2934:24:104"},"id":70282,"nodeType":"InheritanceSpecifier","src":"2934:24:104"}],"canonicalName":"RegistryCommunityV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":70276,"nodeType":"StructuredDocumentation","src":"2799:51:104","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_0","nameLocation":"2859:21:104","scope":72175,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":104} \ No newline at end of file +{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161597a6200004d60003960008181611dde01528181611e2101528181611f1c01528181611f5f01526120c3015261597a6000f3fe6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bc565b62000cf4565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041e8565b62000d2c565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422a565b62000da2565b348015620003fd57600080fd5b50620003c96200040f36600462004268565b62001125565b3480156200042257600080fd5b50620003c96200043436600462004268565b6200113d565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c96200047436600462004268565b6200116a565b3480156200048757600080fd5b50620003c9620004993660046200422a565b6200117f565b348015620004ac57600080fd5b506200037d620004be366004620041e8565b62001279565b348015620004d157600080fd5b506200037d6200128e565b348015620004e957600080fd5b5062000501620004fb36600462004288565b62001393565b604051620003629190620042c4565b3480156200051d57600080fd5b506200037d6200052f36600462004268565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042d8565b620013cd565b3480156200058057600080fd5b50620003c962000592366004620041e8565b620013f4565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450c565b62001434565b348015620005e257600080fd5b50620003c962001af4565b348015620005fa57600080fd5b50620003c96200060c366004620042d8565b62001d56565b3480156200061f57600080fd5b50620003c96200063136600462004268565b62001dd4565b3480156200064457600080fd5b50620003c96200065636600462004268565b62001ea5565b3480156200066957600080fd5b50620003566200067b36600462004268565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422a565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e23660046200469f565b62001f12565b348015620006f557600080fd5b506200070d62000707366004620048c9565b62001fd3565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b6565b3480156200075057600080fd5b50620003c962000762366004620041e8565b62002167565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041e8565b620023b3565b348015620007bd57600080fd5b506200037d620007cf3660046200422a565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422a565b6200274d565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a0565b3480156200087d57600080fd5b50620003c96200088f366004620041e8565b620028b6565b348015620008a257600080fd5b506200037d600080516020620058be83398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422a565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041e8565b62002952565b3480156200099557600080fd5b50620009d6620009a736600462004268565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a10565b34801562000a3b57600080fd5b506200035662000a4d366004620042d8565b62002aab565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab336600462004268565b62002ad6565b34801562000ac657600080fd5b50620003c962000ad836600462004268565b62002b20565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b4d565b34801562000b2a57600080fd5b5062000b3562002b84565b60405162000362919062004987565b34801562000b5157600080fd5b50620003c962002c1b565b34801562000b6957600080fd5b506200037d62002d25565b34801562000b8157600080fd5b50620003c962000b9336600462004268565b62002d37565b34801562000ba657600080fd5b5062000b3562002d6c565b34801562000bbe57600080fd5b50620003c962000bd0366004620042d8565b62002d7c565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499c565b62002d9e565b34801562000c6657600080fd5b506200035662000c7836600462004268565b62002f2b565b34801562000c8b57600080fd5b50620003c962000c9d36600462004268565b62002f48565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b35565b60006001600160e01b03198216637965db0b60e01b148062000d2657506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3662002fb9565b62000d45612710600a62004a31565b81111562000d665760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000dac62002ff6565b62000db78262003051565b62000dc2816200307a565b62000dcd81620030b5565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1657604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000eca919062004a61565b600381111562000ede5762000ede62004a4b565b0362000f635760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1590889060009060040162004a81565b6020604051808303816000875af115801562000f35573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5b919062004a9a565b90506200105f565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcc919062004a61565b600381111562000fe05762000fe062004a4b565b146200105f5760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001016908890869060040162004a81565b6020604051808303816000875af115801562001036573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105c919062004a9a565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110b9087908790859062004ab4565b60405180910390a1505050620011216001606555565b5050565b6200112f62002fb9565b6200113a81620030e4565b50565b6200114762003142565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117462002fb9565b6200113a81620031a5565b6200118a8262003051565b6200119581620030b5565b620011a1338262003237565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011e957604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123b82826200326a565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200126d92919062004ad8565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012ae612710606462004a31565b60fc5460fb54620012c0919062004a31565b620012cc919062004af2565b90506000620012df612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200130d903090600401620042c4565b602060405180830381865afa1580156200132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001351919062004a9a565b60fb5462001360919062004a31565b6200136c919062004af2565b9050808260fb546200137f919062004b15565b6200138b919062004b15565b935050505090565b61010d6020528160005260406000208181548110620013b157600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013d88262001279565b620013e381620033a0565b620013ef8383620033ac565b505050565b620013fe62002fb9565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d97565b600054610100900460ff1615808015620014555750600054600160ff909116105b806200147a5750620014673062003436565b1580156200147a575060005460ff166001145b620014e35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001507576000805461ff0019166101001790555b620015128262002d37565b6200151c62003445565b6200152662003479565b62001542600080516020620058be8339815191526000620034a3565b620015518560200151620030b5565b62001561856101000151620030b5565b84516200156e90620030b5565b6200157d8560a00151620030b5565b6060850151156200159757620015978560c00151620030b5565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f2576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200162f908262004bb9565b506101608501516101099062001646908262004bb9565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016bb90600080516020620058be83398151915290620033ac565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001710573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001736919062004c85565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c25760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179c576200179c62004ca5565b60200260200101906001600160a01b031690816001600160a01b031681525050620018ff565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200180d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001837919081019062004cbb565b90508051600262001849919062004b15565b6001600160401b0381111562001863576200186362004300565b6040519080825280602002602001820160405280156200188d578160200160208202803683370190505b50915060005b8151811015620018fc57818181518110620018b257620018b262004ca5565b6020026020010151838281518110620018cf57620018cf62004ca5565b6001600160a01b039092166020928302919091019091015280620018f38162004d79565b91505062001893565b50505b6101065481516001600160a01b03909116908290620019219060019062004d95565b8151811062001934576200193462004ca5565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001966919062004d95565b8151811062001979576200197962004ca5565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cc9291610108913090889060040162004e97565b6020604051808303816000875af1158015620019ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a12919062004a9a565b60fe55805162001a2b9061010f90602084019062004116565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001a9d929091610108919062004eeb565b60405180910390a150801562001aed576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001afe62002ff6565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b2f612710606462004a31565b60fc5460fb5462001b41919062004a31565b62001b4d919062004af2565b9050600062001b60612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b8e903090600401620042c4565b602060405180830381865afa15801562001bac573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd2919062004a9a565b60fb5462001be1919062004a31565b62001bed919062004af2565b905062001bfa8562002ad6565b62001d445760028401805460ff1916600190811790915560fb5490850181905562001c549086903090849062001c3290879062004b15565b62001c3e919062004b15565b610105546001600160a01b0316929190620034f8565b811562001c815760ff546101055462001c81916001600160a01b0391821691610100909104168462003554565b801562001d065762001d06836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001ccb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf1919062004c85565b610105546001600160a01b0316908362003554565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3b92919062004a81565b60405180910390a15b505050505062001d546001606555565b565b6001600160a01b038116331462001dc85760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014da565b62001121828262003576565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e1f5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e53620035e0565b6001600160a01b03161462001e7c5760405162461bcd60e51b8152600401620014da9062004f55565b62001e8781620035fd565b604080516000808252602082019092526200113a918391906200363f565b62001eaf62002fb9565b62001eba81620030b5565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d97939216919062004ad8565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f5d5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f91620035e0565b6001600160a01b03161462001fba5760405162461bcd60e51b8152600401620014da9062004f55565b62001fc582620035fd565b62001121828260016200363f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200962002a10565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200206e906200417c565b6200207b92919062004f90565b604051809103906000f08015801562002098573d6000803e3d6000fd5b509050620020a98187878762002d9e565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021535760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014da565b50600080516020620058fe83398151915290565b6200217162002ff6565b6200217b620037b7565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021df57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c0575b50505050509050600080600090505b82518110156200231a578281815181106200220d576200220d62004ca5565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224492919062004a81565b6020604051808303816000875af115801562002264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228a919062004a9a565b9150811562002305576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c657620022c662004ca5565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620022ff919062004b15565b90915550505b80620023118162004d79565b915050620021ee565b506101055462002336906001600160a01b0316843087620034f8565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236490849062004b15565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200239d908590879062004a81565b60405180910390a15050506200113a6001606555565b620023bd62002ff6565b620023c7620037b7565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fb90869062004d95565b10156200241b57604051634e23e81760e11b815260040160405180910390fd5b6101055462002435906001600160a01b0316848662003554565b60005b8254811015620026e557600083828154811062002459576200245962004ca5565b6000918252602090912001546001600160a01b03169050620024838163f1801e6160e01b620037e0565b156200260957604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024b99088908a9060040162004a81565b6020604051808303816000875af1158015620024d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024ff919062004a9a565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002540576200254062004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002594576040516311423e6360e31b81526004810185905260248101829052604401620014da565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025c757620025c762004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620025fd90849062004d95565b909155505050620026cf565b835484906200261b9060019062004d95565b815481106200262e576200262e62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002661576200266162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a257620026a262004fb6565b600082815260209020810160001990810180546001600160a01b0319169055019055620026cf81620030e4565b5080620026dc8162004d79565b91505062002438565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271490849062004d95565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200239d908590879062004a81565b6200275762002ff6565b6200276162002fb9565b60ff80541662002784576040516365b1ee3960e11b815260040160405180910390fd5b6200278f8262002ad6565b620027ad57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff16151590820152620027fe8362003808565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002853921690849062003554565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288c9392919062004ab4565b60405180910390a150620011216001606555565b620028aa62003142565b62001d5460006200391d565b620028c062002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002936919081019062004fcc565b6020015190506200294781620030b5565b6200112181620030e4565b6200295c62002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d2919081019062004fcc565b602001519050620029e381620030b5565b620029ff6001600160a01b03821663f1801e6160e01b620037e0565b1562001121576200112181620031a5565b60008062002a266033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002a9d575060408051601f3d908101601f1916820190925262002a9a9181019062004c85565b60015b62000d2657919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2a62003142565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7a576040516375e686b760e11b815260040160405180910390fd5b62001d546200396f565b610109805462002b949062004b2b565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc29062004b2b565b801562002c135780601f1062002be75761010080835404028352916020019162002c13565b820191906000526020600020905b81548152906001019060200180831162002bf557829003601f168201915b505050505081565b62002c2562002ff6565b3362002c318162003051565b62002c3c8162003808565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cb791906200418a565b60208101516101055462002cd9916001600160a01b0390911690849062003554565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1092919062004a81565b60405180910390a1505062001d546001606555565b62002d34612710600a62004a31565b81565b600054610100900460ff1662002d615760405162461bcd60e51b8152600401620014da9062005102565b6200113a816200391d565b610108805462002b949062004b2b565b62002d878262001279565b62002d9281620033a0565b620013ef838362003576565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dc95750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e08575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e5f908b9060200162005177565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e97979695949392919062005259565b6020604051808303816000875af115801562002eb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002edd919062004a9a565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f18959493929190620052ca565b60405180910390a1505094509492505050565b600062000d26600080516020620058be8339815191528362002aab565b62002f5262003142565b6001600160a01b03811662002d615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014da565b62002fd4600080516020620058be8339815191523362002aab565b62001d54573360405163fc4be72f60e01b8152600401620014da9190620042c4565b6002606554036200304a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014da565b6002606555565b6200305c8162002ad6565b6200113a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113a576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113a576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030ef81620030b5565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d97908390620042c4565b336200314d62002a10565b6001600160a01b03161462001d545760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014da565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e1576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d97908390620042c4565b806001600160a01b0316826001600160a01b031614620011215760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339a57826001600160a01b0316828281548110620032ae57620032ae62004ca5565b6000918252602090912001546001600160a01b031603620033855781548290620032db9060019062004d95565b81548110620032ee57620032ee62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003321576200332162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003362576200336262004fb6565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033918162004d79565b91505062003285565b50505050565b6200113a8133620039d3565b620033b8828262002aab565b6200112157600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f23390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff166200346f5760405162461bcd60e51b8152600401620014da9062005102565b62001d5462003a37565b600054610100900460ff1662001d545760405162461bcd60e51b8152600401620014da9062005102565b6000620034b08362001279565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339a846323b872dd60e01b8585856040516024016200351c9392919062004ab4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a61565b620013ef8363a9059cbb60e01b84846040516024016200351c92919062004a81565b62003582828262002aab565b156200112157600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020620058fe833981519152546001600160a01b031690565b336200360862002a10565b6001600160a01b0316146200113a57336200362262002a10565b60405163163678e960e01b8152600401620014da92919062004ad8565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367557620013ef8362003b3d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d2575060408051601f3d908101601f19168201909252620036cf9181019062004a9a565b60015b620037375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014da565b600080516020620058fe8339815191528114620037a95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014da565b50620013ef83838362003bdc565b620037c23362002ad6565b62001d5457604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037ed8362003c07565b801562003801575062003801838362003c3f565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387557602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003856575b5050505050905060005b8151811015620013ef578181815181106200389e576200389e62004ca5565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d39190620042c4565b600060405180830381600087803b158015620038ee57600080fd5b505af115801562003903573d6000803e3d6000fd5b505050508080620039149062004d79565b9150506200387f565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039c990600090620042c4565b60405180910390a1565b620039df828262002aab565b6200112157620039ef8162003cca565b620039fc83602062003cdd565b60405160200162003a0f92919062005306565b60408051601f198184030181529082905262461bcd60e51b8252620014da9160040162004987565b600054610100900460ff16620030dd5760405162461bcd60e51b8152600401620014da9062005102565b600062003ab8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e969092919063ffffffff16565b905080516000148062003adc57508080602001905181019062003adc919062005379565b620013ef5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014da565b62003b488162003436565b62003bac5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014da565b600080516020620058fe83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003be78362003eaf565b60008251118062003bf55750805b15620013ef576200339a838362003ef1565b600062003c1c826301ffc9a760e01b62003c3f565b801562000d26575062003c38826001600160e01b031962003c3f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb2575060208210155b801562003cbf5750600081115b979650505050505050565b606062000d266001600160a01b03831660145b6060600062003cee83600262004a31565b62003cfb90600262004b15565b6001600160401b0381111562003d155762003d1562004300565b6040519080825280601f01601f19166020018201604052801562003d40576020820181803683370190505b509050600360fc1b8160008151811062003d5e5762003d5e62004ca5565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d905762003d9062004ca5565b60200101906001600160f81b031916908160001a905350600062003db684600262004a31565b62003dc390600162004b15565b90505b600181111562003e45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfb5762003dfb62004ca5565b1a60f81b82828151811062003e145762003e1462004ca5565b60200101906001600160f81b031916908160001a90535060049490941c9362003e3d8162005399565b905062003dc6565b508315620038015760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014da565b606062003ea7848460008562003f19565b949350505050565b62003eba8162003b3d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200380183836040518060600160405280602781526020016200591e6027913962003ff1565b60608247101562003f7c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014da565b600080866001600160a01b0316858760405162003f9a9190620053b3565b60006040518083038185875af1925050503d806000811462003fd9576040519150601f19603f3d011682016040523d82523d6000602084013e62003fde565b606091505b509150915062003cbf878383876200406f565b6060600080856001600160a01b031685604051620040109190620053b3565b600060405180830381855af49150503d80600081146200404d576040519150601f19603f3d011682016040523d82523d6000602084013e62004052565b606091505b509150915062004065868383876200406f565b9695505050505050565b60608315620040e3578251600003620040db576200408d8562003436565b620040db5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014da565b508162003ea7565b62003ea78383815115620040fa5781518083602001fd5b8060405162461bcd60e51b8152600401620014da919062004987565b8280548282559060005260206000209081019282156200416e579160200282015b828111156200416e57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062004137565b5062002aa7929150620041a5565b6104ec80620053d283390190565b50805460008255906000526020600020908101906200113a91905b5b8082111562002aa75760008155600101620041a6565b600060208284031215620041cf57600080fd5b81356001600160e01b0319811681146200380157600080fd5b600060208284031215620041fb57600080fd5b5035919050565b6001600160a01b03811681146200113a57600080fd5b8035620042258162004202565b919050565b600080604083850312156200423e57600080fd5b82356200424b8162004202565b915060208301356200425d8162004202565b809150509250929050565b6000602082840312156200427b57600080fd5b8135620038018162004202565b600080604083850312156200429c57600080fd5b8235620042a98162004202565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ec57600080fd5b8235915060208301356200425d8162004202565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433b576200433b62004300565b60405290565b60405161018081016001600160401b03811182821017156200433b576200433b62004300565b60405160c081016001600160401b03811182821017156200433b576200433b62004300565b60405160e081016001600160401b03811182821017156200433b576200433b62004300565b604051608081016001600160401b03811182821017156200433b576200433b62004300565b604051601f8201601f191681016001600160401b038111828210171562004401576200440162004300565b604052919050565b60006001600160401b0382111562004425576200442562004300565b50601f01601f191660200190565b60006200444a620044448462004409565b620043d6565b90508281528383830111156200445f57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448857600080fd5b620038018383356020850162004433565b600060408284031215620044ac57600080fd5b620044b662004316565b82358152905060208201356001600160401b03811115620044d657600080fd5b620044e48482850162004476565b60208301525092915050565b80151581146200113a57600080fd5b80356200422581620044f0565b600080600080608085870312156200452357600080fd5b84356001600160401b03808211156200453b57600080fd5b9086019061018082890312156200455157600080fd5b6200455b62004341565b620045668362004218565b8152620045766020840162004218565b6020820152604083013560408201526060830135606082015260808301356080820152620045a760a0840162004218565b60a0820152620045ba60c0840162004218565b60c082015260e083013582811115620045d257600080fd5b620045e08a82860162004499565b60e083015250610100620045f681850162004218565b9082015261012083810135838111156200460f57600080fd5b6200461d8b82870162004476565b82840152505061014062004633818501620044ff565b9082015261016083810135838111156200464c57600080fd5b6200465a8b82870162004476565b828401525050809650505050620046746020860162004218565b9250620046846040860162004218565b9150620046946060860162004218565b905092959194509250565b60008060408385031215620046b357600080fd5b8235620046c08162004202565b915060208301356001600160401b03811115620046dc57600080fd5b8301601f81018513620046ee57600080fd5b620046ff8582356020840162004433565b9150509250929050565b8035600381106200422557600080fd5b600481106200113a57600080fd5b8035620042258162004719565b6000602082840312156200474757600080fd5b604051602081016001600160401b03811182821017156200476c576200476c62004300565b6040529135825250919050565b600060c082840312156200478c57600080fd5b6200479662004367565b90508135620047a58162004202565b81526020820135620047b78162004202565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480157600080fd5b6200480b6200438c565b915060808112156200481c57600080fd5b5062004827620043b1565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485b6080830162004709565b60208201526200486e60a0830162004727565b6040820152620048828360c0840162004734565b6060820152620048968360e0840162004779565b6080820152620048aa6101a0830162004218565b60a0820152620048be6101c0830162004218565b60c082015292915050565b60008060006102208486031215620048e057600080fd5b8335620048ed8162004202565b9250620048fe8560208601620047ec565b91506102008401356001600160401b038111156200491b57600080fd5b620049298682870162004499565b9150509250925092565b60005b838110156200495057818101518382015260200162004936565b50506000910152565b600081518084526200497381602086016020860162004933565b601f01601f19169290920160200192915050565b60208152600062003801602083018462004959565b6000806000806102408587031215620049b457600080fd5b8435620049c18162004202565b93506020850135620049d38162004202565b9250620049e48660408701620047ec565b91506102208501356001600160401b0381111562004a0157600080fd5b62004a0f8782880162004499565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d265762000d2662004a1b565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7457600080fd5b8151620038018162004719565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004aad57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d265762000d2662004a1b565b600181811c9082168062004b4057607f821691505b60208210810362004b6157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013ef57600081815260208120601f850160051c8101602086101562004b905750805b601f850160051c820191505b8181101562004bb15782815560010162004b9c565b505050505050565b81516001600160401b0381111562004bd55762004bd562004300565b62004bed8162004be6845462004b2b565b8462004b67565b602080601f83116001811462004c25576000841562004c0c5750858301515b600019600386901b1c1916600185901b17855562004bb1565b600085815260208120601f198616915b8281101562004c565788860151825594840194600190910190840162004c35565b508582101562004c755787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9857600080fd5b8151620038018162004202565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004ccf57600080fd5b82516001600160401b038082111562004ce757600080fd5b818501915085601f83011262004cfc57600080fd5b81518181111562004d115762004d1162004300565b8060051b915062004d24848301620043d6565b818152918301840191848101908884111562004d3f57600080fd5b938501935b8385101562004d6d578451925062004d5c8362004202565b828252938501939085019062004d44565b98975050505050505050565b60006001820162004d8e5762004d8e62004a1b565b5060010190565b8181038181111562000d265762000d2662004a1b565b6000815462004dba8162004b2b565b80855260206001838116801562004dda576001811462004df55762004e25565b60ff1985168884015283151560051b88018301955062004e25565b866000528260002060005b8581101562004e1d5781548a820186015290830190840162004e00565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003ea7604085018262004959565b600081518084526020808501945080840160005b8381101562004e8c5781516001600160a01b03168752958201959082019060010162004e65565b509495945050505050565b85815260a06020820152600062004eb260a083018762004dab565b828103604084015262004ec6818762004e30565b6001600160a01b03861660608501528381036080850152905062004d6d818562004e51565b83815260606020820152600062004f06606083018562004dab565b828103604084015262004065818562004e30565b6020808252602c90820152600080516020620058de83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058de83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003ea79083018462004959565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe057600080fd5b82516001600160401b038082111562004ff857600080fd5b9084019060c082870312156200500d57600080fd5b6200501762004367565b82518152838301516200502a8162004202565b8185015260408301516200503e8162004202565b60408201526060830151828111156200505657600080fd5b8301604081890312156200506957600080fd5b6200507362004316565b8151815285820151848111156200508957600080fd5b82019350601f840189136200509d57600080fd5b83519150620050b0620044448362004409565b8281528987848701011115620050c557600080fd5b620050d68388830189880162004933565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005160576200516062004a4b565b9052565b6004811062005160576200516062004a4b565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051b960808401826200514d565b506040830151620051ce60a084018262005164565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523c6101a0840182620042b7565b5060c0830151620052526101c0840182620042b7565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528360e084018962004959565b818816606085015286608085015283810360a0850152620052a5818762004e30565b91505082810360c0840152620052bc818562004e51565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cbf9083018462004e30565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533a81601785016020880162004933565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200536d81602884016020880162004933565b01602801949350505050565b6000602082840312156200538c57600080fd5b81516200380181620044f0565b600081620053ab57620053ab62004a1b565b506000190190565b60008251620053c781846020870162004933565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012e5f2daaca16d1ea51c313364102e5797ddb012b7e297fd7568bdf14db49a2564736f6c63430008130033","sourceMap":"2850:23276:104:-:0;;;1088:4:64;1045:48;;2850:23276:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106200032c5760003560e01c806301ffc9a714620003315780630331383c146200036b57806308386eba146200038c5780630d12bbdb14620003a45780630d4a8b4914620003cb578063175188e814620003f05780631b71f0e414620004155780631f787d28146200043a578063223e5479146200045557806322bcf999146200047a578063248a9ca3146200049f57806328c309e914620004c45780632b38c69c14620004dc5780632c611c4a14620005105780632f2ff15d146200054e57806331f61bca14620005735780633396045914620005985780633419635514620005b05780633517aa7d14620005d557806336568abe14620005ed5780633659cfe61462000612578063397e254314620006375780633a871fe1146200065c578063477a5cc014620006915780634f1ef28614620006d1578063524e59e814620006e857806352d1902d146200072b578063559de05d14620007435780635c94e4d214620007685780635ecf71c5146200078b57806365e3864c14620007b05780636871eb4d14620007ed57806368decabb14620008125780636c53db9a1462000835578063715018a6146200085857806373265c371462000870578063733a2d1f146200089557806377122d5614620008ba5780637817ee4f14620008dd57806378a0b8a914620009285780637b103999146200094057806382d6a1e7146200096357806388cfe68414620009885780638961be6b14620009fe5780638da5cb5b1462000a1657806391d148541462000a2e578063a0cf0aea1462000a53578063a217fddf1462000a7d578063a230c5241462000a94578063b0d3713a1462000ab9578063b3f006741462000ade578063b5058c501462000b05578063b64e39af1462000b1d578063b99b43701462000b44578063bc063e1a1462000b5c578063c4d66de81462000b74578063c6d572ae1462000b99578063d547741f1462000bb1578063d6d8428d1462000bd6578063d7050f071462000bf9578063db61d65c1462000c11578063e16d0e321462000c34578063ebd7dc521462000c59578063f2fde38b1462000c7e578063f86c5f891462000ca3578063ffa1ad741462000cc6575b600080fd5b3480156200033e57600080fd5b506200035662000350366004620041bc565b62000cf4565b60405190151581526020015b60405180910390f35b3480156200037857600080fd5b5060fb545b60405190815260200162000362565b3480156200039957600080fd5b506200037d60fe5481565b348015620003b157600080fd5b50620003c9620003c3366004620041e8565b62000d2c565b005b348015620003d857600080fd5b50620003c9620003ea3660046200422a565b62000da2565b348015620003fd57600080fd5b50620003c96200040f36600462004268565b62001125565b3480156200042257600080fd5b50620003c96200043436600462004268565b6200113d565b3480156200044757600080fd5b5060ff805462000356911681565b3480156200046257600080fd5b50620003c96200047436600462004268565b6200116a565b3480156200048757600080fd5b50620003c9620004993660046200422a565b6200117f565b348015620004ac57600080fd5b506200037d620004be366004620041e8565b62001279565b348015620004d157600080fd5b506200037d6200128e565b348015620004e957600080fd5b5062000501620004fb36600462004288565b62001393565b604051620003629190620042c4565b3480156200051d57600080fd5b506200037d6200052f36600462004268565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200055b57600080fd5b50620003c96200056d366004620042d8565b620013cd565b3480156200058057600080fd5b50620003c962000592366004620041e8565b620013f4565b348015620005a557600080fd5b506200037d60fd5481565b348015620005bd57600080fd5b50620003c9620005cf3660046200450c565b62001434565b348015620005e257600080fd5b50620003c962001af4565b348015620005fa57600080fd5b50620003c96200060c366004620042d8565b62001d56565b3480156200061f57600080fd5b50620003c96200063136600462004268565b62001dd4565b3480156200064457600080fd5b50620003c96200065636600462004268565b62001ea5565b3480156200066957600080fd5b50620003566200067b36600462004268565b61010a6020526000908152604090205460ff1681565b3480156200069e57600080fd5b5062000356620006b03660046200422a565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003c9620006e23660046200469f565b62001f12565b348015620006f557600080fd5b506200070d62000707366004620048c9565b62001fd3565b604080519283526001600160a01b0390911660208301520162000362565b3480156200073857600080fd5b506200037d620020b6565b3480156200075057600080fd5b50620003c962000762366004620041e8565b62002167565b3480156200077557600080fd5b506101025462000501906001600160a01b031681565b3480156200079857600080fd5b50620003c9620007aa366004620041e8565b620023b3565b348015620007bd57600080fd5b506200037d620007cf3660046200422a565b61010b60209081526000928352604080842090915290825290205481565b348015620007fa57600080fd5b50620003c96200080c3660046200422a565b6200274d565b3480156200081f57600080fd5b506101035462000501906001600160a01b031681565b3480156200084257600080fd5b506101065462000501906001600160a01b031681565b3480156200086557600080fd5b50620003c9620028a0565b3480156200087d57600080fd5b50620003c96200088f366004620041e8565b620028b6565b348015620008a257600080fd5b506200037d600080516020620058be83398151915281565b348015620008c757600080fd5b506101015462000501906001600160a01b031681565b348015620008ea57600080fd5b506200037d620008fc3660046200422a565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200093557600080fd5b506200037d60fb5481565b3480156200094d57600080fd5b506101045462000501906001600160a01b031681565b3480156200097057600080fd5b50620003c962000982366004620041e8565b62002952565b3480156200099557600080fd5b50620009d6620009a736600462004268565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b039094168452602084019290925215159082015260600162000362565b34801562000a0b57600080fd5b506200037d60fc5481565b34801562000a2357600080fd5b506200050162002a10565b34801562000a3b57600080fd5b506200035662000a4d366004620042d8565b62002aab565b34801562000a6057600080fd5b506200050173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000a8a57600080fd5b506200037d600081565b34801562000aa157600080fd5b506200035662000ab336600462004268565b62002ad6565b34801562000ac657600080fd5b50620003c962000ad836600462004268565b62002b20565b34801562000aeb57600080fd5b5060ff54620005019061010090046001600160a01b031681565b34801562000b1257600080fd5b50620003c962002b4d565b34801562000b2a57600080fd5b5062000b3562002b84565b60405162000362919062004987565b34801562000b5157600080fd5b50620003c962002c1b565b34801562000b6957600080fd5b506200037d62002d25565b34801562000b8157600080fd5b50620003c962000b9336600462004268565b62002d37565b34801562000ba657600080fd5b5062000b3562002d6c565b34801562000bbe57600080fd5b50620003c962000bd0366004620042d8565b62002d7c565b34801562000be357600080fd5b506101075462000501906001600160a01b031681565b34801562000c0657600080fd5b506200037d61271081565b34801562000c1e57600080fd5b506101055462000501906001600160a01b031681565b34801562000c4157600080fd5b506200070d62000c533660046200499c565b62002d9e565b34801562000c6657600080fd5b506200035662000c7836600462004268565b62002f2b565b34801562000c8b57600080fd5b50620003c962000c9d36600462004268565b62002f48565b34801562000cb057600080fd5b506101005462000501906001600160a01b031681565b34801562000cd357600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b35565b60006001600160e01b03198216637965db0b60e01b148062000d2657506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d3662002fb9565b62000d45612710600a62004a31565b81111562000d665760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000dac62002ff6565b62000db78262003051565b62000dc2816200307a565b62000dcd81620030b5565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e1657604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000ea4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000eca919062004a61565b600381111562000ede5762000ede62004a4b565b0362000f635760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f1590889060009060040162004a81565b6020604051808303816000875af115801562000f35573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f5b919062004a9a565b90506200105f565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fa6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fcc919062004a61565b600381111562000fe05762000fe062004a4b565b146200105f5760405163782aadff60e01b81526001600160a01b0385169063782aadff9062001016908890869060040162004a81565b6020604051808303816000875af115801562001036573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200105c919062004a9a565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200110b9087908790859062004ab4565b60405180910390a1505050620011216001606555565b5050565b6200112f62002fb9565b6200113a81620030e4565b50565b6200114762003142565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200117462002fb9565b6200113a81620031a5565b6200118a8262003051565b6200119581620030b5565b620011a1338262003237565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620011e957604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200123b82826200326a565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b82826040516200126d92919062004ad8565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b031681620012ae612710606462004a31565b60fc5460fb54620012c0919062004a31565b620012cc919062004af2565b90506000620012df612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200130d903090600401620042c4565b602060405180830381865afa1580156200132b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001351919062004a9a565b60fb5462001360919062004a31565b6200136c919062004af2565b9050808260fb546200137f919062004b15565b6200138b919062004b15565b935050505090565b61010d6020528160005260406000208181548110620013b157600080fd5b6000918252602090912001546001600160a01b03169150829050565b620013d88262001279565b620013e381620033a0565b620013ef8383620033ac565b505050565b620013fe62002fb9565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000d97565b600054610100900460ff1615808015620014555750600054600160ff909116105b806200147a5750620014673062003436565b1580156200147a575060005460ff166001145b620014e35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001507576000805461ff0019166101001790555b620015128262002d37565b6200151c62003445565b6200152662003479565b62001542600080516020620058be8339815191526000620034a3565b620015518560200151620030b5565b62001561856101000151620030b5565b84516200156e90620030b5565b6200157d8560a00151620030b5565b6060850151156200159757620015978560c00151620030b5565b845161010780546001600160a01b039283166001600160a01b031991821617909155602087015161010580549190931691161790556040850151600003620015f2576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff1916911515919091179055610120850151610108906200162f908262004bb9565b506101608501516101099062001646908262004bb9565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b0319169185168402919091179055908701516101068054909216928116929092179055620016bb90600080516020620058be83398151915290620033ac565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001710573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001736919062004c85565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b600003620017c25760408051600380825260808201909252906020820160608036833701905050905033816000815181106200179c576200179c62004ca5565b60200260200101906001600160a01b031690816001600160a01b031681525050620018ff565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200180d573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262001837919081019062004cbb565b90508051600262001849919062004b15565b6001600160401b0381111562001863576200186362004300565b6040519080825280602002602001820160405280156200188d578160200160208202803683370190505b50915060005b8151811015620018fc57818181518110620018b257620018b262004ca5565b6020026020010151838281518110620018cf57620018cf62004ca5565b6001600160a01b039092166020928302919091019091015280620018f38162004d79565b91505062001893565b50505b6101065481516001600160a01b03909116908290620019219060019062004d95565b8151811062001934576200193462004ca5565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001966919062004d95565b8151811062001979576200197962004ca5565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f92620019cc9291610108913090889060040162004e97565b6020604051808303816000875af1158015620019ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a12919062004a9a565b60fe55805162001a2b9061010f90602084019062004116565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001a9d929091610108919062004eeb565b60405180910390a150801562001aed576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001afe62002ff6565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b2f612710606462004a31565b60fc5460fb5462001b41919062004a31565b62001b4d919062004af2565b9050600062001b60612710606462004a31565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001b8e903090600401620042c4565b602060405180830381865afa15801562001bac573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001bd2919062004a9a565b60fb5462001be1919062004a31565b62001bed919062004af2565b905062001bfa8562002ad6565b62001d445760028401805460ff1916600190811790915560fb5490850181905562001c549086903090849062001c3290879062004b15565b62001c3e919062004b15565b610105546001600160a01b0316929190620034f8565b811562001c815760ff546101055462001c81916001600160a01b0391821691610100909104168462003554565b801562001d065762001d06836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001ccb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001cf1919062004c85565b610105546001600160a01b0316908362003554565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d3b92919062004a81565b60405180910390a15b505050505062001d546001606555565b565b6001600160a01b038116331462001dc85760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620014da565b62001121828262003576565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e1f5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e53620035e0565b6001600160a01b03161462001e7c5760405162461bcd60e51b8152600401620014da9062004f55565b62001e8781620035fd565b604080516000808252602082019092526200113a918391906200363f565b62001eaf62002fb9565b62001eba81620030b5565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000d97939216919062004ad8565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001f5d5760405162461bcd60e51b8152600401620014da9062004f1a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001f91620035e0565b6001600160a01b03161462001fba5760405162461bcd60e51b8152600401620014da9062004f55565b62001fc582620035fd565b62001121828260016200363f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200200962002a10565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200206e906200417c565b6200207b92919062004f90565b604051809103906000f08015801562002098573d6000803e3d6000fd5b509050620020a98187878762002d9e565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021535760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620014da565b50600080516020620058fe83398151915290565b6200217162002ff6565b6200217b620037b7565b33600081815261010d6020908152604080832080548251818502810185019093528083529192909190830182828015620021df57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311620021c0575b50505050509050600080600090505b82518110156200231a578281815181106200220d576200220d62004ca5565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b81526004016200224492919062004a81565b6020604051808303816000875af115801562002264573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200228a919062004a9a565b9150811562002305576001600160a01b038416600090815261010b602052604081208451849290869085908110620022c657620022c662004ca5565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020016000206000828254620022ff919062004b15565b90915550505b80620023118162004d79565b915050620021ee565b506101055462002336906001600160a01b0316843087620034f8565b6001600160a01b038316600090815261010c6020526040812060010180548692906200236490849062004b15565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200239d908590879062004a81565b60405180910390a15050506200113a6001606555565b620023bd62002ff6565b620023c7620037b7565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620023fb90869062004d95565b10156200241b57604051634e23e81760e11b815260040160405180910390fd5b6101055462002435906001600160a01b0316848662003554565b60005b8254811015620026e557600083828154811062002459576200245962004ca5565b6000918252602090912001546001600160a01b03169050620024838163f1801e6160e01b620037e0565b156200260957604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620024b99088908a9060040162004a81565b6020604051808303816000875af1158015620024d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620024ff919062004a9a565b9250600061010b6000876001600160a01b03166001600160a01b03168152602001908152602001600020600086858154811062002540576200254062004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400190205490508084111562002594576040516311423e6360e31b81526004810185905260248101829052604401620014da565b6001600160a01b038616600090815261010b602052604081208654869290889087908110620025c757620025c762004ca5565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620025fd90849062004d95565b909155505050620026cf565b835484906200261b9060019062004d95565b815481106200262e576200262e62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031684838154811062002661576200266162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555083805480620026a257620026a262004fb6565b600082815260209020810160001990810180546001600160a01b0319169055019055620026cf81620030e4565b5080620026dc8162004d79565b91505062002438565b506001600160a01b038316600090815261010c6020526040812060010180548692906200271490849062004d95565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8906200239d908590879062004a81565b6200275762002ff6565b6200276162002fb9565b60ff80541662002784576040516365b1ee3960e11b815260040160405180910390fd5b6200278f8262002ad6565b620027ad57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff16151590820152620027fe8362003808565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002853921690849062003554565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200288c9392919062004ab4565b60405180910390a150620011216001606555565b620028aa62003142565b62001d5460006200391d565b620028c062002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa1580156200290c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002936919081019062004fcc565b6020015190506200294781620030b5565b6200112181620030e4565b6200295c62002fb9565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620029a8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620029d2919081019062004fcc565b602001519050620029e381620030b5565b620029ff6001600160a01b03821663f1801e6160e01b620037e0565b1562001121576200112181620031a5565b60008062002a266033546001600160a01b031690565b9050806001600160a01b03163b60000362002a4057919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002a9d575060408051601f3d908101601f1916820190925262002a9a9181019062004c85565b60015b62000d2657919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002b2a62003142565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b7a576040516375e686b760e11b815260040160405180910390fd5b62001d546200396f565b610109805462002b949062004b2b565b80601f016020809104026020016040519081016040528092919081815260200182805462002bc29062004b2b565b801562002c135780601f1062002be75761010080835404028352916020019162002c13565b820191906000526020600020905b81548152906001019060200180831162002bf557829003601f168201915b505050505081565b62002c2562002ff6565b3362002c318162003051565b62002c3c8162003808565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002cb791906200418a565b60208101516101055462002cd9916001600160a01b0390911690849062003554565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002d1092919062004a81565b60405180910390a1505062001d546001606555565b62002d34612710600a62004a31565b81565b600054610100900460ff1662002d615760405162461bcd60e51b8152600401620014da9062005102565b6200113a816200391d565b610108805462002b949062004b2b565b62002d878262001279565b62002d9281620033a0565b620013ef838362003576565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002dc95750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002e2757602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002e08575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002e5f908b9060200162005177565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002e97979695949392919062005259565b6020604051808303816000875af115801562002eb7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002edd919062004a9a565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002f18959493929190620052ca565b60405180910390a1505094509492505050565b600062000d26600080516020620058be8339815191528362002aab565b62002f5262003142565b6001600160a01b03811662002d615760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620014da565b62002fd4600080516020620058be8339815191523362002aab565b62001d54573360405163fc4be72f60e01b8152600401620014da9190620042c4565b6002606554036200304a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620014da565b6002606555565b6200305c8162002ad6565b6200113a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200113a576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200113a576040516303988b8160e61b815260040160405180910390fd5b6001606555565b620030ef81620030b5565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000d97908390620042c4565b336200314d62002a10565b6001600160a01b03161462001d545760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620014da565b6001600160a01b038116600090815261010a602052604090205460ff1615620031e1576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000d97908390620042c4565b806001600160a01b0316826001600160a01b031614620011215760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200339a57826001600160a01b0316828281548110620032ae57620032ae62004ca5565b6000918252602090912001546001600160a01b031603620033855781548290620032db9060019062004d95565b81548110620032ee57620032ee62004ca5565b9060005260206000200160009054906101000a90046001600160a01b031682828154811062003321576200332162004ca5565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548062003362576200336262004fb6565b600082815260209020810160001990810180546001600160a01b03191690550190555b80620033918162004d79565b91505062003285565b50505050565b6200113a8133620039d3565b620033b8828262002aab565b6200112157600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620033f23390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff166200346f5760405162461bcd60e51b8152600401620014da9062005102565b62001d5462003a37565b600054610100900460ff1662001d545760405162461bcd60e51b8152600401620014da9062005102565b6000620034b08362001279565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6200339a846323b872dd60e01b8585856040516024016200351c9392919062004ab4565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003a61565b620013ef8363a9059cbb60e01b84846040516024016200351c92919062004a81565b62003582828262002aab565b156200112157600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600080516020620058fe833981519152546001600160a01b031690565b336200360862002a10565b6001600160a01b0316146200113a57336200362262002a10565b60405163163678e960e01b8152600401620014da92919062004ad8565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200367557620013ef8362003b3d565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620036d2575060408051601f3d908101601f19168201909252620036cf9181019062004a9a565b60015b620037375760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620014da565b600080516020620058fe8339815191528114620037a95760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620014da565b50620013ef83838362003bdc565b620037c23362002ad6565b62001d5457604051636a5cfb6d60e01b815260040160405180910390fd5b6000620037ed8362003c07565b801562003801575062003801838362003c3f565b9392505050565b6001600160a01b038116600090815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200387557602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003856575b5050505050905060005b8151811015620013ef578181815181106200389e576200389e62004ca5565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b8152600401620038d39190620042c4565b600060405180830381600087803b158015620038ee57600080fd5b505af115801562003903573d6000803e3d6000fd5b505050508080620039149062004d79565b9150506200387f565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb6887290620039c990600090620042c4565b60405180910390a1565b620039df828262002aab565b6200112157620039ef8162003cca565b620039fc83602062003cdd565b60405160200162003a0f92919062005306565b60408051601f198184030181529082905262461bcd60e51b8252620014da9160040162004987565b600054610100900460ff16620030dd5760405162461bcd60e51b8152600401620014da9062005102565b600062003ab8826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031662003e969092919063ffffffff16565b905080516000148062003adc57508080602001905181019062003adc919062005379565b620013ef5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620014da565b62003b488162003436565b62003bac5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620014da565b600080516020620058fe83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003be78362003eaf565b60008251118062003bf55750805b15620013ef576200339a838362003ef1565b600062003c1c826301ffc9a760e01b62003c3f565b801562000d26575062003c38826001600160e01b031962003c3f565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562003cb2575060208210155b801562003cbf5750600081115b979650505050505050565b606062000d266001600160a01b03831660145b6060600062003cee83600262004a31565b62003cfb90600262004b15565b6001600160401b0381111562003d155762003d1562004300565b6040519080825280601f01601f19166020018201604052801562003d40576020820181803683370190505b509050600360fc1b8160008151811062003d5e5762003d5e62004ca5565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811062003d905762003d9062004ca5565b60200101906001600160f81b031916908160001a905350600062003db684600262004a31565b62003dc390600162004b15565b90505b600181111562003e45576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811062003dfb5762003dfb62004ca5565b1a60f81b82828151811062003e145762003e1462004ca5565b60200101906001600160f81b031916908160001a90535060049490941c9362003e3d8162005399565b905062003dc6565b508315620038015760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620014da565b606062003ea7848460008562003f19565b949350505050565b62003eba8162003b3d565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200380183836040518060600160405280602781526020016200591e6027913962003ff1565b60608247101562003f7c5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620014da565b600080866001600160a01b0316858760405162003f9a9190620053b3565b60006040518083038185875af1925050503d806000811462003fd9576040519150601f19603f3d011682016040523d82523d6000602084013e62003fde565b606091505b509150915062003cbf878383876200406f565b6060600080856001600160a01b031685604051620040109190620053b3565b600060405180830381855af49150503d80600081146200404d576040519150601f19603f3d011682016040523d82523d6000602084013e62004052565b606091505b509150915062004065868383876200406f565b9695505050505050565b60608315620040e3578251600003620040db576200408d8562003436565b620040db5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620014da565b508162003ea7565b62003ea78383815115620040fa5781518083602001fd5b8060405162461bcd60e51b8152600401620014da919062004987565b8280548282559060005260206000209081019282156200416e579160200282015b828111156200416e57825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019062004137565b5062002aa7929150620041a5565b6104ec80620053d283390190565b50805460008255906000526020600020908101906200113a91905b5b8082111562002aa75760008155600101620041a6565b600060208284031215620041cf57600080fd5b81356001600160e01b0319811681146200380157600080fd5b600060208284031215620041fb57600080fd5b5035919050565b6001600160a01b03811681146200113a57600080fd5b8035620042258162004202565b919050565b600080604083850312156200423e57600080fd5b82356200424b8162004202565b915060208301356200425d8162004202565b809150509250929050565b6000602082840312156200427b57600080fd5b8135620038018162004202565b600080604083850312156200429c57600080fd5b8235620042a98162004202565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b60008060408385031215620042ec57600080fd5b8235915060208301356200425d8162004202565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b03811182821017156200433b576200433b62004300565b60405290565b60405161018081016001600160401b03811182821017156200433b576200433b62004300565b60405160c081016001600160401b03811182821017156200433b576200433b62004300565b60405160e081016001600160401b03811182821017156200433b576200433b62004300565b604051608081016001600160401b03811182821017156200433b576200433b62004300565b604051601f8201601f191681016001600160401b038111828210171562004401576200440162004300565b604052919050565b60006001600160401b0382111562004425576200442562004300565b50601f01601f191660200190565b60006200444a620044448462004409565b620043d6565b90508281528383830111156200445f57600080fd5b828260208301376000602084830101529392505050565b600082601f8301126200448857600080fd5b620038018383356020850162004433565b600060408284031215620044ac57600080fd5b620044b662004316565b82358152905060208201356001600160401b03811115620044d657600080fd5b620044e48482850162004476565b60208301525092915050565b80151581146200113a57600080fd5b80356200422581620044f0565b600080600080608085870312156200452357600080fd5b84356001600160401b03808211156200453b57600080fd5b9086019061018082890312156200455157600080fd5b6200455b62004341565b620045668362004218565b8152620045766020840162004218565b6020820152604083013560408201526060830135606082015260808301356080820152620045a760a0840162004218565b60a0820152620045ba60c0840162004218565b60c082015260e083013582811115620045d257600080fd5b620045e08a82860162004499565b60e083015250610100620045f681850162004218565b9082015261012083810135838111156200460f57600080fd5b6200461d8b82870162004476565b82840152505061014062004633818501620044ff565b9082015261016083810135838111156200464c57600080fd5b6200465a8b82870162004476565b828401525050809650505050620046746020860162004218565b9250620046846040860162004218565b9150620046946060860162004218565b905092959194509250565b60008060408385031215620046b357600080fd5b8235620046c08162004202565b915060208301356001600160401b03811115620046dc57600080fd5b8301601f81018513620046ee57600080fd5b620046ff8582356020840162004433565b9150509250929050565b8035600381106200422557600080fd5b600481106200113a57600080fd5b8035620042258162004719565b6000602082840312156200474757600080fd5b604051602081016001600160401b03811182821017156200476c576200476c62004300565b6040529135825250919050565b600060c082840312156200478c57600080fd5b6200479662004367565b90508135620047a58162004202565b81526020820135620047b78162004202565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60008183036101e08112156200480157600080fd5b6200480b6200438c565b915060808112156200481c57600080fd5b5062004827620043b1565b82358152602083013560208201526040830135604082015260608301356060820152808252506200485b6080830162004709565b60208201526200486e60a0830162004727565b6040820152620048828360c0840162004734565b6060820152620048968360e0840162004779565b6080820152620048aa6101a0830162004218565b60a0820152620048be6101c0830162004218565b60c082015292915050565b60008060006102208486031215620048e057600080fd5b8335620048ed8162004202565b9250620048fe8560208601620047ec565b91506102008401356001600160401b038111156200491b57600080fd5b620049298682870162004499565b9150509250925092565b60005b838110156200495057818101518382015260200162004936565b50506000910152565b600081518084526200497381602086016020860162004933565b601f01601f19169290920160200192915050565b60208152600062003801602083018462004959565b6000806000806102408587031215620049b457600080fd5b8435620049c18162004202565b93506020850135620049d38162004202565b9250620049e48660408701620047ec565b91506102208501356001600160401b0381111562004a0157600080fd5b62004a0f8782880162004499565b91505092959194509250565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d265762000d2662004a1b565b634e487b7160e01b600052602160045260246000fd5b60006020828403121562004a7457600080fd5b8151620038018162004719565b6001600160a01b03929092168252602082015260400190565b60006020828403121562004aad57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b60008262004b1057634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d265762000d2662004a1b565b600181811c9082168062004b4057607f821691505b60208210810362004b6157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620013ef57600081815260208120601f850160051c8101602086101562004b905750805b601f850160051c820191505b8181101562004bb15782815560010162004b9c565b505050505050565b81516001600160401b0381111562004bd55762004bd562004300565b62004bed8162004be6845462004b2b565b8462004b67565b602080601f83116001811462004c25576000841562004c0c5750858301515b600019600386901b1c1916600185901b17855562004bb1565b600085815260208120601f198616915b8281101562004c565788860151825594840194600190910190840162004c35565b508582101562004c755787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006020828403121562004c9857600080fd5b8151620038018162004202565b634e487b7160e01b600052603260045260246000fd5b6000602080838503121562004ccf57600080fd5b82516001600160401b038082111562004ce757600080fd5b818501915085601f83011262004cfc57600080fd5b81518181111562004d115762004d1162004300565b8060051b915062004d24848301620043d6565b818152918301840191848101908884111562004d3f57600080fd5b938501935b8385101562004d6d578451925062004d5c8362004202565b828252938501939085019062004d44565b98975050505050505050565b60006001820162004d8e5762004d8e62004a1b565b5060010190565b8181038181111562000d265762000d2662004a1b565b6000815462004dba8162004b2b565b80855260206001838116801562004dda576001811462004df55762004e25565b60ff1985168884015283151560051b88018301955062004e25565b866000528260002060005b8581101562004e1d5781548a820186015290830190840162004e00565b890184019650505b505050505092915050565b80518252600060208201516040602085015262003ea7604085018262004959565b600081518084526020808501945080840160005b8381101562004e8c5781516001600160a01b03168752958201959082019060010162004e65565b509495945050505050565b85815260a06020820152600062004eb260a083018762004dab565b828103604084015262004ec6818762004e30565b6001600160a01b03861660608501528381036080850152905062004d6d818562004e51565b83815260606020820152600062004f06606083018562004dab565b828103604084015262004065818562004e30565b6020808252602c90820152600080516020620058de83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620058de83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b038316815260406020820181905260009062003ea79083018462004959565b634e487b7160e01b600052603160045260246000fd5b6000602080838503121562004fe057600080fd5b82516001600160401b038082111562004ff857600080fd5b9084019060c082870312156200500d57600080fd5b6200501762004367565b82518152838301516200502a8162004202565b8185015260408301516200503e8162004202565b60408201526060830151828111156200505657600080fd5b8301604081890312156200506957600080fd5b6200507362004316565b8151815285820151848111156200508957600080fd5b82019350601f840189136200509d57600080fd5b83519150620050b0620044448362004409565b8281528987848701011115620050c557600080fd5b620050d68388830189880162004933565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6003811062005160576200516062004a4b565b9052565b6004811062005160576200516062004a4b565b60006101e082019050825180518352602081015160208401526040810151604084015260608101516060840152506020830151620051b960808401826200514d565b506040830151620051ce60a084018262005164565b506060838101515160c084015260808085015180516001600160a01b0390811660e087015260208201511661010086015260408101516101208601529182015161014085015281015161016084015260a0908101516101808401528301516200523c6101a0840182620042b7565b5060c0830151620052526101c0840182620042b7565b5092915050565b878152600060018060a01b03808916602084015260e060408401526200528360e084018962004959565b818816606085015286608085015283810360a0850152620052a5818762004e30565b91505082810360c0840152620052bc818562004e51565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062003cbf9083018462004e30565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516200533a81601785016020880162004933565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516200536d81602884016020880162004933565b01602801949350505050565b6000602082840312156200538c57600080fd5b81516200380181620044f0565b600081620053ab57620053ab62004a1b565b506000190190565b60008251620053c781846020870162004933565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122012e5f2daaca16d1ea51c313364102e5797ddb012b7e297fd7568bdf14db49a2564736f6c63430008130033","sourceMap":"2850:23276:104:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3057:213:43;;;;;;;;;;-1:-1:-1;3057:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:136;;463:22;445:41;;433:2;418:18;3057:213:43;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:136;;;631:2;616:18;23771:115:104;497:177:136;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4862:129:43:-;;;;;;;;;;-1:-1:-1;4862:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19069:151::-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5287:145:43;;;;;;;;;;-1:-1:-1;5287:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6396:214:43:-;;;;;;;;;;-1:-1:-1;6396:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;12444:25:136;;;-1:-1:-1;;;;;12505:32:136;;;12500:2;12485:18;;12478:60;12417:18;12647:531:104;12270:274:136;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;6550:31::-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18890:173;5795:34;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;7605:60::-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;13436:32:136;;;13418:51;;13500:2;13485:18;;13478:34;;;;13555:14;13548:22;13528:18;;;13521:50;13406:2;13391:18;7605:60:104;13222:355:136;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3357:145:43:-;;;;;;;;;;-1:-1:-1;3357:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2336:49:43;;;;;;;;;;-1:-1:-1;2336:49:43;2381:4;2336:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5712:147:43:-;;;;;;;;;;-1:-1:-1;5712:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;5202:92;;;;;;;;;;-1:-1:-1;5275:12:104;;;;;;;;;;;;-1:-1:-1;;;5275:12:104;;;;5202:92;;3057:213:43;3142:4;-1:-1:-1;;;;;;3165:58:43;;-1:-1:-1;;;3165:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3227:36:43;3158:105;3057:213;-1:-1:-1;;3057:213:43:o;24088:288:104:-;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:136;;;24332:37:104;;631:2:136;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4862:129:43:-;4936:7;4962:12;;;:6;:12;;;;;:22;;;;4862:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;5287:145:43:-;5370:18;5383:4;5370:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5400:25:::1;5411:4;5417:7;5400:10;:25::i;:::-;5287:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:136;;;24043:32:104;;631:2:136;616:18;24043:32:104;497:177:136;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;18292:2:136;3325:201:47;;;18274:21:136;18331:2;18311:18;;;18304:30;18370:34;18350:18;;;18343:62;-1:-1:-1;;;18421:18:136;;;18414:44;18475:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2381:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;25926:36:136;;3721:14:47;;25914:2:136;25899:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6396:214:43:-;-1:-1:-1;;;;;6491:23:43;;965:10:51;6491:23:43;6483:83;;;;-1:-1:-1;;;6483:83:43;;26175:2:136;6483:83:43;;;26157:21:136;26214:2;26194:18;;;26187:30;26253:34;26233:18;;;26226:62;-1:-1:-1;;;26304:18:136;;;26297:45;26359:19;;6483:83:43;25973:411:136;6483:83:43;6577:26;6589:4;6595:7;6577:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;-1:-1:-1;;;;;27790:15:136;;;12975:101:104;;;27772:34:136;27842:15;;;27822:18;;;27815:43;27894:15;;;27874:18;;;27867:43;27707:18;;12975:101:104;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;28443:2:136;2064:92:64;;;28425:21:136;28482:2;28462:18;;;28455:30;28521:34;28501:18;;;28494:62;-1:-1:-1;;;28572:18:136;;;28565:54;28636:19;;2064:92:64;28241:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;17322:1562:104;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;28840:25:136::0;;;28881:18;;;28874:34;;;28813:18;;18259:57:104::1;28666:248:136::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:136;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:136;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:136;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:136;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3357:145:43:-;3443:4;3466:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3466:29:43;;;;;;;;;;;;;;;3357:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5712:147:43:-;5796:18;5809:4;5796:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5826:26:::1;5838:4;5844:7;5826:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;:::-;;;;;;;;;;;;;13713:5;13720:1;13723:9;13734:14;13624:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13615:143;;13774:63;13786:6;13794:8;13812:4;13819:6;13827:9;13774:63;;;;;;;;;;:::i;:::-;;;;;;;;13409:435;;13184:660;;;;;;;:::o;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;35022:2:136;2415:73:45::1;::::0;::::1;35004:21:136::0;35061:2;35041:18;;;35034:30;35100:34;35080:18;;;35073:62;-1:-1:-1;;;35151:18:136;;;35144:36;35197:19;;2415:73:45::1;34820:402:136::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;35429:2:136;2725:63:48;;;35411:21:136;35468:2;35448:18;;;35441:30;35507:33;35487:18;;;35480:61;35558:18;;2725:63:48;35227:355:136;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;35789:2:136;1675:68:45;;;35771:21:136;;;35808:18;;;35801:30;35867:34;35847:18;;;35840:62;35919:18;;1675:68:45;35587:356:136;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3796:103:43:-;3862:30;3873:4;965:10:51;3862::43;:30::i;7945:233::-;8028:22;8036:4;8042:7;8028;:22::i;:::-;8023:149;;8066:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8066:29:43;;;;;;;;;:36;;-1:-1:-1;;8066:36:43;8098:4;8066:36;;;8148:12;965:10:51;;886:96;8148:12:43;-1:-1:-1;;;;;8121:40:43;8139:7;-1:-1:-1;;;;;8121:40:43;8133:4;8121:40;;;;;;;;;;7945:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2854:60:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7530:247:43:-;7613:25;7641:18;7654:4;7641:12;:18::i;:::-;7669:12;;;;:6;:12;;;;;;:22;;:34;;;7718:52;7613:46;;-1:-1:-1;7694:9:43;;7613:46;;7676:4;;7718:52;;7669:12;7718:52;7603:174;7530:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8349:234:43:-;8432:22;8440:4;8446:7;8432;:22::i;:::-;8428:149;;;8502:5;8470:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8470:29:43;;;;;;;;;;:37;;-1:-1:-1;;8470:37:43;;;8526:40;965:10:51;;8470:12:43;;8526:40;;8502:5;8526:40;8349:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;36150:2:136;3262:56:60;;;36132:21:136;36189:2;36169:18;;;36162:30;36228:34;36208:18;;;36201:62;-1:-1:-1;;;36279:18:136;;;36272:44;36333:19;;3262:56:60;35948:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;36565:2:136;3140:82:60;;;36547:21:136;36604:2;36584:18;;;36577:30;36643:34;36623:18;;;36616:62;-1:-1:-1;;;36694:18:136;;;36687:39;36743:19;;3140:82:60;36363:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4180:501:43:-;4268:22;4276:4;4282:7;4268;:22::i;:::-;4263:412;;4451:39;4482:7;4451:30;:39::i;:::-;4561:49;4600:4;4607:2;4561:30;:49::i;:::-;4358:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4358:274:43;;;;;;;;;;-1:-1:-1;;;4306:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;38258:2:136;5697:111:73;;;38240:21:136;38297:2;38277:18;;;38270:30;38336:34;38316:18;;;38309:62;-1:-1:-1;;;38387:18:136;;;38380:40;38437:19;;5697:111:73;38056:406:136;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;38669:2:136;1479:95:60;;;38651:21:136;38708:2;38688:18;;;38681:30;38747:34;38727:18;;;38720:62;-1:-1:-1;;;38798:18:136;;;38791:43;38851:19;;1479:95:60;38467:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;39043:33:136;;4592:71:81;;;;39025:52:136;;;;4592:71:81;;;;;;;;;;38998:18:136;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;39431:2:136;2228:55:52;;;39413:21:136;;;39450:18;;;39443:30;39509:34;39489:18;;;39482:62;39561:18;;2228:55:52;39229:356:136;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;39792:2:136;5354:81:76;;;39774:21:136;39831:2;39811:18;;;39804:30;39870:34;39850:18;;;39843:62;-1:-1:-1;;;39921:18:136;;;39914:36;39967:19;;5354:81:76;39590:402:136;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;40491:2:136;8113:60:76;;;40473:21:136;40530:2;40510:18;;;40503:30;40569:31;40549:18;;;40542:59;40618:18;;8113:60:76;40289:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:136;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:136;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:136;;861:180;-1:-1:-1;861:180:136:o;1046:131::-;-1:-1:-1;;;;;1121:31:136;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:136;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:136:o;2471:104::-;-1:-1:-1;;;;;2537:31:136;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:136;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:136;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:136;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:136;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:253::-;4092:2;4086:9;4134:4;4122:17;;-1:-1:-1;;;;;4154:34:136;;4190:22;;;4151:62;4148:88;;;4216:18;;:::i;4278:253::-;4350:2;4344:9;4392:4;4380:17;;-1:-1:-1;;;;;4412:34:136;;4448:22;;;4409:62;4406:88;;;4474:18;;:::i;4536:275::-;4607:2;4601:9;4672:2;4653:13;;-1:-1:-1;;4649:27:136;4637:40;;-1:-1:-1;;;;;4692:34:136;;4728:22;;;4689:62;4686:88;;;4754:18;;:::i;:::-;4790:2;4783:22;4536:275;;-1:-1:-1;4536:275:136:o;4816:187::-;4865:4;-1:-1:-1;;;;;4887:30:136;;4884:56;;;4920:18;;:::i;:::-;-1:-1:-1;4986:2:136;4965:15;-1:-1:-1;;4961:29:136;4992:4;4957:40;;4816:187::o;5008:338::-;5073:5;5102:53;5118:36;5147:6;5118:36;:::i;:::-;5102:53;:::i;:::-;5093:62;;5178:6;5171:5;5164:21;5218:3;5209:6;5204:3;5200:16;5197:25;5194:45;;;5235:1;5232;5225:12;5194:45;5284:6;5279:3;5272:4;5265:5;5261:16;5248:43;5338:1;5331:4;5322:6;5315:5;5311:18;5307:29;5300:40;5008:338;;;;;:::o;5351:222::-;5394:5;5447:3;5440:4;5432:6;5428:17;5424:27;5414:55;;5465:1;5462;5455:12;5414:55;5487:80;5563:3;5554:6;5541:20;5534:4;5526:6;5522:17;5487:80;:::i;5578:411::-;5633:5;5681:4;5669:9;5664:3;5660:19;5656:30;5653:50;;;5699:1;5696;5689:12;5653:50;5721:22;;:::i;:::-;5766:23;;5752:38;;5712:31;-1:-1:-1;5841:2:136;5826:18;;5813:32;-1:-1:-1;;;;;5857:30:136;;5854:50;;;5900:1;5897;5890:12;5854:50;5936:46;5978:3;5969:6;5958:9;5954:22;5936:46;:::i;:::-;5931:2;5924:5;5920:14;5913:70;;5578:411;;;;:::o;5994:118::-;6080:5;6073:13;6066:21;6059:5;6056:32;6046:60;;6102:1;6099;6092:12;6117:128;6182:20;;6211:28;6182:20;6211:28;:::i;6250:1871::-;6392:6;6400;6408;6416;6469:3;6457:9;6448:7;6444:23;6440:33;6437:53;;;6486:1;6483;6476:12;6437:53;6513:23;;-1:-1:-1;;;;;6585:14:136;;;6582:34;;;6612:1;6609;6602:12;6582:34;6635:22;;;;6691:6;6673:16;;;6669:29;6666:49;;;6711:1;6708;6701:12;6666:49;6737:22;;:::i;:::-;6782;6801:2;6782:22;:::i;:::-;6775:5;6768:37;6837:31;6864:2;6860;6856:11;6837:31;:::i;:::-;6832:2;6825:5;6821:14;6814:55;6922:2;6918;6914:11;6901:25;6896:2;6889:5;6885:14;6878:49;6980:2;6976;6972:11;6959:25;6954:2;6947:5;6943:14;6936:49;7039:3;7035:2;7031:12;7018:26;7012:3;7005:5;7001:15;6994:51;7078:32;7105:3;7101:2;7097:12;7078:32;:::i;:::-;7072:3;7065:5;7061:15;7054:57;7144:32;7171:3;7167:2;7163:12;7144:32;:::i;:::-;7138:3;7131:5;7127:15;7120:57;7223:3;7219:2;7215:12;7202:26;7253:2;7243:8;7240:16;7237:36;;;7269:1;7266;7259:12;7237:36;7306:54;7352:7;7341:8;7337:2;7333:17;7306:54;:::i;:::-;7300:3;7293:5;7289:15;7282:79;;7380:3;7415:31;7442:2;7438;7434:11;7415:31;:::i;:::-;7399:14;;;7392:55;7466:3;7507:11;;;7494:25;7531:16;;;7528:36;;;7560:1;7557;7550:12;7528:36;7596:45;7633:7;7622:8;7618:2;7614:17;7596:45;:::i;:::-;7591:2;7584:5;7580:14;7573:69;;;7661:3;7696:28;7720:2;7716;7712:11;7696:28;:::i;:::-;7680:14;;;7673:52;7744:3;7785:11;;;7772:25;7809:16;;;7806:36;;;7838:1;7835;7828:12;7806:36;7874:45;7911:7;7900:8;7896:2;7892:17;7874:45;:::i;:::-;7869:2;7862:5;7858:14;7851:69;;;7939:5;7929:15;;;;;7963:38;7997:2;7986:9;7982:18;7963:38;:::i;:::-;7953:48;;8020:38;8054:2;8043:9;8039:18;8020:38;:::i;:::-;8010:48;;8077:38;8111:2;8100:9;8096:18;8077:38;:::i;:::-;8067:48;;6250:1871;;;;;;;:::o;8386:585::-;8463:6;8471;8524:2;8512:9;8503:7;8499:23;8495:32;8492:52;;;8540:1;8537;8530:12;8492:52;8579:9;8566:23;8598:31;8623:5;8598:31;:::i;:::-;8648:5;-1:-1:-1;8704:2:136;8689:18;;8676:32;-1:-1:-1;;;;;8720:30:136;;8717:50;;;8763:1;8760;8753:12;8717:50;8786:22;;8839:4;8831:13;;8827:27;-1:-1:-1;8817:55:136;;8868:1;8865;8858:12;8817:55;8891:74;8957:7;8952:2;8939:16;8934:2;8930;8926:11;8891:74;:::i;:::-;8881:84;;;8386:585;;;;;:::o;8976:153::-;9054:20;;9103:1;9093:12;;9083:40;;9119:1;9116;9109:12;9134:110;9218:1;9211:5;9208:12;9198:40;;9234:1;9231;9224:12;9249:152;9326:20;;9355:40;9326:20;9355:40;:::i;9406:416::-;9470:5;9518:4;9506:9;9501:3;9497:19;9493:30;9490:50;;;9536:1;9533;9526:12;9490:50;9569:2;9563:9;9611:4;9599:17;;-1:-1:-1;;;;;9631:34:136;;9667:22;;;9628:62;9625:88;;;9693:18;;:::i;:::-;9729:2;9722:22;9792:23;;9777:39;;-1:-1:-1;9762:6:136;9406:416;-1:-1:-1;9406:416:136:o;9827:701::-;9890:5;9938:4;9926:9;9921:3;9917:19;9913:30;9910:50;;;9956:1;9953;9946:12;9910:50;9978:22;;:::i;:::-;9969:31;;10037:9;10024:23;10056:33;10081:7;10056:33;:::i;:::-;10098:22;;10172:2;10157:18;;10144:32;10185:33;10144:32;10185:33;:::i;:::-;10250:7;10245:2;10238:5;10234:14;10227:31;;10318:2;10307:9;10303:18;10290:32;10285:2;10278:5;10274:14;10267:56;10383:2;10372:9;10368:18;10355:32;10350:2;10343:5;10339:14;10332:56;10449:3;10438:9;10434:19;10421:33;10415:3;10408:5;10404:15;10397:58;10516:3;10505:9;10501:19;10488:33;10482:3;10475:5;10471:15;10464:58;9827:701;;;;:::o;10533:1083::-;10608:5;10647:9;10642:3;10638:19;10677:6;10673:2;10669:15;10666:35;;;10697:1;10694;10687:12;10666:35;10719:22;;:::i;:::-;10710:31;;10761:4;10757:2;10753:13;10750:33;;;10779:1;10776;10769:12;10750:33;;10807:22;;:::i;:::-;10867:9;10854:23;10845:7;10838:40;10940:2;10929:9;10925:18;10912:32;10907:2;10898:7;10894:16;10887:58;11007:2;10996:9;10992:18;10979:32;10974:2;10965:7;10961:16;10954:58;11074:2;11063:9;11059:18;11046:32;11041:2;11032:7;11028:16;11021:58;11102:7;11095:5;11088:22;;11142:50;11186:4;11175:9;11171:20;11142:50;:::i;:::-;11137:2;11130:5;11126:14;11119:74;11225:48;11268:3;11257:9;11253:19;11225:48;:::i;:::-;11220:2;11213:5;11209:14;11202:72;11306:61;11363:3;11357;11346:9;11342:19;11306:61;:::i;:::-;11301:2;11294:5;11290:14;11283:85;11402:61;11459:3;11452:4;11441:9;11437:20;11402:61;:::i;:::-;11395:4;11388:5;11384:16;11377:87;11497:39;11531:3;11520:9;11516:19;11497:39;:::i;:::-;11491:3;11484:5;11480:15;11473:64;11570:39;11604:3;11593:9;11589:19;11570:39;:::i;:::-;11564:3;11557:5;11553:15;11546:64;10533:1083;;;;:::o;11621:644::-;11773:6;11781;11789;11842:3;11830:9;11821:7;11817:23;11813:33;11810:53;;;11859:1;11856;11849:12;11810:53;11898:9;11885:23;11917:31;11942:5;11917:31;:::i;:::-;11967:5;-1:-1:-1;11991:75:136;12058:7;12053:2;12038:18;;11991:75;:::i;:::-;11981:85;-1:-1:-1;12117:3:136;12102:19;;12089:33;-1:-1:-1;;;;;12134:30:136;;12131:50;;;12177:1;12174;12167:12;12131:50;12200:59;12251:7;12242:6;12231:9;12227:22;12200:59;:::i;:::-;12190:69;;;11621:644;;;;;:::o;13582:250::-;13667:1;13677:113;13691:6;13688:1;13685:13;13677:113;;;13767:11;;;13761:18;13748:11;;;13741:39;13713:2;13706:10;13677:113;;;-1:-1:-1;;13824:1:136;13806:16;;13799:27;13582:250::o;13837:271::-;13879:3;13917:5;13911:12;13944:6;13939:3;13932:19;13960:76;14029:6;14022:4;14017:3;14013:14;14006:4;13999:5;13995:16;13960:76;:::i;:::-;14090:2;14069:15;-1:-1:-1;;14065:29:136;14056:39;;;;14097:4;14052:50;;13837:271;-1:-1:-1;;13837:271:136:o;14113:220::-;14262:2;14251:9;14244:21;14225:4;14282:45;14323:2;14312:9;14308:18;14300:6;14282:45;:::i;14785:785::-;14946:6;14954;14962;14970;15023:3;15011:9;15002:7;14998:23;14994:33;14991:53;;;15040:1;15037;15030:12;14991:53;15079:9;15066:23;15098:31;15123:5;15098:31;:::i;:::-;15148:5;-1:-1:-1;15205:2:136;15190:18;;15177:32;15218:33;15177:32;15218:33;:::i;:::-;15270:7;-1:-1:-1;15296:75:136;15363:7;15358:2;15343:18;;15296:75;:::i;:::-;15286:85;-1:-1:-1;15422:3:136;15407:19;;15394:33;-1:-1:-1;;;;;15439:30:136;;15436:50;;;15482:1;15479;15472:12;15436:50;15505:59;15556:7;15547:6;15536:9;15532:22;15505:59;:::i;:::-;15495:69;;;14785:785;;;;;;;:::o;15575:127::-;15636:10;15631:3;15627:20;15624:1;15617:31;15667:4;15664:1;15657:15;15691:4;15688:1;15681:15;15707:168;15780:9;;;15811;;15828:15;;;15822:22;;15808:37;15798:71;;15849:18;;:::i;15880:127::-;15941:10;15936:3;15932:20;15929:1;15922:31;15972:4;15969:1;15962:15;15996:4;15993:1;15986:15;16012:277;16099:6;16152:2;16140:9;16131:7;16127:23;16123:32;16120:52;;;16168:1;16165;16158:12;16120:52;16200:9;16194:16;16219:40;16253:5;16219:40;:::i;16294:282::-;-1:-1:-1;;;;;16494:32:136;;;;16476:51;;16558:2;16543:18;;16536:34;16464:2;16449:18;;16294:282::o;16581:184::-;16651:6;16704:2;16692:9;16683:7;16679:23;16675:32;16672:52;;;16720:1;16717;16710:12;16672:52;-1:-1:-1;16743:16:136;;16581:184;-1:-1:-1;16581:184:136:o;17049:375::-;-1:-1:-1;;;;;17307:15:136;;;17289:34;;17359:15;;;;17354:2;17339:18;;17332:43;17406:2;17391:18;;17384:34;;;;17239:2;17224:18;;17049:375::o;17429:304::-;-1:-1:-1;;;;;17659:15:136;;;17641:34;;17711:15;;17706:2;17691:18;;17684:43;17591:2;17576:18;;17429:304::o;17738:217::-;17778:1;17804;17794:132;;17848:10;17843:3;17839:20;17836:1;17829:31;17883:4;17880:1;17873:15;17911:4;17908:1;17901:15;17794:132;-1:-1:-1;17940:9:136;;17738:217::o;17960:125::-;18025:9;;;18046:10;;;18043:36;;;18059:18;;:::i;18505:380::-;18584:1;18580:12;;;;18627;;;18648:61;;18702:4;18694:6;18690:17;18680:27;;18648:61;18755:2;18747:6;18744:14;18724:18;18721:38;18718:161;;18801:10;18796:3;18792:20;18789:1;18782:31;18836:4;18833:1;18826:15;18864:4;18861:1;18854:15;18718:161;;18505:380;;;:::o;19016:545::-;19118:2;19113:3;19110:11;19107:448;;;19154:1;19179:5;19175:2;19168:17;19224:4;19220:2;19210:19;19294:2;19282:10;19278:19;19275:1;19271:27;19265:4;19261:38;19330:4;19318:10;19315:20;19312:47;;;-1:-1:-1;19353:4:136;19312:47;19408:2;19403:3;19399:12;19396:1;19392:20;19386:4;19382:31;19372:41;;19463:82;19481:2;19474:5;19471:13;19463:82;;;19526:17;;;19507:1;19496:13;19463:82;;;19467:3;;;19016:545;;;:::o;19737:1352::-;19857:10;;-1:-1:-1;;;;;19879:30:136;;19876:56;;;19912:18;;:::i;:::-;19941:97;20031:6;19991:38;20023:4;20017:11;19991:38;:::i;:::-;19985:4;19941:97;:::i;:::-;20093:4;;20157:2;20146:14;;20174:1;20169:663;;;;20876:1;20893:6;20890:89;;;-1:-1:-1;20945:19:136;;;20939:26;20890:89;-1:-1:-1;;19694:1:136;19690:11;;;19686:24;19682:29;19672:40;19718:1;19714:11;;;19669:57;20992:81;;20139:944;;20169:663;18963:1;18956:14;;;19000:4;18987:18;;-1:-1:-1;;20205:20:136;;;20323:236;20337:7;20334:1;20331:14;20323:236;;;20426:19;;;20420:26;20405:42;;20518:27;;;;20486:1;20474:14;;;;20353:19;;20323:236;;;20327:3;20587:6;20578:7;20575:19;20572:201;;;20648:19;;;20642:26;-1:-1:-1;;20731:1:136;20727:14;;;20743:3;20723:24;20719:37;20715:42;20700:58;20685:74;;20572:201;-1:-1:-1;;;;;20819:1:136;20803:14;;;20799:22;20786:36;;-1:-1:-1;19737:1352:136:o;21094:251::-;21164:6;21217:2;21205:9;21196:7;21192:23;21188:32;21185:52;;;21233:1;21230;21223:12;21185:52;21265:9;21259:16;21284:31;21309:5;21284:31;:::i;21350:127::-;21411:10;21406:3;21402:20;21399:1;21392:31;21442:4;21439:1;21432:15;21466:4;21463:1;21456:15;21482:1011;21577:6;21608:2;21651;21639:9;21630:7;21626:23;21622:32;21619:52;;;21667:1;21664;21657:12;21619:52;21694:16;;-1:-1:-1;;;;;21759:14:136;;;21756:34;;;21786:1;21783;21776:12;21756:34;21824:6;21813:9;21809:22;21799:32;;21869:7;21862:4;21858:2;21854:13;21850:27;21840:55;;21891:1;21888;21881:12;21840:55;21920:2;21914:9;21942:2;21938;21935:10;21932:36;;;21948:18;;:::i;:::-;21994:2;21991:1;21987:10;21977:20;;22017:28;22041:2;22037;22033:11;22017:28;:::i;:::-;22079:15;;;22149:11;;;22145:20;;;22110:12;;;;22177:19;;;22174:39;;;22209:1;22206;22199:12;22174:39;22233:11;;;;22253:210;22269:6;22264:3;22261:15;22253:210;;;22342:3;22336:10;22323:23;;22359:31;22384:5;22359:31;:::i;:::-;22403:18;;;22286:12;;;;22441;;;;22253:210;;;22482:5;21482:1011;-1:-1:-1;;;;;;;;21482:1011:136:o;22498:135::-;22537:3;22558:17;;;22555:43;;22578:18;;:::i;:::-;-1:-1:-1;22625:1:136;22614:13;;22498:135::o;22638:128::-;22705:9;;;22726:11;;;22723:37;;;22740:18;;:::i;22771:772::-;22821:3;22862:5;22856:12;22891:36;22917:9;22891:36;:::i;:::-;22936:19;;;22974:4;22997:1;23014:18;;;23041:146;;;;23201:1;23196:341;;;;23007:530;;23041:146;-1:-1:-1;;23083:24:136;;23069:12;;;23062:46;23155:14;;23148:22;23145:1;23141:30;23132:40;;23128:49;;;-1:-1:-1;23041:146:136;;23196:341;23227:5;23224:1;23217:16;23274:2;23271:1;23261:16;23299:1;23313:174;23327:6;23324:1;23321:13;23313:174;;;23414:14;;23396:11;;;23392:20;;23385:44;23457:16;;;;23342:10;;23313:174;;;23511:11;;23507:20;;;-1:-1:-1;;23007:530:136;;;;;;22771:772;;;;:::o;23548:252::-;23635:5;23629:12;23624:3;23617:25;23599:3;23688:4;23681:5;23677:16;23671:23;23726:4;23719;23714:3;23710:14;23703:28;23747:47;23788:4;23783:3;23779:14;23765:12;23747:47;:::i;23805:461::-;23858:3;23896:5;23890:12;23923:6;23918:3;23911:19;23949:4;23978:2;23973:3;23969:12;23962:19;;24015:2;24008:5;24004:14;24036:1;24046:195;24060:6;24057:1;24054:13;24046:195;;;24125:13;;-1:-1:-1;;;;;24121:39:136;24109:52;;24181:12;;;;24216:15;;;;24157:1;24075:9;24046:195;;;-1:-1:-1;24257:3:136;;23805:461;-1:-1:-1;;;;;23805:461:136:o;24271:804::-;24631:6;24620:9;24613:25;24674:3;24669:2;24658:9;24654:18;24647:31;24594:4;24701:54;24750:3;24739:9;24735:19;24727:6;24701:54;:::i;:::-;24803:9;24795:6;24791:22;24786:2;24775:9;24771:18;24764:50;24837:42;24872:6;24864;24837:42;:::i;:::-;-1:-1:-1;;;;;24915:32:136;;24910:2;24895:18;;24888:60;24985:22;;;24979:3;24964:19;;24957:51;24823:56;-1:-1:-1;25025:44:136;24823:56;25054:6;25025:44;:::i;25269:500::-;25523:6;25512:9;25505:25;25566:2;25561;25550:9;25546:18;25539:30;25486:4;25592:53;25641:2;25630:9;25626:18;25618:6;25592:53;:::i;:::-;25693:9;25685:6;25681:22;25676:2;25665:9;25661:18;25654:50;25721:42;25756:6;25748;25721:42;:::i;26389:408::-;26591:2;26573:21;;;26630:2;26610:18;;;26603:30;-1:-1:-1;;;;;;;;;;;26664:2:136;26649:18;;26642:62;-1:-1:-1;;;26735:2:136;26720:18;;26713:42;26787:3;26772:19;;26389:408::o;26802:::-;27004:2;26986:21;;;27043:2;27023:18;;;27016:30;-1:-1:-1;;;;;;;;;;;27077:2:136;27062:18;;27055:62;-1:-1:-1;;;27148:2:136;27133:18;;27126:42;27200:3;27185:19;;26802:408::o;27921:315::-;-1:-1:-1;;;;;28096:32:136;;28078:51;;28165:2;28160;28145:18;;28138:30;;;-1:-1:-1;;28185:45:136;;28211:18;;28203:6;28185:45;:::i;28919:127::-;28980:10;28975:3;28971:20;28968:1;28961:31;29011:4;29008:1;29001:15;29035:4;29032:1;29025:15;29051:1653;29143:6;29174:2;29217;29205:9;29196:7;29192:23;29188:32;29185:52;;;29233:1;29230;29223:12;29185:52;29260:16;;-1:-1:-1;;;;;29325:14:136;;;29322:34;;;29352:1;29349;29342:12;29322:34;29375:22;;;;29431:4;29413:16;;;29409:27;29406:47;;;29449:1;29446;29439:12;29406:47;29475:22;;:::i;:::-;29526:2;29520:9;29513:5;29506:24;29568:2;29564;29560:11;29554:18;29581:33;29606:7;29581:33;:::i;:::-;29630:14;;;29623:31;29692:2;29684:11;;29678:18;29705:33;29678:18;29705:33;:::i;:::-;29765:2;29754:14;;29747:31;29817:2;29809:11;;29803:18;29833:16;;;29830:36;;;29862:1;29859;29852:12;29830:36;29885:17;;29936:2;29918:16;;;29914:25;29911:45;;;29952:1;29949;29942:12;29911:45;29980:22;;:::i;:::-;30033:2;30027:9;30018:7;30011:26;30076:2;30072;30068:11;30062:18;30105:2;30095:8;30092:16;30089:36;;;30121:1;30118;30111:12;30089:36;30144:17;;;-1:-1:-1;30192:4:136;30184:13;;30180:27;-1:-1:-1;30170:55:136;;30221:1;30218;30211:12;30170:55;30250:2;30244:9;30234:19;;30275:49;30291:32;30320:2;30291:32;:::i;30275:49::-;30347:2;30340:5;30333:17;30387:7;30382:2;30377;30373;30369:11;30365:20;30362:33;30359:53;;;30408:1;30405;30398:12;30359:53;30421:67;30485:2;30480;30473:5;30469:14;30464:2;30460;30456:11;30421:67;:::i;:::-;30504:16;;;30497:31;;;;-1:-1:-1;30555:2:136;30544:14;;30537:31;;;;-1:-1:-1;30615:3:136;30607:12;;;30601:19;30584:15;;;30577:44;30668:3;30660:12;;;30654:19;30637:15;;;30630:44;30548:5;29051:1653;-1:-1:-1;;;29051:1653:136:o;30709:407::-;30911:2;30893:21;;;30950:2;30930:18;;;30923:30;30989:34;30984:2;30969:18;;30962:62;-1:-1:-1;;;31055:2:136;31040:18;;31033:41;31106:3;31091:19;;30709:407::o;31121:143::-;31205:1;31198:5;31195:12;31185:46;;31211:18;;:::i;:::-;31240;;31121:143::o;31269:142::-;31352:1;31345:5;31342:12;31332:46;;31358:18;;:::i;31953:1260::-;32143:4;32185:3;32174:9;32170:19;32162:27;;32214:6;32208:13;32254:2;32248:9;32237;32230:28;32310:4;32306:2;32302:13;32296:20;32289:4;32278:9;32274:20;32267:50;32369:4;32365:2;32361:13;32355:20;32348:4;32337:9;32333:20;32326:50;32428:4;32424:2;32420:13;32414:20;32407:4;32396:9;32392:20;32385:50;;32482:4;32474:6;32470:17;32464:24;32497:64;32555:4;32544:9;32540:20;32526:12;32497:64;:::i;:::-;;32610:4;32602:6;32598:17;32592:24;32625:65;32684:4;32673:9;32669:20;32653:14;32625:65;:::i;:::-;-1:-1:-1;32739:4:136;32727:17;;;32721:24;31491:12;32821:4;32806:20;;31479:25;32876:4;32864:17;;;32858:24;31635:12;;-1:-1:-1;;;;;31631:21:136;;;32957:4;32942:20;;31619:34;31706:4;31695:16;;31689:23;31685:32;31669:14;;;31662:56;31767:4;31756:16;;31750:23;31734:14;;;31727:47;31812:16;;;31806:23;31790:14;;;31783:47;31868:16;;31862:23;31846:14;;;31839:47;31599:3;31924:16;;;31918:23;31902:14;;;31895:47;33000:17;;32994:24;33027:58;33077:6;33062:22;;32994:24;33027:58;:::i;:::-;;33134:4;33126:6;33122:17;33116:24;33149:58;33199:6;33188:9;33184:22;33168:14;33149:58;:::i;:::-;;31953:1260;;;;:::o;33218:979::-;33643:6;33632:9;33625:25;33606:4;33686:1;33682;33677:3;33673:11;33669:19;33736:2;33728:6;33724:15;33719:2;33708:9;33704:18;33697:43;33776:3;33771:2;33760:9;33756:18;33749:31;33803:46;33844:3;33833:9;33829:19;33821:6;33803:46;:::i;:::-;33897:2;33889:6;33885:15;33880:2;33869:9;33865:18;33858:43;33938:6;33932:3;33921:9;33917:19;33910:35;33994:9;33986:6;33982:22;33976:3;33965:9;33961:19;33954:51;34028:42;34063:6;34055;34028:42;:::i;:::-;34014:56;;;34119:9;34111:6;34107:22;34101:3;34090:9;34086:19;34079:51;34147:44;34184:6;34176;34147:44;:::i;:::-;34139:52;33218:979;-1:-1:-1;;;;;;;;;;33218:979:136:o;34202:613::-;34477:25;;;-1:-1:-1;;;;;34576:15:136;;;34571:2;34556:18;;34549:43;34628:15;;;34623:2;34608:18;;34601:43;34680:15;;34675:2;34660:18;;34653:43;34529:3;34727;34712:19;;34705:32;;;34458:4;;34754:55;;34789:19;;34781:6;34754:55;:::i;36989:812::-;-1:-1:-1;;;37395:3:136;37388:38;37370:3;37455:6;37449:13;37471:75;37539:6;37534:2;37529:3;37525:12;37518:4;37510:6;37506:17;37471:75;:::i;:::-;-1:-1:-1;;;37605:2:136;37565:16;;;37597:11;;;37590:40;37655:13;;37677:76;37655:13;37739:2;37731:11;;37724:4;37712:17;;37677:76;:::i;:::-;37773:17;37792:2;37769:26;;36989:812;-1:-1:-1;;;;36989:812:136:o;37806:245::-;37873:6;37926:2;37914:9;37905:7;37901:23;37897:32;37894:52;;;37942:1;37939;37932:12;37894:52;37974:9;37968:16;37993:28;38015:5;37993:28;:::i;39088:136::-;39127:3;39155:5;39145:39;;39164:18;;:::i;:::-;-1:-1:-1;;;39200:18:136;;39088:136::o;39997:287::-;40126:3;40164:6;40158:13;40180:66;40239:6;40234:3;40227:4;40219:6;40215:17;40180:66;:::i;:::-;40262:16;;;;;39997:287;-1:-1:-1;;39997:287:136:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7646,"length":32},{"start":7713,"length":32},{"start":7964,"length":32},{"start":8031,"length":32},{"start":8387,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":\"RegistryCommunityV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":"RegistryCommunityV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75844"},{"astId":70502,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)75577"},{"astId":70505,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)75577":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75844":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","id":72175,"exportedSymbols":{"AccessControlUpgradeable":[52697],"CVStrategyInitializeParamsV0_0":[65657],"CVStrategyV0_0":[69194],"Clone":[3002],"ERC165Checker":[57919],"ERC1967Proxy":[55021],"FAllo":[75577],"IAllo":[2610],"IERC20":[56528],"IPointStrategy":[65536],"IRegistry":[2802],"IRegistryFactory":[70017],"ISafe":[75844],"Member":[70271],"Metadata":[3098],"PointSystem":[65545],"ProxyOwnableUpgrader":[70199],"ReentrancyGuardUpgradeable":[53237],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"SafeERC20":[56965],"Strategies":[70275],"UUPSUpgradeable":[55672],"Upgrades":[61176]},"nodeType":"SourceUnit","src":"42:26085:104","nodes":[{"id":70201,"nodeType":"PragmaDirective","src":"42:24:104","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70203,"nodeType":"ImportDirective","src":"68:70:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":56529,"symbolAliases":[{"foreign":{"id":70202,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56528,"src":"76:6:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70205,"nodeType":"ImportDirective","src":"139:82:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","file":"@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":56966,"symbolAliases":[{"foreign":{"id":70204,"name":"SafeERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56965,"src":"147:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70207,"nodeType":"ImportDirective","src":"222:92:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165Checker.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":57920,"symbolAliases":[{"foreign":{"id":70206,"name":"ERC165Checker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57919,"src":"230:13:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70209,"nodeType":"ImportDirective","src":"315:88:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":55673,"symbolAliases":[{"foreign":{"id":70208,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55672,"src":"323:15:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70211,"nodeType":"ImportDirective","src":"405:132:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":53238,"symbolAliases":[{"foreign":{"id":70210,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53237,"src":"413:26:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70213,"nodeType":"ImportDirective","src":"538:126:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":52698,"symbolAliases":[{"foreign":{"id":70212,"name":"AccessControlUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52697,"src":"546:24:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70215,"nodeType":"ImportDirective","src":"666:66:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"allo-v2-contracts/core/interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":2611,"symbolAliases":[{"foreign":{"id":70214,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"674:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70217,"nodeType":"ImportDirective","src":"733:65:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":70216,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"741:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70220,"nodeType":"ImportDirective","src":"799:84:104","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":70218,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"807:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70219,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"818:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70222,"nodeType":"ImportDirective","src":"884:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","file":"../interfaces/FAllo.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":75578,"symbolAliases":[{"foreign":{"id":70221,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75577,"src":"892:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70224,"nodeType":"ImportDirective","src":"931:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ISafe.sol","file":"../interfaces/ISafe.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":75861,"symbolAliases":[{"foreign":{"id":70223,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75844,"src":"939:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70226,"nodeType":"ImportDirective","src":"978:57:104","nodes":[],"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","file":"../IRegistryFactory.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":70018,"symbolAliases":[{"foreign":{"id":70225,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"986:16:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70231,"nodeType":"ImportDirective","src":"1036:143:104","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":70227,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"1049:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70228,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"1069:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70229,"name":"CVStrategyInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65657,"src":"1089:30:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70230,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"1125:11:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70233,"nodeType":"ImportDirective","src":"1180:66:104","nodes":[],"absolutePath":"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol","file":"@openzeppelin/foundry/LegacyUpgrades.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":61297,"symbolAliases":[{"foreign":{"id":70232,"name":"Upgrades","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":61176,"src":"1188:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70235,"nodeType":"ImportDirective","src":"1247:84:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":70234,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"1255:12:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70237,"nodeType":"ImportDirective","src":"1332:65:104","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":72175,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":70236,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"1340:20:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70264,"nodeType":"StructDefinition","src":"2292:368:104","nodes":[],"canonicalName":"RegistryCommunityInitializeParamsV0_0","members":[{"constant":false,"id":70239,"mutability":"mutable","name":"_allo","nameLocation":"2351:5:104","nodeType":"VariableDeclaration","scope":70264,"src":"2343:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70238,"name":"address","nodeType":"ElementaryTypeName","src":"2343:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70242,"mutability":"mutable","name":"_gardenToken","nameLocation":"2369:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2362:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":70241,"nodeType":"UserDefinedTypeName","pathNode":{"id":70240,"name":"IERC20","nameLocations":["2362:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"2362:6:104"},"referencedDeclaration":56528,"src":"2362:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":70244,"mutability":"mutable","name":"_registerStakeAmount","nameLocation":"2395:20:104","nodeType":"VariableDeclaration","scope":70264,"src":"2387:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70243,"name":"uint256","nodeType":"ElementaryTypeName","src":"2387:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70246,"mutability":"mutable","name":"_communityFee","nameLocation":"2429:13:104","nodeType":"VariableDeclaration","scope":70264,"src":"2421:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70245,"name":"uint256","nodeType":"ElementaryTypeName","src":"2421:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70248,"mutability":"mutable","name":"_nonce","nameLocation":"2456:6:104","nodeType":"VariableDeclaration","scope":70264,"src":"2448:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70247,"name":"uint256","nodeType":"ElementaryTypeName","src":"2448:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70250,"mutability":"mutable","name":"_registryFactory","nameLocation":"2476:16:104","nodeType":"VariableDeclaration","scope":70264,"src":"2468:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70249,"name":"address","nodeType":"ElementaryTypeName","src":"2468:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70252,"mutability":"mutable","name":"_feeReceiver","nameLocation":"2506:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2498:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70251,"name":"address","nodeType":"ElementaryTypeName","src":"2498:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70255,"mutability":"mutable","name":"_metadata","nameLocation":"2533:9:104","nodeType":"VariableDeclaration","scope":70264,"src":"2524:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":70254,"nodeType":"UserDefinedTypeName","pathNode":{"id":70253,"name":"Metadata","nameLocations":["2524:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2524:8:104"},"referencedDeclaration":3098,"src":"2524:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":70257,"mutability":"mutable","name":"_councilSafe","nameLocation":"2564:12:104","nodeType":"VariableDeclaration","scope":70264,"src":"2548:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":70256,"name":"address","nodeType":"ElementaryTypeName","src":"2548:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":70259,"mutability":"mutable","name":"_communityName","nameLocation":"2589:14:104","nodeType":"VariableDeclaration","scope":70264,"src":"2582:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70258,"name":"string","nodeType":"ElementaryTypeName","src":"2582:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70261,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"2614:14:104","nodeType":"VariableDeclaration","scope":70264,"src":"2609:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70260,"name":"bool","nodeType":"ElementaryTypeName","src":"2609:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":70263,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"2641:16:104","nodeType":"VariableDeclaration","scope":70264,"src":"2634:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":70262,"name":"string","nodeType":"ElementaryTypeName","src":"2634:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"RegistryCommunityInitializeParamsV0_0","nameLocation":"2299:37:104","scope":72175,"visibility":"public"},{"id":70271,"nodeType":"StructDefinition","src":"2662:86:104","nodes":[],"canonicalName":"Member","members":[{"constant":false,"id":70266,"mutability":"mutable","name":"member","nameLocation":"2690:6:104","nodeType":"VariableDeclaration","scope":70271,"src":"2682:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70265,"name":"address","nodeType":"ElementaryTypeName","src":"2682:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70268,"mutability":"mutable","name":"stakedAmount","nameLocation":"2710:12:104","nodeType":"VariableDeclaration","scope":70271,"src":"2702:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70267,"name":"uint256","nodeType":"ElementaryTypeName","src":"2702:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70270,"mutability":"mutable","name":"isRegistered","nameLocation":"2733:12:104","nodeType":"VariableDeclaration","scope":70271,"src":"2728:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70269,"name":"bool","nodeType":"ElementaryTypeName","src":"2728:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"Member","nameLocation":"2669:6:104","scope":72175,"visibility":"public"},{"id":70275,"nodeType":"StructDefinition","src":"2750:47:104","nodes":[],"canonicalName":"Strategies","members":[{"constant":false,"id":70274,"mutability":"mutable","name":"strategies","nameLocation":"2784:10:104","nodeType":"VariableDeclaration","scope":70275,"src":"2774:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70272,"name":"address","nodeType":"ElementaryTypeName","src":"2774:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70273,"nodeType":"ArrayTypeName","src":"2774:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"Strategies","nameLocation":"2757:10:104","scope":72175,"visibility":"public"},{"id":72174,"nodeType":"ContractDefinition","src":"2850:23276:104","nodes":[{"id":70286,"nodeType":"EventDefinition","src":"3131:29:104","nodes":[],"anonymous":false,"eventSelector":"aaded18d4d508696508b945d03ff3d168110dbb73e17aeda699745655fa958d2","name":"AlloSet","nameLocation":"3137:7:104","parameters":{"id":70285,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70284,"indexed":false,"mutability":"mutable","name":"_allo","nameLocation":"3153:5:104","nodeType":"VariableDeclaration","scope":70286,"src":"3145:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70283,"name":"address","nodeType":"ElementaryTypeName","src":"3145:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3144:15:104"}},{"id":70290,"nodeType":"EventDefinition","src":"3165:36:104","nodes":[],"anonymous":false,"eventSelector":"ad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb68872","name":"CouncilSafeSet","nameLocation":"3171:14:104","parameters":{"id":70289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70288,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"3194:5:104","nodeType":"VariableDeclaration","scope":70290,"src":"3186:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70287,"name":"address","nodeType":"ElementaryTypeName","src":"3186:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3185:15:104"}},{"id":70296,"nodeType":"EventDefinition","src":"3206:74:104","nodes":[],"anonymous":false,"eventSelector":"83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8","name":"CouncilSafeChangeStarted","nameLocation":"3212:24:104","parameters":{"id":70295,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70292,"indexed":false,"mutability":"mutable","name":"_safeOwner","nameLocation":"3245:10:104","nodeType":"VariableDeclaration","scope":70296,"src":"3237:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70291,"name":"address","nodeType":"ElementaryTypeName","src":"3237:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70294,"indexed":false,"mutability":"mutable","name":"_newSafeOwner","nameLocation":"3265:13:104","nodeType":"VariableDeclaration","scope":70296,"src":"3257:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70293,"name":"address","nodeType":"ElementaryTypeName","src":"3257:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3236:43:104"}},{"id":70302,"nodeType":"EventDefinition","src":"3285:63:104","nodes":[],"anonymous":false,"eventSelector":"67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f7689","name":"MemberRegistered","nameLocation":"3291:16:104","parameters":{"id":70301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70298,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3316:7:104","nodeType":"VariableDeclaration","scope":70302,"src":"3308:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70297,"name":"address","nodeType":"ElementaryTypeName","src":"3308:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70300,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3333:13:104","nodeType":"VariableDeclaration","scope":70302,"src":"3325:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70299,"name":"uint256","nodeType":"ElementaryTypeName","src":"3325:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3307:40:104"}},{"id":70308,"nodeType":"EventDefinition","src":"3353:67:104","nodes":[],"anonymous":false,"eventSelector":"a13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f4","name":"MemberUnregistered","nameLocation":"3359:18:104","parameters":{"id":70307,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70304,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3386:7:104","nodeType":"VariableDeclaration","scope":70308,"src":"3378:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70303,"name":"address","nodeType":"ElementaryTypeName","src":"3378:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70306,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3403:15:104","nodeType":"VariableDeclaration","scope":70308,"src":"3395:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70305,"name":"uint256","nodeType":"ElementaryTypeName","src":"3395:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3377:42:104"}},{"id":70316,"nodeType":"EventDefinition","src":"3425:87:104","nodes":[],"anonymous":false,"eventSelector":"b5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3","name":"MemberKicked","nameLocation":"3431:12:104","parameters":{"id":70315,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70310,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3452:7:104","nodeType":"VariableDeclaration","scope":70316,"src":"3444:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70309,"name":"address","nodeType":"ElementaryTypeName","src":"3444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70312,"indexed":false,"mutability":"mutable","name":"_transferAddress","nameLocation":"3469:16:104","nodeType":"VariableDeclaration","scope":70316,"src":"3461:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70311,"name":"address","nodeType":"ElementaryTypeName","src":"3461:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70314,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3495:15:104","nodeType":"VariableDeclaration","scope":70316,"src":"3487:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70313,"name":"uint256","nodeType":"ElementaryTypeName","src":"3487:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3443:68:104"}},{"id":70320,"nodeType":"EventDefinition","src":"3517:43:104","nodes":[],"anonymous":false,"eventSelector":"611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6","name":"CommunityFeeUpdated","nameLocation":"3523:19:104","parameters":{"id":70319,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70318,"indexed":false,"mutability":"mutable","name":"_newFee","nameLocation":"3551:7:104","nodeType":"VariableDeclaration","scope":70320,"src":"3543:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70317,"name":"uint256","nodeType":"ElementaryTypeName","src":"3543:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3542:17:104"}},{"id":70329,"nodeType":"EventDefinition","src":"3565:89:104","nodes":[],"anonymous":false,"eventSelector":"2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed03205","name":"RegistryInitialized","nameLocation":"3571:19:104","parameters":{"id":70328,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70322,"indexed":false,"mutability":"mutable","name":"_profileId","nameLocation":"3599:10:104","nodeType":"VariableDeclaration","scope":70329,"src":"3591:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70321,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3591:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":70324,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"3618:14:104","nodeType":"VariableDeclaration","scope":70329,"src":"3611:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70323,"name":"string","nodeType":"ElementaryTypeName","src":"3611:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":70327,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"3643:9:104","nodeType":"VariableDeclaration","scope":70329,"src":"3634:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70326,"nodeType":"UserDefinedTypeName","pathNode":{"id":70325,"name":"Metadata","nameLocations":["3634:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"3634:8:104"},"referencedDeclaration":3098,"src":"3634:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"3590:63:104"}},{"id":70333,"nodeType":"EventDefinition","src":"3659:39:104","nodes":[],"anonymous":false,"eventSelector":"3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1","name":"StrategyAdded","nameLocation":"3665:13:104","parameters":{"id":70332,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70331,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3687:9:104","nodeType":"VariableDeclaration","scope":70333,"src":"3679:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70330,"name":"address","nodeType":"ElementaryTypeName","src":"3679:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3678:19:104"}},{"id":70337,"nodeType":"EventDefinition","src":"3703:41:104","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"3709:15:104","parameters":{"id":70336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70335,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3733:9:104","nodeType":"VariableDeclaration","scope":70337,"src":"3725:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70334,"name":"address","nodeType":"ElementaryTypeName","src":"3725:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3724:19:104"}},{"id":70345,"nodeType":"EventDefinition","src":"3749:93:104","nodes":[],"anonymous":false,"eventSelector":"f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec","name":"MemberActivatedStrategy","nameLocation":"3755:23:104","parameters":{"id":70344,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70339,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3787:7:104","nodeType":"VariableDeclaration","scope":70345,"src":"3779:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70338,"name":"address","nodeType":"ElementaryTypeName","src":"3779:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70341,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3804:9:104","nodeType":"VariableDeclaration","scope":70345,"src":"3796:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70340,"name":"address","nodeType":"ElementaryTypeName","src":"3796:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70343,"indexed":false,"mutability":"mutable","name":"_pointsToIncrease","nameLocation":"3823:17:104","nodeType":"VariableDeclaration","scope":70345,"src":"3815:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70342,"name":"uint256","nodeType":"ElementaryTypeName","src":"3815:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3778:63:104"}},{"id":70351,"nodeType":"EventDefinition","src":"3847:68:104","nodes":[],"anonymous":false,"eventSelector":"00de109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b","name":"MemberDeactivatedStrategy","nameLocation":"3853:25:104","parameters":{"id":70350,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70347,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3887:7:104","nodeType":"VariableDeclaration","scope":70351,"src":"3879:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70346,"name":"address","nodeType":"ElementaryTypeName","src":"3879:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70349,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"3904:9:104","nodeType":"VariableDeclaration","scope":70351,"src":"3896:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70348,"name":"address","nodeType":"ElementaryTypeName","src":"3896:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3878:36:104"}},{"id":70355,"nodeType":"EventDefinition","src":"3920:47:104","nodes":[],"anonymous":false,"eventSelector":"5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f","name":"BasisStakedAmountSet","nameLocation":"3926:20:104","parameters":{"id":70354,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70353,"indexed":false,"mutability":"mutable","name":"_newAmount","nameLocation":"3955:10:104","nodeType":"VariableDeclaration","scope":70355,"src":"3947:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70352,"name":"uint256","nodeType":"ElementaryTypeName","src":"3947:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3946:20:104"}},{"id":70361,"nodeType":"EventDefinition","src":"3972:67:104","nodes":[],"anonymous":false,"eventSelector":"576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f","name":"MemberPowerIncreased","nameLocation":"3978:20:104","parameters":{"id":70360,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70357,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4007:7:104","nodeType":"VariableDeclaration","scope":70361,"src":"3999:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70356,"name":"address","nodeType":"ElementaryTypeName","src":"3999:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70359,"indexed":false,"mutability":"mutable","name":"_stakedAmount","nameLocation":"4024:13:104","nodeType":"VariableDeclaration","scope":70361,"src":"4016:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70358,"name":"uint256","nodeType":"ElementaryTypeName","src":"4016:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3998:40:104"}},{"id":70367,"nodeType":"EventDefinition","src":"4044:69:104","nodes":[],"anonymous":false,"eventSelector":"6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8","name":"MemberPowerDecreased","nameLocation":"4050:20:104","parameters":{"id":70366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70363,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4079:7:104","nodeType":"VariableDeclaration","scope":70367,"src":"4071:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70362,"name":"address","nodeType":"ElementaryTypeName","src":"4071:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70365,"indexed":false,"mutability":"mutable","name":"_unstakedAmount","nameLocation":"4096:15:104","nodeType":"VariableDeclaration","scope":70367,"src":"4088:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70364,"name":"uint256","nodeType":"ElementaryTypeName","src":"4088:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4070:42:104"}},{"id":70380,"nodeType":"EventDefinition","src":"4118:110:104","nodes":[],"anonymous":false,"eventSelector":"778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d283","name":"PoolCreated","nameLocation":"4124:11:104","parameters":{"id":70379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70369,"indexed":false,"mutability":"mutable","name":"_poolId","nameLocation":"4144:7:104","nodeType":"VariableDeclaration","scope":70380,"src":"4136:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70368,"name":"uint256","nodeType":"ElementaryTypeName","src":"4136:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70371,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4161:9:104","nodeType":"VariableDeclaration","scope":70380,"src":"4153:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70370,"name":"address","nodeType":"ElementaryTypeName","src":"4153:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70373,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"4180:10:104","nodeType":"VariableDeclaration","scope":70380,"src":"4172:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70372,"name":"address","nodeType":"ElementaryTypeName","src":"4172:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70375,"indexed":false,"mutability":"mutable","name":"_token","nameLocation":"4200:6:104","nodeType":"VariableDeclaration","scope":70380,"src":"4192:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70374,"name":"address","nodeType":"ElementaryTypeName","src":"4192:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70378,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4217:9:104","nodeType":"VariableDeclaration","scope":70380,"src":"4208:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70377,"nodeType":"UserDefinedTypeName","pathNode":{"id":70376,"name":"Metadata","nameLocations":["4208:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"4208:8:104"},"referencedDeclaration":3098,"src":"4208:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"4135:92:104"}},{"id":70382,"nodeType":"ErrorDefinition","src":"4414:28:104","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4420:19:104","parameters":{"id":70381,"nodeType":"ParameterList","parameters":[],"src":"4439:2:104"}},{"id":70384,"nodeType":"ErrorDefinition","src":"4447:29:104","nodes":[],"errorSelector":"5df4b1ef","name":"RegistryCannotBeZero","nameLocation":"4453:20:104","parameters":{"id":70383,"nodeType":"ParameterList","parameters":[],"src":"4473:2:104"}},{"id":70388,"nodeType":"ErrorDefinition","src":"4481:38:104","nodes":[],"errorSelector":"fc4be72f","name":"UserNotInCouncil","nameLocation":"4487:16:104","parameters":{"id":70387,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70386,"mutability":"mutable","name":"_user","nameLocation":"4512:5:104","nodeType":"VariableDeclaration","scope":70388,"src":"4504:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70385,"name":"address","nodeType":"ElementaryTypeName","src":"4504:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4503:15:104"}},{"id":70390,"nodeType":"ErrorDefinition","src":"4524:26:104","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4530:17:104","parameters":{"id":70389,"nodeType":"ParameterList","parameters":[],"src":"4547:2:104"}},{"id":70392,"nodeType":"ErrorDefinition","src":"4555:30:104","nodes":[],"errorSelector":"9e4a65f6","name":"UserAlreadyRegistered","nameLocation":"4561:21:104","parameters":{"id":70391,"nodeType":"ParameterList","parameters":[],"src":"4582:2:104"}},{"id":70394,"nodeType":"ErrorDefinition","src":"4590:27:104","nodes":[],"errorSelector":"e9a644b8","name":"UserNotGardenOwner","nameLocation":"4596:18:104","parameters":{"id":70393,"nodeType":"ParameterList","parameters":[],"src":"4614:2:104"}},{"id":70396,"nodeType":"ErrorDefinition","src":"4622:29:104","nodes":[],"errorSelector":"d5b9bc96","name":"UserAlreadyActivated","nameLocation":"4628:20:104","parameters":{"id":70395,"nodeType":"ParameterList","parameters":[],"src":"4648:2:104"}},{"id":70398,"nodeType":"ErrorDefinition","src":"4656:31:104","nodes":[],"errorSelector":"c12369dc","name":"UserAlreadyDeactivated","nameLocation":"4662:22:104","parameters":{"id":70397,"nodeType":"ParameterList","parameters":[],"src":"4684:2:104"}},{"id":70400,"nodeType":"ErrorDefinition","src":"4692:23:104","nodes":[],"errorSelector":"968a4d2c","name":"StrategyExists","nameLocation":"4698:14:104","parameters":{"id":70399,"nodeType":"ParameterList","parameters":[],"src":"4712:2:104"}},{"id":70402,"nodeType":"ErrorDefinition","src":"4720:25:104","nodes":[],"errorSelector":"46c26e4b","name":"StrategyDisabled","nameLocation":"4726:16:104","parameters":{"id":70401,"nodeType":"ParameterList","parameters":[],"src":"4742:2:104"}},{"id":70404,"nodeType":"ErrorDefinition","src":"4750:26:104","nodes":[],"errorSelector":"ebcd0d6e","name":"SenderNotNewOwner","nameLocation":"4756:17:104","parameters":{"id":70403,"nodeType":"ParameterList","parameters":[],"src":"4773:2:104"}},{"id":70406,"nodeType":"ErrorDefinition","src":"4781:26:104","nodes":[],"errorSelector":"bbe79611","name":"SenderNotStrategy","nameLocation":"4787:17:104","parameters":{"id":70405,"nodeType":"ParameterList","parameters":[],"src":"4804:2:104"}},{"id":70408,"nodeType":"ErrorDefinition","src":"4812:26:104","nodes":[],"errorSelector":"c70d18aa","name":"ValueCannotBeZero","nameLocation":"4818:17:104","parameters":{"id":70407,"nodeType":"ParameterList","parameters":[],"src":"4835:2:104"}},{"id":70410,"nodeType":"ErrorDefinition","src":"4843:29:104","nodes":[],"errorSelector":"fe925f7d","name":"NewFeeGreaterThanMax","nameLocation":"4849:20:104","parameters":{"id":70409,"nodeType":"ParameterList","parameters":[],"src":"4869:2:104"}},{"id":70412,"nodeType":"ErrorDefinition","src":"4877:23:104","nodes":[],"errorSelector":"cb63dc72","name":"KickNotEnabled","nameLocation":"4883:14:104","parameters":{"id":70411,"nodeType":"ParameterList","parameters":[],"src":"4897:2:104"}},{"id":70414,"nodeType":"ErrorDefinition","src":"4905:26:104","nodes":[],"errorSelector":"d4d3290e","name":"PointsDeactivated","nameLocation":"4911:17:104","parameters":{"id":70413,"nodeType":"ParameterList","parameters":[],"src":"4928:2:104"}},{"id":70416,"nodeType":"ErrorDefinition","src":"4936:29:104","nodes":[],"errorSelector":"9c47d02e","name":"DecreaseUnderMinimum","nameLocation":"4942:20:104","parameters":{"id":70415,"nodeType":"ParameterList","parameters":[],"src":"4962:2:104"}},{"id":70422,"nodeType":"ErrorDefinition","src":"4970:80:104","nodes":[],"errorSelector":"8a11f318","name":"CantDecreaseMoreThanPower","nameLocation":"4976:25:104","parameters":{"id":70421,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70418,"mutability":"mutable","name":"_decreaseAmount","nameLocation":"5010:15:104","nodeType":"VariableDeclaration","scope":70422,"src":"5002:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70417,"name":"uint256","nodeType":"ElementaryTypeName","src":"5002:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70420,"mutability":"mutable","name":"_currentPower","nameLocation":"5035:13:104","nodeType":"VariableDeclaration","scope":70422,"src":"5027:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70419,"name":"uint256","nodeType":"ElementaryTypeName","src":"5027:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5001:48:104"}},{"id":70425,"nodeType":"UsingForDirective","src":"5056:32:104","nodes":[],"global":false,"libraryName":{"id":70423,"name":"ERC165Checker","nameLocations":["5062:13:104"],"nodeType":"IdentifierPath","referencedDeclaration":57919,"src":"5062:13:104"},"typeName":{"id":70424,"name":"address","nodeType":"ElementaryTypeName","src":"5080:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70429,"nodeType":"UsingForDirective","src":"5093:27:104","nodes":[],"global":false,"libraryName":{"id":70426,"name":"SafeERC20","nameLocations":["5099:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":56965,"src":"5099:9:104"},"typeName":{"id":70428,"nodeType":"UserDefinedTypeName","pathNode":{"id":70427,"name":"IERC20","nameLocations":["5113:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"5113:6:104"},"referencedDeclaration":56528,"src":"5113:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}},{"id":70432,"nodeType":"UsingForDirective","src":"5125:24:104","nodes":[],"global":false,"libraryName":{"id":70430,"name":"Clone","nameLocations":["5131:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":3002,"src":"5131:5:104"},"typeName":{"id":70431,"name":"address","nodeType":"ElementaryTypeName","src":"5141:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":70440,"nodeType":"FunctionDefinition","src":"5202:92:104","nodes":[],"body":{"id":70439,"nodeType":"Block","src":"5265:29:104","nodes":[],"statements":[{"expression":{"hexValue":"302e30","id":70437,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5282:5:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"functionReturnParameters":70436,"id":70438,"nodeType":"Return","src":"5275:12:104"}]},"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"5211:7:104","parameters":{"id":70433,"nodeType":"ParameterList","parameters":[],"src":"5218:2:104"},"returnParameters":{"id":70436,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70435,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":70440,"src":"5250:13:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":70434,"name":"string","nodeType":"ElementaryTypeName","src":"5250:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5249:15:104"},"scope":72174,"stateMutability":"pure","virtual":true,"visibility":"public"},{"id":70444,"nodeType":"VariableDeclaration","src":"5379:75:104","nodes":[],"constant":true,"documentation":{"id":70441,"nodeType":"StructuredDocumentation","src":"5299:75:104","text":"@notice The native address to represent native token eg: ETH in mainnet"},"functionSelector":"a0cf0aea","mutability":"constant","name":"NATIVE","nameLocation":"5403:6:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70442,"name":"address","nodeType":"ElementaryTypeName","src":"5379:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"hexValue":"307845656565654565656545654565654565456545656545454565656565456565656565656545456545","id":70443,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5412:42:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"},"visibility":"public"},{"id":70450,"nodeType":"VariableDeclaration","src":"5544:49:104","nodes":[],"constant":true,"documentation":{"id":70445,"nodeType":"StructuredDocumentation","src":"5460:79:104","text":"@notice The precision scale used in the contract to avoid loss of precision"},"functionSelector":"d7050f07","mutability":"constant","name":"PRECISION_SCALE","nameLocation":"5568:15:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70446,"name":"uint256","nodeType":"ElementaryTypeName","src":"5544:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":70449,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70447,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5586:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":70448,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5592:1:104","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"5586:7:104","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":70456,"nodeType":"VariableDeclaration","src":"5668:54:104","nodes":[],"constant":true,"documentation":{"id":70451,"nodeType":"StructuredDocumentation","src":"5599:64:104","text":"@notice The maximum fee that can be charged to the community"},"functionSelector":"bc063e1a","mutability":"constant","name":"MAX_FEE","nameLocation":"5692:7:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70452,"name":"uint256","nodeType":"ElementaryTypeName","src":"5668:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70455,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":70453,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5702:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":70454,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"5707:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5702:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70459,"nodeType":"VariableDeclaration","src":"5795:34:104","nodes":[],"constant":false,"documentation":{"id":70457,"nodeType":"StructuredDocumentation","src":"5728:62:104","text":"@notice The amount of tokens required to register a member"},"functionSelector":"78a0b8a9","mutability":"mutable","name":"registerStakeAmount","nameLocation":"5810:19:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70458,"name":"uint256","nodeType":"ElementaryTypeName","src":"5795:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70462,"nodeType":"VariableDeclaration","src":"5906:27:104","nodes":[],"constant":false,"documentation":{"id":70460,"nodeType":"StructuredDocumentation","src":"5835:66:104","text":"@notice The fee charged to the community for each registration"},"functionSelector":"8961be6b","mutability":"mutable","name":"communityFee","nameLocation":"5921:12:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70461,"name":"uint256","nodeType":"ElementaryTypeName","src":"5906:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70465,"nodeType":"VariableDeclaration","src":"6000:25:104","nodes":[],"constant":false,"documentation":{"id":70463,"nodeType":"StructuredDocumentation","src":"5939:56:104","text":"@notice The nonce used to create new strategy clones"},"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"6015:10:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70464,"name":"uint256","nodeType":"ElementaryTypeName","src":"6000:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":70468,"nodeType":"VariableDeclaration","src":"6099:24:104","nodes":[],"constant":false,"documentation":{"id":70466,"nodeType":"StructuredDocumentation","src":"6031:63:104","text":"@notice The profileId of the community in the Allo Registry"},"functionSelector":"08386eba","mutability":"mutable","name":"profileId","nameLocation":"6114:9:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70467,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6099:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":70471,"nodeType":"VariableDeclaration","src":"6180:25:104","nodes":[],"constant":false,"documentation":{"id":70469,"nodeType":"StructuredDocumentation","src":"6129:46:104","text":"@notice Enable or disable the kick feature"},"functionSelector":"1f787d28","mutability":"mutable","name":"isKickEnabled","nameLocation":"6192:13:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70470,"name":"bool","nodeType":"ElementaryTypeName","src":"6180:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"public"},{"id":70474,"nodeType":"VariableDeclaration","src":"6272:26:104","nodes":[],"constant":false,"documentation":{"id":70472,"nodeType":"StructuredDocumentation","src":"6212:55:104","text":"@notice The address that receives the community fee"},"functionSelector":"b3f00674","mutability":"mutable","name":"feeReceiver","nameLocation":"6287:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70473,"name":"address","nodeType":"ElementaryTypeName","src":"6272:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70477,"nodeType":"VariableDeclaration","src":"6356:30:104","nodes":[],"constant":false,"documentation":{"id":70475,"nodeType":"StructuredDocumentation","src":"6304:47:104","text":"@notice The address of the registry factory"},"functionSelector":"f86c5f89","mutability":"mutable","name":"registryFactory","nameLocation":"6371:15:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70476,"name":"address","nodeType":"ElementaryTypeName","src":"6356:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70480,"nodeType":"VariableDeclaration","src":"6453:38:104","nodes":[],"constant":false,"documentation":{"id":70478,"nodeType":"StructuredDocumentation","src":"6392:56:104","text":"@notice The address of the collateral vault template"},"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"6468:23:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70479,"name":"address","nodeType":"ElementaryTypeName","src":"6453:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70483,"nodeType":"VariableDeclaration","src":"6550:31:104","nodes":[],"constant":false,"documentation":{"id":70481,"nodeType":"StructuredDocumentation","src":"6497:48:104","text":"@notice The address of the strategy template"},"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"6565:16:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70482,"name":"address","nodeType":"ElementaryTypeName","src":"6550:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70486,"nodeType":"VariableDeclaration","src":"6649:41:104","nodes":[],"constant":false,"documentation":{"id":70484,"nodeType":"StructuredDocumentation","src":"6587:57:104","text":"@notice The address of the pending council safe owner"},"functionSelector":"68decabb","mutability":"mutable","name":"pendingCouncilSafe","nameLocation":"6672:18:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":70485,"name":"address","nodeType":"ElementaryTypeName","src":"6649:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"public"},{"id":70490,"nodeType":"VariableDeclaration","src":"6740:25:104","nodes":[],"constant":false,"documentation":{"id":70487,"nodeType":"StructuredDocumentation","src":"6697:38:104","text":"@notice The Registry Allo contract"},"functionSelector":"7b103999","mutability":"mutable","name":"registry","nameLocation":"6757:8:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":70489,"nodeType":"UserDefinedTypeName","pathNode":{"id":70488,"name":"IRegistry","nameLocations":["6740:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"6740:9:104"},"referencedDeclaration":2802,"src":"6740:9:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"public"},{"id":70494,"nodeType":"VariableDeclaration","src":"6828:25:104","nodes":[],"constant":false,"documentation":{"id":70491,"nodeType":"StructuredDocumentation","src":"6771:52:104","text":"@notice The token used to stake in the community"},"functionSelector":"db61d65c","mutability":"mutable","name":"gardenToken","nameLocation":"6842:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"},"typeName":{"id":70493,"nodeType":"UserDefinedTypeName","pathNode":{"id":70492,"name":"IERC20","nameLocations":["6828:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":56528,"src":"6828:6:104"},"referencedDeclaration":56528,"src":"6828:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"visibility":"public"},{"id":70498,"nodeType":"VariableDeclaration","src":"6909:24:104","nodes":[],"constant":false,"documentation":{"id":70495,"nodeType":"StructuredDocumentation","src":"6859:45:104","text":"@notice The council safe contract address"},"functionSelector":"6c53db9a","mutability":"mutable","name":"councilSafe","nameLocation":"6922:11:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"},"typeName":{"id":70497,"nodeType":"UserDefinedTypeName","pathNode":{"id":70496,"name":"ISafe","nameLocations":["6909:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":75844,"src":"6909:5:104"},"referencedDeclaration":75844,"src":"6909:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"visibility":"public"},{"id":70502,"nodeType":"VariableDeclaration","src":"6981:17:104","nodes":[],"constant":false,"documentation":{"id":70499,"nodeType":"StructuredDocumentation","src":"6939:37:104","text":"@notice The Allo contract address"},"functionSelector":"d6d8428d","mutability":"mutable","name":"allo","nameLocation":"6994:4:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"},"typeName":{"id":70501,"nodeType":"UserDefinedTypeName","pathNode":{"id":70500,"name":"FAllo","nameLocations":["6981:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":75577,"src":"6981:5:104"},"referencedDeclaration":75577,"src":"6981:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"visibility":"public"},{"id":70505,"nodeType":"VariableDeclaration","src":"7040:27:104","nodes":[],"constant":false,"documentation":{"id":70503,"nodeType":"StructuredDocumentation","src":"7005:30:104","text":"@notice The community name"},"functionSelector":"c6d572ae","mutability":"mutable","name":"communityName","nameLocation":"7054:13:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":70504,"name":"string","nodeType":"ElementaryTypeName","src":"7040:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":70508,"nodeType":"VariableDeclaration","src":"7125:30:104","nodes":[],"constant":false,"documentation":{"id":70506,"nodeType":"StructuredDocumentation","src":"7073:47:104","text":"@notice The covenant IPFS hash of community"},"functionSelector":"b64e39af","mutability":"mutable","name":"covenantIpfsHash","nameLocation":"7139:16:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":70507,"name":"string","nodeType":"ElementaryTypeName","src":"7125:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":70513,"nodeType":"VariableDeclaration","src":"7271:68:104","nodes":[],"constant":false,"documentation":{"id":70509,"nodeType":"StructuredDocumentation","src":"7219:47:104","text":"@notice List of enabled/disabled strategies"},"functionSelector":"3a871fe1","mutability":"mutable","name":"enabledStrategies","nameLocation":"7322:17:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":70512,"keyName":"strategy","keyNameLocation":"7287:8:104","keyType":{"id":70510,"name":"address","nodeType":"ElementaryTypeName","src":"7279:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7271:43:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isEnabled","valueNameLocation":"7304:9:104","valueType":{"id":70511,"name":"bool","nodeType":"ElementaryTypeName","src":"7299:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"public"},{"id":70520,"nodeType":"VariableDeclaration","src":"7407:98:104","nodes":[],"constant":false,"documentation":{"id":70514,"nodeType":"StructuredDocumentation","src":"7345:57:104","text":"@notice Power points for each member in each strategy"},"functionSelector":"65e3864c","mutability":"mutable","name":"memberPowerInStrategy","nameLocation":"7484:21:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":70519,"keyName":"strategy","keyNameLocation":"7423:8:104","keyType":{"id":70515,"name":"address","nodeType":"ElementaryTypeName","src":"7415:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7407:69:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70518,"keyName":"member","keyNameLocation":"7451:6:104","keyType":{"id":70516,"name":"address","nodeType":"ElementaryTypeName","src":"7443:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7435:40:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"power","valueNameLocation":"7469:5:104","valueType":{"id":70517,"name":"uint256","nodeType":"ElementaryTypeName","src":"7461:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":70526,"nodeType":"VariableDeclaration","src":"7605:60:104","nodes":[],"constant":false,"documentation":{"id":70521,"nodeType":"StructuredDocumentation","src":"7511:89:104","text":"@notice Member information as the staked amount and if is registered in the community"},"functionSelector":"88cfe684","mutability":"mutable","name":"addressToMemberInfo","nameLocation":"7646:19:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member)"},"typeName":{"id":70525,"keyName":"member","keyNameLocation":"7621:6:104","keyType":{"id":70522,"name":"address","nodeType":"ElementaryTypeName","src":"7613:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7605:33:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70524,"nodeType":"UserDefinedTypeName","pathNode":{"id":70523,"name":"Member","nameLocations":["7631:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"7631:6:104"},"referencedDeclaration":70271,"src":"7631:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}}},"visibility":"public"},{"id":70532,"nodeType":"VariableDeclaration","src":"7736:82:104","nodes":[],"constant":false,"documentation":{"id":70527,"nodeType":"StructuredDocumentation","src":"7671:60:104","text":"@notice List of strategies for each member are activated"},"functionSelector":"2b38c69c","mutability":"mutable","name":"strategiesByMember","nameLocation":"7800:18:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"typeName":{"id":70531,"keyName":"member","keyNameLocation":"7752:6:104","keyType":{"id":70528,"name":"address","nodeType":"ElementaryTypeName","src":"7744:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7736:56:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"valueName":"strategiesAddresses","valueNameLocation":"7772:19:104","valueType":{"baseType":{"id":70529,"name":"address","nodeType":"ElementaryTypeName","src":"7762:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70530,"nodeType":"ArrayTypeName","src":"7762:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"visibility":"public"},{"id":70539,"nodeType":"VariableDeclaration","src":"7896:107:104","nodes":[],"constant":false,"documentation":{"id":70533,"nodeType":"StructuredDocumentation","src":"7824:67:104","text":"@notice Mapping to check if a member is activated in a strategy"},"functionSelector":"477a5cc0","mutability":"mutable","name":"memberActivatedInStrategies","nameLocation":"7976:27:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"typeName":{"id":70538,"keyName":"member","keyNameLocation":"7912:6:104","keyType":{"id":70534,"name":"address","nodeType":"ElementaryTypeName","src":"7904:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7896:72:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70537,"keyName":"strategy","keyNameLocation":"7938:8:104","keyType":{"id":70535,"name":"address","nodeType":"ElementaryTypeName","src":"7930:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7922:45:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isActivated","valueNameLocation":"7955:11:104","valueType":{"id":70536,"name":"bool","nodeType":"ElementaryTypeName","src":"7950:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}}},"visibility":"public"},{"id":70543,"nodeType":"VariableDeclaration","src":"8096:24:104","nodes":[],"constant":false,"documentation":{"id":70540,"nodeType":"StructuredDocumentation","src":"8010:81:104","text":"@notice List of initial members to be added as pool managers in the Allo Pool"},"mutability":"mutable","name":"initialMembers","nameLocation":"8106:14:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[]"},"typeName":{"baseType":{"id":70541,"name":"address","nodeType":"ElementaryTypeName","src":"8096:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70542,"nodeType":"ArrayTypeName","src":"8096:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"id":70549,"nodeType":"VariableDeclaration","src":"8337:68:104","nodes":[],"constant":true,"documentation":{"id":70544,"nodeType":"StructuredDocumentation","src":"8292:40:104","text":"@notice Role to council safe members"},"functionSelector":"733a2d1f","mutability":"constant","name":"COUNCIL_MEMBER","nameLocation":"8361:14:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70545,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8337:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"434f554e43494c5f4d454d424552","id":70547,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8388:16:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""},"value":"COUNCIL_MEMBER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_03be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa","typeString":"literal_string \"COUNCIL_MEMBER\""}],"id":70546,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"8378:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70548,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8378:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":70566,"nodeType":"FunctionDefinition","src":"8578:167:104","nodes":[],"body":{"id":70565,"nodeType":"Block","src":"8627:118:104","nodes":[],"statements":[{"condition":{"id":70557,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8641:36:104","subExpression":{"arguments":[{"id":70553,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"8650:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":70554,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8666:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8670:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8666:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70552,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"8642:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":70556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8642:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70564,"nodeType":"IfStatement","src":"8637:102:104","trueBody":{"id":70563,"nodeType":"Block","src":"8679:60:104","statements":[{"errorCall":{"arguments":[{"expression":{"id":70559,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8717:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70560,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8721:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8717:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70558,"name":"UserNotInCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70388,"src":"8700:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70561,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8700:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70562,"nodeType":"RevertStatement","src":"8693:35:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"8587:15:104","parameters":{"id":70550,"nodeType":"ParameterList","parameters":[],"src":"8602:2:104"},"returnParameters":{"id":70551,"nodeType":"ParameterList","parameters":[],"src":"8627:0:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":70580,"nodeType":"FunctionDefinition","src":"8751:152:104","nodes":[],"body":{"id":70579,"nodeType":"Block","src":"8809:94:104","nodes":[],"statements":[{"condition":{"id":70573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8823:21:104","subExpression":{"arguments":[{"expression":{"id":70570,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8833:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8837:6:104","memberName":"sender","nodeType":"MemberAccess","src":"8833:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70569,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"8824:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":70572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8824:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70578,"nodeType":"IfStatement","src":"8819:78:104","trueBody":{"id":70577,"nodeType":"Block","src":"8846:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70574,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"8867:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70575,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8867:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70576,"nodeType":"RevertStatement","src":"8860:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberSender","nameLocation":"8760:24:104","parameters":{"id":70567,"nodeType":"ParameterList","parameters":[],"src":"8784:2:104"},"returnParameters":{"id":70568,"nodeType":"ParameterList","parameters":[],"src":"8809:0:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":70595,"nodeType":"FunctionDefinition","src":"8909:157:104","nodes":[],"body":{"id":70594,"nodeType":"Block","src":"8975:91:104","nodes":[],"statements":[{"condition":{"id":70588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"8989:18:104","subExpression":{"arguments":[{"id":70586,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70582,"src":"8999:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70585,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"8990:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":70587,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8990:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70593,"nodeType":"IfStatement","src":"8985:75:104","trueBody":{"id":70592,"nodeType":"Block","src":"9009:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70589,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"9030:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70590,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9030:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70591,"nodeType":"RevertStatement","src":"9023:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberAddress","nameLocation":"8918:25:104","parameters":{"id":70583,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70582,"mutability":"mutable","name":"_sender","nameLocation":"8952:7:104","nodeType":"VariableDeclaration","scope":70595,"src":"8944:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70581,"name":"address","nodeType":"ElementaryTypeName","src":"8944:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8943:17:104"},"returnParameters":{"id":70584,"nodeType":"ParameterList","parameters":[],"src":"8975:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70610,"nodeType":"FunctionDefinition","src":"9072:163:104","nodes":[],"body":{"id":70609,"nodeType":"Block","src":"9134:101:104","nodes":[],"statements":[{"condition":{"id":70603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9148:29:104","subExpression":{"baseExpression":{"id":70600,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"9149:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":70602,"indexExpression":{"id":70601,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70597,"src":"9167:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9149:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70608,"nodeType":"IfStatement","src":"9144:85:104","trueBody":{"id":70607,"nodeType":"Block","src":"9179:50:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70604,"name":"StrategyDisabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70402,"src":"9200:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9200:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70606,"nodeType":"RevertStatement","src":"9193:25:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyEnabled","nameLocation":"9081:19:104","parameters":{"id":70598,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70597,"mutability":"mutable","name":"_strategy","nameLocation":"9109:9:104","nodeType":"VariableDeclaration","scope":70610,"src":"9101:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70596,"name":"address","nodeType":"ElementaryTypeName","src":"9101:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9100:19:104"},"returnParameters":{"id":70599,"nodeType":"ParameterList","parameters":[],"src":"9134:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70626,"nodeType":"FunctionDefinition","src":"9241:172:104","nodes":[],"body":{"id":70625,"nodeType":"Block","src":"9320:93:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70619,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70617,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70612,"src":"9334:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":70618,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70614,"src":"9345:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9334:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70624,"nodeType":"IfStatement","src":"9330:77:104","trueBody":{"id":70623,"nodeType":"Block","src":"9356:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70620,"name":"SenderNotStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70406,"src":"9377:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70621,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9377:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70622,"nodeType":"RevertStatement","src":"9370:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyAddress","nameLocation":"9250:19:104","parameters":{"id":70615,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70612,"mutability":"mutable","name":"_sender","nameLocation":"9278:7:104","nodeType":"VariableDeclaration","scope":70626,"src":"9270:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70611,"name":"address","nodeType":"ElementaryTypeName","src":"9270:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70614,"mutability":"mutable","name":"_strategy","nameLocation":"9295:9:104","nodeType":"VariableDeclaration","scope":70626,"src":"9287:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70613,"name":"address","nodeType":"ElementaryTypeName","src":"9287:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9269:36:104"},"returnParameters":{"id":70616,"nodeType":"ParameterList","parameters":[],"src":"9320:0:104"},"scope":72174,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":70644,"nodeType":"FunctionDefinition","src":"9419:190:104","nodes":[],"body":{"id":70643,"nodeType":"Block","src":"9485:124:104","nodes":[],"statements":[{"condition":{"id":70637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9499:51:104","subExpression":{"baseExpression":{"baseExpression":{"id":70631,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"9500:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":70634,"indexExpression":{"expression":{"id":70632,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9528:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70633,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9532:6:104","memberName":"sender","nodeType":"MemberAccess","src":"9528:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9500:39:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":70636,"indexExpression":{"id":70635,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"9540:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9500:50:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70642,"nodeType":"IfStatement","src":"9495:108:104","trueBody":{"id":70641,"nodeType":"Block","src":"9552:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70638,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70414,"src":"9573:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9573:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70640,"nodeType":"RevertStatement","src":"9566:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyActivatedInStrategy","nameLocation":"9428:23:104","parameters":{"id":70629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70628,"mutability":"mutable","name":"_strategy","nameLocation":"9460:9:104","nodeType":"VariableDeclaration","scope":70644,"src":"9452:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70627,"name":"address","nodeType":"ElementaryTypeName","src":"9452:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9451:19:104"},"returnParameters":{"id":70630,"nodeType":"ParameterList","parameters":[],"src":"9485:0:104"},"scope":72174,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":70660,"nodeType":"FunctionDefinition","src":"9615:133:104","nodes":[],"body":{"id":70659,"nodeType":"Block","src":"9675:73:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70649,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70646,"src":"9689:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":70652,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9709:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":70651,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9701:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70650,"name":"address","nodeType":"ElementaryTypeName","src":"9701:7:104","typeDescriptions":{}}},"id":70653,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9701:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9689:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70658,"nodeType":"IfStatement","src":"9685:56:104","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70655,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70382,"src":"9720:19:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9720:21:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70657,"nodeType":"RevertStatement","src":"9713:28:104"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"9624:18:104","parameters":{"id":70647,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70646,"mutability":"mutable","name":"_address","nameLocation":"9651:8:104","nodeType":"VariableDeclaration","scope":70660,"src":"9643:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70645,"name":"address","nodeType":"ElementaryTypeName","src":"9643:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9642:18:104"},"returnParameters":{"id":70648,"nodeType":"ParameterList","parameters":[],"src":"9675:0:104"},"scope":72174,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":70672,"nodeType":"FunctionDefinition","src":"9754:110:104","nodes":[],"body":{"id":70671,"nodeType":"Block","src":"9820:44:104","nodes":[],"statements":[{"expression":{"id":70669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70667,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"9830:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70668,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70662,"src":"9849:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9830:27:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70670,"nodeType":"ExpressionStatement","src":"9830:27:104"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":70665,"kind":"modifierInvocation","modifierName":{"id":70664,"name":"onlyOwner","nameLocations":["9810:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9810:9:104"},"nodeType":"ModifierInvocation","src":"9810:9:104"}],"name":"setStrategyTemplate","nameLocation":"9763:19:104","parameters":{"id":70663,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70662,"mutability":"mutable","name":"template","nameLocation":"9791:8:104","nodeType":"VariableDeclaration","scope":70672,"src":"9783:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70661,"name":"address","nodeType":"ElementaryTypeName","src":"9783:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9782:18:104"},"returnParameters":{"id":70666,"nodeType":"ParameterList","parameters":[],"src":"9820:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70684,"nodeType":"FunctionDefinition","src":"9870:124:104","nodes":[],"body":{"id":70683,"nodeType":"Block","src":"9943:51:104","nodes":[],"statements":[{"expression":{"id":70681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70679,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"9953:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70680,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70674,"src":"9979:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9953:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70682,"nodeType":"ExpressionStatement","src":"9953:34:104"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":70677,"kind":"modifierInvocation","modifierName":{"id":70676,"name":"onlyOwner","nameLocations":["9933:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"9933:9:104"},"nodeType":"ModifierInvocation","src":"9933:9:104"}],"name":"setCollateralVaultTemplate","nameLocation":"9879:26:104","parameters":{"id":70675,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70674,"mutability":"mutable","name":"template","nameLocation":"9914:8:104","nodeType":"VariableDeclaration","scope":70684,"src":"9906:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70673,"name":"address","nodeType":"ElementaryTypeName","src":"9906:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9905:18:104"},"returnParameters":{"id":70678,"nodeType":"ParameterList","parameters":[],"src":"9943:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70959,"nodeType":"FunctionDefinition","src":"10144:2497:104","nodes":[],"body":{"id":70958,"nodeType":"Block","src":"10351:2290:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":70701,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70693,"src":"10378:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70698,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10361:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract super RegistryCommunityV0_0)"}},"id":70700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10367:10:104","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70134,"src":"10361:16:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":70702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10361:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70703,"nodeType":"ExpressionStatement","src":"10361:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70704,"name":"__ReentrancyGuard_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":53176,"src":"10395:22:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":70705,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10395:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70706,"nodeType":"ExpressionStatement","src":"10395:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70707,"name":"__AccessControl_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52409,"src":"10429:20:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":70708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10429:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70709,"nodeType":"ExpressionStatement","src":"10429:22:104"},{"expression":{"arguments":[{"id":70711,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"10476:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":70712,"name":"DEFAULT_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52392,"src":"10492:18:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":70710,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"10462:13:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":70713,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10462:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70714,"nodeType":"ExpressionStatement","src":"10462:49:104"},{"expression":{"arguments":[{"arguments":[{"expression":{"id":70718,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10549:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70719,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10556:12:104","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70242,"src":"10549:19:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}],"id":70717,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10541:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70716,"name":"address","nodeType":"ElementaryTypeName","src":"10541:7:104","typeDescriptions":{}}},"id":70720,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10541:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70715,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10522:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10522:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70722,"nodeType":"ExpressionStatement","src":"10522:48:104"},{"expression":{"arguments":[{"expression":{"id":70724,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10599:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70725,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10606:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"10599:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70723,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10580:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10580:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70727,"nodeType":"ExpressionStatement","src":"10580:39:104"},{"expression":{"arguments":[{"expression":{"id":70729,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10648:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10655:5:104","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70239,"src":"10648:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70728,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10629:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10629:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70732,"nodeType":"ExpressionStatement","src":"10629:32:104"},{"expression":{"arguments":[{"expression":{"id":70734,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10690:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70735,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10697:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"10690:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70733,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10671:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10671:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70737,"nodeType":"ExpressionStatement","src":"10671:43:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70738,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10729:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10736:13:104","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70246,"src":"10729:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":70740,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10753:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10729:25:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70748,"nodeType":"IfStatement","src":"10725:95:104","trueBody":{"id":70747,"nodeType":"Block","src":"10756:64:104","statements":[{"expression":{"arguments":[{"expression":{"id":70743,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10789:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70744,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10796:12:104","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70252,"src":"10789:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70742,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"10770:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10770:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70746,"nodeType":"ExpressionStatement","src":"10770:39:104"}]}},{"expression":{"id":70754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70749,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"10829:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70751,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10842:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10849:5:104","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":70239,"src":"10842:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70750,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75577,"src":"10836:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_FAllo_$75577_$","typeString":"type(contract FAllo)"}},"id":70753,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10836:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"src":"10829:26:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"id":70755,"nodeType":"ExpressionStatement","src":"10829:26:104"},{"expression":{"id":70759,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70756,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"10865:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70757,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10879:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10886:12:104","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":70242,"src":"10879:19:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"src":"10865:33:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":70760,"nodeType":"ExpressionStatement","src":"10865:33:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70761,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"10912:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70762,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"10919:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70244,"src":"10912:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":70763,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10943:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10912:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70769,"nodeType":"IfStatement","src":"10908:89:104","trueBody":{"id":70768,"nodeType":"Block","src":"10946:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70765,"name":"ValueCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70408,"src":"10967:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10967:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70767,"nodeType":"RevertStatement","src":"10960:26:104"}]}},{"expression":{"id":70773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70770,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"11006:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70771,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11028:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70772,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11035:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":70244,"src":"11028:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11006:49:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70774,"nodeType":"ExpressionStatement","src":"11006:49:104"},{"expression":{"id":70778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70775,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"11065:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70776,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11080:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70777,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11087:13:104","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":70246,"src":"11080:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11065:35:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70779,"nodeType":"ExpressionStatement","src":"11065:35:104"},{"expression":{"id":70783,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70780,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70471,"src":"11110:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70781,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11126:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70782,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11133:14:104","memberName":"_isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":70261,"src":"11126:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11110:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70784,"nodeType":"ExpressionStatement","src":"11110:37:104"},{"expression":{"id":70788,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70785,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"11157:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70786,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11173:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70787,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11180:14:104","memberName":"_communityName","nodeType":"MemberAccess","referencedDeclaration":70259,"src":"11173:21:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11157:37:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":70789,"nodeType":"ExpressionStatement","src":"11157:37:104"},{"expression":{"id":70793,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70790,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70508,"src":"11204:16:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70791,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11223:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70792,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11230:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":70263,"src":"11223:23:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11204:42:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":70794,"nodeType":"ExpressionStatement","src":"11204:42:104"},{"expression":{"id":70798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70795,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"11257:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70796,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11275:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11282:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"11275:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11257:41:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70799,"nodeType":"ExpressionStatement","src":"11257:41:104"},{"expression":{"id":70803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70800,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70474,"src":"11308:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70801,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11322:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70802,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11329:12:104","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":70252,"src":"11322:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11308:33:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70804,"nodeType":"ExpressionStatement","src":"11308:33:104"},{"expression":{"id":70810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70805,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11351:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70807,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11371:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11378:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"11371:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70806,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75844,"src":"11365:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$75844_$","typeString":"type(contract ISafe)"}},"id":70809,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11365:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"src":"11351:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"id":70811,"nodeType":"ExpressionStatement","src":"11351:40:104"},{"expression":{"arguments":[{"id":70813,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"11413:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":70814,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"11429:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70815,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11436:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":70257,"src":"11429:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70812,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"11402:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":70816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11402:47:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70817,"nodeType":"ExpressionStatement","src":"11402:47:104"},{"expression":{"id":70824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70818,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70490,"src":"11460:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70820,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"11481:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"id":70821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11486:11:104","memberName":"getRegistry","nodeType":"MemberAccess","referencedDeclaration":75568,"src":"11481:16:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":70822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11481:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70819,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"11471:9:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$2802_$","typeString":"type(contract IRegistry)"}},"id":70823,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11471:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"src":"11460:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":70825,"nodeType":"ExpressionStatement","src":"11460:40:104"},{"assignments":[70830],"declarations":[{"constant":false,"id":70830,"mutability":"mutable","name":"pool_initialMembers","nameLocation":"11528:19:104","nodeType":"VariableDeclaration","scope":70958,"src":"11511:36:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70828,"name":"address","nodeType":"ElementaryTypeName","src":"11511:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70829,"nodeType":"ArrayTypeName","src":"11511:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":70831,"nodeType":"VariableDeclarationStatement","src":"11511:36:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"arguments":[{"id":70834,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11607:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":70833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11599:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70832,"name":"address","nodeType":"ElementaryTypeName","src":"11599:7:104","typeDescriptions":{}}},"id":70835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11599:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11620:4:104","memberName":"code","nodeType":"MemberAccess","src":"11599:25:104","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":70837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11625:6:104","memberName":"length","nodeType":"MemberAccess","src":"11599:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":70838,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11635:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11599:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":70897,"nodeType":"Block","src":"11756:266:104","statements":[{"assignments":[70860],"declarations":[{"constant":false,"id":70860,"mutability":"mutable","name":"owners","nameLocation":"11787:6:104","nodeType":"VariableDeclaration","scope":70897,"src":"11770:23:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70858,"name":"address","nodeType":"ElementaryTypeName","src":"11770:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70859,"nodeType":"ArrayTypeName","src":"11770:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":70864,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70861,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"11796:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"id":70862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11808:9:104","memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":75759,"src":"11796:21:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":70863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11796:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11770:49:104"},{"expression":{"id":70874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70865,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11833:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70869,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11869:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11876:6:104","memberName":"length","nodeType":"MemberAccess","src":"11869:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"32","id":70871,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11885:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"11869:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70868,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11855:13:104","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":70866,"name":"address","nodeType":"ElementaryTypeName","src":"11859:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70867,"nodeType":"ArrayTypeName","src":"11859:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":70873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11855:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11833:54:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70875,"nodeType":"ExpressionStatement","src":"11833:54:104"},{"body":{"id":70895,"nodeType":"Block","src":"11945:67:104","statements":[{"expression":{"id":70893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70887,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11963:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70889,"indexExpression":{"id":70888,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11983:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11963:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":70890,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11988:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70892,"indexExpression":{"id":70891,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11995:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11988:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11963:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70894,"nodeType":"ExpressionStatement","src":"11963:34:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70880,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11921:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":70881,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70860,"src":"11925:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11932:6:104","memberName":"length","nodeType":"MemberAccess","src":"11925:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11921:17:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70896,"initializationExpression":{"assignments":[70877],"declarations":[{"constant":false,"id":70877,"mutability":"mutable","name":"i","nameLocation":"11914:1:104","nodeType":"VariableDeclaration","scope":70896,"src":"11906:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70876,"name":"uint256","nodeType":"ElementaryTypeName","src":"11906:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70879,"initialValue":{"hexValue":"30","id":70878,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11918:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"11906:13:104"},"loopExpression":{"expression":{"id":70885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11940:3:104","subExpression":{"id":70884,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70877,"src":"11940:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70886,"nodeType":"ExpressionStatement","src":"11940:3:104"},"nodeType":"ForStatement","src":"11901:111:104"}]},"id":70898,"nodeType":"IfStatement","src":"11595:427:104","trueBody":{"id":70855,"nodeType":"Block","src":"11638:112:104","statements":[{"expression":{"id":70846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70840,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11652:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"33","id":70844,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11688:1:104","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"}],"id":70843,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"11674:13:104","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (address[] memory)"},"typeName":{"baseType":{"id":70841,"name":"address","nodeType":"ElementaryTypeName","src":"11678:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70842,"nodeType":"ArrayTypeName","src":"11678:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":70845,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11674:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"11652:38:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70847,"nodeType":"ExpressionStatement","src":"11652:38:104"},{"expression":{"id":70853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70848,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"11704:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70850,"indexExpression":{"hexValue":"30","id":70849,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11724:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"11704:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70851,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"11729:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11733:6:104","memberName":"sender","nodeType":"MemberAccess","src":"11729:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"11704:35:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70854,"nodeType":"ExpressionStatement","src":"11704:35:104"}]}},{"expression":{"id":70909,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70899,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12032:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70904,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70900,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12052:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12072:6:104","memberName":"length","nodeType":"MemberAccess","src":"12052:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":70902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12081:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"12052:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12032:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":70907,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"12094:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":70906,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12086:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70905,"name":"address","nodeType":"ElementaryTypeName","src":"12086:7:104","typeDescriptions":{}}},"id":70908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12086:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12032:74:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70910,"nodeType":"ExpressionStatement","src":"12032:74:104"},{"expression":{"id":70921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70911,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12116:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70916,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70915,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70912,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12136:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12156:6:104","memberName":"length","nodeType":"MemberAccess","src":"12136:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"32","id":70914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12165:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12136:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12116:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":70919,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12178:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":70918,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12170:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70917,"name":"address","nodeType":"ElementaryTypeName","src":"12170:7:104","typeDescriptions":{}}},"id":70920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12170:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12116:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70922,"nodeType":"ExpressionStatement","src":"12116:67:104"},{"expression":{"id":70937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70923,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"12271:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":70926,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12318:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70927,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12325:6:104","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"12318:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70928,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"12333:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":70929,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12348:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70930,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12355:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70255,"src":"12348:16:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[{"id":70933,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"12374:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":70932,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12366:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70931,"name":"address","nodeType":"ElementaryTypeName","src":"12366:7:104","typeDescriptions":{}}},"id":70934,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12366:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70935,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12381:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":70924,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70490,"src":"12295:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":70925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12304:13:104","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"12295:22:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":70936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12295:106:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"12271:130:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":70938,"nodeType":"ExpressionStatement","src":"12271:130:104"},{"expression":{"id":70941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70939,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"12412:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70940,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70830,"src":"12429:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12412:36:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":70942,"nodeType":"ExpressionStatement","src":"12412:36:104"},{"expression":{"id":70945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70943,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"12459:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70944,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70689,"src":"12478:17:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12459:36:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70946,"nodeType":"ExpressionStatement","src":"12459:36:104"},{"expression":{"id":70949,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70947,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"12505:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70948,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70691,"src":"12531:24:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12505:50:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70950,"nodeType":"ExpressionStatement","src":"12505:50:104"},{"eventCall":{"arguments":[{"id":70952,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"12591:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":70953,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70505,"src":"12602:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":70954,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"12617:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":70955,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12624:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":70255,"src":"12617:16:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_storage","typeString":"string storage ref"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":70951,"name":"RegistryInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70329,"src":"12571:19:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (bytes32,string memory,struct Metadata memory)"}},"id":70956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12571:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70957,"nodeType":"EmitStatement","src":"12566:68:104"}]},"functionSelector":"34196355","implemented":true,"kind":"function","modifiers":[{"id":70696,"kind":"modifierInvocation","modifierName":{"id":70695,"name":"initializer","nameLocations":["10339:11:104"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"10339:11:104"},"nodeType":"ModifierInvocation","src":"10339:11:104"}],"name":"initialize","nameLocation":"10153:10:104","parameters":{"id":70694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70687,"mutability":"mutable","name":"params","nameLocation":"10218:6:104","nodeType":"VariableDeclaration","scope":70959,"src":"10173:51:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":70686,"nodeType":"UserDefinedTypeName","pathNode":{"id":70685,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["10173:37:104"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"10173:37:104"},"referencedDeclaration":70264,"src":"10173:37:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":70689,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"10242:17:104","nodeType":"VariableDeclaration","scope":70959,"src":"10234:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70688,"name":"address","nodeType":"ElementaryTypeName","src":"10234:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70691,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10277:24:104","nodeType":"VariableDeclaration","scope":70959,"src":"10269:32:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70690,"name":"address","nodeType":"ElementaryTypeName","src":"10269:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70693,"mutability":"mutable","name":"_owner","nameLocation":"10319:6:104","nodeType":"VariableDeclaration","scope":70959,"src":"10311:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70692,"name":"address","nodeType":"ElementaryTypeName","src":"10311:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10163:168:104"},"returnParameters":{"id":70697,"nodeType":"ParameterList","parameters":[],"src":"10351:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":71009,"nodeType":"FunctionDefinition","src":"12647:531:104","nodes":[],"body":{"id":71008,"nodeType":"Block","src":"12843:335:104","nodes":[],"statements":[{"assignments":[70975],"declarations":[{"constant":false,"id":70975,"mutability":"mutable","name":"strategyProxy","nameLocation":"12861:13:104","nodeType":"VariableDeclaration","scope":71008,"src":"12853:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70974,"name":"address","nodeType":"ElementaryTypeName","src":"12853:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71000,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":70983,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"12940:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70982,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12932:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70981,"name":"address","nodeType":"ElementaryTypeName","src":"12932:7:104","typeDescriptions":{}}},"id":70984,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12932:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":70987,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"12998:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":70988,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13013:4:104","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"12998:19:104","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":70989,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13018:8:104","memberName":"selector","nodeType":"MemberAccess","src":"12998:28:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":70992,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"13036:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}],"id":70991,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13028:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70990,"name":"address","nodeType":"ElementaryTypeName","src":"13028:7:104","typeDescriptions":{}}},"id":70993,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13028:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70994,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"13043:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":70995,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"13068:5:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":70996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13068:7:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70985,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"12975:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"12979:18:104","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"12975:22:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":70997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12975:101:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"12898:16:104","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":70979,"nodeType":"UserDefinedTypeName","pathNode":{"id":70978,"name":"ERC1967Proxy","nameLocations":["12902:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"12902:12:104"},"referencedDeclaration":55021,"src":"12902:12:104","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":70998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12898:192:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":70977,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12877:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70976,"name":"address","nodeType":"ElementaryTypeName","src":"12877:7:104","typeDescriptions":{}}},"id":70999,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12877:223:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"12853:247:104"},{"expression":{"arguments":[{"id":71002,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70975,"src":"13129:13:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71003,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70961,"src":"13144:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71004,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70964,"src":"13152:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}},{"id":71005,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70967,"src":"13161:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71001,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[71009,71081],"referencedDeclaration":71081,"src":"13118:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_0 memory,struct Metadata memory) returns (uint256,address)"}},"id":71006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13118:53:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"functionReturnParameters":70973,"id":71007,"nodeType":"Return","src":"13111:60:104"}]},"functionSelector":"524e59e8","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"12656:10:104","parameters":{"id":70968,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70961,"mutability":"mutable","name":"_token","nameLocation":"12675:6:104","nodeType":"VariableDeclaration","scope":71009,"src":"12667:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70960,"name":"address","nodeType":"ElementaryTypeName","src":"12667:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70964,"mutability":"mutable","name":"_params","nameLocation":"12721:7:104","nodeType":"VariableDeclaration","scope":71009,"src":"12683:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":70963,"nodeType":"UserDefinedTypeName","pathNode":{"id":70962,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["12683:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"12683:30:104"},"referencedDeclaration":65657,"src":"12683:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":70967,"mutability":"mutable","name":"_metadata","nameLocation":"12746:9:104","nodeType":"VariableDeclaration","scope":71009,"src":"12730:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":70966,"nodeType":"UserDefinedTypeName","pathNode":{"id":70965,"name":"Metadata","nameLocations":["12730:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"12730:8:104"},"referencedDeclaration":3098,"src":"12730:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"12666:90:104"},"returnParameters":{"id":70973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70970,"mutability":"mutable","name":"poolId","nameLocation":"12813:6:104","nodeType":"VariableDeclaration","scope":71009,"src":"12805:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70969,"name":"uint256","nodeType":"ElementaryTypeName","src":"12805:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70972,"mutability":"mutable","name":"strategy","nameLocation":"12829:8:104","nodeType":"VariableDeclaration","scope":71009,"src":"12821:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70971,"name":"address","nodeType":"ElementaryTypeName","src":"12821:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12804:34:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71081,"nodeType":"FunctionDefinition","src":"13184:660:104","nodes":[],"body":{"id":71080,"nodeType":"Block","src":"13409:435:104","nodes":[],"statements":[{"assignments":[71027],"declarations":[{"constant":false,"id":71027,"mutability":"mutable","name":"token","nameLocation":"13427:5:104","nodeType":"VariableDeclaration","scope":71080,"src":"13419:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71026,"name":"address","nodeType":"ElementaryTypeName","src":"13419:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71029,"initialValue":{"id":71028,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70444,"src":"13435:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"13419:22:104"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71030,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13455:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":71033,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13473:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":71032,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13465:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71031,"name":"address","nodeType":"ElementaryTypeName","src":"13465:7:104","typeDescriptions":{}}},"id":71034,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13465:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13455:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71041,"nodeType":"IfStatement","src":"13451:65:104","trueBody":{"id":71040,"nodeType":"Block","src":"13477:39:104","statements":[{"expression":{"id":71038,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71036,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71027,"src":"13491:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71037,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13499:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13491:14:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71039,"nodeType":"ExpressionStatement","src":"13491:14:104"}]}},{"expression":{"id":71044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71042,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13525:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71043,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71011,"src":"13536:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13525:20:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71045,"nodeType":"ExpressionStatement","src":"13525:20:104"},{"assignments":[71050],"declarations":[{"constant":false,"id":71050,"mutability":"mutable","name":"_pool_managers","nameLocation":"13573:14:104","nodeType":"VariableDeclaration","scope":71080,"src":"13556:31:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71048,"name":"address","nodeType":"ElementaryTypeName","src":"13556:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71049,"nodeType":"ArrayTypeName","src":"13556:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71052,"initialValue":{"id":71051,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"13590:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"13556:48:104"},{"expression":{"id":71067,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71053,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71022,"src":"13615:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71056,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"13671:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":71057,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13682:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71060,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71016,"src":"13703:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0 memory"}],"expression":{"id":71058,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13692:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":71059,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13696:6:104","memberName":"encode","nodeType":"MemberAccess","src":"13692:10:104","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":71061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13692:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":71062,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71027,"src":"13713:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71063,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13720:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":71064,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71019,"src":"13723:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":71065,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71050,"src":"13734:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":71054,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"13624:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"id":71055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13629:28:104","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":75563,"src":"13624:33:104","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":71066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13624:134:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"13615:143:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71068,"nodeType":"ExpressionStatement","src":"13615:143:104"},{"eventCall":{"arguments":[{"id":71070,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71022,"src":"13786:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71071,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71024,"src":"13794:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71074,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13812:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71073,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13804:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71072,"name":"address","nodeType":"ElementaryTypeName","src":"13804:7:104","typeDescriptions":{}}},"id":71075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13804:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71076,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"13819:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71077,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71019,"src":"13827:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":71069,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70380,"src":"13774:11:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":71078,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13774:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71079,"nodeType":"EmitStatement","src":"13769:68:104"}]},"functionSelector":"e16d0e32","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"13193:10:104","parameters":{"id":71020,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71011,"mutability":"mutable","name":"_strategy","nameLocation":"13221:9:104","nodeType":"VariableDeclaration","scope":71081,"src":"13213:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71010,"name":"address","nodeType":"ElementaryTypeName","src":"13213:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71013,"mutability":"mutable","name":"_token","nameLocation":"13248:6:104","nodeType":"VariableDeclaration","scope":71081,"src":"13240:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71012,"name":"address","nodeType":"ElementaryTypeName","src":"13240:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71016,"mutability":"mutable","name":"_params","nameLocation":"13302:7:104","nodeType":"VariableDeclaration","scope":71081,"src":"13264:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":71015,"nodeType":"UserDefinedTypeName","pathNode":{"id":71014,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["13264:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":65657,"src":"13264:30:104"},"referencedDeclaration":65657,"src":"13264:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$65657_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":71019,"mutability":"mutable","name":"_metadata","nameLocation":"13335:9:104","nodeType":"VariableDeclaration","scope":71081,"src":"13319:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":71018,"nodeType":"UserDefinedTypeName","pathNode":{"id":71017,"name":"Metadata","nameLocations":["13319:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"13319:8:104"},"referencedDeclaration":3098,"src":"13319:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"13203:147:104"},"returnParameters":{"id":71025,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71022,"mutability":"mutable","name":"poolId","nameLocation":"13383:6:104","nodeType":"VariableDeclaration","scope":71081,"src":"13375:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71021,"name":"uint256","nodeType":"ElementaryTypeName","src":"13375:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71024,"mutability":"mutable","name":"strategy","nameLocation":"13399:8:104","nodeType":"VariableDeclaration","scope":71081,"src":"13391:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71023,"name":"address","nodeType":"ElementaryTypeName","src":"13391:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13374:34:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71198,"nodeType":"FunctionDefinition","src":"13850:1170:104","nodes":[],"body":{"id":71197,"nodeType":"Block","src":"13948:1072:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71091,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"13984:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71090,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"13958:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71092,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13958:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71093,"nodeType":"ExpressionStatement","src":"13958:34:104"},{"expression":{"arguments":[{"id":71095,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14022:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71094,"name":"onlyStrategyEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70610,"src":"14002:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14002:30:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71097,"nodeType":"ExpressionStatement","src":"14002:30:104"},{"expression":{"arguments":[{"id":71099,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14061:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71098,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"14042:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71100,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14042:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71101,"nodeType":"ExpressionStatement","src":"14042:29:104"},{"condition":{"baseExpression":{"baseExpression":{"id":71102,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"14086:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71104,"indexExpression":{"id":71103,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14114:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14086:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71106,"indexExpression":{"id":71105,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14123:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14086:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71111,"nodeType":"IfStatement","src":"14082:107:104","trueBody":{"id":71110,"nodeType":"Block","src":"14135:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71107,"name":"UserAlreadyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70396,"src":"14156:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14156:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71109,"nodeType":"RevertStatement","src":"14149:29:104"}]}},{"assignments":[71114],"declarations":[{"constant":false,"id":71114,"mutability":"mutable","name":"member","nameLocation":"14213:6:104","nodeType":"VariableDeclaration","scope":71197,"src":"14199:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":71113,"nodeType":"UserDefinedTypeName","pathNode":{"id":71112,"name":"Member","nameLocations":["14199:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"14199:6:104"},"referencedDeclaration":70271,"src":"14199:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71118,"initialValue":{"baseExpression":{"id":71115,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"14222:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71117,"indexExpression":{"id":71116,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14242:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14222:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"14199:51:104"},{"assignments":[71120],"declarations":[{"constant":false,"id":71120,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"14269:17:104","nodeType":"VariableDeclaration","scope":71197,"src":"14261:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71119,"name":"uint256","nodeType":"ElementaryTypeName","src":"14261:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71123,"initialValue":{"expression":{"id":71121,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71114,"src":"14289:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":71122,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14296:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"14289:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14261:47:104"},{"assignments":[71125],"declarations":[{"constant":false,"id":71125,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"14326:16:104","nodeType":"VariableDeclaration","scope":71197,"src":"14318:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71124,"name":"uint256","nodeType":"ElementaryTypeName","src":"14318:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71127,"initialValue":{"id":71126,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"14345:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"14318:46:104"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71129,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14394:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71128,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14379:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71130,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14379:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14405:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14379:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71132,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14379:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":71133,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14425:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71134,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14437:9:104","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":65544,"src":"14425:21:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14379:67:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"},"id":71154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":71148,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14568:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71147,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14553:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71149,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14553:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14579:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":65535,"src":"14553:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$65545_$","typeString":"function () external returns (enum PointSystem)"}},"id":71151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14553:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":71152,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65545,"src":"14599:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$65545_$","typeString":"type(enum PointSystem)"}},"id":71153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14611:5:104","memberName":"Fixed","nodeType":"MemberAccess","referencedDeclaration":65541,"src":"14599:17:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$65545","typeString":"enum PointSystem"}},"src":"14553:63:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71166,"nodeType":"IfStatement","src":"14549:180:104","trueBody":{"id":71165,"nodeType":"Block","src":"14618:111:104","statements":[{"expression":{"id":71163,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71155,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14632:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71160,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14691:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71161,"name":"totalStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71120,"src":"14700:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":71157,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14666:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71156,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14651:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14651:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14677:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14651:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14651:67:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14632:86:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71164,"nodeType":"ExpressionStatement","src":"14632:86:104"}]}},"id":71167,"nodeType":"IfStatement","src":"14375:354:104","trueBody":{"id":71146,"nodeType":"Block","src":"14448:95:104","statements":[{"expression":{"id":71144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71136,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14462:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71141,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14521:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":71142,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14530:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"arguments":[{"id":71138,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14496:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71137,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"14481:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14481:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14507:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"14481:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14481:51:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14462:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71145,"nodeType":"ExpressionStatement","src":"14462:70:104"}]}},{"expression":{"id":71174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71168,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"14739:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71171,"indexExpression":{"id":71169,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14761:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14739:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71172,"indexExpression":{"id":71170,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14770:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14739:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71173,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14783:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14739:60:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71175,"nodeType":"ExpressionStatement","src":"14739:60:104"},{"expression":{"id":71182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71176,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"14828:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71179,"indexExpression":{"id":71177,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14856:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14828:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71180,"indexExpression":{"id":71178,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14865:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"14828:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71181,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14878:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"14828:54:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71183,"nodeType":"ExpressionStatement","src":"14828:54:104"},{"expression":{"arguments":[{"id":71188,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14926:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"baseExpression":{"id":71184,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"14893:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71186,"indexExpression":{"id":71185,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14912:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14893:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":71187,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14921:4:104","memberName":"push","nodeType":"MemberAccess","src":"14893:32:104","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer,address)"}},"id":71189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14893:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71190,"nodeType":"ExpressionStatement","src":"14893:43:104"},{"eventCall":{"arguments":[{"id":71192,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71083,"src":"14976:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71193,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71085,"src":"14985:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71194,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71125,"src":"14996:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71191,"name":"MemberActivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70345,"src":"14952:23:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":71195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14952:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71196,"nodeType":"EmitStatement","src":"14947:66:104"}]},"functionSelector":"0d4a8b49","implemented":true,"kind":"function","modifiers":[{"id":71088,"kind":"modifierInvocation","modifierName":{"id":71087,"name":"nonReentrant","nameLocations":["13935:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"13935:12:104"},"nodeType":"ModifierInvocation","src":"13935:12:104"}],"name":"activateMemberInStrategy","nameLocation":"13859:24:104","parameters":{"id":71086,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71083,"mutability":"mutable","name":"_member","nameLocation":"13892:7:104","nodeType":"VariableDeclaration","scope":71198,"src":"13884:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71082,"name":"address","nodeType":"ElementaryTypeName","src":"13884:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71085,"mutability":"mutable","name":"_strategy","nameLocation":"13909:9:104","nodeType":"VariableDeclaration","scope":71198,"src":"13901:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71084,"name":"address","nodeType":"ElementaryTypeName","src":"13901:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13883:36:104"},"returnParameters":{"id":71089,"nodeType":"ParameterList","parameters":[],"src":"13948:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71257,"nodeType":"FunctionDefinition","src":"15026:699:104","nodes":[],"body":{"id":71256,"nodeType":"Block","src":"15113:612:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71206,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15149:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71205,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"15123:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":71207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15123:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71208,"nodeType":"ExpressionStatement","src":"15123:34:104"},{"expression":{"arguments":[{"id":71210,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15186:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71209,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"15167:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15167:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71212,"nodeType":"ExpressionStatement","src":"15167:29:104"},{"expression":{"arguments":[{"expression":{"id":71214,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15226:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71215,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15230:6:104","memberName":"sender","nodeType":"MemberAccess","src":"15226:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71216,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15238:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71213,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70626,"src":"15206:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":71217,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15206:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71218,"nodeType":"ExpressionStatement","src":"15206:42:104"},{"condition":{"id":71224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"15263:48:104","subExpression":{"baseExpression":{"baseExpression":{"id":71219,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"15264:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71221,"indexExpression":{"id":71220,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15292:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15264:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71223,"indexExpression":{"id":71222,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15301:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15264:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71229,"nodeType":"IfStatement","src":"15259:110:104","trueBody":{"id":71228,"nodeType":"Block","src":"15313:56:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71225,"name":"UserAlreadyDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70398,"src":"15334:22:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71226,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15334:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71227,"nodeType":"RevertStatement","src":"15327:31:104"}]}},{"expression":{"id":71236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71230,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70539,"src":"15379:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71233,"indexExpression":{"id":71231,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15407:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15379:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71234,"indexExpression":{"id":71232,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15416:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15379:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":71235,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"15429:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"15379:55:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71237,"nodeType":"ExpressionStatement","src":"15379:55:104"},{"expression":{"id":71244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71238,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"15444:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71241,"indexExpression":{"id":71239,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15466:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15444:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71242,"indexExpression":{"id":71240,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15475:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15444:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":71243,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15488:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15444:45:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71245,"nodeType":"ExpressionStatement","src":"15444:45:104"},{"expression":{"arguments":[{"id":71247,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15524:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71248,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15533:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71246,"name":"removeStrategyFromMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71310,"src":"15499:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15499:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71250,"nodeType":"ExpressionStatement","src":"15499:44:104"},{"eventCall":{"arguments":[{"id":71252,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71200,"src":"15699:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71253,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71202,"src":"15708:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71251,"name":"MemberDeactivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70351,"src":"15673:25:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15673:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71255,"nodeType":"EmitStatement","src":"15668:50:104"}]},"functionSelector":"22bcf999","implemented":true,"kind":"function","modifiers":[],"name":"deactivateMemberInStrategy","nameLocation":"15035:26:104","parameters":{"id":71203,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71200,"mutability":"mutable","name":"_member","nameLocation":"15070:7:104","nodeType":"VariableDeclaration","scope":71257,"src":"15062:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71199,"name":"address","nodeType":"ElementaryTypeName","src":"15062:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71202,"mutability":"mutable","name":"_strategy","nameLocation":"15087:9:104","nodeType":"VariableDeclaration","scope":71257,"src":"15079:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71201,"name":"address","nodeType":"ElementaryTypeName","src":"15079:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15061:36:104"},"returnParameters":{"id":71204,"nodeType":"ParameterList","parameters":[],"src":"15113:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71310,"nodeType":"FunctionDefinition","src":"15731:433:104","nodes":[],"body":{"id":71309,"nodeType":"Block","src":"15818:346:104","nodes":[],"statements":[{"assignments":[71268],"declarations":[{"constant":false,"id":71268,"mutability":"mutable","name":"memberStrategies","nameLocation":"15846:16:104","nodeType":"VariableDeclaration","scope":71309,"src":"15828:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71266,"name":"address","nodeType":"ElementaryTypeName","src":"15828:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71267,"nodeType":"ArrayTypeName","src":"15828:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71272,"initialValue":{"baseExpression":{"id":71269,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"15865:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71271,"indexExpression":{"id":71270,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71259,"src":"15884:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15865:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15828:64:104"},{"body":{"id":71307,"nodeType":"Block","src":"15956:202:104","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":71284,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"15974:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71286,"indexExpression":{"id":71285,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15991:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15974:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":71287,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71261,"src":"15997:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15974:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71306,"nodeType":"IfStatement","src":"15970:178:104","trueBody":{"id":71305,"nodeType":"Block","src":"16008:140:104","statements":[{"expression":{"id":71298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71289,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16026:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71291,"indexExpression":{"id":71290,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"16043:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16026:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71292,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16048:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71297,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71293,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16065:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16082:6:104","memberName":"length","nodeType":"MemberAccess","src":"16065:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71295,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16091:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"16065:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16048:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16026:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71299,"nodeType":"ExpressionStatement","src":"16026:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71300,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"16111:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16128:3:104","memberName":"pop","nodeType":"MemberAccess","src":"16111:20:104","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":71303,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16111:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71304,"nodeType":"ExpressionStatement","src":"16111:22:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71277,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15922:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71278,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71268,"src":"15926:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15943:6:104","memberName":"length","nodeType":"MemberAccess","src":"15926:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15922:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71308,"initializationExpression":{"assignments":[71274],"declarations":[{"constant":false,"id":71274,"mutability":"mutable","name":"i","nameLocation":"15915:1:104","nodeType":"VariableDeclaration","scope":71308,"src":"15907:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71273,"name":"uint256","nodeType":"ElementaryTypeName","src":"15907:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71276,"initialValue":{"hexValue":"30","id":71275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15919:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"15907:13:104"},"loopExpression":{"expression":{"id":71282,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"15951:3:104","subExpression":{"id":71281,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71274,"src":"15951:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71283,"nodeType":"ExpressionStatement","src":"15951:3:104"},"nodeType":"ForStatement","src":"15902:256:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyFromMember","nameLocation":"15740:24:104","parameters":{"id":71262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71259,"mutability":"mutable","name":"_member","nameLocation":"15773:7:104","nodeType":"VariableDeclaration","scope":71310,"src":"15765:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71258,"name":"address","nodeType":"ElementaryTypeName","src":"15765:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71261,"mutability":"mutable","name":"_strategy","nameLocation":"15790:9:104","nodeType":"VariableDeclaration","scope":71310,"src":"15782:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71260,"name":"address","nodeType":"ElementaryTypeName","src":"15782:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15764:36:104"},"returnParameters":{"id":71263,"nodeType":"ParameterList","parameters":[],"src":"15818:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71401,"nodeType":"FunctionDefinition","src":"16170:1009:104","nodes":[],"body":{"id":71400,"nodeType":"Block","src":"16244:935:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71317,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70580,"src":"16254:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71318,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16254:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71319,"nodeType":"ExpressionStatement","src":"16254:26:104"},{"assignments":[71321],"declarations":[{"constant":false,"id":71321,"mutability":"mutable","name":"member","nameLocation":"16298:6:104","nodeType":"VariableDeclaration","scope":71400,"src":"16290:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71320,"name":"address","nodeType":"ElementaryTypeName","src":"16290:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71324,"initialValue":{"expression":{"id":71322,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16307:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16311:6:104","memberName":"sender","nodeType":"MemberAccess","src":"16307:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"16290:27:104"},{"assignments":[71329],"declarations":[{"constant":false,"id":71329,"mutability":"mutable","name":"memberStrategies","nameLocation":"16344:16:104","nodeType":"VariableDeclaration","scope":71400,"src":"16327:33:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71327,"name":"address","nodeType":"ElementaryTypeName","src":"16327:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71328,"nodeType":"ArrayTypeName","src":"16327:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71333,"initialValue":{"baseExpression":{"id":71330,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"16363:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71332,"indexExpression":{"id":71331,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16382:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16363:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"16327:62:104"},{"assignments":[71335],"declarations":[{"constant":false,"id":71335,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"16408:16:104","nodeType":"VariableDeclaration","scope":71400,"src":"16400:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71334,"name":"uint256","nodeType":"ElementaryTypeName","src":"16400:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71336,"nodeType":"VariableDeclarationStatement","src":"16400:24:104"},{"body":{"id":71375,"nodeType":"Block","src":"16489:482:104","statements":[{"expression":{"id":71358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71348,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16608:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71355,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16677:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71356,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"16685:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"baseExpression":{"id":71350,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16642:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71352,"indexExpression":{"id":71351,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16659:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16642:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71349,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"16627:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16627:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71354,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16663:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":65520,"src":"16627:49:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16627:72:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16608:91:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71359,"nodeType":"ExpressionStatement","src":"16608:91:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71362,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71360,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16717:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":71361,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16737:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"16717:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71374,"nodeType":"IfStatement","src":"16713:232:104","trueBody":{"id":71373,"nodeType":"Block","src":"16740:205:104","statements":[{"expression":{"id":71371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71363,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"16758:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71368,"indexExpression":{"id":71364,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"16780:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16758:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71369,"indexExpression":{"baseExpression":{"id":71365,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16788:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71367,"indexExpression":{"id":71366,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16805:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16788:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16758:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71370,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71335,"src":"16812:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16758:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71372,"nodeType":"ExpressionStatement","src":"16758:70:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71344,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71341,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16455:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71342,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71329,"src":"16459:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16476:6:104","memberName":"length","nodeType":"MemberAccess","src":"16459:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16455:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71376,"initializationExpression":{"assignments":[71338],"declarations":[{"constant":false,"id":71338,"mutability":"mutable","name":"i","nameLocation":"16448:1:104","nodeType":"VariableDeclaration","scope":71376,"src":"16440:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71337,"name":"uint256","nodeType":"ElementaryTypeName","src":"16440:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71340,"initialValue":{"hexValue":"30","id":71339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16452:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"16440:13:104"},"loopExpression":{"expression":{"id":71346,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"16484:3:104","subExpression":{"id":71345,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71338,"src":"16484:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71347,"nodeType":"ExpressionStatement","src":"16484:3:104"},"nodeType":"ForStatement","src":"16435:536:104"},{"expression":{"arguments":[{"id":71380,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17010:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71383,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"17026:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71382,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17018:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71381,"name":"address","nodeType":"ElementaryTypeName","src":"17018:7:104","typeDescriptions":{}}},"id":71384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17018:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71385,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17033:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71377,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"16981:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16993:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"16981:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":71386,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16981:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71387,"nodeType":"ExpressionStatement","src":"16981:66:104"},{"expression":{"id":71393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71388,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"17057:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71390,"indexExpression":{"id":71389,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17077:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17057:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71391,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17085:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"17057:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":71392,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17101:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17057:57:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71394,"nodeType":"ExpressionStatement","src":"17057:57:104"},{"eventCall":{"arguments":[{"id":71396,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71321,"src":"17150:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71397,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71312,"src":"17158:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71395,"name":"MemberPowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70361,"src":"17129:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71398,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17129:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71399,"nodeType":"EmitStatement","src":"17124:48:104"}]},"functionSelector":"559de05d","implemented":true,"kind":"function","modifiers":[{"id":71315,"kind":"modifierInvocation","modifierName":{"id":71314,"name":"nonReentrant","nameLocations":["16231:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"16231:12:104"},"nodeType":"ModifierInvocation","src":"16231:12:104"}],"name":"increasePower","nameLocation":"16179:13:104","parameters":{"id":71313,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71312,"mutability":"mutable","name":"_amountStaked","nameLocation":"16201:13:104","nodeType":"VariableDeclaration","scope":71401,"src":"16193:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71311,"name":"uint256","nodeType":"ElementaryTypeName","src":"16193:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16192:23:104"},"returnParameters":{"id":71316,"nodeType":"ParameterList","parameters":[],"src":"16244:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71551,"nodeType":"FunctionDefinition","src":"17322:1562:104","nodes":[],"body":{"id":71550,"nodeType":"Block","src":"17398:1486:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71408,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70580,"src":"17408:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71409,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17408:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71410,"nodeType":"ExpressionStatement","src":"17408:26:104"},{"assignments":[71412],"declarations":[{"constant":false,"id":71412,"mutability":"mutable","name":"member","nameLocation":"17452:6:104","nodeType":"VariableDeclaration","scope":71550,"src":"17444:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71411,"name":"address","nodeType":"ElementaryTypeName","src":"17444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71415,"initialValue":{"expression":{"id":71413,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17461:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17465:6:104","memberName":"sender","nodeType":"MemberAccess","src":"17461:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17444:27:104"},{"assignments":[71420],"declarations":[{"constant":false,"id":71420,"mutability":"mutable","name":"memberStrategies","nameLocation":"17499:16:104","nodeType":"VariableDeclaration","scope":71550,"src":"17481:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71418,"name":"address","nodeType":"ElementaryTypeName","src":"17481:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71419,"nodeType":"ArrayTypeName","src":"17481:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71424,"initialValue":{"baseExpression":{"id":71421,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"17518:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":71423,"indexExpression":{"id":71422,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17537:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17518:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17481:63:104"},{"assignments":[71426],"declarations":[{"constant":false,"id":71426,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"17563:16:104","nodeType":"VariableDeclaration","scope":71550,"src":"17555:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71425,"name":"uint256","nodeType":"ElementaryTypeName","src":"17555:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71427,"nodeType":"VariableDeclarationStatement","src":"17555:24:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71435,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71433,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":71428,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"17594:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71430,"indexExpression":{"id":71429,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17614:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17594:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71431,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17622:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"17594:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":71432,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"17637:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17594:58:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":71434,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"17655:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17594:80:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71440,"nodeType":"IfStatement","src":"17590:140:104","trueBody":{"id":71439,"nodeType":"Block","src":"17676:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71436,"name":"DecreaseUnderMinimum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70416,"src":"17697:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17697:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71438,"nodeType":"RevertStatement","src":"17690:29:104"}]}},{"expression":{"arguments":[{"id":71444,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"17764:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71445,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"17772:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71441,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"17739:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71443,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17751:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"17739:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17739:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71447,"nodeType":"ExpressionStatement","src":"17739:49:104"},{"body":{"id":71536,"nodeType":"Block","src":"17852:897:104","statements":[{"assignments":[71460],"declarations":[{"constant":false,"id":71460,"mutability":"mutable","name":"strategy","nameLocation":"17874:8:104","nodeType":"VariableDeclaration","scope":71536,"src":"17866:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71459,"name":"address","nodeType":"ElementaryTypeName","src":"17866:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71464,"initialValue":{"baseExpression":{"id":71461,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"17885:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71463,"indexExpression":{"id":71462,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17902:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17885:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17866:38:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":71468,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"17954:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":71467,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"17949:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":71469,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17949:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":71470,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"17970:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"17949:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":71465,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"17922:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17931:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"17922:26:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":71471,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17922:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71534,"nodeType":"Block","src":"18472:250:104","statements":[{"expression":{"id":71523,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71514,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18557:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71516,"indexExpression":{"id":71515,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18574:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18557:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71517,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18579:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71522,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71518,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18596:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18613:6:104","memberName":"length","nodeType":"MemberAccess","src":"18596:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71520,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18622:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"18596:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18579:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18557:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71524,"nodeType":"ExpressionStatement","src":"18557:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71525,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18642:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18659:3:104","memberName":"pop","nodeType":"MemberAccess","src":"18642:20:104","typeDescriptions":{"typeIdentifier":"t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$attached_to$_t_array$_t_address_$dyn_storage_ptr_$","typeString":"function (address[] storage pointer)"}},"id":71528,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18642:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71529,"nodeType":"ExpressionStatement","src":"18642:22:104"},{"expression":{"arguments":[{"id":71531,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"18698:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71530,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"18682:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71532,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18682:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71533,"nodeType":"ExpressionStatement","src":"18682:25:104"}]},"id":71535,"nodeType":"IfStatement","src":"17918:804:104","trueBody":{"id":71513,"nodeType":"Block","src":"17984:482:104","statements":[{"expression":{"id":71480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71472,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18002:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71477,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18060:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71478,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18068:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":71474,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71460,"src":"18036:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71473,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"18021:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":71475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18021:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":71476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18046:13:104","memberName":"decreasePower","nodeType":"MemberAccess","referencedDeclaration":65529,"src":"18021:38:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":71479,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18021:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18002:82:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71481,"nodeType":"ExpressionStatement","src":"18002:82:104"},{"assignments":[71483],"declarations":[{"constant":false,"id":71483,"mutability":"mutable","name":"currentPower","nameLocation":"18110:12:104","nodeType":"VariableDeclaration","scope":71513,"src":"18102:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71482,"name":"uint256","nodeType":"ElementaryTypeName","src":"18102:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71491,"initialValue":{"baseExpression":{"baseExpression":{"id":71484,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"18125:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71486,"indexExpression":{"id":71485,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18147:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18125:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71490,"indexExpression":{"baseExpression":{"id":71487,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18155:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71489,"indexExpression":{"id":71488,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18172:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18155:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18125:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"18102:73:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71492,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18197:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":71493,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71483,"src":"18216:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18197:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71511,"nodeType":"Block","src":"18341:111:104","statements":[{"expression":{"id":71509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":71501,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"18363:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71506,"indexExpression":{"id":71502,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18385:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18363:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71507,"indexExpression":{"baseExpression":{"id":71503,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"18393:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71505,"indexExpression":{"id":71504,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"18410:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18393:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18363:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":71508,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18417:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18363:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71510,"nodeType":"ExpressionStatement","src":"18363:70:104"}]},"id":71512,"nodeType":"IfStatement","src":"18193:259:104","trueBody":{"id":71500,"nodeType":"Block","src":"18230:105:104","statements":[{"errorCall":{"arguments":[{"id":71496,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71426,"src":"18285:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":71497,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71483,"src":"18303:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71495,"name":"CantDecreaseMoreThanPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70422,"src":"18259:25:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":71498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18259:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71499,"nodeType":"RevertStatement","src":"18252:64:104"}]}}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71452,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17818:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71453,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71420,"src":"17822:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":71454,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17839:6:104","memberName":"length","nodeType":"MemberAccess","src":"17822:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17818:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71537,"initializationExpression":{"assignments":[71449],"declarations":[{"constant":false,"id":71449,"mutability":"mutable","name":"i","nameLocation":"17811:1:104","nodeType":"VariableDeclaration","scope":71537,"src":"17803:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71448,"name":"uint256","nodeType":"ElementaryTypeName","src":"17803:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71451,"initialValue":{"hexValue":"30","id":71450,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17815:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17803:13:104"},"loopExpression":{"expression":{"id":71457,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"17847:3:104","subExpression":{"id":71456,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71449,"src":"17847:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71458,"nodeType":"ExpressionStatement","src":"17847:3:104"},"nodeType":"ForStatement","src":"17798:951:104"},{"expression":{"id":71543,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71538,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"18758:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71540,"indexExpression":{"id":71539,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18778:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18758:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18786:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"18758:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":71542,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18802:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18758:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71544,"nodeType":"ExpressionStatement","src":"18758:59:104"},{"eventCall":{"arguments":[{"id":71546,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71412,"src":"18853:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71547,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71403,"src":"18861:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71545,"name":"MemberPowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70367,"src":"18832:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18832:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71549,"nodeType":"EmitStatement","src":"18827:50:104"}]},"functionSelector":"5ecf71c5","implemented":true,"kind":"function","modifiers":[{"id":71406,"kind":"modifierInvocation","modifierName":{"id":71405,"name":"nonReentrant","nameLocations":["17385:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"17385:12:104"},"nodeType":"ModifierInvocation","src":"17385:12:104"}],"name":"decreasePower","nameLocation":"17331:13:104","parameters":{"id":71404,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71403,"mutability":"mutable","name":"_amountUnstaked","nameLocation":"17353:15:104","nodeType":"VariableDeclaration","scope":71551,"src":"17345:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71402,"name":"uint256","nodeType":"ElementaryTypeName","src":"17345:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17344:25:104"},"returnParameters":{"id":71407,"nodeType":"ParameterList","parameters":[],"src":"17398:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71567,"nodeType":"FunctionDefinition","src":"18890:173:104","nodes":[],"body":{"id":71566,"nodeType":"Block","src":"18998:65:104","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":71560,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70520,"src":"19015:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":71562,"indexExpression":{"id":71561,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71553,"src":"19037:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19015:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71564,"indexExpression":{"id":71563,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71555,"src":"19046:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19015:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71559,"id":71565,"nodeType":"Return","src":"19008:48:104"}]},"functionSelector":"7817ee4f","implemented":true,"kind":"function","modifiers":[],"name":"getMemberPowerInStrategy","nameLocation":"18899:24:104","parameters":{"id":71556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71553,"mutability":"mutable","name":"_member","nameLocation":"18932:7:104","nodeType":"VariableDeclaration","scope":71567,"src":"18924:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71552,"name":"address","nodeType":"ElementaryTypeName","src":"18924:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71555,"mutability":"mutable","name":"_strategy","nameLocation":"18949:9:104","nodeType":"VariableDeclaration","scope":71567,"src":"18941:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71554,"name":"address","nodeType":"ElementaryTypeName","src":"18941:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18923:36:104"},"returnParameters":{"id":71559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71567,"src":"18989:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71557,"name":"uint256","nodeType":"ElementaryTypeName","src":"18989:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18988:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71580,"nodeType":"FunctionDefinition","src":"19069:151:104","nodes":[],"body":{"id":71579,"nodeType":"Block","src":"19155:65:104","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":71574,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"19172:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71576,"indexExpression":{"id":71575,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71569,"src":"19192:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19172:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"id":71577,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19201:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"19172:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71573,"id":71578,"nodeType":"Return","src":"19165:48:104"}]},"functionSelector":"2c611c4a","implemented":true,"kind":"function","modifiers":[],"name":"getMemberStakedAmount","nameLocation":"19078:21:104","parameters":{"id":71570,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71569,"mutability":"mutable","name":"_member","nameLocation":"19108:7:104","nodeType":"VariableDeclaration","scope":71580,"src":"19100:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71568,"name":"address","nodeType":"ElementaryTypeName","src":"19100:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19099:17:104"},"returnParameters":{"id":71573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71572,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71580,"src":"19146:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71571,"name":"uint256","nodeType":"ElementaryTypeName","src":"19146:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19145:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71617,"nodeType":"FunctionDefinition","src":"19226:321:104","nodes":[],"body":{"id":71616,"nodeType":"Block","src":"19286:261:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71585,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"19296:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71586,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19296:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71587,"nodeType":"ExpressionStatement","src":"19296:17:104"},{"assignments":[71589],"declarations":[{"constant":false,"id":71589,"mutability":"mutable","name":"strategy","nameLocation":"19331:8:104","nodeType":"VariableDeclaration","scope":71616,"src":"19323:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71588,"name":"address","nodeType":"ElementaryTypeName","src":"19323:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71598,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":71594,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71582,"src":"19363:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71592,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"19350:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"id":71593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19355:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":75576,"src":"19350:12:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":71595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19350:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":71596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19371:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"19350:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":71591,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19342:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71590,"name":"address","nodeType":"ElementaryTypeName","src":"19342:7:104","typeDescriptions":{}}},"id":71597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19342:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19323:57:104"},{"expression":{"arguments":[{"id":71600,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19409:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71599,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"19390:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19390:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71602,"nodeType":"ExpressionStatement","src":"19390:28:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":71606,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"19464:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}],"id":71605,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"19459:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":71607,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19459:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$65536","typeString":"type(contract IPointStrategy)"}},"id":71608,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19480:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"19459:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":71603,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19432:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71604,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19441:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57775,"src":"19432:26:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_bytes4_$returns$_t_bool_$attached_to$_t_address_$","typeString":"function (address,bytes4) view returns (bool)"}},"id":71609,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19432:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71615,"nodeType":"IfStatement","src":"19428:113:104","trueBody":{"id":71614,"nodeType":"Block","src":"19494:47:104","statements":[{"expression":{"arguments":[{"id":71611,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71589,"src":"19521:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71610,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"19508:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71612,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19508:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71613,"nodeType":"ExpressionStatement","src":"19508:22:104"}]}}]},"functionSelector":"82d6a1e7","implemented":true,"kind":"function","modifiers":[],"name":"addStrategyByPoolId","nameLocation":"19235:19:104","parameters":{"id":71583,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71582,"mutability":"mutable","name":"poolId","nameLocation":"19263:6:104","nodeType":"VariableDeclaration","scope":71617,"src":"19255:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71581,"name":"uint256","nodeType":"ElementaryTypeName","src":"19255:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19254:16:104"},"returnParameters":{"id":71584,"nodeType":"ParameterList","parameters":[],"src":"19286:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71630,"nodeType":"FunctionDefinition","src":"19553:128:104","nodes":[],"body":{"id":71629,"nodeType":"Block","src":"19611:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71622,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"19621:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71623,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19621:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71624,"nodeType":"ExpressionStatement","src":"19621:17:104"},{"expression":{"arguments":[{"id":71626,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71619,"src":"19661:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71625,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"19648:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19648:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71628,"nodeType":"ExpressionStatement","src":"19648:26:104"}]},"functionSelector":"223e5479","implemented":true,"kind":"function","modifiers":[],"name":"addStrategy","nameLocation":"19562:11:104","parameters":{"id":71620,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71619,"mutability":"mutable","name":"_newStrategy","nameLocation":"19582:12:104","nodeType":"VariableDeclaration","scope":71630,"src":"19574:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71618,"name":"address","nodeType":"ElementaryTypeName","src":"19574:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19573:22:104"},"returnParameters":{"id":71621,"nodeType":"ParameterList","parameters":[],"src":"19611:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71654,"nodeType":"FunctionDefinition","src":"19687:252:104","nodes":[],"body":{"id":71653,"nodeType":"Block","src":"19748:191:104","nodes":[],"statements":[{"condition":{"baseExpression":{"id":71635,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"19762:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71637,"indexExpression":{"id":71636,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19780:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19762:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71642,"nodeType":"IfStatement","src":"19758:85:104","trueBody":{"id":71641,"nodeType":"Block","src":"19795:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71638,"name":"StrategyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70400,"src":"19816:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19816:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71640,"nodeType":"RevertStatement","src":"19809:23:104"}]}},{"expression":{"id":71647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71643,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"19852:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71645,"indexExpression":{"id":71644,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19870:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"19852:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71646,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"19886:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"19852:38:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71648,"nodeType":"ExpressionStatement","src":"19852:38:104"},{"eventCall":{"arguments":[{"id":71650,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71632,"src":"19919:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71649,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70333,"src":"19905:13:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71651,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19905:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71652,"nodeType":"EmitStatement","src":"19900:32:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addStrategy","nameLocation":"19696:12:104","parameters":{"id":71633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71632,"mutability":"mutable","name":"_newStrategy","nameLocation":"19717:12:104","nodeType":"VariableDeclaration","scope":71654,"src":"19709:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71631,"name":"address","nodeType":"ElementaryTypeName","src":"19709:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19708:22:104"},"returnParameters":{"id":71634,"nodeType":"ParameterList","parameters":[],"src":"19748:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71682,"nodeType":"FunctionDefinition","src":"19945:237:104","nodes":[],"body":{"id":71681,"nodeType":"Block","src":"20008:174:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71659,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20018:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71660,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20018:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71661,"nodeType":"ExpressionStatement","src":"20018:17:104"},{"assignments":[71663],"declarations":[{"constant":false,"id":71663,"mutability":"mutable","name":"strategy","nameLocation":"20053:8:104","nodeType":"VariableDeclaration","scope":71681,"src":"20045:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71662,"name":"address","nodeType":"ElementaryTypeName","src":"20045:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71672,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":71668,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71656,"src":"20085:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71666,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"20072:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"id":71667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20077:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":75576,"src":"20072:12:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$2319_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":71669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20072:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":71670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"20093:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"20072:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":71665,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20064:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71664,"name":"address","nodeType":"ElementaryTypeName","src":"20064:7:104","typeDescriptions":{}}},"id":71671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20064:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"20045:57:104"},{"expression":{"arguments":[{"id":71674,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71663,"src":"20131:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71673,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20112:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71675,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20112:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71676,"nodeType":"ExpressionStatement","src":"20112:28:104"},{"expression":{"arguments":[{"id":71678,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71663,"src":"20166:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71677,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"20150:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71679,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20150:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71680,"nodeType":"ExpressionStatement","src":"20150:25:104"}]},"functionSelector":"73265c37","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyByPoolId","nameLocation":"19954:22:104","parameters":{"id":71657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71656,"mutability":"mutable","name":"poolId","nameLocation":"19985:6:104","nodeType":"VariableDeclaration","scope":71682,"src":"19977:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71655,"name":"uint256","nodeType":"ElementaryTypeName","src":"19977:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19976:16:104"},"returnParameters":{"id":71658,"nodeType":"ParameterList","parameters":[],"src":"20008:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71702,"nodeType":"FunctionDefinition","src":"20188:194:104","nodes":[],"body":{"id":71701,"nodeType":"Block","src":"20249:133:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71688,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20278:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71687,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20259:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20259:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71690,"nodeType":"ExpressionStatement","src":"20259:29:104"},{"expression":{"id":71695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71691,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70513,"src":"20298:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71693,"indexExpression":{"id":71692,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20316:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"20298:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":71694,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"20329:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"20298:36:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71696,"nodeType":"ExpressionStatement","src":"20298:36:104"},{"eventCall":{"arguments":[{"id":71698,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71684,"src":"20365:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71697,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70337,"src":"20349:15:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71699,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20349:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71700,"nodeType":"EmitStatement","src":"20344:31:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeStrategy","nameLocation":"20197:15:104","parameters":{"id":71685,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71684,"mutability":"mutable","name":"_strategy","nameLocation":"20221:9:104","nodeType":"VariableDeclaration","scope":71702,"src":"20213:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71683,"name":"address","nodeType":"ElementaryTypeName","src":"20213:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20212:19:104"},"returnParameters":{"id":71686,"nodeType":"ParameterList","parameters":[],"src":"20249:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71715,"nodeType":"FunctionDefinition","src":"20388:128:104","nodes":[],"body":{"id":71714,"nodeType":"Block","src":"20446:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71707,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20456:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20456:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71709,"nodeType":"ExpressionStatement","src":"20456:17:104"},{"expression":{"arguments":[{"id":71711,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71704,"src":"20499:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71710,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71702,"src":"20483:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71712,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20483:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71713,"nodeType":"ExpressionStatement","src":"20483:26:104"}]},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategy","nameLocation":"20397:14:104","parameters":{"id":71705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71704,"mutability":"mutable","name":"_strategy","nameLocation":"20420:9:104","nodeType":"VariableDeclaration","scope":71715,"src":"20412:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71703,"name":"address","nodeType":"ElementaryTypeName","src":"20412:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20411:19:104"},"returnParameters":{"id":71706,"nodeType":"ParameterList","parameters":[],"src":"20446:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71740,"nodeType":"FunctionDefinition","src":"20522:248:104","nodes":[],"body":{"id":71739,"nodeType":"Block","src":"20584:186:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71720,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"20594:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20594:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71722,"nodeType":"ExpressionStatement","src":"20594:17:104"},{"expression":{"arguments":[{"id":71724,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71717,"src":"20640:5:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71723,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70660,"src":"20621:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20621:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71726,"nodeType":"ExpressionStatement","src":"20621:25:104"},{"expression":{"id":71729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71727,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20656:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71728,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71717,"src":"20677:5:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"20656:26:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":71730,"nodeType":"ExpressionStatement","src":"20656:26:104"},{"eventCall":{"arguments":[{"arguments":[{"id":71734,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"20730:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}],"id":71733,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20722:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71732,"name":"address","nodeType":"ElementaryTypeName","src":"20722:7:104","typeDescriptions":{}}},"id":71735,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20722:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71736,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20744:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71731,"name":"CouncilSafeChangeStarted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70296,"src":"20697:24:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":71737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20697:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71738,"nodeType":"EmitStatement","src":"20692:71:104"}]},"functionSelector":"397e2543","implemented":true,"kind":"function","modifiers":[],"name":"setCouncilSafe","nameLocation":"20531:14:104","parameters":{"id":71718,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71717,"mutability":"mutable","name":"_safe","nameLocation":"20562:5:104","nodeType":"VariableDeclaration","scope":71740,"src":"20546:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":71716,"name":"address","nodeType":"ElementaryTypeName","src":"20546:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"20545:23:104"},"returnParameters":{"id":71719,"nodeType":"ParameterList","parameters":[],"src":"20584:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71757,"nodeType":"FunctionDefinition","src":"20776:187:104","nodes":[],"body":{"id":71756,"nodeType":"Block","src":"20823:140:104","nodes":[],"statements":[{"expression":{"id":71747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71743,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70498,"src":"20833:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71745,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20853:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71744,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75844,"src":"20847:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$75844_$","typeString":"type(contract ISafe)"}},"id":71746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20847:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"src":"20833:39:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$75844","typeString":"contract ISafe"}},"id":71748,"nodeType":"ExpressionStatement","src":"20833:39:104"},{"expression":{"id":71750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"20882:25:104","subExpression":{"id":71749,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20889:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71751,"nodeType":"ExpressionStatement","src":"20882:25:104"},{"eventCall":{"arguments":[{"id":71753,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"20937:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71752,"name":"CouncilSafeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70290,"src":"20922:14:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71754,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20922:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71755,"nodeType":"EmitStatement","src":"20917:39:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_changeCouncilSafe","nameLocation":"20785:18:104","parameters":{"id":71741,"nodeType":"ParameterList","parameters":[],"src":"20803:2:104"},"returnParameters":{"id":71742,"nodeType":"ParameterList","parameters":[],"src":"20823:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":71773,"nodeType":"FunctionDefinition","src":"20969:179:104","nodes":[],"body":{"id":71772,"nodeType":"Block","src":"21013:135:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71763,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71760,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21027:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21031:6:104","memberName":"sender","nodeType":"MemberAccess","src":"21027:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":71762,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70486,"src":"21041:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"21027:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71768,"nodeType":"IfStatement","src":"21023:89:104","trueBody":{"id":71767,"nodeType":"Block","src":"21061:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71764,"name":"SenderNotNewOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70404,"src":"21082:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71765,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21082:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71766,"nodeType":"RevertStatement","src":"21075:26:104"}]}},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71769,"name":"_changeCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71757,"src":"21121:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":71770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21121:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71771,"nodeType":"ExpressionStatement","src":"21121:20:104"}]},"functionSelector":"b5058c50","implemented":true,"kind":"function","modifiers":[],"name":"acceptCouncilSafe","nameLocation":"20978:17:104","parameters":{"id":71758,"nodeType":"ParameterList","parameters":[],"src":"20995:2:104"},"returnParameters":{"id":71759,"nodeType":"ParameterList","parameters":[],"src":"21013:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71791,"nodeType":"FunctionDefinition","src":"21154:190:104","nodes":[],"body":{"id":71790,"nodeType":"Block","src":"21234:110:104","nodes":[],"statements":[{"assignments":[71782],"declarations":[{"constant":false,"id":71782,"mutability":"mutable","name":"newMember","nameLocation":"21258:9:104","nodeType":"VariableDeclaration","scope":71790,"src":"21244:23:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":71781,"nodeType":"UserDefinedTypeName","pathNode":{"id":71780,"name":"Member","nameLocations":["21244:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"21244:6:104"},"referencedDeclaration":70271,"src":"21244:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71786,"initialValue":{"baseExpression":{"id":71783,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"21270:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71785,"indexExpression":{"id":71784,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71775,"src":"21290:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21270:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21244:54:104"},{"expression":{"expression":{"id":71787,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71782,"src":"21315:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":71788,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21325:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70270,"src":"21315:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":71779,"id":71789,"nodeType":"Return","src":"21308:29:104"}]},"functionSelector":"a230c524","implemented":true,"kind":"function","modifiers":[],"name":"isMember","nameLocation":"21163:8:104","parameters":{"id":71776,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71775,"mutability":"mutable","name":"_member","nameLocation":"21180:7:104","nodeType":"VariableDeclaration","scope":71791,"src":"21172:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71774,"name":"address","nodeType":"ElementaryTypeName","src":"21172:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21171:17:104"},"returnParameters":{"id":71779,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71778,"mutability":"mutable","name":"_isMember","nameLocation":"21223:9:104","nodeType":"VariableDeclaration","scope":71791,"src":"21218:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71777,"name":"bool","nodeType":"ElementaryTypeName","src":"21218:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"21217:16:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71910,"nodeType":"FunctionDefinition","src":"21350:1932:104","nodes":[],"body":{"id":71909,"nodeType":"Block","src":"21412:1870:104","nodes":[],"statements":[{"assignments":[71797],"declarations":[{"constant":false,"id":71797,"mutability":"mutable","name":"_member","nameLocation":"21430:7:104","nodeType":"VariableDeclaration","scope":71909,"src":"21422:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71796,"name":"address","nodeType":"ElementaryTypeName","src":"21422:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":71800,"initialValue":{"expression":{"id":71798,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"21440:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21444:6:104","memberName":"sender","nodeType":"MemberAccess","src":"21440:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"21422:28:104"},{"assignments":[71803],"declarations":[{"constant":false,"id":71803,"mutability":"mutable","name":"newMember","nameLocation":"21475:9:104","nodeType":"VariableDeclaration","scope":71909,"src":"21460:24:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"},"typeName":{"id":71802,"nodeType":"UserDefinedTypeName","pathNode":{"id":71801,"name":"Member","nameLocations":["21460:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"21460:6:104"},"referencedDeclaration":70271,"src":"21460:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":71807,"initialValue":{"baseExpression":{"id":71804,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"21487:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":71806,"indexExpression":{"id":71805,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"21507:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21487:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"21460:55:104"},{"assignments":[71810],"declarations":[{"constant":false,"id":71810,"mutability":"mutable","name":"gardensFactory","nameLocation":"21542:14:104","nodeType":"VariableDeclaration","scope":71909,"src":"21525:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":71809,"nodeType":"UserDefinedTypeName","pathNode":{"id":71808,"name":"IRegistryFactory","nameLocations":["21525:16:104"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"21525:16:104"},"referencedDeclaration":70017,"src":"21525:16:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":71814,"initialValue":{"arguments":[{"id":71812,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"21576:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71811,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"21559:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":71813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21559:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"21525:67:104"},{"assignments":[71816],"declarations":[{"constant":false,"id":71816,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"21610:18:104","nodeType":"VariableDeclaration","scope":71909,"src":"21602:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71815,"name":"uint256","nodeType":"ElementaryTypeName","src":"21602:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71826,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71819,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71817,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21632:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71818,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"21654:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21632:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71820,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21631:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71823,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21671:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71822,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"21677:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21671:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71824,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21670:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21631:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21602:91:104"},{"assignments":[71828],"declarations":[{"constant":false,"id":71828,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"21711:16:104","nodeType":"VariableDeclaration","scope":71909,"src":"21703:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71827,"name":"uint256","nodeType":"ElementaryTypeName","src":"21703:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71844,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71829,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21743:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":71834,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21803:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21795:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71832,"name":"address","nodeType":"ElementaryTypeName","src":"21795:7:104","typeDescriptions":{}}},"id":71835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21795:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71830,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71810,"src":"21765:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21780:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"21765:29:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":71836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21765:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21743:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71838,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"21742:68:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71841,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21814:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71840,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"21820:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21814:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71842,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"21813:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21742:94:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21703:133:104"},{"condition":{"id":71848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"21850:18:104","subExpression":{"arguments":[{"id":71846,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"21860:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71845,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"21851:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":71847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21851:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71908,"nodeType":"IfStatement","src":"21846:1430:104","trueBody":{"id":71907,"nodeType":"Block","src":"21870:1406:104","statements":[{"expression":{"id":71853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":71849,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71803,"src":"21884:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member storage pointer"}},"id":71851,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21894:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":70270,"src":"21884:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"21909:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"21884:29:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71854,"nodeType":"ExpressionStatement","src":"21884:29:104"},{"expression":{"id":71859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":71855,"name":"newMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71803,"src":"21928:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member storage pointer"}},"id":71857,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"21938:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"21928:22:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71858,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"21953:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21928:44:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71860,"nodeType":"ExpressionStatement","src":"21928:44:104"},{"expression":{"arguments":[{"id":71864,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"22170:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":71867,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22187:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71866,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22179:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71865,"name":"address","nodeType":"ElementaryTypeName","src":"22179:7:104","typeDescriptions":{}}},"id":71868,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22179:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71869,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"22194:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71870,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22216:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22194:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71872,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"22237:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22194:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71861,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"22124:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22136:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":56649,"src":"22124:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":71874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22124:143:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71875,"nodeType":"ExpressionStatement","src":"22124:143:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71876,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22692:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71877,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22713:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22692:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71887,"nodeType":"IfStatement","src":"22688:178:104","trueBody":{"id":71886,"nodeType":"Block","src":"22716:150:104","statements":[{"expression":{"arguments":[{"id":71882,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70474,"src":"22819:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71883,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71816,"src":"22832:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71879,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"22794:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22806:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"22794:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71884,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22794:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71885,"nodeType":"ExpressionStatement","src":"22794:57:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71890,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71888,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"22949:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71889,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22968:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"22949:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71901,"nodeType":"IfStatement","src":"22945:255:104","trueBody":{"id":71900,"nodeType":"Block","src":"22971:229:104","statements":[{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71894,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71810,"src":"23128:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71895,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23143:21:104","memberName":"getGardensFeeReceiver","nodeType":"MemberAccess","referencedDeclaration":70009,"src":"23128:36:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":71896,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23128:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71897,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71828,"src":"23168:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":71891,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"23103:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":71893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23115:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"23103:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":71898,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23103:82:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71899,"nodeType":"ExpressionStatement","src":"23103:82:104"}]}},{"eventCall":{"arguments":[{"id":71903,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71797,"src":"23236:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71904,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23245:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71902,"name":"MemberRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70302,"src":"23219:16:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23219:46:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71906,"nodeType":"EmitStatement","src":"23214:51:104"}]}}]},"functionSelector":"3517aa7d","implemented":true,"kind":"function","modifiers":[{"id":71794,"kind":"modifierInvocation","modifierName":{"id":71793,"name":"nonReentrant","nameLocations":["21399:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"21399:12:104"},"nodeType":"ModifierInvocation","src":"21399:12:104"}],"name":"stakeAndRegisterMember","nameLocation":"21359:22:104","parameters":{"id":71792,"nodeType":"ParameterList","parameters":[],"src":"21381:2:104"},"returnParameters":{"id":71795,"nodeType":"ParameterList","parameters":[],"src":"21412:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":71959,"nodeType":"FunctionDefinition","src":"23288:477:104","nodes":[],"body":{"id":71958,"nodeType":"Block","src":"23360:405:104","nodes":[],"statements":[{"assignments":[71917],"declarations":[{"constant":false,"id":71917,"mutability":"mutable","name":"gardensFactory","nameLocation":"23387:14:104","nodeType":"VariableDeclaration","scope":71958,"src":"23370:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"},"typeName":{"id":71916,"nodeType":"UserDefinedTypeName","pathNode":{"id":71915,"name":"IRegistryFactory","nameLocations":["23370:16:104"],"nodeType":"IdentifierPath","referencedDeclaration":70017,"src":"23370:16:104"},"referencedDeclaration":70017,"src":"23370:16:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":71921,"initialValue":{"arguments":[{"id":71919,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70477,"src":"23421:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71918,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70017,"src":"23404:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70017_$","typeString":"type(contract IRegistryFactory)"}},"id":71920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23404:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"23370:67:104"},{"assignments":[71923],"declarations":[{"constant":false,"id":71923,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"23455:18:104","nodeType":"VariableDeclaration","scope":71958,"src":"23447:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71922,"name":"uint256","nodeType":"ElementaryTypeName","src":"23447:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71933,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71924,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23477:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71925,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"23499:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23477:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71927,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23476:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71930,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71928,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23516:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71929,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"23522:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23516:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71931,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23515:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23476:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23447:91:104"},{"assignments":[71935],"declarations":[{"constant":false,"id":71935,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"23556:16:104","nodeType":"VariableDeclaration","scope":71958,"src":"23548:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71934,"name":"uint256","nodeType":"ElementaryTypeName","src":"23548:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71951,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71936,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23588:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":71941,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23648:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":71940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23640:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71939,"name":"address","nodeType":"ElementaryTypeName","src":"23640:7:104","typeDescriptions":{}}},"id":71942,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23640:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71937,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71917,"src":"23610:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70017","typeString":"contract IRegistryFactory"}},"id":71938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23625:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70016,"src":"23610:29:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":71943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23610:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23588:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71945,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23587:68:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71948,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":71946,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23659:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71947,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70450,"src":"23665:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23659:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":71949,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23658:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23587:94:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23548:133:104"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71956,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71952,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23699:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71953,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71923,"src":"23721:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23699:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":71955,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71935,"src":"23742:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23699:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71914,"id":71957,"nodeType":"Return","src":"23692:66:104"}]},"functionSelector":"28c309e9","implemented":true,"kind":"function","modifiers":[],"name":"getStakeAmountWithFees","nameLocation":"23297:22:104","parameters":{"id":71911,"nodeType":"ParameterList","parameters":[],"src":"23319:2:104"},"returnParameters":{"id":71914,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71913,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71959,"src":"23351:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71912,"name":"uint256","nodeType":"ElementaryTypeName","src":"23351:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23350:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":71967,"nodeType":"FunctionDefinition","src":"23771:115:104","nodes":[],"body":{"id":71966,"nodeType":"Block","src":"23843:43:104","nodes":[],"statements":[{"expression":{"id":71964,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23860:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":71963,"id":71965,"nodeType":"Return","src":"23853:26:104"}]},"functionSelector":"0331383c","implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"23780:20:104","parameters":{"id":71960,"nodeType":"ParameterList","parameters":[],"src":"23800:2:104"},"returnParameters":{"id":71963,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71962,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71967,"src":"23834:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71961,"name":"uint256","nodeType":"ElementaryTypeName","src":"23834:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23833:9:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":71984,"nodeType":"FunctionDefinition","src":"23892:190:104","nodes":[],"body":{"id":71983,"nodeType":"Block","src":"23959:123:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71972,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"23969:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71973,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23969:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71974,"nodeType":"ExpressionStatement","src":"23969:17:104"},{"expression":{"id":71977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71975,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"23996:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71976,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"24018:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23996:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71978,"nodeType":"ExpressionStatement","src":"23996:32:104"},{"eventCall":{"arguments":[{"id":71980,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"24064:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71979,"name":"BasisStakedAmountSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70355,"src":"24043:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":71981,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24043:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71982,"nodeType":"EmitStatement","src":"24038:37:104"}]},"functionSelector":"31f61bca","implemented":true,"kind":"function","modifiers":[],"name":"setBasisStakedAmount","nameLocation":"23901:20:104","parameters":{"id":71970,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71969,"mutability":"mutable","name":"_newAmount","nameLocation":"23930:10:104","nodeType":"VariableDeclaration","scope":71984,"src":"23922:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71968,"name":"uint256","nodeType":"ElementaryTypeName","src":"23922:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23921:20:104"},"returnParameters":{"id":71971,"nodeType":"ParameterList","parameters":[],"src":"23959:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72009,"nodeType":"FunctionDefinition","src":"24088:288:104","nodes":[],"body":{"id":72008,"nodeType":"Block","src":"24154:222:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71989,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"24164:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":71990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24164:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71991,"nodeType":"ExpressionStatement","src":"24164:17:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71994,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71992,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24195:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":71993,"name":"MAX_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70456,"src":"24214:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24195:26:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71999,"nodeType":"IfStatement","src":"24191:86:104","trueBody":{"id":71998,"nodeType":"Block","src":"24223:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71995,"name":"NewFeeGreaterThanMax","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70410,"src":"24244:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24244:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71997,"nodeType":"RevertStatement","src":"24237:29:104"}]}},{"expression":{"id":72002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72000,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70462,"src":"24286:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72001,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24301:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24286:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72003,"nodeType":"ExpressionStatement","src":"24286:31:104"},{"eventCall":{"arguments":[{"id":72005,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71986,"src":"24352:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72004,"name":"CommunityFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70320,"src":"24332:19:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":72006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24332:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72007,"nodeType":"EmitStatement","src":"24327:42:104"}]},"functionSelector":"0d12bbdb","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityFee","nameLocation":"24097:15:104","parameters":{"id":71987,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71986,"mutability":"mutable","name":"_newCommunityFee","nameLocation":"24121:16:104","nodeType":"VariableDeclaration","scope":72009,"src":"24113:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71985,"name":"uint256","nodeType":"ElementaryTypeName","src":"24113:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"24112:26:104"},"returnParameters":{"id":71988,"nodeType":"ParameterList","parameters":[],"src":"24154:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72022,"nodeType":"FunctionDefinition","src":"24419:133:104","nodes":[],"body":{"id":72021,"nodeType":"Block","src":"24496:56:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":72017,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70549,"src":"24521:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72018,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72011,"src":"24537:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72016,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52456,"src":"24513:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":72019,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24513:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72015,"id":72020,"nodeType":"Return","src":"24506:39:104"}]},"functionSelector":"ebd7dc52","implemented":true,"kind":"function","modifiers":[],"name":"isCouncilMember","nameLocation":"24428:15:104","parameters":{"id":72012,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72011,"mutability":"mutable","name":"_member","nameLocation":"24452:7:104","nodeType":"VariableDeclaration","scope":72022,"src":"24444:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72010,"name":"address","nodeType":"ElementaryTypeName","src":"24444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24443:17:104"},"returnParameters":{"id":72015,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72014,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72022,"src":"24490:4:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72013,"name":"bool","nodeType":"ElementaryTypeName","src":"24490:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"24489:6:104"},"scope":72174,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72072,"nodeType":"FunctionDefinition","src":"24558:465:104","nodes":[],"body":{"id":72071,"nodeType":"Block","src":"24614:409:104","nodes":[],"statements":[{"assignments":[72028],"declarations":[{"constant":false,"id":72028,"mutability":"mutable","name":"_member","nameLocation":"24632:7:104","nodeType":"VariableDeclaration","scope":72071,"src":"24624:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72027,"name":"address","nodeType":"ElementaryTypeName","src":"24624:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72031,"initialValue":{"expression":{"id":72029,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24642:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72030,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24646:6:104","memberName":"sender","nodeType":"MemberAccess","src":"24642:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"24624:28:104"},{"expression":{"arguments":[{"id":72033,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24688:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72032,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70595,"src":"24662:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":72034,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24662:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72035,"nodeType":"ExpressionStatement","src":"24662:34:104"},{"expression":{"arguments":[{"id":72037,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24730:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72036,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72109,"src":"24706:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72038,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24706:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72039,"nodeType":"ExpressionStatement","src":"24706:32:104"},{"assignments":[72042],"declarations":[{"constant":false,"id":72042,"mutability":"mutable","name":"member","nameLocation":"24762:6:104","nodeType":"VariableDeclaration","scope":72071,"src":"24748:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":72041,"nodeType":"UserDefinedTypeName","pathNode":{"id":72040,"name":"Member","nameLocations":["24748:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"24748:6:104"},"referencedDeclaration":70271,"src":"24748:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72046,"initialValue":{"baseExpression":{"id":72043,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"24771:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72045,"indexExpression":{"id":72044,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24791:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24771:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"24748:51:104"},{"expression":{"id":72050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24809:35:104","subExpression":{"baseExpression":{"id":72047,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"24816:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72049,"indexExpression":{"id":72048,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24836:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24816:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72051,"nodeType":"ExpressionStatement","src":"24809:35:104"},{"expression":{"id":72055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"24854:34:104","subExpression":{"baseExpression":{"id":72052,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"24861:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72054,"indexExpression":{"id":72053,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24880:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"24861:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72056,"nodeType":"ExpressionStatement","src":"24854:34:104"},{"expression":{"arguments":[{"id":72060,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24924:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72061,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72042,"src":"24933:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72062,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24940:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"24933:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72057,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"24899:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24911:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"24899:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72063,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24899:54:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72064,"nodeType":"ExpressionStatement","src":"24899:54:104"},{"eventCall":{"arguments":[{"id":72066,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72028,"src":"24987:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72067,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72042,"src":"24996:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25003:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"24996:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72065,"name":"MemberUnregistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70308,"src":"24968:18:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24968:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72070,"nodeType":"EmitStatement","src":"24963:53:104"}]},"functionSelector":"b99b4370","implemented":true,"kind":"function","modifiers":[{"id":72025,"kind":"modifierInvocation","modifierName":{"id":72024,"name":"nonReentrant","nameLocations":["24601:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"24601:12:104"},"nodeType":"ModifierInvocation","src":"24601:12:104"}],"name":"unregisterMember","nameLocation":"24567:16:104","parameters":{"id":72023,"nodeType":"ParameterList","parameters":[],"src":"24583:2:104"},"returnParameters":{"id":72026,"nodeType":"ParameterList","parameters":[],"src":"24614:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72109,"nodeType":"FunctionDefinition","src":"25029:474:104","nodes":[],"body":{"id":72108,"nodeType":"Block","src":"25096:407:104","nodes":[],"statements":[{"assignments":[72081],"declarations":[{"constant":false,"id":72081,"mutability":"mutable","name":"memberStrategies","nameLocation":"25123:16:104","nodeType":"VariableDeclaration","scope":72108,"src":"25106:33:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72079,"name":"address","nodeType":"ElementaryTypeName","src":"25106:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72080,"nodeType":"ArrayTypeName","src":"25106:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72085,"initialValue":{"baseExpression":{"id":72082,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70532,"src":"25142:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72084,"indexExpression":{"id":72083,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72074,"src":"25161:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25142:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25106:63:104"},{"body":{"id":72106,"nodeType":"Block","src":"25299:198:104","statements":[{"expression":{"arguments":[{"id":72103,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72074,"src":"25478:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"baseExpression":{"id":72098,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72081,"src":"25440:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72100,"indexExpression":{"id":72099,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25457:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25440:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72097,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65536,"src":"25425:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$65536_$","typeString":"type(contract IPointStrategy)"}},"id":72101,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25425:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$65536","typeString":"contract IPointStrategy"}},"id":72102,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25461:16:104","memberName":"deactivatePoints","nodeType":"MemberAccess","referencedDeclaration":65511,"src":"25425:52:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":72104,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25425:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72105,"nodeType":"ExpressionStatement","src":"25425:61:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72093,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72090,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25265:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":72091,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72081,"src":"25269:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72092,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25286:6:104","memberName":"length","nodeType":"MemberAccess","src":"25269:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25265:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72107,"initializationExpression":{"assignments":[72087],"declarations":[{"constant":false,"id":72087,"mutability":"mutable","name":"i","nameLocation":"25258:1:104","nodeType":"VariableDeclaration","scope":72107,"src":"25250:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72086,"name":"uint256","nodeType":"ElementaryTypeName","src":"25250:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72089,"initialValue":{"hexValue":"30","id":72088,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25262:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25250:13:104"},"loopExpression":{"expression":{"id":72095,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25294:3:104","subExpression":{"id":72094,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72087,"src":"25294:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72096,"nodeType":"ExpressionStatement","src":"25294:3:104"},"nodeType":"ForStatement","src":"25245:252:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"deactivateAllStrategies","nameLocation":"25038:23:104","parameters":{"id":72075,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72074,"mutability":"mutable","name":"_member","nameLocation":"25070:7:104","nodeType":"VariableDeclaration","scope":72109,"src":"25062:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72073,"name":"address","nodeType":"ElementaryTypeName","src":"25062:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25061:17:104"},"returnParameters":{"id":72076,"nodeType":"ParameterList","parameters":[],"src":"25096:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72169,"nodeType":"FunctionDefinition","src":"25509:583:104","nodes":[],"body":{"id":72168,"nodeType":"Block","src":"25600:492:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72118,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70566,"src":"25610:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25610:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72120,"nodeType":"ExpressionStatement","src":"25610:17:104"},{"condition":{"id":72122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25641:14:104","subExpression":{"id":72121,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70471,"src":"25642:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72127,"nodeType":"IfStatement","src":"25637:68:104","trueBody":{"id":72126,"nodeType":"Block","src":"25657:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72123,"name":"KickNotEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70412,"src":"25678:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25678:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72125,"nodeType":"RevertStatement","src":"25671:23:104"}]}},{"condition":{"id":72131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25718:18:104","subExpression":{"arguments":[{"id":72129,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25728:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72128,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71791,"src":"25719:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":72130,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25719:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72136,"nodeType":"IfStatement","src":"25714:75:104","trueBody":{"id":72135,"nodeType":"Block","src":"25738:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72132,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70390,"src":"25759:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72133,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25759:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72134,"nodeType":"RevertStatement","src":"25752:26:104"}]}},{"assignments":[72139],"declarations":[{"constant":false,"id":72139,"mutability":"mutable","name":"member","nameLocation":"25812:6:104","nodeType":"VariableDeclaration","scope":72168,"src":"25798:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member"},"typeName":{"id":72138,"nodeType":"UserDefinedTypeName","pathNode":{"id":72137,"name":"Member","nameLocations":["25798:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":70271,"src":"25798:6:104"},"referencedDeclaration":70271,"src":"25798:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72143,"initialValue":{"baseExpression":{"id":72140,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"25821:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72142,"indexExpression":{"id":72141,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25841:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25821:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"25798:51:104"},{"expression":{"arguments":[{"id":72145,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25883:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72144,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72109,"src":"25859:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72146,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25859:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72147,"nodeType":"ExpressionStatement","src":"25859:32:104"},{"expression":{"id":72151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"25901:35:104","subExpression":{"baseExpression":{"id":72148,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70526,"src":"25908:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$70271_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72150,"indexExpression":{"id":72149,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"25928:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"25908:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72152,"nodeType":"ExpressionStatement","src":"25901:35:104"},{"expression":{"arguments":[{"id":72156,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72113,"src":"25972:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72157,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72139,"src":"25990:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72158,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25997:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"25990:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72153,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70494,"src":"25947:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$56528","typeString":"contract IERC20"}},"id":72155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25959:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":56622,"src":"25947:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$56528_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$56528_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25947:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72160,"nodeType":"ExpressionStatement","src":"25947:63:104"},{"eventCall":{"arguments":[{"id":72162,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72111,"src":"26038:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72163,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72113,"src":"26047:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":72164,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72139,"src":"26065:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$70271_memory_ptr","typeString":"struct Member memory"}},"id":72165,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26072:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":70268,"src":"26065:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72161,"name":"MemberKicked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70316,"src":"26025:12:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":72166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26025:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72167,"nodeType":"EmitStatement","src":"26020:65:104"}]},"functionSelector":"6871eb4d","implemented":true,"kind":"function","modifiers":[{"id":72116,"kind":"modifierInvocation","modifierName":{"id":72115,"name":"nonReentrant","nameLocations":["25587:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":53197,"src":"25587:12:104"},"nodeType":"ModifierInvocation","src":"25587:12:104"}],"name":"kickMember","nameLocation":"25518:10:104","parameters":{"id":72114,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72111,"mutability":"mutable","name":"_member","nameLocation":"25537:7:104","nodeType":"VariableDeclaration","scope":72169,"src":"25529:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72110,"name":"address","nodeType":"ElementaryTypeName","src":"25529:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72113,"mutability":"mutable","name":"_transferAddress","nameLocation":"25554:16:104","nodeType":"VariableDeclaration","scope":72169,"src":"25546:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72112,"name":"address","nodeType":"ElementaryTypeName","src":"25546:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25528:43:104"},"returnParameters":{"id":72117,"nodeType":"ParameterList","parameters":[],"src":"25600:0:104"},"scope":72174,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72173,"nodeType":"VariableDeclaration","src":"26098:25:104","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"26118:5:104","scope":72174,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":72170,"name":"uint256","nodeType":"ElementaryTypeName","src":"26098:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72172,"length":{"hexValue":"3530","id":72171,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26106:2:104","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"26098:11:104","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":70277,"name":"ProxyOwnableUpgrader","nameLocations":["2884:20:104"],"nodeType":"IdentifierPath","referencedDeclaration":70199,"src":"2884:20:104"},"id":70278,"nodeType":"InheritanceSpecifier","src":"2884:20:104"},{"baseName":{"id":70279,"name":"ReentrancyGuardUpgradeable","nameLocations":["2906:26:104"],"nodeType":"IdentifierPath","referencedDeclaration":53237,"src":"2906:26:104"},"id":70280,"nodeType":"InheritanceSpecifier","src":"2906:26:104"},{"baseName":{"id":70281,"name":"AccessControlUpgradeable","nameLocations":["2934:24:104"],"nodeType":"IdentifierPath","referencedDeclaration":52697,"src":"2934:24:104"},"id":70282,"nodeType":"InheritanceSpecifier","src":"2934:24:104"}],"canonicalName":"RegistryCommunityV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":70276,"nodeType":"StructuredDocumentation","src":"2799:51:104","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_0","nameLocation":"2859:21:104","scope":72175,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":104} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json b/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json index 333cfff3..f1a79532 100644 --- a/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json +++ b/pkg/contracts/out/RegistryCommunityV0_1.sol/RegistryCommunityV0_1.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516160a06200004d60003960008181611e4001528181611e8301528181611f7e01528181611fc1015261211301526160a06000f3fe608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004535565b62000d56565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004561565b62000d8e565b005b348015620003f057600080fd5b50620003e162000402366004620045a3565b62000e04565b3480156200041557600080fd5b50620003e162000427366004620045e1565b62001187565b3480156200043a57600080fd5b50620003e16200044c366004620045e1565b6200119f565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e1565b620011cc565b3480156200049f57600080fd5b50620003e1620004b1366004620045a3565b620011e1565b348015620004c457600080fd5b5062000395620004d636600462004561565b620012db565b348015620004e957600080fd5b5062000395620012f0565b3480156200050157600080fd5b50620005196200051336600462004601565b620013f5565b6040516200037a91906200463d565b3480156200053557600080fd5b506200039562000547366004620045e1565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004651565b6200142f565b3480156200059857600080fd5b50620003e1620005aa36600462004561565b62001456565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004861565b62001496565b348015620005fa57600080fd5b50620003e162001b56565b3480156200061257600080fd5b50620003e16200062436600462004651565b62001db8565b3480156200063757600080fd5b50620003e162000649366004620045e1565b62001e36565b3480156200065c57600080fd5b50620003e16200066e366004620045e1565b62001f07565b3480156200068157600080fd5b506200036e62000693366004620045e1565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a3565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f4565b62001f74565b3480156200070d57600080fd5b50620007256200071f36600462004c78565b62002035565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002106565b3480156200076857600080fd5b50620003e16200077a36600462004561565b620021b7565b3480156200078d57600080fd5b50620007256200079f36600462004e59565b62002403565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004561565b6200266b565b348015620007fa57600080fd5b50620003956200080c366004620045a3565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a3565b62002a05565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b58565b348015620008ba57600080fd5b50620003e1620008cc36600462004561565b62002b6e565b348015620008df57600080fd5b506200039560008051602062005fe483398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a3565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004561565b62002c0a565b348015620009d257600080fd5b5062000725620009e436600462004ecd565b62002cc8565b348015620009f757600080fd5b5062000a3862000a09366004620045e1565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e55565b34801562000a9d57600080fd5b506200036e62000aaf36600462004651565b62002ef0565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e1565b62002f1b565b34801562000b2857600080fd5b50620003e162000b3a366004620045e1565b62002f65565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f92565b34801562000b8c57600080fd5b5062000b9762002fc9565b6040516200037a919062004fb4565b34801562000bb357600080fd5b50620003e162003060565b34801562000bcb57600080fd5b50620003956200316a565b34801562000be357600080fd5b50620003e162000bf5366004620045e1565b6200317c565b34801562000c0857600080fd5b5062000b97620031b1565b34801562000c2057600080fd5b50620003e162000c3236600462004651565b620031c1565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fc9565b620031e3565b34801562000cc857600080fd5b506200036e62000cda366004620045e1565b620032a4565b34801562000ced57600080fd5b50620003e162000cff366004620045e1565b620032c1565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b97565b60006001600160e01b03198216637965db0b60e01b148062000d8857506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9862003332565b62000da7612710600a62005052565b81111562000dc85760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e0e6200336f565b62000e1982620033ca565b62000e2481620033f3565b62000e2f816200342e565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7857604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f06573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2c919062005082565b600381111562000f405762000f406200506c565b0362000fc55760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f77908890600090600401620050a2565b6020604051808303816000875af115801562000f97573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fbd9190620050bb565b9050620010c1565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001008573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200102e919062005082565b60038111156200104257620010426200506c565b14620010c15760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010789088908690600401620050a2565b6020604051808303816000875af115801562001098573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010be9190620050bb565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200116d90879087908590620050d5565b60405180910390a1505050620011836001606555565b5050565b6200119162003332565b6200119c816200345d565b50565b620011a9620034bb565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d662003332565b6200119c816200351e565b620011ec82620033ca565b620011f7816200342e565b620012033382620035b0565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124b57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200129d8282620035e3565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012cf929190620050f9565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001310612710606462005052565b60fc5460fb5462001322919062005052565b6200132e919062005113565b9050600062001341612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200136f9030906004016200463d565b602060405180830381865afa1580156200138d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b39190620050bb565b60fb54620013c2919062005052565b620013ce919062005113565b9050808260fb54620013e1919062005136565b620013ed919062005136565b935050505090565b61010d60205281600052604060002081815481106200141357600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143a82620012db565b620014458162003719565b62001451838362003725565b505050565b6200146062003332565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000df9565b600054610100900460ff1615808015620014b75750600054600160ff909116105b80620014dc5750620014c930620037af565b158015620014dc575060005460ff166001145b620015455760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001569576000805461ff0019166101001790555b62001574826200317c565b6200157e620037be565b62001588620037f2565b620015a460008051602062005fe483398151915260006200381c565b620015b385602001516200342e565b620015c38561010001516200342e565b8451620015d0906200342e565b620015df8560a001516200342e565b606085015115620015f957620015f98560c001516200342e565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001654576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016919082620051da565b5061016085015161010990620016a89082620051da565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b03191691851684029190911790559087015161010680549092169281169290921790556200171d9060008051602062005fe48339815191529062003725565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001772573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017989190620052a6565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001824576040805160038082526080820190925290602082016060803683370190505090503381600081518110620017fe57620017fe620052c6565b60200260200101906001600160a01b031690816001600160a01b03168152505062001961565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200186f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018999190810190620052dc565b905080516002620018ab919062005136565b6001600160401b03811115620018c557620018c562004679565b604051908082528060200260200182016040528015620018ef578160200160208202803683370190505b50915060005b81518110156200195e57818181518110620019145762001914620052c6565b6020026020010151838281518110620019315762001931620052c6565b6001600160a01b039092166020928302919091019091015280620019558162005375565b915050620018f5565b50505b6101065481516001600160a01b03909116908290620019839060019062005391565b81518110620019965762001996620052c6565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019c8919062005391565b81518110620019db57620019db620052c6565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a2e9291610108913090889060040162005493565b6020604051808303816000875af115801562001a4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a749190620050bb565b60fe55805162001a8d9061010f9060208401906200448f565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aff9290916101089190620054f3565b60405180910390a150801562001b4f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b606200336f565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b91612710606462005052565b60fc5460fb5462001ba3919062005052565b62001baf919062005113565b9050600062001bc2612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf09030906004016200463d565b602060405180830381865afa15801562001c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c349190620050bb565b60fb5462001c43919062005052565b62001c4f919062005113565b905062001c5c8562002f1b565b62001da65760028401805460ff1916600190811790915560fb5490850181905562001cb69086903090849062001c9490879062005136565b62001ca0919062005136565b610105546001600160a01b031692919062003871565b811562001ce35760ff546101055462001ce3916001600160a01b03918216916101009091041684620038cd565b801562001d685762001d68836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d539190620052a6565b610105546001600160a01b03169083620038cd565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d9d929190620050a2565b60405180910390a15b505050505062001db66001606555565b565b6001600160a01b038116331462001e2a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153c565b620011838282620038ef565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e815760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb562003959565b6001600160a01b03161462001ede5760405162461bcd60e51b81526004016200153c906200555d565b62001ee98162003976565b604080516000808252602082019092526200119c91839190620039b8565b62001f1162003332565b62001f1c816200342e565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000df99392169190620050f9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fbf5760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff362003959565b6001600160a01b0316146200201c5760405162461bcd60e51b81526004016200153c906200555d565b620020278262003976565b6200118382826001620039b8565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206b62002e55565b6040516024016200207f9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020be90620044f5565b620020cb929190620055bb565b604051809103906000f080158015620020e8573d6000803e3d6000fd5b509050620020f981878787620031e3565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153c565b506000805160206200602483398151915290565b620021c16200336f565b620021cb62003b30565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200222f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002210575b50505050509050600080600090505b82518110156200236a578281815181106200225d576200225d620052c6565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002294929190620050a2565b6020604051808303816000875af1158015620022b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022da9190620050bb565b9150811562002355576001600160a01b038416600090815261010b602052604081208451849290869085908110620023165762002316620052c6565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546200234f919062005136565b90915550505b80620023618162005375565b9150506200223e565b506101055462002386906001600160a01b031684308762003871565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b490849062005136565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023ed9085908790620050a2565b60405180910390a15050506200119c6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243962002e55565b6040516024016200244d9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248c90620044f5565b62002499929190620055bb565b604051809103906000f080158015620024b6573d6000803e3d6000fd5b509050620024c78187878762002cc8565b60c087015191945092506001600160a01b0316620025d2576103e88560e00151511115620025505760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153c565b600083604051602001620025659190620055e1565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025cf57620025ba828860e001518381518110620025ac57620025ac620052c6565b602002602001015162003725565b80620025c68162005375565b91505062002580565b50505b6200262e83604051602001620025e99190620055e1565b6040516020818303038152906040528051906020012084604051602001620026129190620055fe565b604051602081830303815290604052805190602001206200381c565b6200266283604051602001620026459190620055fe565b604051602081830303815290604052805190602001208362003725565b50935093915050565b620026756200336f565b6200267f62003b30565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b390869062005391565b1015620026d357604051634e23e81760e11b815260040160405180910390fd5b61010554620026ed906001600160a01b03168486620038cd565b60005b82548110156200299d576000838281548110620027115762002711620052c6565b6000918252602090912001546001600160a01b031690506200273b8163f1801e6160e01b62003b59565b15620028c157604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027719088908a90600401620050a2565b6020604051808303816000875af115801562002791573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027b79190620050bb565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027f857620027f8620052c6565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284c576040516311423e6360e31b815260048101859052602481018290526044016200153c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200287f576200287f620052c6565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b590849062005391565b90915550505062002987565b83548490620028d39060019062005391565b81548110620028e657620028e6620052c6565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029195762002919620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295a576200295a62005621565b600082815260209020810160001990810180546001600160a01b031916905501905562002987816200345d565b5080620029948162005375565b915050620026f0565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cc90849062005391565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023ed9085908790620050a2565b62002a0f6200336f565b62002a1962003332565b60ff80541662002a3c576040516365b1ee3960e11b815260040160405180910390fd5b62002a478262002f1b565b62002a6557604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab68362003b81565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0b9216908490620038cd565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4493929190620050d5565b60405180910390a150620011836001606555565b62002b62620034bb565b62001db6600062003c96565b62002b7862003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bee919081019062005637565b60200151905062002bff816200342e565b62001183816200345d565b62002c1462003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c60573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8a919081019062005637565b60200151905062002c9b816200342e565b62002cb76001600160a01b03821663f1801e6160e01b62003b59565b15620011835762001183816200351e565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf35750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d32575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b9060200162005802565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc19796959493929190620058ab565b6020604051808303816000875af115801562002de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e079190620050bb565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e429594939291906200591c565b60405180910390a1505094509492505050565b60008062002e6b6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8557919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee2575060408051601f3d908101601f1916820190925262002edf91810190620052a6565b60015b62000d8857919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f6f620034bb565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fbf576040516375e686b760e11b815260040160405180910390fd5b62001db662003ce8565b610109805462002fd9906200514c565b80601f016020809104026020016040519081016040528092919081815260200182805462003007906200514c565b8015620030585780601f106200302c5761010080835404028352916020019162003058565b820191906000526020600020905b8154815290600101906020018083116200303a57829003601f168201915b505050505081565b6200306a6200336f565b336200307681620033ca565b620030818162003b81565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030fc919062004503565b6020810151610105546200311e916001600160a01b03909116908490620038cd565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003155929190620050a2565b60405180910390a1505062001db66001606555565b62003179612710600a62005052565b81565b600054610100900460ff16620031a65760405162461bcd60e51b81526004016200153c9062005958565b6200119c8162003c96565b610108805462002fd9906200514c565b620031cc82620012db565b620031d78162003719565b620014518383620038ef565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b038616156200320e5750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116200324d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b90602001620059a3565b600062000d8860008051602062005fe48339815191528362002ef0565b620032cb620034bb565b6001600160a01b038116620031a65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153c565b6200334d60008051602062005fe48339815191523362002ef0565b62001db6573360405163fc4be72f60e01b81526004016200153c91906200463d565b600260655403620033c35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153c565b6002606555565b620033d58162002f1b565b6200119c57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119c576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119c576040516303988b8160e61b815260040160405180910390fd5b6001606555565b62003468816200342e565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000df99083906200463d565b33620034c662002e55565b6001600160a01b03161462001db65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153c565b6001600160a01b038116600090815261010a602052604090205460ff16156200355a576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000df99083906200463d565b806001600160a01b0316826001600160a01b031614620011835760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371357826001600160a01b0316828281548110620036275762003627620052c6565b6000918252602090912001546001600160a01b031603620036fe5781548290620036549060019062005391565b81548110620036675762003667620052c6565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369a576200369a620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036db57620036db62005621565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370a8162005375565b915050620035fe565b50505050565b6200119c813362003d4c565b62003731828262002ef0565b6200118357600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376b3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037e85760405162461bcd60e51b81526004016200153c9062005958565b62001db662003db0565b600054610100900460ff1662001db65760405162461bcd60e51b81526004016200153c9062005958565b60006200382983620012db565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003713846323b872dd60e01b8585856040516024016200389593929190620050d5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003dda565b620014518363a9059cbb60e01b848460405160240162003895929190620050a2565b620038fb828262002ef0565b156200118357600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006024833981519152546001600160a01b031690565b336200398162002e55565b6001600160a01b0316146200119c57336200399b62002e55565b60405163163678e960e01b81526004016200153c929190620050f9565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039ee57620014518362003eb6565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4b575060408051601f3d908101601f1916820190925262003a4891810190620050bb565b60015b62003ab05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153c565b60008051602062006024833981519152811462003b225760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153c565b506200145183838362003f55565b62003b3b3362002f1b565b62001db657604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b668362003f80565b801562003b7a575062003b7a838362003fb8565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bee57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bcf575b5050505050905060005b8151811015620014515781818151811062003c175762003c17620052c6565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4c91906200463d565b600060405180830381600087803b15801562003c6757600080fd5b505af115801562003c7c573d6000803e3d6000fd5b50505050808062003c8d9062005375565b91505062003bf8565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d42906000906200463d565b60405180910390a1565b62003d58828262002ef0565b620011835762003d688162004043565b62003d7583602062004056565b60405160200162003d8892919062005a2c565b60408051601f198184030181529082905262461bcd60e51b82526200153c9160040162004fb4565b600054610100900460ff16620034565760405162461bcd60e51b81526004016200153c9062005958565b600062003e31826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200420f9092919063ffffffff16565b905080516000148062003e5557508080602001905181019062003e55919062005a9f565b620014515760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153c565b62003ec181620037af565b62003f255760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153c565b6000805160206200602483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f608362004228565b60008251118062003f6e5750805b1562001451576200371383836200426a565b600062003f95826301ffc9a760e01b62003fb8565b801562000d88575062003fb1826001600160e01b031962003fb8565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402b575060208210155b8015620040385750600081115b979650505050505050565b606062000d886001600160a01b03831660145b606060006200406783600262005052565b6200407490600262005136565b6001600160401b038111156200408e576200408e62004679565b6040519080825280601f01601f191660200182016040528015620040b9576020820181803683370190505b509050600360fc1b81600081518110620040d757620040d7620052c6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041095762004109620052c6565b60200101906001600160f81b031916908160001a90535060006200412f84600262005052565b6200413c90600162005136565b90505b6001811115620041be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041745762004174620052c6565b1a60f81b8282815181106200418d576200418d620052c6565b60200101906001600160f81b031916908160001a90535060049490941c93620041b68162005abf565b90506200413f565b50831562003b7a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153c565b606062004220848460008562004292565b949350505050565b620042338162003eb6565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7a838360405180606001604052806027815260200162006044602791396200436a565b606082471015620042f55760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153c565b600080866001600160a01b0316858760405162004313919062005ad9565b60006040518083038185875af1925050503d806000811462004352576040519150601f19603f3d011682016040523d82523d6000602084013e62004357565b606091505b50915091506200403887838387620043e8565b6060600080856001600160a01b03168560405162004389919062005ad9565b600060405180830381855af49150503d8060008114620043c6576040519150601f19603f3d011682016040523d82523d6000602084013e620043cb565b606091505b5091509150620043de86838387620043e8565b9695505050505050565b606083156200445c57825160000362004454576200440685620037af565b620044545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153c565b508162004220565b620042208383815115620044735781518083602001fd5b8060405162461bcd60e51b81526004016200153c919062004fb4565b828054828255906000526020600020908101928215620044e7579160200282015b82811115620044e757825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b0565b5062002eec9291506200451e565b6104ec8062005af883390190565b50805460008255906000526020600020908101906200119c91905b5b8082111562002eec57600081556001016200451f565b6000602082840312156200454857600080fd5b81356001600160e01b03198116811462003b7a57600080fd5b6000602082840312156200457457600080fd5b5035919050565b6001600160a01b03811681146200119c57600080fd5b80356200459e816200457b565b919050565b60008060408385031215620045b757600080fd5b8235620045c4816200457b565b91506020830135620045d6816200457b565b809150509250929050565b600060208284031215620045f457600080fd5b813562003b7a816200457b565b600080604083850312156200461557600080fd5b823562004622816200457b565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466557600080fd5b823591506020830135620045d6816200457b565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b457620046b462004679565b60405290565b60405161018081016001600160401b0381118282101715620046b457620046b462004679565b60405160c081016001600160401b0381118282101715620046b457620046b462004679565b60405161010081016001600160401b0381118282101715620046b457620046b462004679565b604051601f8201601f191681016001600160401b038111828210171562004756576200475662004679565b604052919050565b60006001600160401b038211156200477a576200477a62004679565b50601f01601f191660200190565b60006200479f62004799846200475e565b6200472b565b9050828152838383011115620047b457600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047dd57600080fd5b62003b7a8383356020850162004788565b6000604082840312156200480157600080fd5b6200480b6200468f565b82358152905060208201356001600160401b038111156200482b57600080fd5b6200483984828501620047cb565b60208301525092915050565b80151581146200119c57600080fd5b80356200459e8162004845565b600080600080608085870312156200487857600080fd5b84356001600160401b03808211156200489057600080fd5b908601906101808289031215620048a657600080fd5b620048b0620046ba565b620048bb8362004591565b8152620048cb6020840162004591565b6020820152604083013560408201526060830135606082015260808301356080820152620048fc60a0840162004591565b60a08201526200490f60c0840162004591565b60c082015260e0830135828111156200492757600080fd5b620049358a828601620047ee565b60e0830152506101006200494b81850162004591565b9082015261012083810135838111156200496457600080fd5b620049728b828701620047cb565b8284015250506101406200498881850162004854565b908201526101608381013583811115620049a157600080fd5b620049af8b828701620047cb565b828401525050809650505050620049c96020860162004591565b9250620049d96040860162004591565b9150620049e96060860162004591565b905092959194509250565b6000806040838503121562004a0857600080fd5b823562004a15816200457b565b915060208301356001600160401b0381111562004a3157600080fd5b8301601f8101851362004a4357600080fd5b62004a548582356020840162004788565b9150509250929050565b60006080828403121562004a7157600080fd5b604051608081016001600160401b038111828210171562004a965762004a9662004679565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200459e57600080fd5b600481106200119c57600080fd5b80356200459e8162004ad7565b60006020828403121562004b0557600080fd5b604051602081016001600160401b038111828210171562004b2a5762004b2a62004679565b6040529135825250919050565b600060c0828403121562004b4a57600080fd5b62004b54620046e0565b9050813562004b63816200457b565b8152602082013562004b75816200457b565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bbe57600080fd5b60405160e081016001600160401b038111828210171562004be35762004be362004679565b60405290508062004bf5848462004a5e565b815262004c056080840162004ac7565b602082015260a083013562004c1a8162004ad7565b604082015262004c2e8460c0850162004af2565b606082015262004c428460e0850162004b37565b60808201526101a083013562004c58816200457b565b60a082015262004c6c6101c0840162004591565b60c08201525092915050565b6000806000610220848603121562004c8f57600080fd5b833562004c9c816200457b565b925062004cad856020860162004baa565b91506102008401356001600160401b0381111562004cca57600080fd5b62004cd886828701620047ee565b9150509250925092565b60006001600160401b0382111562004cfe5762004cfe62004679565b5060051b60200190565b600082601f83011262004d1a57600080fd5b8135602062004d2d620047998362004ce2565b82815260059290921b8401810191818101908684111562004d4d57600080fd5b8286015b8481101562004d7557803562004d67816200457b565b835291830191830162004d51565b509695505050505050565b6000610200828403121562004d9457600080fd5b62004d9e62004705565b905062004dac838362004a5e565b815262004dbc6080830162004ac7565b602082015262004dcf60a0830162004ae5565b604082015262004de38360c0840162004af2565b606082015262004df78360e0840162004b37565b608082015262004e0b6101a0830162004591565b60a082015262004e1f6101c0830162004591565b60c08201526101e08201356001600160401b0381111562004e3f57600080fd5b62004e4d8482850162004d08565b60e08301525092915050565b60008060006060848603121562004e6f57600080fd5b833562004e7c816200457b565b925060208401356001600160401b038082111562004e9957600080fd5b62004ea78783880162004d80565b9350604086013591508082111562004ebe57600080fd5b5062004cd886828701620047ee565b6000806000806080858703121562004ee457600080fd5b843562004ef1816200457b565b9350602085013562004f03816200457b565b925060408501356001600160401b038082111562004f2057600080fd5b62004f2e8883890162004d80565b9350606087013591508082111562004f4557600080fd5b5062004f5487828801620047ee565b91505092959194509250565b60005b8381101562004f7d57818101518382015260200162004f63565b50506000910152565b6000815180845262004fa081602086016020860162004f60565b601f01601f19169290920160200192915050565b60208152600062003b7a602083018462004f86565b600080600080610240858703121562004fe157600080fd5b843562004fee816200457b565b9350602085013562005000816200457b565b925062005011866040870162004baa565b91506102208501356001600160401b038111156200502e57600080fd5b62004f5487828801620047ee565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d885762000d886200503c565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509557600080fd5b815162003b7a8162004ad7565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050ce57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513157634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d885762000d886200503c565b600181811c908216806200516157607f821691505b6020821081036200518257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145157600081815260208120601f850160051c81016020861015620051b15750805b601f850160051c820191505b81811015620051d257828155600101620051bd565b505050505050565b81516001600160401b03811115620051f657620051f662004679565b6200520e816200520784546200514c565b8462005188565b602080601f8311600181146200524657600084156200522d5750858301515b600019600386901b1c1916600185901b178555620051d2565b600085815260208120601f198616915b82811015620052775788860151825594840194600190910190840162005256565b5085821015620052965787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052b957600080fd5b815162003b7a816200457b565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f057600080fd5b82516001600160401b038111156200530757600080fd5b8301601f810185136200531957600080fd5b80516200532a620047998262004ce2565b81815260059190911b820183019083810190878311156200534a57600080fd5b928401925b828410156200403857835162005365816200457b565b825292840192908401906200534f565b6000600182016200538a576200538a6200503c565b5060010190565b8181038181111562000d885762000d886200503c565b60008154620053b6816200514c565b808552602060018381168015620053d65760018114620053f15762005421565b60ff1985168884015283151560051b88018301955062005421565b866000528260002060005b85811015620054195781548a8201860152908301908401620053fc565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004220604085018262004f86565b600081518084526020808501945080840160005b83811015620054885781516001600160a01b03168752958201959082019060010162005461565b509495945050505050565b85815260a060208201526000620054ae60a0830187620053a7565b8281036040840152620054c281876200542c565b6001600160a01b038616606085015283810360808501529050620054e781856200544d565b98975050505050505050565b8381526060602082015260006200550e6060830185620053a7565b8281036040840152620043de81856200542c565b6020808252602c908201526000805160206200600483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042209083018462004f86565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564b57600080fd5b82516001600160401b03808211156200566357600080fd5b9084019060c082870312156200567857600080fd5b62005682620046e0565b825181528383015162005695816200457b565b818501526040830151620056a9816200457b565b6040820152606083015182811115620056c157600080fd5b830160408189031215620056d457600080fd5b620056de6200468f565b815181528582015184811115620056f457600080fd5b82019350601f840189136200570857600080fd5b835191506200571b62004799836200475e565b82815289878487010111156200573057600080fd5b620057418388830189880162004f60565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a657620057a66200506c565b9052565b60048110620057a657620057a66200506c565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b60208152620058166020820183516200576d565b600060208301516200582c60a084018262005793565b5060408301516200584160c0840182620057aa565b5060608301515160e0830152608083015162005862610100840182620057bd565b5060a0830151620058786101c084018262004630565b5060c08301516200588e6101e084018262004630565b5060e083015161020083810152620042206102208401826200544d565b878152600060018060a01b03808916602084015260e06040840152620058d560e084018962004f86565b818816606085015286608085015283810360a0850152620058f781876200542c565b91505082810360c08401526200590e81856200544d565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062004038908301846200542c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059b98284516200576d565b6020830151620059cd608084018262005793565b506040830151620059e260a0840182620057aa565b5060608301515160c0830152608083015162005a0260e0840182620057bd565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6081601785016020880162004f60565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9381602884016020880162004f60565b01602801949350505050565b60006020828403121562005ab257600080fd5b815162003b7a8162004845565b60008162005ad15762005ad16200503c565b506000190190565b6000825162005aed81846020870162004f60565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207ce949f081211803b391e338567b30f6f7ff7b2a3be667962cb25daddcea92e564736f6c63430008130033","sourceMap":"522:2047:105:-:0;;;1088:4:64;1045:48;;522:2047:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004535565b62000d56565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004561565b62000d8e565b005b348015620003f057600080fd5b50620003e162000402366004620045a3565b62000e04565b3480156200041557600080fd5b50620003e162000427366004620045e1565b62001187565b3480156200043a57600080fd5b50620003e16200044c366004620045e1565b6200119f565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e1565b620011cc565b3480156200049f57600080fd5b50620003e1620004b1366004620045a3565b620011e1565b348015620004c457600080fd5b5062000395620004d636600462004561565b620012db565b348015620004e957600080fd5b5062000395620012f0565b3480156200050157600080fd5b50620005196200051336600462004601565b620013f5565b6040516200037a91906200463d565b3480156200053557600080fd5b506200039562000547366004620045e1565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004651565b6200142f565b3480156200059857600080fd5b50620003e1620005aa36600462004561565b62001456565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004861565b62001496565b348015620005fa57600080fd5b50620003e162001b56565b3480156200061257600080fd5b50620003e16200062436600462004651565b62001db8565b3480156200063757600080fd5b50620003e162000649366004620045e1565b62001e36565b3480156200065c57600080fd5b50620003e16200066e366004620045e1565b62001f07565b3480156200068157600080fd5b506200036e62000693366004620045e1565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a3565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f4565b62001f74565b3480156200070d57600080fd5b50620007256200071f36600462004c78565b62002035565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002106565b3480156200076857600080fd5b50620003e16200077a36600462004561565b620021b7565b3480156200078d57600080fd5b50620007256200079f36600462004e59565b62002403565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004561565b6200266b565b348015620007fa57600080fd5b50620003956200080c366004620045a3565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a3565b62002a05565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b58565b348015620008ba57600080fd5b50620003e1620008cc36600462004561565b62002b6e565b348015620008df57600080fd5b506200039560008051602062005fe483398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a3565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004561565b62002c0a565b348015620009d257600080fd5b5062000725620009e436600462004ecd565b62002cc8565b348015620009f757600080fd5b5062000a3862000a09366004620045e1565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e55565b34801562000a9d57600080fd5b506200036e62000aaf36600462004651565b62002ef0565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e1565b62002f1b565b34801562000b2857600080fd5b50620003e162000b3a366004620045e1565b62002f65565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f92565b34801562000b8c57600080fd5b5062000b9762002fc9565b6040516200037a919062004fb4565b34801562000bb357600080fd5b50620003e162003060565b34801562000bcb57600080fd5b50620003956200316a565b34801562000be357600080fd5b50620003e162000bf5366004620045e1565b6200317c565b34801562000c0857600080fd5b5062000b97620031b1565b34801562000c2057600080fd5b50620003e162000c3236600462004651565b620031c1565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fc9565b620031e3565b34801562000cc857600080fd5b506200036e62000cda366004620045e1565b620032a4565b34801562000ced57600080fd5b50620003e162000cff366004620045e1565b620032c1565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b97565b60006001600160e01b03198216637965db0b60e01b148062000d8857506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9862003332565b62000da7612710600a62005052565b81111562000dc85760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e0e6200336f565b62000e1982620033ca565b62000e2481620033f3565b62000e2f816200342e565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7857604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f06573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2c919062005082565b600381111562000f405762000f406200506c565b0362000fc55760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f77908890600090600401620050a2565b6020604051808303816000875af115801562000f97573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fbd9190620050bb565b9050620010c1565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001008573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200102e919062005082565b60038111156200104257620010426200506c565b14620010c15760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010789088908690600401620050a2565b6020604051808303816000875af115801562001098573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010be9190620050bb565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200116d90879087908590620050d5565b60405180910390a1505050620011836001606555565b5050565b6200119162003332565b6200119c816200345d565b50565b620011a9620034bb565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d662003332565b6200119c816200351e565b620011ec82620033ca565b620011f7816200342e565b620012033382620035b0565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124b57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200129d8282620035e3565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012cf929190620050f9565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001310612710606462005052565b60fc5460fb5462001322919062005052565b6200132e919062005113565b9050600062001341612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200136f9030906004016200463d565b602060405180830381865afa1580156200138d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b39190620050bb565b60fb54620013c2919062005052565b620013ce919062005113565b9050808260fb54620013e1919062005136565b620013ed919062005136565b935050505090565b61010d60205281600052604060002081815481106200141357600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143a82620012db565b620014458162003719565b62001451838362003725565b505050565b6200146062003332565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000df9565b600054610100900460ff1615808015620014b75750600054600160ff909116105b80620014dc5750620014c930620037af565b158015620014dc575060005460ff166001145b620015455760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001569576000805461ff0019166101001790555b62001574826200317c565b6200157e620037be565b62001588620037f2565b620015a460008051602062005fe483398151915260006200381c565b620015b385602001516200342e565b620015c38561010001516200342e565b8451620015d0906200342e565b620015df8560a001516200342e565b606085015115620015f957620015f98560c001516200342e565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001654576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016919082620051da565b5061016085015161010990620016a89082620051da565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b03191691851684029190911790559087015161010680549092169281169290921790556200171d9060008051602062005fe48339815191529062003725565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001772573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017989190620052a6565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001824576040805160038082526080820190925290602082016060803683370190505090503381600081518110620017fe57620017fe620052c6565b60200260200101906001600160a01b031690816001600160a01b03168152505062001961565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200186f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018999190810190620052dc565b905080516002620018ab919062005136565b6001600160401b03811115620018c557620018c562004679565b604051908082528060200260200182016040528015620018ef578160200160208202803683370190505b50915060005b81518110156200195e57818181518110620019145762001914620052c6565b6020026020010151838281518110620019315762001931620052c6565b6001600160a01b039092166020928302919091019091015280620019558162005375565b915050620018f5565b50505b6101065481516001600160a01b03909116908290620019839060019062005391565b81518110620019965762001996620052c6565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019c8919062005391565b81518110620019db57620019db620052c6565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a2e9291610108913090889060040162005493565b6020604051808303816000875af115801562001a4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a749190620050bb565b60fe55805162001a8d9061010f9060208401906200448f565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aff9290916101089190620054f3565b60405180910390a150801562001b4f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b606200336f565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b91612710606462005052565b60fc5460fb5462001ba3919062005052565b62001baf919062005113565b9050600062001bc2612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf09030906004016200463d565b602060405180830381865afa15801562001c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c349190620050bb565b60fb5462001c43919062005052565b62001c4f919062005113565b905062001c5c8562002f1b565b62001da65760028401805460ff1916600190811790915560fb5490850181905562001cb69086903090849062001c9490879062005136565b62001ca0919062005136565b610105546001600160a01b031692919062003871565b811562001ce35760ff546101055462001ce3916001600160a01b03918216916101009091041684620038cd565b801562001d685762001d68836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d539190620052a6565b610105546001600160a01b03169083620038cd565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d9d929190620050a2565b60405180910390a15b505050505062001db66001606555565b565b6001600160a01b038116331462001e2a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153c565b620011838282620038ef565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e815760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb562003959565b6001600160a01b03161462001ede5760405162461bcd60e51b81526004016200153c906200555d565b62001ee98162003976565b604080516000808252602082019092526200119c91839190620039b8565b62001f1162003332565b62001f1c816200342e565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000df99392169190620050f9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fbf5760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff362003959565b6001600160a01b0316146200201c5760405162461bcd60e51b81526004016200153c906200555d565b620020278262003976565b6200118382826001620039b8565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206b62002e55565b6040516024016200207f9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020be90620044f5565b620020cb929190620055bb565b604051809103906000f080158015620020e8573d6000803e3d6000fd5b509050620020f981878787620031e3565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153c565b506000805160206200602483398151915290565b620021c16200336f565b620021cb62003b30565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200222f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002210575b50505050509050600080600090505b82518110156200236a578281815181106200225d576200225d620052c6565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002294929190620050a2565b6020604051808303816000875af1158015620022b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022da9190620050bb565b9150811562002355576001600160a01b038416600090815261010b602052604081208451849290869085908110620023165762002316620052c6565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546200234f919062005136565b90915550505b80620023618162005375565b9150506200223e565b506101055462002386906001600160a01b031684308762003871565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b490849062005136565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023ed9085908790620050a2565b60405180910390a15050506200119c6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243962002e55565b6040516024016200244d9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248c90620044f5565b62002499929190620055bb565b604051809103906000f080158015620024b6573d6000803e3d6000fd5b509050620024c78187878762002cc8565b60c087015191945092506001600160a01b0316620025d2576103e88560e00151511115620025505760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153c565b600083604051602001620025659190620055e1565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025cf57620025ba828860e001518381518110620025ac57620025ac620052c6565b602002602001015162003725565b80620025c68162005375565b91505062002580565b50505b6200262e83604051602001620025e99190620055e1565b6040516020818303038152906040528051906020012084604051602001620026129190620055fe565b604051602081830303815290604052805190602001206200381c565b6200266283604051602001620026459190620055fe565b604051602081830303815290604052805190602001208362003725565b50935093915050565b620026756200336f565b6200267f62003b30565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b390869062005391565b1015620026d357604051634e23e81760e11b815260040160405180910390fd5b61010554620026ed906001600160a01b03168486620038cd565b60005b82548110156200299d576000838281548110620027115762002711620052c6565b6000918252602090912001546001600160a01b031690506200273b8163f1801e6160e01b62003b59565b15620028c157604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027719088908a90600401620050a2565b6020604051808303816000875af115801562002791573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027b79190620050bb565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027f857620027f8620052c6565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284c576040516311423e6360e31b815260048101859052602481018290526044016200153c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200287f576200287f620052c6565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b590849062005391565b90915550505062002987565b83548490620028d39060019062005391565b81548110620028e657620028e6620052c6565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029195762002919620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295a576200295a62005621565b600082815260209020810160001990810180546001600160a01b031916905501905562002987816200345d565b5080620029948162005375565b915050620026f0565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cc90849062005391565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023ed9085908790620050a2565b62002a0f6200336f565b62002a1962003332565b60ff80541662002a3c576040516365b1ee3960e11b815260040160405180910390fd5b62002a478262002f1b565b62002a6557604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab68362003b81565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0b9216908490620038cd565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4493929190620050d5565b60405180910390a150620011836001606555565b62002b62620034bb565b62001db6600062003c96565b62002b7862003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bee919081019062005637565b60200151905062002bff816200342e565b62001183816200345d565b62002c1462003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c60573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8a919081019062005637565b60200151905062002c9b816200342e565b62002cb76001600160a01b03821663f1801e6160e01b62003b59565b15620011835762001183816200351e565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf35750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d32575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b9060200162005802565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc19796959493929190620058ab565b6020604051808303816000875af115801562002de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e079190620050bb565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e429594939291906200591c565b60405180910390a1505094509492505050565b60008062002e6b6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8557919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee2575060408051601f3d908101601f1916820190925262002edf91810190620052a6565b60015b62000d8857919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f6f620034bb565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fbf576040516375e686b760e11b815260040160405180910390fd5b62001db662003ce8565b610109805462002fd9906200514c565b80601f016020809104026020016040519081016040528092919081815260200182805462003007906200514c565b8015620030585780601f106200302c5761010080835404028352916020019162003058565b820191906000526020600020905b8154815290600101906020018083116200303a57829003601f168201915b505050505081565b6200306a6200336f565b336200307681620033ca565b620030818162003b81565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030fc919062004503565b6020810151610105546200311e916001600160a01b03909116908490620038cd565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003155929190620050a2565b60405180910390a1505062001db66001606555565b62003179612710600a62005052565b81565b600054610100900460ff16620031a65760405162461bcd60e51b81526004016200153c9062005958565b6200119c8162003c96565b610108805462002fd9906200514c565b620031cc82620012db565b620031d78162003719565b620014518383620038ef565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b038616156200320e5750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116200324d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b90602001620059a3565b600062000d8860008051602062005fe48339815191528362002ef0565b620032cb620034bb565b6001600160a01b038116620031a65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153c565b6200334d60008051602062005fe48339815191523362002ef0565b62001db6573360405163fc4be72f60e01b81526004016200153c91906200463d565b600260655403620033c35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153c565b6002606555565b620033d58162002f1b565b6200119c57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119c576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119c576040516303988b8160e61b815260040160405180910390fd5b6001606555565b62003468816200342e565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000df99083906200463d565b33620034c662002e55565b6001600160a01b03161462001db65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153c565b6001600160a01b038116600090815261010a602052604090205460ff16156200355a576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000df99083906200463d565b806001600160a01b0316826001600160a01b031614620011835760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371357826001600160a01b0316828281548110620036275762003627620052c6565b6000918252602090912001546001600160a01b031603620036fe5781548290620036549060019062005391565b81548110620036675762003667620052c6565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369a576200369a620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036db57620036db62005621565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370a8162005375565b915050620035fe565b50505050565b6200119c813362003d4c565b62003731828262002ef0565b6200118357600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376b3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037e85760405162461bcd60e51b81526004016200153c9062005958565b62001db662003db0565b600054610100900460ff1662001db65760405162461bcd60e51b81526004016200153c9062005958565b60006200382983620012db565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003713846323b872dd60e01b8585856040516024016200389593929190620050d5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003dda565b620014518363a9059cbb60e01b848460405160240162003895929190620050a2565b620038fb828262002ef0565b156200118357600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006024833981519152546001600160a01b031690565b336200398162002e55565b6001600160a01b0316146200119c57336200399b62002e55565b60405163163678e960e01b81526004016200153c929190620050f9565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039ee57620014518362003eb6565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4b575060408051601f3d908101601f1916820190925262003a4891810190620050bb565b60015b62003ab05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153c565b60008051602062006024833981519152811462003b225760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153c565b506200145183838362003f55565b62003b3b3362002f1b565b62001db657604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b668362003f80565b801562003b7a575062003b7a838362003fb8565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bee57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bcf575b5050505050905060005b8151811015620014515781818151811062003c175762003c17620052c6565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4c91906200463d565b600060405180830381600087803b15801562003c6757600080fd5b505af115801562003c7c573d6000803e3d6000fd5b50505050808062003c8d9062005375565b91505062003bf8565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d42906000906200463d565b60405180910390a1565b62003d58828262002ef0565b620011835762003d688162004043565b62003d7583602062004056565b60405160200162003d8892919062005a2c565b60408051601f198184030181529082905262461bcd60e51b82526200153c9160040162004fb4565b600054610100900460ff16620034565760405162461bcd60e51b81526004016200153c9062005958565b600062003e31826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200420f9092919063ffffffff16565b905080516000148062003e5557508080602001905181019062003e55919062005a9f565b620014515760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153c565b62003ec181620037af565b62003f255760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153c565b6000805160206200602483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f608362004228565b60008251118062003f6e5750805b1562001451576200371383836200426a565b600062003f95826301ffc9a760e01b62003fb8565b801562000d88575062003fb1826001600160e01b031962003fb8565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402b575060208210155b8015620040385750600081115b979650505050505050565b606062000d886001600160a01b03831660145b606060006200406783600262005052565b6200407490600262005136565b6001600160401b038111156200408e576200408e62004679565b6040519080825280601f01601f191660200182016040528015620040b9576020820181803683370190505b509050600360fc1b81600081518110620040d757620040d7620052c6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041095762004109620052c6565b60200101906001600160f81b031916908160001a90535060006200412f84600262005052565b6200413c90600162005136565b90505b6001811115620041be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041745762004174620052c6565b1a60f81b8282815181106200418d576200418d620052c6565b60200101906001600160f81b031916908160001a90535060049490941c93620041b68162005abf565b90506200413f565b50831562003b7a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153c565b606062004220848460008562004292565b949350505050565b620042338162003eb6565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7a838360405180606001604052806027815260200162006044602791396200436a565b606082471015620042f55760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153c565b600080866001600160a01b0316858760405162004313919062005ad9565b60006040518083038185875af1925050503d806000811462004352576040519150601f19603f3d011682016040523d82523d6000602084013e62004357565b606091505b50915091506200403887838387620043e8565b6060600080856001600160a01b03168560405162004389919062005ad9565b600060405180830381855af49150503d8060008114620043c6576040519150601f19603f3d011682016040523d82523d6000602084013e620043cb565b606091505b5091509150620043de86838387620043e8565b9695505050505050565b606083156200445c57825160000362004454576200440685620037af565b620044545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153c565b508162004220565b620042208383815115620044735781518083602001fd5b8060405162461bcd60e51b81526004016200153c919062004fb4565b828054828255906000526020600020908101928215620044e7579160200282015b82811115620044e757825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b0565b5062002eec9291506200451e565b6104ec8062005af883390190565b50805460008255906000526020600020908101906200119c91905b5b8082111562002eec57600081556001016200451f565b6000602082840312156200454857600080fd5b81356001600160e01b03198116811462003b7a57600080fd5b6000602082840312156200457457600080fd5b5035919050565b6001600160a01b03811681146200119c57600080fd5b80356200459e816200457b565b919050565b60008060408385031215620045b757600080fd5b8235620045c4816200457b565b91506020830135620045d6816200457b565b809150509250929050565b600060208284031215620045f457600080fd5b813562003b7a816200457b565b600080604083850312156200461557600080fd5b823562004622816200457b565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466557600080fd5b823591506020830135620045d6816200457b565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b457620046b462004679565b60405290565b60405161018081016001600160401b0381118282101715620046b457620046b462004679565b60405160c081016001600160401b0381118282101715620046b457620046b462004679565b60405161010081016001600160401b0381118282101715620046b457620046b462004679565b604051601f8201601f191681016001600160401b038111828210171562004756576200475662004679565b604052919050565b60006001600160401b038211156200477a576200477a62004679565b50601f01601f191660200190565b60006200479f62004799846200475e565b6200472b565b9050828152838383011115620047b457600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047dd57600080fd5b62003b7a8383356020850162004788565b6000604082840312156200480157600080fd5b6200480b6200468f565b82358152905060208201356001600160401b038111156200482b57600080fd5b6200483984828501620047cb565b60208301525092915050565b80151581146200119c57600080fd5b80356200459e8162004845565b600080600080608085870312156200487857600080fd5b84356001600160401b03808211156200489057600080fd5b908601906101808289031215620048a657600080fd5b620048b0620046ba565b620048bb8362004591565b8152620048cb6020840162004591565b6020820152604083013560408201526060830135606082015260808301356080820152620048fc60a0840162004591565b60a08201526200490f60c0840162004591565b60c082015260e0830135828111156200492757600080fd5b620049358a828601620047ee565b60e0830152506101006200494b81850162004591565b9082015261012083810135838111156200496457600080fd5b620049728b828701620047cb565b8284015250506101406200498881850162004854565b908201526101608381013583811115620049a157600080fd5b620049af8b828701620047cb565b828401525050809650505050620049c96020860162004591565b9250620049d96040860162004591565b9150620049e96060860162004591565b905092959194509250565b6000806040838503121562004a0857600080fd5b823562004a15816200457b565b915060208301356001600160401b0381111562004a3157600080fd5b8301601f8101851362004a4357600080fd5b62004a548582356020840162004788565b9150509250929050565b60006080828403121562004a7157600080fd5b604051608081016001600160401b038111828210171562004a965762004a9662004679565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200459e57600080fd5b600481106200119c57600080fd5b80356200459e8162004ad7565b60006020828403121562004b0557600080fd5b604051602081016001600160401b038111828210171562004b2a5762004b2a62004679565b6040529135825250919050565b600060c0828403121562004b4a57600080fd5b62004b54620046e0565b9050813562004b63816200457b565b8152602082013562004b75816200457b565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bbe57600080fd5b60405160e081016001600160401b038111828210171562004be35762004be362004679565b60405290508062004bf5848462004a5e565b815262004c056080840162004ac7565b602082015260a083013562004c1a8162004ad7565b604082015262004c2e8460c0850162004af2565b606082015262004c428460e0850162004b37565b60808201526101a083013562004c58816200457b565b60a082015262004c6c6101c0840162004591565b60c08201525092915050565b6000806000610220848603121562004c8f57600080fd5b833562004c9c816200457b565b925062004cad856020860162004baa565b91506102008401356001600160401b0381111562004cca57600080fd5b62004cd886828701620047ee565b9150509250925092565b60006001600160401b0382111562004cfe5762004cfe62004679565b5060051b60200190565b600082601f83011262004d1a57600080fd5b8135602062004d2d620047998362004ce2565b82815260059290921b8401810191818101908684111562004d4d57600080fd5b8286015b8481101562004d7557803562004d67816200457b565b835291830191830162004d51565b509695505050505050565b6000610200828403121562004d9457600080fd5b62004d9e62004705565b905062004dac838362004a5e565b815262004dbc6080830162004ac7565b602082015262004dcf60a0830162004ae5565b604082015262004de38360c0840162004af2565b606082015262004df78360e0840162004b37565b608082015262004e0b6101a0830162004591565b60a082015262004e1f6101c0830162004591565b60c08201526101e08201356001600160401b0381111562004e3f57600080fd5b62004e4d8482850162004d08565b60e08301525092915050565b60008060006060848603121562004e6f57600080fd5b833562004e7c816200457b565b925060208401356001600160401b038082111562004e9957600080fd5b62004ea78783880162004d80565b9350604086013591508082111562004ebe57600080fd5b5062004cd886828701620047ee565b6000806000806080858703121562004ee457600080fd5b843562004ef1816200457b565b9350602085013562004f03816200457b565b925060408501356001600160401b038082111562004f2057600080fd5b62004f2e8883890162004d80565b9350606087013591508082111562004f4557600080fd5b5062004f5487828801620047ee565b91505092959194509250565b60005b8381101562004f7d57818101518382015260200162004f63565b50506000910152565b6000815180845262004fa081602086016020860162004f60565b601f01601f19169290920160200192915050565b60208152600062003b7a602083018462004f86565b600080600080610240858703121562004fe157600080fd5b843562004fee816200457b565b9350602085013562005000816200457b565b925062005011866040870162004baa565b91506102208501356001600160401b038111156200502e57600080fd5b62004f5487828801620047ee565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d885762000d886200503c565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509557600080fd5b815162003b7a8162004ad7565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050ce57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513157634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d885762000d886200503c565b600181811c908216806200516157607f821691505b6020821081036200518257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145157600081815260208120601f850160051c81016020861015620051b15750805b601f850160051c820191505b81811015620051d257828155600101620051bd565b505050505050565b81516001600160401b03811115620051f657620051f662004679565b6200520e816200520784546200514c565b8462005188565b602080601f8311600181146200524657600084156200522d5750858301515b600019600386901b1c1916600185901b178555620051d2565b600085815260208120601f198616915b82811015620052775788860151825594840194600190910190840162005256565b5085821015620052965787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052b957600080fd5b815162003b7a816200457b565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f057600080fd5b82516001600160401b038111156200530757600080fd5b8301601f810185136200531957600080fd5b80516200532a620047998262004ce2565b81815260059190911b820183019083810190878311156200534a57600080fd5b928401925b828410156200403857835162005365816200457b565b825292840192908401906200534f565b6000600182016200538a576200538a6200503c565b5060010190565b8181038181111562000d885762000d886200503c565b60008154620053b6816200514c565b808552602060018381168015620053d65760018114620053f15762005421565b60ff1985168884015283151560051b88018301955062005421565b866000528260002060005b85811015620054195781548a8201860152908301908401620053fc565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004220604085018262004f86565b600081518084526020808501945080840160005b83811015620054885781516001600160a01b03168752958201959082019060010162005461565b509495945050505050565b85815260a060208201526000620054ae60a0830187620053a7565b8281036040840152620054c281876200542c565b6001600160a01b038616606085015283810360808501529050620054e781856200544d565b98975050505050505050565b8381526060602082015260006200550e6060830185620053a7565b8281036040840152620043de81856200542c565b6020808252602c908201526000805160206200600483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042209083018462004f86565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564b57600080fd5b82516001600160401b03808211156200566357600080fd5b9084019060c082870312156200567857600080fd5b62005682620046e0565b825181528383015162005695816200457b565b818501526040830151620056a9816200457b565b6040820152606083015182811115620056c157600080fd5b830160408189031215620056d457600080fd5b620056de6200468f565b815181528582015184811115620056f457600080fd5b82019350601f840189136200570857600080fd5b835191506200571b62004799836200475e565b82815289878487010111156200573057600080fd5b620057418388830189880162004f60565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a657620057a66200506c565b9052565b60048110620057a657620057a66200506c565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b60208152620058166020820183516200576d565b600060208301516200582c60a084018262005793565b5060408301516200584160c0840182620057aa565b5060608301515160e0830152608083015162005862610100840182620057bd565b5060a0830151620058786101c084018262004630565b5060c08301516200588e6101e084018262004630565b5060e083015161020083810152620042206102208401826200544d565b878152600060018060a01b03808916602084015260e06040840152620058d560e084018962004f86565b818816606085015286608085015283810360a0850152620058f781876200542c565b91505082810360c08401526200590e81856200544d565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062004038908301846200542c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059b98284516200576d565b6020830151620059cd608084018262005793565b506040830151620059e260a0840182620057aa565b5060608301515160c0830152608083015162005a0260e0840182620057bd565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6081601785016020880162004f60565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9381602884016020880162004f60565b01602801949350505050565b60006020828403121562005ab257600080fd5b815162003b7a8162004845565b60008162005ad15762005ad16200503c565b506000190190565b6000825162005aed81846020870162004f60565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207ce949f081211803b391e338567b30f6f7ff7b2a3be667962cb25daddcea92e564736f6c63430008130033","sourceMap":"522:2047:105:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:43;;;;;;;;;;-1:-1:-1;3050:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:131;;463:22;445:41;;433:2;418:18;3050:213:43;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:131;;;631:2;616:18;23771:115:104;497:177:131;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4855:129:43:-;;;;;;;;;;-1:-1:-1;4855:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19069:151::-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5280:145:43;;;;;;;;;;-1:-1:-1;5280:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6389:214:43:-;;;;;;;;;;-1:-1:-1;6389:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;12805:25:131;;;-1:-1:-1;;;;;12866:32:131;;;12861:2;12846:18;;12839:60;12778:18;12647:531:104;12631:274:131;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;584:1317:105:-;;;;;;;;;;-1:-1:-1;584:1317:105;;;;;:::i;:::-;;:::i;6550:31:104:-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18890:173;5795:34;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;1907:660:105:-;;;;;;;;;;-1:-1:-1;1907:660:105;;;;;:::i;:::-;;:::i;7605:60:104:-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;17412:32:131;;;17394:51;;17476:2;17461:18;;17454:34;;;;17531:14;17524:22;17504:18;;;17497:50;17382:2;17367:18;7605:60:104;17198:355:131;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3350:145:43:-;;;;;;;;;;-1:-1:-1;3350:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2320:49:43;;;;;;;;;;-1:-1:-1;2320:49:43;2365:4;2320:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5705:147:43:-;;;;;;;;;;-1:-1:-1;5705:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;5202:92;;;;;;;;;;-1:-1:-1;5275:12:104;;;;;;;;;;;;-1:-1:-1;;;5275:12:104;;;;5202:92;;3050:213:43;3135:4;-1:-1:-1;;;;;;3158:58:43;;-1:-1:-1;;;3158:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3220:36:43;3151:105;3050:213;-1:-1:-1;;3050:213:43:o;24088:288:104:-;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:131;;;24332:37:104;;631:2:131;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4855:129:43:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;5280:145:43:-;5363:18;5376:4;5363:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5393:25:::1;5404:4;5410:7;5393:10;:25::i;:::-;5280:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:131;;;24043:32:104;;631:2:131;616:18;24043:32:104;497:177:131;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22268:2:131;3325:201:47;;;22250:21:131;22307:2;22287:18;;;22280:30;22346:34;22326:18;;;22319:62;-1:-1:-1;;;22397:18:131;;;22390:44;22451:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2365:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;29847:36:131;;3721:14:47;;29835:2:131;29820:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6389:214:43:-;-1:-1:-1;;;;;6484:23:43;;965:10:51;6484:23:43;6476:83;;;;-1:-1:-1;;;6476:83:43;;30096:2:131;6476:83:43;;;30078:21:131;30135:2;30115:18;;;30108:30;30174:34;30154:18;;;30147:62;-1:-1:-1;;;30225:18:131;;;30218:45;30280:19;;6476:83:43;29894:411:131;6476:83:43;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;32364:2:131;2064:92:64;;;32346:21:131;32403:2;32383:18;;;32376:30;32442:34;32422:18;;;32415:62;-1:-1:-1;;;32493:18:131;;;32486:54;32557:19;;2064:92:64;32162:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;584:1317:105;877:16;;973:4;;980:23;;742:14;;;;;;-1:-1:-1;;;;;877:16:105;;;;-1:-1:-1;;;935:28:105;973:4;;;980:23;1005:7;:5;:7::i;:::-;912:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;912:101:105;;;;;;;;;;;;;;-1:-1:-1;;;;;912:101:105;-1:-1:-1;;;;;;912:101:105;;;;;;;;;;835:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;790:247;;1068:53;1079:13;1094:6;1102:7;1111:9;1068:10;:53::i;:::-;1144:19;;;;1047:74;;-1:-1:-1;1047:74:105;-1:-1:-1;;;;;;1136:42:105;1132:454;;1232:4;1198:7;:24;;;:31;:38;1194:134;;;1256:57;;-1:-1:-1;;;1256:57:105;;32789:2:131;1256:57:105;;;32771:21:131;32828:2;32808:18;;;32801:30;32867:34;32847:18;;;32840:62;-1:-1:-1;;;32918:18:131;;;32911:45;32973:19;;1256:57:105;32587:411:131;1194:134:105;1341:21;1405:6;1375:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1365:48;;;;;;1341:72;;1432:9;1427:149;1451:7;:24;;;:31;1447:1;:35;1427:149;;;1507:54;1518:13;1533:7;:24;;;1558:1;1533:27;;;;;;;;:::i;:::-;;;;;;;1507:10;:54::i;:::-;1484:3;;;;:::i;:::-;;;;1427:149;;;;1180:406;1132:454;1667:141;1734:6;1704:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1694:48;;;;;;1790:6;1754:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1744:54;;;;;;1667:13;:141::i;:::-;1818:76;1875:6;1839:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1829:54;;;;;;1885:8;1818:10;:76::i;:::-;780:1121;584:1317;;;;;;:::o;17322:1562:104:-;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;33842:25:131::0;;;33883:18;;;33876:34;;;33815:18;;18259:57:104::1;33668:248:131::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:131;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:131;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:131;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:131;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;1907:660:105:-;2098:14;;5412:42:104;-1:-1:-1;;;;;2178:20:105;;;2174:65;;-1:-1:-1;2222:6:105;2174:65;2259:9;2248:20;;2279:31;2313:14;2279:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2279:48:105;;;;;;;;;;;;;;;;-1:-1:-1;;2347:4:105;;2394:9;;2415:19;;2279:48;;-1:-1:-1;;;;;;2347:4:105;;;;:33;;-1:-1:-1;2394:9:105;;-1:-1:-1;2405:8:105;;-1:-1:-1;2415:19:105;;2426:7;;2415:19;;;:::i;:::-;;;;;;;;;;;;;2436:5;2443:1;2446:9;2457:14;2347:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2338:143;;2497:63;2509:6;2517:8;2535:4;2542:6;2550:9;2497:63;;;;;;;;;;:::i;:::-;;;;;;;;2132:435;;1907:660;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3350:145:43:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:43;;;;;;;;;;;;;;;3350:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5705:147:43:-;5789:18;5802:4;5789:12;:18::i;:::-;2798:16;2809:4;2798:10;:16::i;:::-;5819:26:::1;5831:4;5837:7;5819:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;41132:2:131;2415:73:45::1;::::0;::::1;41114:21:131::0;41171:2;41151:18;;;41144:30;41210:34;41190:18;;;41183:62;-1:-1:-1;;;41261:18:131;;;41254:36;41307:19;;2415:73:45::1;40930:402:131::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;41539:2:131;2725:63:48;;;41521:21:131;41578:2;41558:18;;;41551:30;41617:33;41597:18;;;41590:61;41668:18;;2725:63:48;41337:355:131;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;41899:2:131;1675:68:45;;;41881:21:131;;;41918:18;;;41911:30;41977:34;41957:18;;;41950:62;42029:18;;1675:68:45;41697:356:131;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3789:103:43:-;3855:30;3866:4;965:10:51;3855::43;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:43;;;;;;;;;:36;;-1:-1:-1;;8059:36:43;8091:4;8059:36;;;8141:12;965:10:51;;886:96;8141:12:43;-1:-1:-1;;;;;8114:40:43;8132:7;-1:-1:-1;;;;;8114:40:43;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2838:65:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7523:247:43:-;7606:25;7634:18;7647:4;7634:12;:18::i;:::-;7662:12;;;;:6;:12;;;;;;:22;;:34;;;7711:52;7606:46;;-1:-1:-1;7687:9:43;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8342:234:43:-;8425:22;8433:4;8439:7;8425;:22::i;:::-;8421:149;;;8495:5;8463:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8463:29:43;;;;;;;;;;:37;;-1:-1:-1;;8463:37:43;;;8519:40;965:10:51;;8463:12:43;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;42260:2:131;3262:56:60;;;42242:21:131;42299:2;42279:18;;;42272:30;42338:34;42318:18;;;42311:62;-1:-1:-1;;;42389:18:131;;;42382:44;42443:19;;3262:56:60;42058:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;42675:2:131;3140:82:60;;;42657:21:131;42714:2;42694:18;;;42687:30;42753:34;42733:18;;;42726:62;-1:-1:-1;;;42804:18:131;;;42797:39;42853:19;;3140:82:60;42473:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4173:501:43:-;4261:22;4269:4;4275:7;4261;:22::i;:::-;4256:412;;4444:39;4475:7;4444:30;:39::i;:::-;4554:49;4593:4;4600:2;4554:30;:49::i;:::-;4351:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4351:274:43;;;;;;;;;;-1:-1:-1;;;4299:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;44368:2:131;5697:111:73;;;44350:21:131;44407:2;44387:18;;;44380:30;44446:34;44426:18;;;44419:62;-1:-1:-1;;;44497:18:131;;;44490:40;44547:19;;5697:111:73;44166:406:131;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;44779:2:131;1479:95:60;;;44761:21:131;44818:2;44798:18;;;44791:30;44857:34;44837:18;;;44830:62;-1:-1:-1;;;44908:18:131;;;44901:43;44961:19;;1479:95:60;44577:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;45153:33:131;;4592:71:81;;;;45135:52:131;;;;4592:71:81;;;;;;;;;;45108:18:131;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;45541:2:131;2228:55:52;;;45523:21:131;;;45560:18;;;45553:30;45619:34;45599:18;;;45592:62;45671:18;;2228:55:52;45339:356:131;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;45902:2:131;5354:81:76;;;45884:21:131;45941:2;45921:18;;;45914:30;45980:34;45960:18;;;45953:62;-1:-1:-1;;;46031:18:131;;;46024:36;46077:19;;5354:81:76;45700:402:131;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;46601:2:131;8113:60:76;;;46583:21:131;46640:2;46620:18;;;46613:30;46679:31;46659:18;;;46652:59;46728:18;;8113:60:76;46399:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:131;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:131;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:131;;861:180;-1:-1:-1;861:180:131:o;1046:131::-;-1:-1:-1;;;;;1121:31:131;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:131;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:131:o;2471:104::-;-1:-1:-1;;;;;2537:31:131;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:131;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:131;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:131;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:131;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:255::-;4092:2;4086:9;4134:6;4122:19;;-1:-1:-1;;;;;4156:34:131;;4192:22;;;4153:62;4150:88;;;4218:18;;:::i;4280:275::-;4351:2;4345:9;4416:2;4397:13;;-1:-1:-1;;4393:27:131;4381:40;;-1:-1:-1;;;;;4436:34:131;;4472:22;;;4433:62;4430:88;;;4498:18;;:::i;:::-;4534:2;4527:22;4280:275;;-1:-1:-1;4280:275:131:o;4560:187::-;4609:4;-1:-1:-1;;;;;4631:30:131;;4628:56;;;4664:18;;:::i;:::-;-1:-1:-1;4730:2:131;4709:15;-1:-1:-1;;4705:29:131;4736:4;4701:40;;4560:187::o;4752:338::-;4817:5;4846:53;4862:36;4891:6;4862:36;:::i;:::-;4846:53;:::i;:::-;4837:62;;4922:6;4915:5;4908:21;4962:3;4953:6;4948:3;4944:16;4941:25;4938:45;;;4979:1;4976;4969:12;4938:45;5028:6;5023:3;5016:4;5009:5;5005:16;4992:43;5082:1;5075:4;5066:6;5059:5;5055:18;5051:29;5044:40;4752:338;;;;;:::o;5095:222::-;5138:5;5191:3;5184:4;5176:6;5172:17;5168:27;5158:55;;5209:1;5206;5199:12;5158:55;5231:80;5307:3;5298:6;5285:20;5278:4;5270:6;5266:17;5231:80;:::i;5322:411::-;5377:5;5425:4;5413:9;5408:3;5404:19;5400:30;5397:50;;;5443:1;5440;5433:12;5397:50;5465:22;;:::i;:::-;5510:23;;5496:38;;5456:31;-1:-1:-1;5585:2:131;5570:18;;5557:32;-1:-1:-1;;;;;5601:30:131;;5598:50;;;5644:1;5641;5634:12;5598:50;5680:46;5722:3;5713:6;5702:9;5698:22;5680:46;:::i;:::-;5675:2;5668:5;5664:14;5657:70;;5322:411;;;;:::o;5738:118::-;5824:5;5817:13;5810:21;5803:5;5800:32;5790:60;;5846:1;5843;5836:12;5861:128;5926:20;;5955:28;5926:20;5955:28;:::i;5994:1871::-;6136:6;6144;6152;6160;6213:3;6201:9;6192:7;6188:23;6184:33;6181:53;;;6230:1;6227;6220:12;6181:53;6257:23;;-1:-1:-1;;;;;6329:14:131;;;6326:34;;;6356:1;6353;6346:12;6326:34;6379:22;;;;6435:6;6417:16;;;6413:29;6410:49;;;6455:1;6452;6445:12;6410:49;6481:22;;:::i;:::-;6526;6545:2;6526:22;:::i;:::-;6519:5;6512:37;6581:31;6608:2;6604;6600:11;6581:31;:::i;:::-;6576:2;6569:5;6565:14;6558:55;6666:2;6662;6658:11;6645:25;6640:2;6633:5;6629:14;6622:49;6724:2;6720;6716:11;6703:25;6698:2;6691:5;6687:14;6680:49;6783:3;6779:2;6775:12;6762:26;6756:3;6749:5;6745:15;6738:51;6822:32;6849:3;6845:2;6841:12;6822:32;:::i;:::-;6816:3;6809:5;6805:15;6798:57;6888:32;6915:3;6911:2;6907:12;6888:32;:::i;:::-;6882:3;6875:5;6871:15;6864:57;6967:3;6963:2;6959:12;6946:26;6997:2;6987:8;6984:16;6981:36;;;7013:1;7010;7003:12;6981:36;7050:54;7096:7;7085:8;7081:2;7077:17;7050:54;:::i;:::-;7044:3;7037:5;7033:15;7026:79;;7124:3;7159:31;7186:2;7182;7178:11;7159:31;:::i;:::-;7143:14;;;7136:55;7210:3;7251:11;;;7238:25;7275:16;;;7272:36;;;7304:1;7301;7294:12;7272:36;7340:45;7377:7;7366:8;7362:2;7358:17;7340:45;:::i;:::-;7335:2;7328:5;7324:14;7317:69;;;7405:3;7440:28;7464:2;7460;7456:11;7440:28;:::i;:::-;7424:14;;;7417:52;7488:3;7529:11;;;7516:25;7553:16;;;7550:36;;;7582:1;7579;7572:12;7550:36;7618:45;7655:7;7644:8;7640:2;7636:17;7618:45;:::i;:::-;7613:2;7606:5;7602:14;7595:69;;;7683:5;7673:15;;;;;7707:38;7741:2;7730:9;7726:18;7707:38;:::i;:::-;7697:48;;7764:38;7798:2;7787:9;7783:18;7764:38;:::i;:::-;7754:48;;7821:38;7855:2;7844:9;7840:18;7821:38;:::i;:::-;7811:48;;5994:1871;;;;;;;:::o;8130:585::-;8207:6;8215;8268:2;8256:9;8247:7;8243:23;8239:32;8236:52;;;8284:1;8281;8274:12;8236:52;8323:9;8310:23;8342:31;8367:5;8342:31;:::i;:::-;8392:5;-1:-1:-1;8448:2:131;8433:18;;8420:32;-1:-1:-1;;;;;8464:30:131;;8461:50;;;8507:1;8504;8497:12;8461:50;8530:22;;8583:4;8575:13;;8571:27;-1:-1:-1;8561:55:131;;8612:1;8609;8602:12;8561:55;8635:74;8701:7;8696:2;8683:16;8678:2;8674;8670:11;8635:74;:::i;:::-;8625:84;;;8130:585;;;;;:::o;8720:605::-;8775:5;8823:4;8811:9;8806:3;8802:19;8798:30;8795:50;;;8841:1;8838;8831:12;8795:50;8874:2;8868:9;8916:4;8904:17;;-1:-1:-1;;;;;8936:34:131;;8972:22;;;8933:62;8930:88;;;8998:18;;:::i;:::-;9038:10;9034:2;9027:22;;9067:6;9058:15;;9110:9;9097:23;9089:6;9082:39;9182:2;9171:9;9167:18;9154:32;9149:2;9141:6;9137:15;9130:57;9248:2;9237:9;9233:18;9220:32;9215:2;9207:6;9203:15;9196:57;9314:2;9303:9;9299:18;9286:32;9281:2;9273:6;9269:15;9262:57;;8720:605;;;;:::o;9330:153::-;9408:20;;9457:1;9447:12;;9437:40;;9473:1;9470;9463:12;9488:110;9572:1;9565:5;9562:12;9552:40;;9588:1;9585;9578:12;9603:152;9680:20;;9709:40;9680:20;9709:40;:::i;9760:416::-;9824:5;9872:4;9860:9;9855:3;9851:19;9847:30;9844:50;;;9890:1;9887;9880:12;9844:50;9923:2;9917:9;9965:4;9953:17;;-1:-1:-1;;;;;9985:34:131;;10021:22;;;9982:62;9979:88;;;10047:18;;:::i;:::-;10083:2;10076:22;10146:23;;10131:39;;-1:-1:-1;10116:6:131;9760:416;-1:-1:-1;9760:416:131:o;10181:701::-;10244:5;10292:4;10280:9;10275:3;10271:19;10267:30;10264:50;;;10310:1;10307;10300:12;10264:50;10332:22;;:::i;:::-;10323:31;;10391:9;10378:23;10410:33;10435:7;10410:33;:::i;:::-;10452:22;;10526:2;10511:18;;10498:32;10539:33;10498:32;10539:33;:::i;:::-;10604:7;10599:2;10592:5;10588:14;10581:31;;10672:2;10661:9;10657:18;10644:32;10639:2;10632:5;10628:14;10621:56;10737:2;10726:9;10722:18;10709:32;10704:2;10697:5;10693:14;10686:56;10803:3;10792:9;10788:19;10775:33;10769:3;10762:5;10758:15;10751:58;10870:3;10859:9;10855:19;10842:33;10836:3;10829:5;10825:15;10818:58;10181:701;;;;:::o;10887:1090::-;10962:5;11010:6;10998:9;10993:3;10989:19;10985:32;10982:52;;;11030:1;11027;11020:12;10982:52;11063:2;11057:9;11105:4;11093:17;;-1:-1:-1;;;;;11125:34:131;;11161:22;;;11122:62;11119:88;;;11187:18;;:::i;:::-;11223:2;11216:22;11256:6;-1:-1:-1;11256:6:131;11286:42;11324:3;11313:9;11286:42;:::i;:::-;11278:6;11271:58;11364:49;11408:3;11397:9;11393:19;11364:49;:::i;:::-;11357:4;11349:6;11345:17;11338:76;11466:3;11455:9;11451:19;11438:33;11480:42;11514:7;11480:42;:::i;:::-;11550:2;11538:15;;11531:32;11598:61;11655:3;11649;11634:19;;11598:61;:::i;:::-;11591:4;11583:6;11579:17;11572:88;11694:61;11751:3;11744:4;11733:9;11729:20;11694:61;:::i;:::-;11688:3;11680:6;11676:16;11669:87;11808:3;11797:9;11793:19;11780:33;11822;11847:7;11822:33;:::i;:::-;11883:3;11871:16;;11864:33;11931:39;11965:3;11950:19;;11931:39;:::i;:::-;11925:3;11917:6;11913:16;11906:65;;10887:1090;;;;:::o;11982:644::-;12134:6;12142;12150;12203:3;12191:9;12182:7;12178:23;12174:33;12171:53;;;12220:1;12217;12210:12;12171:53;12259:9;12246:23;12278:31;12303:5;12278:31;:::i;:::-;12328:5;-1:-1:-1;12352:75:131;12419:7;12414:2;12399:18;;12352:75;:::i;:::-;12342:85;-1:-1:-1;12478:3:131;12463:19;;12450:33;-1:-1:-1;;;;;12495:30:131;;12492:50;;;12538:1;12535;12528:12;12492:50;12561:59;12612:7;12603:6;12592:9;12588:22;12561:59;:::i;:::-;12551:69;;;11982:644;;;;;:::o;12910:183::-;12970:4;-1:-1:-1;;;;;12992:30:131;;12989:56;;;13025:18;;:::i;:::-;-1:-1:-1;13070:1:131;13066:14;13082:4;13062:25;;12910:183::o;13098:737::-;13152:5;13205:3;13198:4;13190:6;13186:17;13182:27;13172:55;;13223:1;13220;13213:12;13172:55;13259:6;13246:20;13285:4;13309:60;13325:43;13365:2;13325:43;:::i;13309:60::-;13403:15;;;13489:1;13485:10;;;;13473:23;;13469:32;;;13434:12;;;;13513:15;;;13510:35;;;13541:1;13538;13531:12;13510:35;13577:2;13569:6;13565:15;13589:217;13605:6;13600:3;13597:15;13589:217;;;13685:3;13672:17;13702:31;13727:5;13702:31;:::i;:::-;13746:18;;13784:12;;;;13622;;13589:217;;;-1:-1:-1;13824:5:131;13098:737;-1:-1:-1;;;;;;13098:737:131:o;13840:974::-;13921:5;13969:6;13957:9;13952:3;13948:19;13944:32;13941:52;;;13989:1;13986;13979:12;13941:52;14011:22;;:::i;:::-;14002:31;;14056:42;14094:3;14083:9;14056:42;:::i;:::-;14049:5;14042:57;14133:49;14177:3;14166:9;14162:19;14133:49;:::i;:::-;14126:4;14119:5;14115:16;14108:75;14217:48;14260:3;14249:9;14245:19;14217:48;:::i;:::-;14210:4;14203:5;14199:16;14192:74;14300:61;14357:3;14351;14340:9;14336:19;14300:61;:::i;:::-;14293:4;14286:5;14282:16;14275:87;14395:60;14451:3;14445;14434:9;14430:19;14395:60;:::i;:::-;14389:3;14382:5;14378:15;14371:85;14489:39;14523:3;14512:9;14508:19;14489:39;:::i;:::-;14483:3;14476:5;14472:15;14465:64;14562:39;14596:3;14585:9;14581:19;14562:39;:::i;:::-;14556:3;14545:15;;14538:64;14653:3;14638:19;;14625:33;-1:-1:-1;;;;;14670:30:131;;14667:50;;;14713:1;14710;14703:12;14667:50;14750:57;14803:3;14794:6;14783:9;14779:22;14750:57;:::i;:::-;14744:3;14737:5;14733:15;14726:82;;13840:974;;;;:::o;14819:777::-;14971:6;14979;14987;15040:2;15028:9;15019:7;15015:23;15011:32;15008:52;;;15056:1;15053;15046:12;15008:52;15095:9;15082:23;15114:31;15139:5;15114:31;:::i;:::-;15164:5;-1:-1:-1;15220:2:131;15205:18;;15192:32;-1:-1:-1;;;;;15273:14:131;;;15270:34;;;15300:1;15297;15290:12;15270:34;15323:85;15400:7;15391:6;15380:9;15376:22;15323:85;:::i;:::-;15313:95;;15461:2;15450:9;15446:18;15433:32;15417:48;;15490:2;15480:8;15477:16;15474:36;;;15506:1;15503;15496:12;15474:36;;15529:61;15582:7;15571:8;15560:9;15556:24;15529:61;:::i;16274:919::-;16435:6;16443;16451;16459;16512:3;16500:9;16491:7;16487:23;16483:33;16480:53;;;16529:1;16526;16519:12;16480:53;16568:9;16555:23;16587:31;16612:5;16587:31;:::i;:::-;16637:5;-1:-1:-1;16694:2:131;16679:18;;16666:32;16707:33;16666:32;16707:33;:::i;:::-;16759:7;-1:-1:-1;16817:2:131;16802:18;;16789:32;-1:-1:-1;;;;;16870:14:131;;;16867:34;;;16897:1;16894;16887:12;16867:34;16920:85;16997:7;16988:6;16977:9;16973:22;16920:85;:::i;:::-;16910:95;;17058:2;17047:9;17043:18;17030:32;17014:48;;17087:2;17077:8;17074:16;17071:36;;;17103:1;17100;17093:12;17071:36;;17126:61;17179:7;17168:8;17157:9;17153:24;17126:61;:::i;:::-;17116:71;;;16274:919;;;;;;;:::o;17558:250::-;17643:1;17653:113;17667:6;17664:1;17661:13;17653:113;;;17743:11;;;17737:18;17724:11;;;17717:39;17689:2;17682:10;17653:113;;;-1:-1:-1;;17800:1:131;17782:16;;17775:27;17558:250::o;17813:271::-;17855:3;17893:5;17887:12;17920:6;17915:3;17908:19;17936:76;18005:6;17998:4;17993:3;17989:14;17982:4;17975:5;17971:16;17936:76;:::i;:::-;18066:2;18045:15;-1:-1:-1;;18041:29:131;18032:39;;;;18073:4;18028:50;;17813:271;-1:-1:-1;;17813:271:131:o;18089:220::-;18238:2;18227:9;18220:21;18201:4;18258:45;18299:2;18288:9;18284:18;18276:6;18258:45;:::i;18761:785::-;18922:6;18930;18938;18946;18999:3;18987:9;18978:7;18974:23;18970:33;18967:53;;;19016:1;19013;19006:12;18967:53;19055:9;19042:23;19074:31;19099:5;19074:31;:::i;:::-;19124:5;-1:-1:-1;19181:2:131;19166:18;;19153:32;19194:33;19153:32;19194:33;:::i;:::-;19246:7;-1:-1:-1;19272:75:131;19339:7;19334:2;19319:18;;19272:75;:::i;:::-;19262:85;-1:-1:-1;19398:3:131;19383:19;;19370:33;-1:-1:-1;;;;;19415:30:131;;19412:50;;;19458:1;19455;19448:12;19412:50;19481:59;19532:7;19523:6;19512:9;19508:22;19481:59;:::i;19551:127::-;19612:10;19607:3;19603:20;19600:1;19593:31;19643:4;19640:1;19633:15;19667:4;19664:1;19657:15;19683:168;19756:9;;;19787;;19804:15;;;19798:22;;19784:37;19774:71;;19825:18;;:::i;19856:127::-;19917:10;19912:3;19908:20;19905:1;19898:31;19948:4;19945:1;19938:15;19972:4;19969:1;19962:15;19988:277;20075:6;20128:2;20116:9;20107:7;20103:23;20099:32;20096:52;;;20144:1;20141;20134:12;20096:52;20176:9;20170:16;20195:40;20229:5;20195:40;:::i;20270:282::-;-1:-1:-1;;;;;20470:32:131;;;;20452:51;;20534:2;20519:18;;20512:34;20440:2;20425:18;;20270:282::o;20557:184::-;20627:6;20680:2;20668:9;20659:7;20655:23;20651:32;20648:52;;;20696:1;20693;20686:12;20648:52;-1:-1:-1;20719:16:131;;20557:184;-1:-1:-1;20557:184:131:o;21025:375::-;-1:-1:-1;;;;;21283:15:131;;;21265:34;;21335:15;;;;21330:2;21315:18;;21308:43;21382:2;21367:18;;21360:34;;;;21215:2;21200:18;;21025:375::o;21405:304::-;-1:-1:-1;;;;;21635:15:131;;;21617:34;;21687:15;;21682:2;21667:18;;21660:43;21567:2;21552:18;;21405:304::o;21714:217::-;21754:1;21780;21770:132;;21824:10;21819:3;21815:20;21812:1;21805:31;21859:4;21856:1;21849:15;21887:4;21884:1;21877:15;21770:132;-1:-1:-1;21916:9:131;;21714:217::o;21936:125::-;22001:9;;;22022:10;;;22019:36;;;22035:18;;:::i;22481:380::-;22560:1;22556:12;;;;22603;;;22624:61;;22678:4;22670:6;22666:17;22656:27;;22624:61;22731:2;22723:6;22720:14;22700:18;22697:38;22694:161;;22777:10;22772:3;22768:20;22765:1;22758:31;22812:4;22809:1;22802:15;22840:4;22837:1;22830:15;22694:161;;22481:380;;;:::o;22992:545::-;23094:2;23089:3;23086:11;23083:448;;;23130:1;23155:5;23151:2;23144:17;23200:4;23196:2;23186:19;23270:2;23258:10;23254:19;23251:1;23247:27;23241:4;23237:38;23306:4;23294:10;23291:20;23288:47;;;-1:-1:-1;23329:4:131;23288:47;23384:2;23379:3;23375:12;23372:1;23368:20;23362:4;23358:31;23348:41;;23439:82;23457:2;23450:5;23447:13;23439:82;;;23502:17;;;23483:1;23472:13;23439:82;;;23443:3;;;22992:545;;;:::o;23713:1352::-;23833:10;;-1:-1:-1;;;;;23855:30:131;;23852:56;;;23888:18;;:::i;:::-;23917:97;24007:6;23967:38;23999:4;23993:11;23967:38;:::i;:::-;23961:4;23917:97;:::i;:::-;24069:4;;24133:2;24122:14;;24150:1;24145:663;;;;24852:1;24869:6;24866:89;;;-1:-1:-1;24921:19:131;;;24915:26;24866:89;-1:-1:-1;;23670:1:131;23666:11;;;23662:24;23658:29;23648:40;23694:1;23690:11;;;23645:57;24968:81;;24115:944;;24145:663;22939:1;22932:14;;;22976:4;22963:18;;-1:-1:-1;;24181:20:131;;;24299:236;24313:7;24310:1;24307:14;24299:236;;;24402:19;;;24396:26;24381:42;;24494:27;;;;24462:1;24450:14;;;;24329:19;;24299:236;;;24303:3;24563:6;24554:7;24551:19;24548:201;;;24624:19;;;24618:26;-1:-1:-1;;24707:1:131;24703:14;;;24719:3;24699:24;24695:37;24691:42;24676:58;24661:74;;24548:201;-1:-1:-1;;;;;24795:1:131;24779:14;;;24775:22;24762:36;;-1:-1:-1;23713:1352:131:o;25070:251::-;25140:6;25193:2;25181:9;25172:7;25168:23;25164:32;25161:52;;;25209:1;25206;25199:12;25161:52;25241:9;25235:16;25260:31;25285:5;25260:31;:::i;25326:127::-;25387:10;25382:3;25378:20;25375:1;25368:31;25418:4;25415:1;25408:15;25442:4;25439:1;25432:15;25458:956;25553:6;25584:2;25627;25615:9;25606:7;25602:23;25598:32;25595:52;;;25643:1;25640;25633:12;25595:52;25670:16;;-1:-1:-1;;;;;25698:30:131;;25695:50;;;25741:1;25738;25731:12;25695:50;25764:22;;25817:4;25809:13;;25805:27;-1:-1:-1;25795:55:131;;25846:1;25843;25836:12;25795:55;25875:2;25869:9;25898:60;25914:43;25954:2;25914:43;:::i;25898:60::-;25992:15;;;26074:1;26070:10;;;;26062:19;;26058:28;;;26023:12;;;;26098:19;;;26095:39;;;26130:1;26127;26120:12;26095:39;26154:11;;;;26174:210;26190:6;26185:3;26182:15;26174:210;;;26263:3;26257:10;26280:31;26305:5;26280:31;:::i;:::-;26324:18;;26207:12;;;;26362;;;;26174:210;;26419:135;26458:3;26479:17;;;26476:43;;26499:18;;:::i;:::-;-1:-1:-1;26546:1:131;26535:13;;26419:135::o;26559:128::-;26626:9;;;26647:11;;;26644:37;;;26661:18;;:::i;26692:772::-;26742:3;26783:5;26777:12;26812:36;26838:9;26812:36;:::i;:::-;26857:19;;;26895:4;26918:1;26935:18;;;26962:146;;;;27122:1;27117:341;;;;26928:530;;26962:146;-1:-1:-1;;27004:24:131;;26990:12;;;26983:46;27076:14;;27069:22;27066:1;27062:30;27053:40;;27049:49;;;-1:-1:-1;26962:146:131;;27117:341;27148:5;27145:1;27138:16;27195:2;27192:1;27182:16;27220:1;27234:174;27248:6;27245:1;27242:13;27234:174;;;27335:14;;27317:11;;;27313:20;;27306:44;27378:16;;;;27263:10;;27234:174;;;27432:11;;27428:20;;;-1:-1:-1;;26928:530:131;;;;;;26692:772;;;;:::o;27469:252::-;27556:5;27550:12;27545:3;27538:25;27520:3;27609:4;27602:5;27598:16;27592:23;27647:4;27640;27635:3;27631:14;27624:28;27668:47;27709:4;27704:3;27700:14;27686:12;27668:47;:::i;27726:461::-;27779:3;27817:5;27811:12;27844:6;27839:3;27832:19;27870:4;27899:2;27894:3;27890:12;27883:19;;27936:2;27929:5;27925:14;27957:1;27967:195;27981:6;27978:1;27975:13;27967:195;;;28046:13;;-1:-1:-1;;;;;28042:39:131;28030:52;;28102:12;;;;28137:15;;;;28078:1;27996:9;27967:195;;;-1:-1:-1;28178:3:131;;27726:461;-1:-1:-1;;;;;27726:461:131:o;28192:804::-;28552:6;28541:9;28534:25;28595:3;28590:2;28579:9;28575:18;28568:31;28515:4;28622:54;28671:3;28660:9;28656:19;28648:6;28622:54;:::i;:::-;28724:9;28716:6;28712:22;28707:2;28696:9;28692:18;28685:50;28758:42;28793:6;28785;28758:42;:::i;:::-;-1:-1:-1;;;;;28836:32:131;;28831:2;28816:18;;28809:60;28906:22;;;28900:3;28885:19;;28878:51;28744:56;-1:-1:-1;28946:44:131;28744:56;28975:6;28946:44;:::i;:::-;28938:52;28192:804;-1:-1:-1;;;;;;;;28192:804:131:o;29190:500::-;29444:6;29433:9;29426:25;29487:2;29482;29471:9;29467:18;29460:30;29407:4;29513:53;29562:2;29551:9;29547:18;29539:6;29513:53;:::i;:::-;29614:9;29606:6;29602:22;29597:2;29586:9;29582:18;29575:50;29642:42;29677:6;29669;29642:42;:::i;30310:408::-;30512:2;30494:21;;;30551:2;30531:18;;;30524:30;-1:-1:-1;;;;;;;;;;;30585:2:131;30570:18;;30563:62;-1:-1:-1;;;30656:2:131;30641:18;;30634:42;30708:3;30693:19;;30310:408::o;30723:::-;30925:2;30907:21;;;30964:2;30944:18;;;30937:30;-1:-1:-1;;;;;;;;;;;30998:2:131;30983:18;;30976:62;-1:-1:-1;;;31069:2:131;31054:18;;31047:42;31121:3;31106:19;;30723:408::o;31453:384::-;-1:-1:-1;;;;;31711:15:131;;;31693:34;;31763:15;;;31758:2;31743:18;;31736:43;31815:15;;;31810:2;31795:18;;31788:43;31643:2;31628:18;;31453:384::o;31842:315::-;-1:-1:-1;;;;;32017:32:131;;31999:51;;32086:2;32081;32066:18;;32059:30;;;-1:-1:-1;;32106:45:131;;32132:18;;32124:6;32106:45;:::i;33003:324::-;-1:-1:-1;;;33233:24:131;;33282:1;33273:11;;33266:27;;;;33318:2;33309:12;;33003:324::o;33332:331::-;-1:-1:-1;;;33562:30:131;;33617:2;33608:12;;33601:28;;;;33654:2;33645:12;;33332:331::o;33921:127::-;33982:10;33977:3;33973:20;33970:1;33963:31;34013:4;34010:1;34003:15;34037:4;34034:1;34027:15;34053:1653;34145:6;34176:2;34219;34207:9;34198:7;34194:23;34190:32;34187:52;;;34235:1;34232;34225:12;34187:52;34262:16;;-1:-1:-1;;;;;34327:14:131;;;34324:34;;;34354:1;34351;34344:12;34324:34;34377:22;;;;34433:4;34415:16;;;34411:27;34408:47;;;34451:1;34448;34441:12;34408:47;34477:22;;:::i;:::-;34528:2;34522:9;34515:5;34508:24;34570:2;34566;34562:11;34556:18;34583:33;34608:7;34583:33;:::i;:::-;34632:14;;;34625:31;34694:2;34686:11;;34680:18;34707:33;34680:18;34707:33;:::i;:::-;34767:2;34756:14;;34749:31;34819:2;34811:11;;34805:18;34835:16;;;34832:36;;;34864:1;34861;34854:12;34832:36;34887:17;;34938:2;34920:16;;;34916:25;34913:45;;;34954:1;34951;34944:12;34913:45;34982:22;;:::i;:::-;35035:2;35029:9;35020:7;35013:26;35078:2;35074;35070:11;35064:18;35107:2;35097:8;35094:16;35091:36;;;35123:1;35120;35113:12;35091:36;35146:17;;;-1:-1:-1;35194:4:131;35186:13;;35182:27;-1:-1:-1;35172:55:131;;35223:1;35220;35213:12;35172:55;35252:2;35246:9;35236:19;;35277:49;35293:32;35322:2;35293:32;:::i;35277:49::-;35349:2;35342:5;35335:17;35389:7;35384:2;35379;35375;35371:11;35367:20;35364:33;35361:53;;;35410:1;35407;35400:12;35361:53;35423:67;35487:2;35482;35475:5;35471:14;35466:2;35462;35458:11;35423:67;:::i;:::-;35506:16;;;35499:31;;;;-1:-1:-1;35557:2:131;35546:14;;35539:31;;;;-1:-1:-1;35617:3:131;35609:12;;;35603:19;35586:15;;;35579:44;35670:3;35662:12;;;35656:19;35639:15;;;35632:44;35550:5;34053:1653;-1:-1:-1;;;34053:1653:131:o;35711:261::-;35791:5;35785:12;35780:3;35773:25;35847:4;35840:5;35836:16;35830:23;35823:4;35818:3;35814:14;35807:47;35903:4;35896:5;35892:16;35886:23;35879:4;35874:3;35870:14;35863:47;35959:4;35952:5;35948:16;35942:23;35935:4;35930:3;35926:14;35919:47;;;35711:261::o;35977:143::-;36061:1;36054:5;36051:12;36041:46;;36067:18;;:::i;:::-;36096;;35977:143::o;36125:142::-;36208:1;36201:5;36198:12;36188:46;;36214:18;;:::i;36272:437::-;36396:12;;-1:-1:-1;;;;;36392:21:131;;;36380:34;;36467:4;36456:16;;;36450:23;36446:32;;;36430:14;;;36423:56;36528:4;36517:16;;;36511:23;36495:14;;;36488:47;36584:4;36573:16;;;36567:23;36551:14;;;36544:47;36640:4;36629:16;;;36623:23;36607:14;;;36600:47;36360:3;36685:16;;;36679:23;36663:14;;36656:47;36272:437::o;36714:1197::-;36941:2;36930:9;36923:21;36953:61;37010:2;36999:9;36995:18;36986:6;36980:13;36953:61;:::i;:::-;36904:4;37061:2;37053:6;37049:15;37043:22;37074:63;37132:3;37121:9;37117:19;37103:12;37074:63;:::i;:::-;;37186:4;37178:6;37174:17;37168:24;37201:64;37260:3;37249:9;37245:19;37229:14;37201:64;:::i;:::-;;37326:4;37318:6;37314:17;37308:24;37302:31;37296:3;37285:9;37281:19;37274:60;37383:4;37375:6;37371:17;37365:24;37398:71;37464:3;37453:9;37449:19;37433:14;37398:71;:::i;:::-;;37518:3;37510:6;37506:16;37500:23;37532:55;37582:3;37571:9;37567:19;37551:14;37532:55;:::i;:::-;;37636:3;37628:6;37624:16;37618:23;37650:55;37700:3;37689:9;37685:19;37669:14;37650:55;:::i;:::-;-1:-1:-1;37754:3:131;37742:16;;37736:23;37778:6;37800:18;;;37793:30;37840:65;37900:3;37885:19;;37736:23;37840:65;:::i;37916:979::-;38341:6;38330:9;38323:25;38304:4;38384:1;38380;38375:3;38371:11;38367:19;38434:2;38426:6;38422:15;38417:2;38406:9;38402:18;38395:43;38474:3;38469:2;38458:9;38454:18;38447:31;38501:46;38542:3;38531:9;38527:19;38519:6;38501:46;:::i;:::-;38595:2;38587:6;38583:15;38578:2;38567:9;38563:18;38556:43;38636:6;38630:3;38619:9;38615:19;38608:35;38692:9;38684:6;38680:22;38674:3;38663:9;38659:19;38652:51;38726:42;38761:6;38753;38726:42;:::i;:::-;38712:56;;;38817:9;38809:6;38805:22;38799:3;38788:9;38784:19;38777:51;38845:44;38882:6;38874;38845:44;:::i;:::-;38837:52;37916:979;-1:-1:-1;;;;;;;;;;37916:979:131:o;38900:613::-;39175:25;;;-1:-1:-1;;;;;39274:15:131;;;39269:2;39254:18;;39247:43;39326:15;;;39321:2;39306:18;;39299:43;39378:15;;39373:2;39358:18;;39351:43;39227:3;39425;39410:19;;39403:32;;;39156:4;;39452:55;;39487:19;;39479:6;39452:55;:::i;39518:407::-;39720:2;39702:21;;;39759:2;39739:18;;;39732:30;39798:34;39793:2;39778:18;;39771:62;-1:-1:-1;;;39864:2:131;39849:18;;39842:41;39915:3;39900:19;;39518:407::o;39930:995::-;40120:4;40162:3;40151:9;40147:19;40139:27;;40175:52;40217:9;40208:6;40202:13;40175:52;:::i;:::-;40274:4;40266:6;40262:17;40256:24;40289:64;40347:4;40336:9;40332:20;40318:12;40289:64;:::i;:::-;;40402:4;40394:6;40390:17;40384:24;40417:65;40476:4;40465:9;40461:20;40445:14;40417:65;:::i;:::-;;40544:4;40536:6;40532:17;40526:24;40520:31;40513:4;40502:9;40498:20;40491:61;40601:4;40593:6;40589:17;40583:24;40616:72;40682:4;40671:9;40667:20;40651:14;40616:72;:::i;:::-;-1:-1:-1;40737:4:131;40725:17;;40719:24;-1:-1:-1;;;;;40821:23:131;;;40812:6;40797:22;;40790:55;40907:4;40895:17;;;40889:24;40885:33;;;40876:6;40861:22;;;40854:65;39930:995;:::o;43099:812::-;-1:-1:-1;;;43505:3:131;43498:38;43480:3;43565:6;43559:13;43581:75;43649:6;43644:2;43639:3;43635:12;43628:4;43620:6;43616:17;43581:75;:::i;:::-;-1:-1:-1;;;43715:2:131;43675:16;;;43707:11;;;43700:40;43765:13;;43787:76;43765:13;43849:2;43841:11;;43834:4;43822:17;;43787:76;:::i;:::-;43883:17;43902:2;43879:26;;43099:812;-1:-1:-1;;;;43099:812:131:o;43916:245::-;43983:6;44036:2;44024:9;44015:7;44011:23;44007:32;44004:52;;;44052:1;44049;44042:12;44004:52;44084:9;44078:16;44103:28;44125:5;44103:28;:::i;45198:136::-;45237:3;45265:5;45255:39;;45274:18;;:::i;:::-;-1:-1:-1;;;45310:18:131;;45198:136::o;46107:287::-;46236:3;46274:6;46268:13;46290:66;46349:6;46344:3;46337:4;46329:6;46325:17;46290:66;:::i;:::-;46372:16;;;;;46107:287;-1:-1:-1;;46107:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7744,"length":32},{"start":7811,"length":32},{"start":8062,"length":32},{"start":8129,"length":32},{"start":8467,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"579eb7e5","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"8659ffdd","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":\"RegistryCommunityV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":"RegistryCommunityV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75245"},{"astId":70502,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)74978"},{"astId":70505,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)74978":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75245":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","id":72404,"exportedSymbols":{"ArbitrableConfig":[65628],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"ERC1967Proxy":[55021],"Metadata":[3098],"PointSystemConfig":[65614],"ProposalType":[65540],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:2528:105","nodes":[{"id":72176,"nodeType":"PragmaDirective","src":"42:24:105","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72181,"nodeType":"ImportDirective","src":"68:147:105","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"./RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72177,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72178,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"108:8:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72179,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"122:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72180,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"140:37:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72187,"nodeType":"ImportDirective","src":"216:153:105","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":72182,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"229:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72183,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"249:17:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72184,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"272:16:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72185,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"294:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72186,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"312:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72190,"nodeType":"ImportDirective","src":"371:98:105","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"@src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":72188,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"379:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72189,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"395:30:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72403,"nodeType":"ContractDefinition","src":"522:2047:105","nodes":[{"id":72330,"nodeType":"FunctionDefinition","src":"584:1317:105","nodes":[],"body":{"id":72329,"nodeType":"Block","src":"780:1121:105","nodes":[],"statements":[{"assignments":[72209],"declarations":[{"constant":false,"id":72209,"mutability":"mutable","name":"strategyProxy","nameLocation":"798:13:105","nodeType":"VariableDeclaration","scope":72329,"src":"790:21:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72208,"name":"address","nodeType":"ElementaryTypeName","src":"790:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72234,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72217,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"877:16:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72216,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"869:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72215,"name":"address","nodeType":"ElementaryTypeName","src":"869:7:105","typeDescriptions":{}}},"id":72218,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"869:25:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72221,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"935:14:105","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":72222,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"950:4:105","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"935:19:105","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":72223,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"955:8:105","memberName":"selector","nodeType":"MemberAccess","src":"935:28:105","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":72226,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"973:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}],"id":72225,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"965:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72224,"name":"address","nodeType":"ElementaryTypeName","src":"965:7:105","typeDescriptions":{}}},"id":72227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"965:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72228,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"980:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72229,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"1005:5:105","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1005:7:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72219,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"912:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72220,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"916:18:105","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"912:22:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"912:101:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"835:16:105","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72213,"nodeType":"UserDefinedTypeName","pathNode":{"id":72212,"name":"ERC1967Proxy","nameLocations":["839:12:105"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"839:12:105"},"referencedDeclaration":55021,"src":"839:12:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"835:192:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72211,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"814:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72210,"name":"address","nodeType":"ElementaryTypeName","src":"814:7:105","typeDescriptions":{}}},"id":72233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"814:223:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"790:247:105"},{"expression":{"id":72244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":72235,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1048:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72236,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72206,"src":"1056:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":72237,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"1047:18:105","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72239,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72209,"src":"1079:13:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72240,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72195,"src":"1094:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72241,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1102:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},{"id":72242,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72201,"src":"1111:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72238,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[72330,72402,71009,71081],"referencedDeclaration":72402,"src":"1068:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_1 memory,struct Metadata memory) returns (uint256,address)"}},"id":72243,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1068:53:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"src":"1047:74:105","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72245,"nodeType":"ExpressionStatement","src":"1047:74:105"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72255,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":72248,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1144:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72249,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1152:11:105","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"1144:19:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72247,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1136:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72246,"name":"address","nodeType":"ElementaryTypeName","src":"1136:7:105","typeDescriptions":{}}},"id":72250,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:28:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72253,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1176:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72252,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1168:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72251,"name":"address","nodeType":"ElementaryTypeName","src":"1168:7:105","typeDescriptions":{}}},"id":72254,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1168:10:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1136:42:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72300,"nodeType":"IfStatement","src":"1132:454:105","trueBody":{"id":72299,"nodeType":"Block","src":"1180:406:105","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":72256,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1198:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72257,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1206:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1198:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72258,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1223:6:105","memberName":"length","nodeType":"MemberAccess","src":"1198:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"31303030","id":72259,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1232:4:105","typeDescriptions":{"typeIdentifier":"t_rational_1000_by_1","typeString":"int_const 1000"},"value":"1000"},"src":"1198:38:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72266,"nodeType":"IfStatement","src":"1194:134:105","trueBody":{"id":72265,"nodeType":"Block","src":"1238:90:105","statements":[{"expression":{"arguments":[{"hexValue":"546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626572732c206d61782069732031303030","id":72262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1263:49:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""},"value":"Too many initial allowlist members, max is 1000"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""}],"id":72261,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"1256:6:105","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":72263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1256:57:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72264,"nodeType":"ExpressionStatement","src":"1256:57:105"}]}},{"assignments":[72268],"declarations":[{"constant":false,"id":72268,"mutability":"mutable","name":"allowlistRole","nameLocation":"1349:13:105","nodeType":"VariableDeclaration","scope":72299,"src":"1341:21:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":72267,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1341:7:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":72276,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72272,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1392:11:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72273,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1405:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72270,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1375:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72271,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1379:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1375:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72274,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1375:37:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72269,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1365:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:48:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1341:72:105"},{"body":{"id":72297,"nodeType":"Block","src":"1489:87:105","statements":[{"expression":{"arguments":[{"id":72290,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72268,"src":"1518:13:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"expression":{"id":72291,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1533:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72292,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1541:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1533:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72294,"indexExpression":{"id":72293,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1558:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1533:27:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72289,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1507:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72295,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1507:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72296,"nodeType":"ExpressionStatement","src":"1507:54:105"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72281,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1447:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"expression":{"id":72282,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1451:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72283,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1459:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1451:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72284,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1476:6:105","memberName":"length","nodeType":"MemberAccess","src":"1451:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1447:35:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72298,"initializationExpression":{"assignments":[72278],"declarations":[{"constant":false,"id":72278,"mutability":"mutable","name":"i","nameLocation":"1440:1:105","nodeType":"VariableDeclaration","scope":72298,"src":"1432:9:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72277,"name":"uint256","nodeType":"ElementaryTypeName","src":"1432:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72280,"initialValue":{"hexValue":"30","id":72279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1444:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"1432:13:105"},"loopExpression":{"expression":{"id":72287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"1484:3:105","subExpression":{"id":72286,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1484:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72288,"nodeType":"ExpressionStatement","src":"1484:3:105"},"nodeType":"ForStatement","src":"1427:149:105"}]}},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72305,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1721:11:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72306,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1734:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72303,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1704:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72304,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1708:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1704:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72307,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1704:37:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72302,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1694:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72308,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1694:48:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72312,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1771:17:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72313,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1790:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72310,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1754:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72311,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1758:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1754:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72314,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1754:43:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72309,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1744:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1744:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":72301,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"1667:13:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":72316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1667:141:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72317,"nodeType":"ExpressionStatement","src":"1667:141:105"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1856:17:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72323,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1875:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72320,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1839:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72321,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1843:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1839:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1839:43:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72319,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1829:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1829:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72326,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72206,"src":"1885:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72318,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1818:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1818:76:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72328,"nodeType":"ExpressionStatement","src":"1818:76:105"}]},"functionSelector":"579eb7e5","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"593:10:105","parameters":{"id":72202,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72195,"mutability":"mutable","name":"_token","nameLocation":"612:6:105","nodeType":"VariableDeclaration","scope":72330,"src":"604:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72194,"name":"address","nodeType":"ElementaryTypeName","src":"604:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72198,"mutability":"mutable","name":"_params","nameLocation":"658:7:105","nodeType":"VariableDeclaration","scope":72330,"src":"620:45:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72197,"nodeType":"UserDefinedTypeName","pathNode":{"id":72196,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["620:30:105"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"620:30:105"},"referencedDeclaration":69242,"src":"620:30:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72201,"mutability":"mutable","name":"_metadata","nameLocation":"683:9:105","nodeType":"VariableDeclaration","scope":72330,"src":"667:25:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72200,"nodeType":"UserDefinedTypeName","pathNode":{"id":72199,"name":"Metadata","nameLocations":["667:8:105"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"667:8:105"},"referencedDeclaration":3098,"src":"667:8:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"603:90:105"},"returnParameters":{"id":72207,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72204,"mutability":"mutable","name":"poolId","nameLocation":"750:6:105","nodeType":"VariableDeclaration","scope":72330,"src":"742:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72203,"name":"uint256","nodeType":"ElementaryTypeName","src":"742:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72206,"mutability":"mutable","name":"strategy","nameLocation":"766:8:105","nodeType":"VariableDeclaration","scope":72330,"src":"758:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72205,"name":"address","nodeType":"ElementaryTypeName","src":"758:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"741:34:105"},"scope":72403,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72402,"nodeType":"FunctionDefinition","src":"1907:660:105","nodes":[],"body":{"id":72401,"nodeType":"Block","src":"2132:435:105","nodes":[],"statements":[{"assignments":[72348],"declarations":[{"constant":false,"id":72348,"mutability":"mutable","name":"token","nameLocation":"2150:5:105","nodeType":"VariableDeclaration","scope":72401,"src":"2142:13:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72347,"name":"address","nodeType":"ElementaryTypeName","src":"2142:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72350,"initialValue":{"id":72349,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70444,"src":"2158:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2142:22:105"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72356,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72351,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2178:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":72354,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2196:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72353,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2188:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72352,"name":"address","nodeType":"ElementaryTypeName","src":"2188:7:105","typeDescriptions":{}}},"id":72355,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2188:10:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2178:20:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72362,"nodeType":"IfStatement","src":"2174:65:105","trueBody":{"id":72361,"nodeType":"Block","src":"2200:39:105","statements":[{"expression":{"id":72359,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72357,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72348,"src":"2214:5:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72358,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2222:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2214:14:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72360,"nodeType":"ExpressionStatement","src":"2214:14:105"}]}},{"expression":{"id":72365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72363,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2248:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72364,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72332,"src":"2259:9:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2248:20:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72366,"nodeType":"ExpressionStatement","src":"2248:20:105"},{"assignments":[72371],"declarations":[{"constant":false,"id":72371,"mutability":"mutable","name":"_pool_managers","nameLocation":"2296:14:105","nodeType":"VariableDeclaration","scope":72401,"src":"2279:31:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72369,"name":"address","nodeType":"ElementaryTypeName","src":"2279:7:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72370,"nodeType":"ArrayTypeName","src":"2279:9:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72373,"initialValue":{"id":72372,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"2313:14:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2279:48:105"},{"expression":{"id":72388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72374,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72343,"src":"2338:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72377,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"2394:9:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72378,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2405:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72381,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72337,"src":"2426:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":72379,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2415:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72380,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2419:6:105","memberName":"encode","nodeType":"MemberAccess","src":"2415:10:105","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72382,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2415:19:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":72383,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72348,"src":"2436:5:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":72384,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2443:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":72385,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72340,"src":"2446:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":72386,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72371,"src":"2457:14:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":72375,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"2347:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$74978","typeString":"contract FAllo"}},"id":72376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2352:28:105","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":74964,"src":"2347:33:105","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":72387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2347:134:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2338:143:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72389,"nodeType":"ExpressionStatement","src":"2338:143:105"},{"eventCall":{"arguments":[{"id":72391,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72343,"src":"2509:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72392,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2517:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72395,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2535:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72394,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2527:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72393,"name":"address","nodeType":"ElementaryTypeName","src":"2527:7:105","typeDescriptions":{}}},"id":72396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2527:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72397,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2542:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72398,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72340,"src":"2550:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72390,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70380,"src":"2497:11:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":72399,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2497:63:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72400,"nodeType":"EmitStatement","src":"2492:68:105"}]},"functionSelector":"8659ffdd","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"1916:10:105","parameters":{"id":72341,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72332,"mutability":"mutable","name":"_strategy","nameLocation":"1944:9:105","nodeType":"VariableDeclaration","scope":72402,"src":"1936:17:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72331,"name":"address","nodeType":"ElementaryTypeName","src":"1936:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72334,"mutability":"mutable","name":"_token","nameLocation":"1971:6:105","nodeType":"VariableDeclaration","scope":72402,"src":"1963:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72333,"name":"address","nodeType":"ElementaryTypeName","src":"1963:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72337,"mutability":"mutable","name":"_params","nameLocation":"2025:7:105","nodeType":"VariableDeclaration","scope":72402,"src":"1987:45:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72336,"nodeType":"UserDefinedTypeName","pathNode":{"id":72335,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1987:30:105"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1987:30:105"},"referencedDeclaration":69242,"src":"1987:30:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72340,"mutability":"mutable","name":"_metadata","nameLocation":"2058:9:105","nodeType":"VariableDeclaration","scope":72402,"src":"2042:25:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72339,"nodeType":"UserDefinedTypeName","pathNode":{"id":72338,"name":"Metadata","nameLocations":["2042:8:105"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2042:8:105"},"referencedDeclaration":3098,"src":"2042:8:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"1926:147:105"},"returnParameters":{"id":72346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72343,"mutability":"mutable","name":"poolId","nameLocation":"2106:6:105","nodeType":"VariableDeclaration","scope":72402,"src":"2098:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72342,"name":"uint256","nodeType":"ElementaryTypeName","src":"2098:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72345,"mutability":"mutable","name":"strategy","nameLocation":"2122:8:105","nodeType":"VariableDeclaration","scope":72402,"src":"2114:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72344,"name":"address","nodeType":"ElementaryTypeName","src":"2114:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2097:34:105"},"scope":72403,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":72192,"name":"RegistryCommunityV0_0","nameLocations":["556:21:105"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"556:21:105"},"id":72193,"nodeType":"InheritanceSpecifier","src":"556:21:105"}],"canonicalName":"RegistryCommunityV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72191,"nodeType":"StructuredDocumentation","src":"471:51:105","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72403,72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_1","nameLocation":"531:21:105","scope":72404,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":105} \ No newline at end of file +{"abi":[{"type":"function","name":"COUNCIL_MEMBER","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"DEFAULT_ADMIN_ROLE","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"MAX_FEE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"NATIVE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"PRECISION_SCALE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"acceptCouncilSafe","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"activateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_newStrategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addressToMemberInfo","inputs":[{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"member","type":"address","internalType":"address"},{"name":"stakedAmount","type":"uint256","internalType":"uint256"},{"name":"isRegistered","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract FAllo"}],"stateMutability":"view"},{"type":"function","name":"cloneNonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"communityFee","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"communityName","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"covenantIpfsHash","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_1","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"createPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_token","type":"address","internalType":"address"},{"name":"_params","type":"tuple","internalType":"struct CVStrategyInitializeParamsV0_0","components":[{"name":"cvParams","type":"tuple","internalType":"struct CVParams","components":[{"name":"maxRatio","type":"uint256","internalType":"uint256"},{"name":"weight","type":"uint256","internalType":"uint256"},{"name":"decay","type":"uint256","internalType":"uint256"},{"name":"minThresholdPoints","type":"uint256","internalType":"uint256"}]},{"name":"proposalType","type":"uint8","internalType":"enum ProposalType"},{"name":"pointSystem","type":"uint8","internalType":"enum PointSystem"},{"name":"pointConfig","type":"tuple","internalType":"struct PointSystemConfig","components":[{"name":"maxAmount","type":"uint256","internalType":"uint256"}]},{"name":"arbitrableConfig","type":"tuple","internalType":"struct ArbitrableConfig","components":[{"name":"arbitrator","type":"address","internalType":"contract IArbitrator"},{"name":"tribunalSafe","type":"address","internalType":"address"},{"name":"submitterCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"challengerCollateralAmount","type":"uint256","internalType":"uint256"},{"name":"defaultRuling","type":"uint256","internalType":"uint256"},{"name":"defaultRulingTimeout","type":"uint256","internalType":"uint256"}]},{"name":"registryCommunity","type":"address","internalType":"address"},{"name":"sybilScorer","type":"address","internalType":"address"}]},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"outputs":[{"name":"poolId","type":"uint256","internalType":"uint256"},{"name":"strategy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"deactivateMemberInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decreasePower","inputs":[{"name":"_amountUnstaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"enabledStrategies","inputs":[{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isEnabled","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"feeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"gardenToken","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IERC20"}],"stateMutability":"view"},{"type":"function","name":"getBasisStakedAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberPowerInStrategy","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getMemberStakedAmount","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getRoleAdmin","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getStakeAmountWithFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"grantRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"hasRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"increasePower","inputs":[{"name":"_amountStaked","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"isCouncilMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isKickEnabled","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"isMember","inputs":[{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"_isMember","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"kickMember","inputs":[{"name":"_member","type":"address","internalType":"address"},{"name":"_transferAddress","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"memberActivatedInStrategies","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"strategy","type":"address","internalType":"address"}],"outputs":[{"name":"isActivated","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"memberPowerInStrategy","inputs":[{"name":"strategy","type":"address","internalType":"address"},{"name":"member","type":"address","internalType":"address"}],"outputs":[{"name":"power","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingCouncilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"view"},{"type":"function","name":"profileId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registerStakeAmount","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IRegistry"}],"stateMutability":"view"},{"type":"function","name":"registryFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"removeStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"removeStrategyByPoolId","inputs":[{"name":"poolId","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"revokeRole","inputs":[{"name":"role","type":"bytes32","internalType":"bytes32"},{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setBasisStakedAmount","inputs":[{"name":"_newAmount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityFee","inputs":[{"name":"_newCommunityFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCouncilSafe","inputs":[{"name":"_safe","type":"address","internalType":"address payable"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"stakeAndRegisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategiesByMember","inputs":[{"name":"member","type":"address","internalType":"address"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"strategiesAddresses","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unregisterMember","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"AlloSet","inputs":[{"name":"_allo","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BasisStakedAmountSet","inputs":[{"name":"_newAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityFeeUpdated","inputs":[{"name":"_newFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CouncilSafeChangeStarted","inputs":[{"name":"_safeOwner","type":"address","indexed":false,"internalType":"address"},{"name":"_newSafeOwner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CouncilSafeSet","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"MemberActivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_pointsToIncrease","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberDeactivatedStrategy","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"MemberKicked","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_transferAddress","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerDecreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_unstakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberPowerIncreased","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_stakedAmount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberRegistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"MemberUnregistered","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountReturned","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolCreated","inputs":[{"name":"_poolId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_strategy","type":"address","indexed":false,"internalType":"address"},{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_token","type":"address","indexed":false,"internalType":"address"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RegistryInitialized","inputs":[{"name":"_profileId","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"_communityName","type":"string","indexed":false,"internalType":"string"},{"name":"_metadata","type":"tuple","indexed":false,"internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]}],"anonymous":false},{"type":"event","name":"RoleAdminChanged","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"previousAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"newAdminRole","type":"bytes32","indexed":true,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"RoleGranted","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"RoleRevoked","inputs":[{"name":"role","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"sender","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CantDecreaseMoreThanPower","inputs":[{"name":"_decreaseAmount","type":"uint256","internalType":"uint256"},{"name":"_currentPower","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"DecreaseUnderMinimum","inputs":[]},{"type":"error","name":"KickNotEnabled","inputs":[]},{"type":"error","name":"NewFeeGreaterThanMax","inputs":[]},{"type":"error","name":"PointsDeactivated","inputs":[]},{"type":"error","name":"RegistryCannotBeZero","inputs":[]},{"type":"error","name":"SenderNotNewOwner","inputs":[]},{"type":"error","name":"SenderNotStrategy","inputs":[]},{"type":"error","name":"StrategyDisabled","inputs":[]},{"type":"error","name":"StrategyExists","inputs":[]},{"type":"error","name":"UserAlreadyActivated","inputs":[]},{"type":"error","name":"UserAlreadyDeactivated","inputs":[]},{"type":"error","name":"UserAlreadyRegistered","inputs":[]},{"type":"error","name":"UserNotGardenOwner","inputs":[]},{"type":"error","name":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516160a06200004d60003960008181611e4001528181611e8301528181611f7e01528181611fc1015261211301526160a06000f3fe608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004535565b62000d56565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004561565b62000d8e565b005b348015620003f057600080fd5b50620003e162000402366004620045a3565b62000e04565b3480156200041557600080fd5b50620003e162000427366004620045e1565b62001187565b3480156200043a57600080fd5b50620003e16200044c366004620045e1565b6200119f565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e1565b620011cc565b3480156200049f57600080fd5b50620003e1620004b1366004620045a3565b620011e1565b348015620004c457600080fd5b5062000395620004d636600462004561565b620012db565b348015620004e957600080fd5b5062000395620012f0565b3480156200050157600080fd5b50620005196200051336600462004601565b620013f5565b6040516200037a91906200463d565b3480156200053557600080fd5b506200039562000547366004620045e1565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004651565b6200142f565b3480156200059857600080fd5b50620003e1620005aa36600462004561565b62001456565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004861565b62001496565b348015620005fa57600080fd5b50620003e162001b56565b3480156200061257600080fd5b50620003e16200062436600462004651565b62001db8565b3480156200063757600080fd5b50620003e162000649366004620045e1565b62001e36565b3480156200065c57600080fd5b50620003e16200066e366004620045e1565b62001f07565b3480156200068157600080fd5b506200036e62000693366004620045e1565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a3565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f4565b62001f74565b3480156200070d57600080fd5b50620007256200071f36600462004c78565b62002035565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002106565b3480156200076857600080fd5b50620003e16200077a36600462004561565b620021b7565b3480156200078d57600080fd5b50620007256200079f36600462004e59565b62002403565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004561565b6200266b565b348015620007fa57600080fd5b50620003956200080c366004620045a3565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a3565b62002a05565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b58565b348015620008ba57600080fd5b50620003e1620008cc36600462004561565b62002b6e565b348015620008df57600080fd5b506200039560008051602062005fe483398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a3565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004561565b62002c0a565b348015620009d257600080fd5b5062000725620009e436600462004ecd565b62002cc8565b348015620009f757600080fd5b5062000a3862000a09366004620045e1565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e55565b34801562000a9d57600080fd5b506200036e62000aaf36600462004651565b62002ef0565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e1565b62002f1b565b34801562000b2857600080fd5b50620003e162000b3a366004620045e1565b62002f65565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f92565b34801562000b8c57600080fd5b5062000b9762002fc9565b6040516200037a919062004fb4565b34801562000bb357600080fd5b50620003e162003060565b34801562000bcb57600080fd5b50620003956200316a565b34801562000be357600080fd5b50620003e162000bf5366004620045e1565b6200317c565b34801562000c0857600080fd5b5062000b97620031b1565b34801562000c2057600080fd5b50620003e162000c3236600462004651565b620031c1565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fc9565b620031e3565b34801562000cc857600080fd5b506200036e62000cda366004620045e1565b620032a4565b34801562000ced57600080fd5b50620003e162000cff366004620045e1565b620032c1565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b97565b60006001600160e01b03198216637965db0b60e01b148062000d8857506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9862003332565b62000da7612710600a62005052565b81111562000dc85760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e0e6200336f565b62000e1982620033ca565b62000e2481620033f3565b62000e2f816200342e565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7857604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f06573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2c919062005082565b600381111562000f405762000f406200506c565b0362000fc55760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f77908890600090600401620050a2565b6020604051808303816000875af115801562000f97573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fbd9190620050bb565b9050620010c1565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001008573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200102e919062005082565b60038111156200104257620010426200506c565b14620010c15760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010789088908690600401620050a2565b6020604051808303816000875af115801562001098573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010be9190620050bb565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200116d90879087908590620050d5565b60405180910390a1505050620011836001606555565b5050565b6200119162003332565b6200119c816200345d565b50565b620011a9620034bb565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d662003332565b6200119c816200351e565b620011ec82620033ca565b620011f7816200342e565b620012033382620035b0565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124b57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200129d8282620035e3565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012cf929190620050f9565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001310612710606462005052565b60fc5460fb5462001322919062005052565b6200132e919062005113565b9050600062001341612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200136f9030906004016200463d565b602060405180830381865afa1580156200138d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b39190620050bb565b60fb54620013c2919062005052565b620013ce919062005113565b9050808260fb54620013e1919062005136565b620013ed919062005136565b935050505090565b61010d60205281600052604060002081815481106200141357600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143a82620012db565b620014458162003719565b62001451838362003725565b505050565b6200146062003332565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000df9565b600054610100900460ff1615808015620014b75750600054600160ff909116105b80620014dc5750620014c930620037af565b158015620014dc575060005460ff166001145b620015455760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001569576000805461ff0019166101001790555b62001574826200317c565b6200157e620037be565b62001588620037f2565b620015a460008051602062005fe483398151915260006200381c565b620015b385602001516200342e565b620015c38561010001516200342e565b8451620015d0906200342e565b620015df8560a001516200342e565b606085015115620015f957620015f98560c001516200342e565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001654576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016919082620051da565b5061016085015161010990620016a89082620051da565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b03191691851684029190911790559087015161010680549092169281169290921790556200171d9060008051602062005fe48339815191529062003725565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001772573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017989190620052a6565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001824576040805160038082526080820190925290602082016060803683370190505090503381600081518110620017fe57620017fe620052c6565b60200260200101906001600160a01b031690816001600160a01b03168152505062001961565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200186f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018999190810190620052dc565b905080516002620018ab919062005136565b6001600160401b03811115620018c557620018c562004679565b604051908082528060200260200182016040528015620018ef578160200160208202803683370190505b50915060005b81518110156200195e57818181518110620019145762001914620052c6565b6020026020010151838281518110620019315762001931620052c6565b6001600160a01b039092166020928302919091019091015280620019558162005375565b915050620018f5565b50505b6101065481516001600160a01b03909116908290620019839060019062005391565b81518110620019965762001996620052c6565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019c8919062005391565b81518110620019db57620019db620052c6565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a2e9291610108913090889060040162005493565b6020604051808303816000875af115801562001a4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a749190620050bb565b60fe55805162001a8d9061010f9060208401906200448f565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aff9290916101089190620054f3565b60405180910390a150801562001b4f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b606200336f565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b91612710606462005052565b60fc5460fb5462001ba3919062005052565b62001baf919062005113565b9050600062001bc2612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf09030906004016200463d565b602060405180830381865afa15801562001c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c349190620050bb565b60fb5462001c43919062005052565b62001c4f919062005113565b905062001c5c8562002f1b565b62001da65760028401805460ff1916600190811790915560fb5490850181905562001cb69086903090849062001c9490879062005136565b62001ca0919062005136565b610105546001600160a01b031692919062003871565b811562001ce35760ff546101055462001ce3916001600160a01b03918216916101009091041684620038cd565b801562001d685762001d68836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d539190620052a6565b610105546001600160a01b03169083620038cd565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d9d929190620050a2565b60405180910390a15b505050505062001db66001606555565b565b6001600160a01b038116331462001e2a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153c565b620011838282620038ef565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e815760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb562003959565b6001600160a01b03161462001ede5760405162461bcd60e51b81526004016200153c906200555d565b62001ee98162003976565b604080516000808252602082019092526200119c91839190620039b8565b62001f1162003332565b62001f1c816200342e565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000df99392169190620050f9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fbf5760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff362003959565b6001600160a01b0316146200201c5760405162461bcd60e51b81526004016200153c906200555d565b620020278262003976565b6200118382826001620039b8565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206b62002e55565b6040516024016200207f9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020be90620044f5565b620020cb929190620055bb565b604051809103906000f080158015620020e8573d6000803e3d6000fd5b509050620020f981878787620031e3565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153c565b506000805160206200602483398151915290565b620021c16200336f565b620021cb62003b30565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200222f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002210575b50505050509050600080600090505b82518110156200236a578281815181106200225d576200225d620052c6565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002294929190620050a2565b6020604051808303816000875af1158015620022b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022da9190620050bb565b9150811562002355576001600160a01b038416600090815261010b602052604081208451849290869085908110620023165762002316620052c6565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546200234f919062005136565b90915550505b80620023618162005375565b9150506200223e565b506101055462002386906001600160a01b031684308762003871565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b490849062005136565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023ed9085908790620050a2565b60405180910390a15050506200119c6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243962002e55565b6040516024016200244d9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248c90620044f5565b62002499929190620055bb565b604051809103906000f080158015620024b6573d6000803e3d6000fd5b509050620024c78187878762002cc8565b60c087015191945092506001600160a01b0316620025d2576103e88560e00151511115620025505760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153c565b600083604051602001620025659190620055e1565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025cf57620025ba828860e001518381518110620025ac57620025ac620052c6565b602002602001015162003725565b80620025c68162005375565b91505062002580565b50505b6200262e83604051602001620025e99190620055e1565b6040516020818303038152906040528051906020012084604051602001620026129190620055fe565b604051602081830303815290604052805190602001206200381c565b6200266283604051602001620026459190620055fe565b604051602081830303815290604052805190602001208362003725565b50935093915050565b620026756200336f565b6200267f62003b30565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b390869062005391565b1015620026d357604051634e23e81760e11b815260040160405180910390fd5b61010554620026ed906001600160a01b03168486620038cd565b60005b82548110156200299d576000838281548110620027115762002711620052c6565b6000918252602090912001546001600160a01b031690506200273b8163f1801e6160e01b62003b59565b15620028c157604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027719088908a90600401620050a2565b6020604051808303816000875af115801562002791573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027b79190620050bb565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027f857620027f8620052c6565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284c576040516311423e6360e31b815260048101859052602481018290526044016200153c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200287f576200287f620052c6565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b590849062005391565b90915550505062002987565b83548490620028d39060019062005391565b81548110620028e657620028e6620052c6565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029195762002919620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295a576200295a62005621565b600082815260209020810160001990810180546001600160a01b031916905501905562002987816200345d565b5080620029948162005375565b915050620026f0565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cc90849062005391565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023ed9085908790620050a2565b62002a0f6200336f565b62002a1962003332565b60ff80541662002a3c576040516365b1ee3960e11b815260040160405180910390fd5b62002a478262002f1b565b62002a6557604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab68362003b81565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0b9216908490620038cd565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4493929190620050d5565b60405180910390a150620011836001606555565b62002b62620034bb565b62001db6600062003c96565b62002b7862003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bee919081019062005637565b60200151905062002bff816200342e565b62001183816200345d565b62002c1462003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c60573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8a919081019062005637565b60200151905062002c9b816200342e565b62002cb76001600160a01b03821663f1801e6160e01b62003b59565b15620011835762001183816200351e565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf35750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d32575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b9060200162005802565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc19796959493929190620058ab565b6020604051808303816000875af115801562002de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e079190620050bb565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e429594939291906200591c565b60405180910390a1505094509492505050565b60008062002e6b6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8557919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee2575060408051601f3d908101601f1916820190925262002edf91810190620052a6565b60015b62000d8857919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f6f620034bb565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fbf576040516375e686b760e11b815260040160405180910390fd5b62001db662003ce8565b610109805462002fd9906200514c565b80601f016020809104026020016040519081016040528092919081815260200182805462003007906200514c565b8015620030585780601f106200302c5761010080835404028352916020019162003058565b820191906000526020600020905b8154815290600101906020018083116200303a57829003601f168201915b505050505081565b6200306a6200336f565b336200307681620033ca565b620030818162003b81565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030fc919062004503565b6020810151610105546200311e916001600160a01b03909116908490620038cd565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003155929190620050a2565b60405180910390a1505062001db66001606555565b62003179612710600a62005052565b81565b600054610100900460ff16620031a65760405162461bcd60e51b81526004016200153c9062005958565b6200119c8162003c96565b610108805462002fd9906200514c565b620031cc82620012db565b620031d78162003719565b620014518383620038ef565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b038616156200320e5750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116200324d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b90602001620059a3565b600062000d8860008051602062005fe48339815191528362002ef0565b620032cb620034bb565b6001600160a01b038116620031a65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153c565b6200334d60008051602062005fe48339815191523362002ef0565b62001db6573360405163fc4be72f60e01b81526004016200153c91906200463d565b600260655403620033c35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153c565b6002606555565b620033d58162002f1b565b6200119c57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119c576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119c576040516303988b8160e61b815260040160405180910390fd5b6001606555565b62003468816200342e565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000df99083906200463d565b33620034c662002e55565b6001600160a01b03161462001db65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153c565b6001600160a01b038116600090815261010a602052604090205460ff16156200355a576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000df99083906200463d565b806001600160a01b0316826001600160a01b031614620011835760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371357826001600160a01b0316828281548110620036275762003627620052c6565b6000918252602090912001546001600160a01b031603620036fe5781548290620036549060019062005391565b81548110620036675762003667620052c6565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369a576200369a620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036db57620036db62005621565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370a8162005375565b915050620035fe565b50505050565b6200119c813362003d4c565b62003731828262002ef0565b6200118357600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376b3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037e85760405162461bcd60e51b81526004016200153c9062005958565b62001db662003db0565b600054610100900460ff1662001db65760405162461bcd60e51b81526004016200153c9062005958565b60006200382983620012db565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003713846323b872dd60e01b8585856040516024016200389593929190620050d5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003dda565b620014518363a9059cbb60e01b848460405160240162003895929190620050a2565b620038fb828262002ef0565b156200118357600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006024833981519152546001600160a01b031690565b336200398162002e55565b6001600160a01b0316146200119c57336200399b62002e55565b60405163163678e960e01b81526004016200153c929190620050f9565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039ee57620014518362003eb6565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4b575060408051601f3d908101601f1916820190925262003a4891810190620050bb565b60015b62003ab05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153c565b60008051602062006024833981519152811462003b225760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153c565b506200145183838362003f55565b62003b3b3362002f1b565b62001db657604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b668362003f80565b801562003b7a575062003b7a838362003fb8565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bee57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bcf575b5050505050905060005b8151811015620014515781818151811062003c175762003c17620052c6565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4c91906200463d565b600060405180830381600087803b15801562003c6757600080fd5b505af115801562003c7c573d6000803e3d6000fd5b50505050808062003c8d9062005375565b91505062003bf8565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d42906000906200463d565b60405180910390a1565b62003d58828262002ef0565b620011835762003d688162004043565b62003d7583602062004056565b60405160200162003d8892919062005a2c565b60408051601f198184030181529082905262461bcd60e51b82526200153c9160040162004fb4565b600054610100900460ff16620034565760405162461bcd60e51b81526004016200153c9062005958565b600062003e31826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200420f9092919063ffffffff16565b905080516000148062003e5557508080602001905181019062003e55919062005a9f565b620014515760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153c565b62003ec181620037af565b62003f255760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153c565b6000805160206200602483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f608362004228565b60008251118062003f6e5750805b1562001451576200371383836200426a565b600062003f95826301ffc9a760e01b62003fb8565b801562000d88575062003fb1826001600160e01b031962003fb8565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402b575060208210155b8015620040385750600081115b979650505050505050565b606062000d886001600160a01b03831660145b606060006200406783600262005052565b6200407490600262005136565b6001600160401b038111156200408e576200408e62004679565b6040519080825280601f01601f191660200182016040528015620040b9576020820181803683370190505b509050600360fc1b81600081518110620040d757620040d7620052c6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041095762004109620052c6565b60200101906001600160f81b031916908160001a90535060006200412f84600262005052565b6200413c90600162005136565b90505b6001811115620041be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041745762004174620052c6565b1a60f81b8282815181106200418d576200418d620052c6565b60200101906001600160f81b031916908160001a90535060049490941c93620041b68162005abf565b90506200413f565b50831562003b7a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153c565b606062004220848460008562004292565b949350505050565b620042338162003eb6565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7a838360405180606001604052806027815260200162006044602791396200436a565b606082471015620042f55760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153c565b600080866001600160a01b0316858760405162004313919062005ad9565b60006040518083038185875af1925050503d806000811462004352576040519150601f19603f3d011682016040523d82523d6000602084013e62004357565b606091505b50915091506200403887838387620043e8565b6060600080856001600160a01b03168560405162004389919062005ad9565b600060405180830381855af49150503d8060008114620043c6576040519150601f19603f3d011682016040523d82523d6000602084013e620043cb565b606091505b5091509150620043de86838387620043e8565b9695505050505050565b606083156200445c57825160000362004454576200440685620037af565b620044545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153c565b508162004220565b620042208383815115620044735781518083602001fd5b8060405162461bcd60e51b81526004016200153c919062004fb4565b828054828255906000526020600020908101928215620044e7579160200282015b82811115620044e757825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b0565b5062002eec9291506200451e565b6104ec8062005af883390190565b50805460008255906000526020600020908101906200119c91905b5b8082111562002eec57600081556001016200451f565b6000602082840312156200454857600080fd5b81356001600160e01b03198116811462003b7a57600080fd5b6000602082840312156200457457600080fd5b5035919050565b6001600160a01b03811681146200119c57600080fd5b80356200459e816200457b565b919050565b60008060408385031215620045b757600080fd5b8235620045c4816200457b565b91506020830135620045d6816200457b565b809150509250929050565b600060208284031215620045f457600080fd5b813562003b7a816200457b565b600080604083850312156200461557600080fd5b823562004622816200457b565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466557600080fd5b823591506020830135620045d6816200457b565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b457620046b462004679565b60405290565b60405161018081016001600160401b0381118282101715620046b457620046b462004679565b60405160c081016001600160401b0381118282101715620046b457620046b462004679565b60405161010081016001600160401b0381118282101715620046b457620046b462004679565b604051601f8201601f191681016001600160401b038111828210171562004756576200475662004679565b604052919050565b60006001600160401b038211156200477a576200477a62004679565b50601f01601f191660200190565b60006200479f62004799846200475e565b6200472b565b9050828152838383011115620047b457600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047dd57600080fd5b62003b7a8383356020850162004788565b6000604082840312156200480157600080fd5b6200480b6200468f565b82358152905060208201356001600160401b038111156200482b57600080fd5b6200483984828501620047cb565b60208301525092915050565b80151581146200119c57600080fd5b80356200459e8162004845565b600080600080608085870312156200487857600080fd5b84356001600160401b03808211156200489057600080fd5b908601906101808289031215620048a657600080fd5b620048b0620046ba565b620048bb8362004591565b8152620048cb6020840162004591565b6020820152604083013560408201526060830135606082015260808301356080820152620048fc60a0840162004591565b60a08201526200490f60c0840162004591565b60c082015260e0830135828111156200492757600080fd5b620049358a828601620047ee565b60e0830152506101006200494b81850162004591565b9082015261012083810135838111156200496457600080fd5b620049728b828701620047cb565b8284015250506101406200498881850162004854565b908201526101608381013583811115620049a157600080fd5b620049af8b828701620047cb565b828401525050809650505050620049c96020860162004591565b9250620049d96040860162004591565b9150620049e96060860162004591565b905092959194509250565b6000806040838503121562004a0857600080fd5b823562004a15816200457b565b915060208301356001600160401b0381111562004a3157600080fd5b8301601f8101851362004a4357600080fd5b62004a548582356020840162004788565b9150509250929050565b60006080828403121562004a7157600080fd5b604051608081016001600160401b038111828210171562004a965762004a9662004679565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200459e57600080fd5b600481106200119c57600080fd5b80356200459e8162004ad7565b60006020828403121562004b0557600080fd5b604051602081016001600160401b038111828210171562004b2a5762004b2a62004679565b6040529135825250919050565b600060c0828403121562004b4a57600080fd5b62004b54620046e0565b9050813562004b63816200457b565b8152602082013562004b75816200457b565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bbe57600080fd5b60405160e081016001600160401b038111828210171562004be35762004be362004679565b60405290508062004bf5848462004a5e565b815262004c056080840162004ac7565b602082015260a083013562004c1a8162004ad7565b604082015262004c2e8460c0850162004af2565b606082015262004c428460e0850162004b37565b60808201526101a083013562004c58816200457b565b60a082015262004c6c6101c0840162004591565b60c08201525092915050565b6000806000610220848603121562004c8f57600080fd5b833562004c9c816200457b565b925062004cad856020860162004baa565b91506102008401356001600160401b0381111562004cca57600080fd5b62004cd886828701620047ee565b9150509250925092565b60006001600160401b0382111562004cfe5762004cfe62004679565b5060051b60200190565b600082601f83011262004d1a57600080fd5b8135602062004d2d620047998362004ce2565b82815260059290921b8401810191818101908684111562004d4d57600080fd5b8286015b8481101562004d7557803562004d67816200457b565b835291830191830162004d51565b509695505050505050565b6000610200828403121562004d9457600080fd5b62004d9e62004705565b905062004dac838362004a5e565b815262004dbc6080830162004ac7565b602082015262004dcf60a0830162004ae5565b604082015262004de38360c0840162004af2565b606082015262004df78360e0840162004b37565b608082015262004e0b6101a0830162004591565b60a082015262004e1f6101c0830162004591565b60c08201526101e08201356001600160401b0381111562004e3f57600080fd5b62004e4d8482850162004d08565b60e08301525092915050565b60008060006060848603121562004e6f57600080fd5b833562004e7c816200457b565b925060208401356001600160401b038082111562004e9957600080fd5b62004ea78783880162004d80565b9350604086013591508082111562004ebe57600080fd5b5062004cd886828701620047ee565b6000806000806080858703121562004ee457600080fd5b843562004ef1816200457b565b9350602085013562004f03816200457b565b925060408501356001600160401b038082111562004f2057600080fd5b62004f2e8883890162004d80565b9350606087013591508082111562004f4557600080fd5b5062004f5487828801620047ee565b91505092959194509250565b60005b8381101562004f7d57818101518382015260200162004f63565b50506000910152565b6000815180845262004fa081602086016020860162004f60565b601f01601f19169290920160200192915050565b60208152600062003b7a602083018462004f86565b600080600080610240858703121562004fe157600080fd5b843562004fee816200457b565b9350602085013562005000816200457b565b925062005011866040870162004baa565b91506102208501356001600160401b038111156200502e57600080fd5b62004f5487828801620047ee565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d885762000d886200503c565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509557600080fd5b815162003b7a8162004ad7565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050ce57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513157634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d885762000d886200503c565b600181811c908216806200516157607f821691505b6020821081036200518257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145157600081815260208120601f850160051c81016020861015620051b15750805b601f850160051c820191505b81811015620051d257828155600101620051bd565b505050505050565b81516001600160401b03811115620051f657620051f662004679565b6200520e816200520784546200514c565b8462005188565b602080601f8311600181146200524657600084156200522d5750858301515b600019600386901b1c1916600185901b178555620051d2565b600085815260208120601f198616915b82811015620052775788860151825594840194600190910190840162005256565b5085821015620052965787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052b957600080fd5b815162003b7a816200457b565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f057600080fd5b82516001600160401b038111156200530757600080fd5b8301601f810185136200531957600080fd5b80516200532a620047998262004ce2565b81815260059190911b820183019083810190878311156200534a57600080fd5b928401925b828410156200403857835162005365816200457b565b825292840192908401906200534f565b6000600182016200538a576200538a6200503c565b5060010190565b8181038181111562000d885762000d886200503c565b60008154620053b6816200514c565b808552602060018381168015620053d65760018114620053f15762005421565b60ff1985168884015283151560051b88018301955062005421565b866000528260002060005b85811015620054195781548a8201860152908301908401620053fc565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004220604085018262004f86565b600081518084526020808501945080840160005b83811015620054885781516001600160a01b03168752958201959082019060010162005461565b509495945050505050565b85815260a060208201526000620054ae60a0830187620053a7565b8281036040840152620054c281876200542c565b6001600160a01b038616606085015283810360808501529050620054e781856200544d565b98975050505050505050565b8381526060602082015260006200550e6060830185620053a7565b8281036040840152620043de81856200542c565b6020808252602c908201526000805160206200600483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042209083018462004f86565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564b57600080fd5b82516001600160401b03808211156200566357600080fd5b9084019060c082870312156200567857600080fd5b62005682620046e0565b825181528383015162005695816200457b565b818501526040830151620056a9816200457b565b6040820152606083015182811115620056c157600080fd5b830160408189031215620056d457600080fd5b620056de6200468f565b815181528582015184811115620056f457600080fd5b82019350601f840189136200570857600080fd5b835191506200571b62004799836200475e565b82815289878487010111156200573057600080fd5b620057418388830189880162004f60565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a657620057a66200506c565b9052565b60048110620057a657620057a66200506c565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b60208152620058166020820183516200576d565b600060208301516200582c60a084018262005793565b5060408301516200584160c0840182620057aa565b5060608301515160e0830152608083015162005862610100840182620057bd565b5060a0830151620058786101c084018262004630565b5060c08301516200588e6101e084018262004630565b5060e083015161020083810152620042206102208401826200544d565b878152600060018060a01b03808916602084015260e06040840152620058d560e084018962004f86565b818816606085015286608085015283810360a0850152620058f781876200542c565b91505082810360c08401526200590e81856200544d565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062004038908301846200542c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059b98284516200576d565b6020830151620059cd608084018262005793565b506040830151620059e260a0840182620057aa565b5060608301515160c0830152608083015162005a0260e0840182620057bd565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6081601785016020880162004f60565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9381602884016020880162004f60565b01602801949350505050565b60006020828403121562005ab257600080fd5b815162003b7a8162004845565b60008162005ad15762005ad16200503c565b506000190190565b6000825162005aed81846020870162004f60565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e6ba9d9015bdf5efd1a73c73a257325198572762d36c817daa948fadcb91f2bf64736f6c63430008130033","sourceMap":"522:2047:105:-:0;;;1088:4:64;1045:48;;522:2047:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003445760003560e01c806301ffc9a714620003495780630331383c146200038357806308386eba14620003a45780630d12bbdb14620003bc5780630d4a8b4914620003e3578063175188e814620004085780631b71f0e4146200042d5780631f787d281462000452578063223e5479146200046d57806322bcf9991462000492578063248a9ca314620004b757806328c309e914620004dc5780632b38c69c14620004f45780632c611c4a14620005285780632f2ff15d146200056657806331f61bca146200058b5780633396045914620005b05780633419635514620005c85780633517aa7d14620005ed57806336568abe14620006055780633659cfe6146200062a578063397e2543146200064f5780633a871fe11462000674578063477a5cc014620006a95780634f1ef28614620006e9578063524e59e8146200070057806352d1902d1462000743578063559de05d146200075b578063579eb7e514620007805780635c94e4d214620007a55780635ecf71c514620007c857806365e3864c14620007ed5780636871eb4d146200082a57806368decabb146200084f5780636c53db9a1462000872578063715018a6146200089557806373265c3714620008ad578063733a2d1f14620008d257806377122d5614620008f75780637817ee4f146200091a57806378a0b8a914620009655780637b103999146200097d57806382d6a1e714620009a05780638659ffdd14620009c557806388cfe68414620009ea5780638961be6b1462000a605780638da5cb5b1462000a7857806391d148541462000a90578063a0cf0aea1462000ab5578063a217fddf1462000adf578063a230c5241462000af6578063b0d3713a1462000b1b578063b3f006741462000b40578063b5058c501462000b67578063b64e39af1462000b7f578063b99b43701462000ba6578063bc063e1a1462000bbe578063c4d66de81462000bd6578063c6d572ae1462000bfb578063d547741f1462000c13578063d6d8428d1462000c38578063d7050f071462000c5b578063db61d65c1462000c73578063e16d0e321462000c96578063ebd7dc521462000cbb578063f2fde38b1462000ce0578063f86c5f891462000d05578063ffa1ad741462000d28575b600080fd5b3480156200035657600080fd5b506200036e6200036836600462004535565b62000d56565b60405190151581526020015b60405180910390f35b3480156200039057600080fd5b5060fb545b6040519081526020016200037a565b348015620003b157600080fd5b506200039560fe5481565b348015620003c957600080fd5b50620003e1620003db36600462004561565b62000d8e565b005b348015620003f057600080fd5b50620003e162000402366004620045a3565b62000e04565b3480156200041557600080fd5b50620003e162000427366004620045e1565b62001187565b3480156200043a57600080fd5b50620003e16200044c366004620045e1565b6200119f565b3480156200045f57600080fd5b5060ff80546200036e911681565b3480156200047a57600080fd5b50620003e16200048c366004620045e1565b620011cc565b3480156200049f57600080fd5b50620003e1620004b1366004620045a3565b620011e1565b348015620004c457600080fd5b5062000395620004d636600462004561565b620012db565b348015620004e957600080fd5b5062000395620012f0565b3480156200050157600080fd5b50620005196200051336600462004601565b620013f5565b6040516200037a91906200463d565b3480156200053557600080fd5b506200039562000547366004620045e1565b6001600160a01b0316600090815261010c602052604090206001015490565b3480156200057357600080fd5b50620003e16200058536600462004651565b6200142f565b3480156200059857600080fd5b50620003e1620005aa36600462004561565b62001456565b348015620005bd57600080fd5b506200039560fd5481565b348015620005d557600080fd5b50620003e1620005e736600462004861565b62001496565b348015620005fa57600080fd5b50620003e162001b56565b3480156200061257600080fd5b50620003e16200062436600462004651565b62001db8565b3480156200063757600080fd5b50620003e162000649366004620045e1565b62001e36565b3480156200065c57600080fd5b50620003e16200066e366004620045e1565b62001f07565b3480156200068157600080fd5b506200036e62000693366004620045e1565b61010a6020526000908152604090205460ff1681565b348015620006b657600080fd5b506200036e620006c8366004620045a3565b61010e60209081526000928352604080842090915290825290205460ff1681565b620003e1620006fa366004620049f4565b62001f74565b3480156200070d57600080fd5b50620007256200071f36600462004c78565b62002035565b604080519283526001600160a01b039091166020830152016200037a565b3480156200075057600080fd5b506200039562002106565b3480156200076857600080fd5b50620003e16200077a36600462004561565b620021b7565b3480156200078d57600080fd5b50620007256200079f36600462004e59565b62002403565b348015620007b257600080fd5b506101025462000519906001600160a01b031681565b348015620007d557600080fd5b50620003e1620007e736600462004561565b6200266b565b348015620007fa57600080fd5b50620003956200080c366004620045a3565b61010b60209081526000928352604080842090915290825290205481565b3480156200083757600080fd5b50620003e162000849366004620045a3565b62002a05565b3480156200085c57600080fd5b506101035462000519906001600160a01b031681565b3480156200087f57600080fd5b506101065462000519906001600160a01b031681565b348015620008a257600080fd5b50620003e162002b58565b348015620008ba57600080fd5b50620003e1620008cc36600462004561565b62002b6e565b348015620008df57600080fd5b506200039560008051602062005fe483398151915281565b3480156200090457600080fd5b506101015462000519906001600160a01b031681565b3480156200092757600080fd5b506200039562000939366004620045a3565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200097257600080fd5b506200039560fb5481565b3480156200098a57600080fd5b506101045462000519906001600160a01b031681565b348015620009ad57600080fd5b50620003e1620009bf36600462004561565b62002c0a565b348015620009d257600080fd5b5062000725620009e436600462004ecd565b62002cc8565b348015620009f757600080fd5b5062000a3862000a09366004620045e1565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200037a565b34801562000a6d57600080fd5b506200039560fc5481565b34801562000a8557600080fd5b506200051962002e55565b34801562000a9d57600080fd5b506200036e62000aaf36600462004651565b62002ef0565b34801562000ac257600080fd5b506200051973eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000aec57600080fd5b5062000395600081565b34801562000b0357600080fd5b506200036e62000b15366004620045e1565b62002f1b565b34801562000b2857600080fd5b50620003e162000b3a366004620045e1565b62002f65565b34801562000b4d57600080fd5b5060ff54620005199061010090046001600160a01b031681565b34801562000b7457600080fd5b50620003e162002f92565b34801562000b8c57600080fd5b5062000b9762002fc9565b6040516200037a919062004fb4565b34801562000bb357600080fd5b50620003e162003060565b34801562000bcb57600080fd5b50620003956200316a565b34801562000be357600080fd5b50620003e162000bf5366004620045e1565b6200317c565b34801562000c0857600080fd5b5062000b97620031b1565b34801562000c2057600080fd5b50620003e162000c3236600462004651565b620031c1565b34801562000c4557600080fd5b506101075462000519906001600160a01b031681565b34801562000c6857600080fd5b506200039561271081565b34801562000c8057600080fd5b506101055462000519906001600160a01b031681565b34801562000ca357600080fd5b506200072562000cb536600462004fc9565b620031e3565b34801562000cc857600080fd5b506200036e62000cda366004620045e1565b620032a4565b34801562000ced57600080fd5b50620003e162000cff366004620045e1565b620032c1565b34801562000d1257600080fd5b506101005462000519906001600160a01b031681565b34801562000d3557600080fd5b506040805180820190915260038152620302e360ec1b602082015262000b97565b60006001600160e01b03198216637965db0b60e01b148062000d8857506301ffc9a760e01b6001600160e01b03198316145b92915050565b62000d9862003332565b62000da7612710600a62005052565b81111562000dc85760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000e0e6200336f565b62000e1982620033ca565b62000e2481620033f3565b62000e2f816200342e565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000e7857604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000f06573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2c919062005082565b600381111562000f405762000f406200506c565b0362000fc55760405163782aadff60e01b81526001600160a01b0385169063782aadff9062000f77908890600090600401620050a2565b6020604051808303816000875af115801562000f97573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fbd9190620050bb565b9050620010c1565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562001008573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200102e919062005082565b60038111156200104257620010426200506c565b14620010c15760405163782aadff60e01b81526001600160a01b0385169063782aadff90620010789088908690600401620050a2565b6020604051808303816000875af115801562001098573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010be9190620050bb565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200116d90879087908590620050d5565b60405180910390a1505050620011836001606555565b5050565b6200119162003332565b6200119c816200345d565b50565b620011a9620034bb565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b620011d662003332565b6200119c816200351e565b620011ec82620033ca565b620011f7816200342e565b620012033382620035b0565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff166200124b57604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b8152828220938252929092528120556200129d8282620035e3565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b8282604051620012cf929190620050f9565b60405180910390a15050565b600090815260c9602052604090206001015490565b610100546000906001600160a01b03168162001310612710606462005052565b60fc5460fb5462001322919062005052565b6200132e919062005113565b9050600062001341612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c906200136f9030906004016200463d565b602060405180830381865afa1580156200138d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620013b39190620050bb565b60fb54620013c2919062005052565b620013ce919062005113565b9050808260fb54620013e1919062005136565b620013ed919062005136565b935050505090565b61010d60205281600052604060002081815481106200141357600080fd5b6000918252602090912001546001600160a01b03169150829050565b6200143a82620012db565b620014458162003719565b62001451838362003725565b505050565b6200146062003332565b60fb8190556040518181527f5bcc2c453001fb0e2ba6266d56ecb411e7c6e15c8f9c3d301f93dd36ad25726f9060200162000df9565b600054610100900460ff1615808015620014b75750600054600160ff909116105b80620014dc5750620014c930620037af565b158015620014dc575060005460ff166001145b620015455760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001569576000805461ff0019166101001790555b62001574826200317c565b6200157e620037be565b62001588620037f2565b620015a460008051602062005fe483398151915260006200381c565b620015b385602001516200342e565b620015c38561010001516200342e565b8451620015d0906200342e565b620015df8560a001516200342e565b606085015115620015f957620015f98560c001516200342e565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001654576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016919082620051da565b5061016085015161010990620016a89082620051da565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b03191691851684029190911790559087015161010680549092169281169290921790556200171d9060008051602062005fe48339815191529062003725565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001772573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017989190620052a6565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b60000362001824576040805160038082526080820190925290602082016060803683370190505090503381600081518110620017fe57620017fe620052c6565b60200260200101906001600160a01b031690816001600160a01b03168152505062001961565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa1580156200186f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018999190810190620052dc565b905080516002620018ab919062005136565b6001600160401b03811115620018c557620018c562004679565b604051908082528060200260200182016040528015620018ef578160200160208202803683370190505b50915060005b81518110156200195e57818181518110620019145762001914620052c6565b6020026020010151838281518110620019315762001931620052c6565b6001600160a01b039092166020928302919091019091015280620019558162005375565b915050620018f5565b50505b6101065481516001600160a01b03909116908290620019839060019062005391565b81518110620019965762001996620052c6565b60200260200101906001600160a01b031690816001600160a01b031681525050308160028351620019c8919062005391565b81518110620019db57620019db620052c6565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a2e9291610108913090889060040162005493565b6020604051808303816000875af115801562001a4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a749190620050bb565b60fe55805162001a8d9061010f9060208401906200448f565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001aff9290916101089190620054f3565b60405180910390a150801562001b4f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b62001b606200336f565b33600081815261010c602052604081206101005490916001600160a01b039091169062001b91612710606462005052565b60fc5460fb5462001ba3919062005052565b62001baf919062005113565b9050600062001bc2612710606462005052565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c9062001bf09030906004016200463d565b602060405180830381865afa15801562001c0e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c349190620050bb565b60fb5462001c43919062005052565b62001c4f919062005113565b905062001c5c8562002f1b565b62001da65760028401805460ff1916600190811790915560fb5490850181905562001cb69086903090849062001c9490879062005136565b62001ca0919062005136565b610105546001600160a01b031692919062003871565b811562001ce35760ff546101055462001ce3916001600160a01b03918216916101009091041684620038cd565b801562001d685762001d68836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001d2d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d539190620052a6565b610105546001600160a01b03169083620038cd565b7f67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f76898560fb5460405162001d9d929190620050a2565b60405180910390a15b505050505062001db66001606555565b565b6001600160a01b038116331462001e2a5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084016200153c565b620011838282620038ef565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001e815760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001eb562003959565b6001600160a01b03161462001ede5760405162461bcd60e51b81526004016200153c906200555d565b62001ee98162003976565b604080516000808252602082019092526200119c91839190620039b8565b62001f1162003332565b62001f1c816200342e565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000df99392169190620050f9565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001fbf5760405162461bcd60e51b81526004016200153c9062005522565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001ff362003959565b6001600160a01b0316146200201c5760405162461bcd60e51b81526004016200153c906200555d565b620020278262003976565b6200118382826001620039b8565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200206b62002e55565b6040516024016200207f9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051620020be90620044f5565b620020cb929190620055bb565b604051809103906000f080158015620020e8573d6000803e3d6000fd5b509050620020f981878787620031e3565b9250925050935093915050565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614620021a35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b60648201526084016200153c565b506000805160206200602483398151915290565b620021c16200336f565b620021cb62003b30565b33600081815261010d60209081526040808320805482518185028101850190935280835291929091908301828280156200222f57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002210575b50505050509050600080600090505b82518110156200236a578281815181106200225d576200225d620052c6565b60200260200101516001600160a01b031663782aadff85876040518363ffffffff1660e01b815260040162002294929190620050a2565b6020604051808303816000875af1158015620022b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022da9190620050bb565b9150811562002355576001600160a01b038416600090815261010b602052604081208451849290869085908110620023165762002316620052c6565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060008282546200234f919062005136565b90915550505b80620023618162005375565b9150506200223e565b506101055462002386906001600160a01b031684308762003871565b6001600160a01b038316600090815261010c602052604081206001018054869290620023b490849062005136565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f90620023ed9085908790620050a2565b60405180910390a15050506200119c6001606555565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b92811691166200243962002e55565b6040516024016200244d9392919062005598565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516200248c90620044f5565b62002499929190620055bb565b604051809103906000f080158015620024b6573d6000803e3d6000fd5b509050620024c78187878762002cc8565b60c087015191945092506001600160a01b0316620025d2576103e88560e00151511115620025505760405162461bcd60e51b815260206004820152602f60248201527f546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626560448201526e072732c206d6178206973203130303608c1b60648201526084016200153c565b600083604051602001620025659190620055e1565b60405160208183030381529060405280519060200120905060005b8660e0015151811015620025cf57620025ba828860e001518381518110620025ac57620025ac620052c6565b602002602001015162003725565b80620025c68162005375565b91505062002580565b50505b6200262e83604051602001620025e99190620055e1565b6040516020818303038152906040528051906020012084604051602001620026129190620055fe565b604051602081830303815290604052805190602001206200381c565b6200266283604051602001620026459190620055fe565b604051602081830303815290604052805190602001208362003725565b50935093915050565b620026756200336f565b6200267f62003b30565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620026b390869062005391565b1015620026d357604051634e23e81760e11b815260040160405180910390fd5b61010554620026ed906001600160a01b03168486620038cd565b60005b82548110156200299d576000838281548110620027115762002711620052c6565b6000918252602090912001546001600160a01b031690506200273b8163f1801e6160e01b62003b59565b15620028c157604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620027719088908a90600401620050a2565b6020604051808303816000875af115801562002791573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027b79190620050bb565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620027f857620027f8620052c6565b60009182526020808320909101546001600160a01b031683528201929092526040019020549050808411156200284c576040516311423e6360e31b815260048101859052602481018290526044016200153c565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200287f576200287f620052c6565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620028b590849062005391565b90915550505062002987565b83548490620028d39060019062005391565b81548110620028e657620028e6620052c6565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620029195762002919620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806200295a576200295a62005621565b600082815260209020810160001990810180546001600160a01b031916905501905562002987816200345d565b5080620029948162005375565b915050620026f0565b506001600160a01b038316600090815261010c602052604081206001018054869290620029cc90849062005391565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620023ed9085908790620050a2565b62002a0f6200336f565b62002a1962003332565b60ff80541662002a3c576040516365b1ee3960e11b815260040160405180910390fd5b62002a478262002f1b565b62002a6557604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff1615159082015262002ab68362003b81565b6001600160a01b03808416600090815261010c60209081526040822080546001600160a01b031916815560018101929092556002909101805460ff191690558201516101055462002b0b9216908490620038cd565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a38383836020015160405162002b4493929190620050d5565b60405180910390a150620011836001606555565b62002b62620034bb565b62001db6600062003c96565b62002b7862003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002bc4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002bee919081019062005637565b60200151905062002bff816200342e565b62001183816200345d565b62002c1462003332565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002c60573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002c8a919081019062005637565b60200151905062002c9b816200342e565b62002cb76001600160a01b03821663f1801e6160e01b62003b59565b15620011835762001183816200351e565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0386161562002cf35750845b869150600061010f80548060200260200160405190810160405280929190818152602001828054801562002d5157602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162002d32575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b9060200162005802565b6040516020818303038152906040528660008b886040518863ffffffff1660e01b815260040162002dc19796959493929190620058ab565b6020604051808303816000875af115801562002de1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e079190620050bb565b93507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838484308a8960405162002e429594939291906200591c565b60405180910390a1505094509492505050565b60008062002e6b6033546001600160a01b031690565b9050806001600160a01b03163b60000362002e8557919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562002ee2575060408051601f3d908101601f1916820190925262002edf91810190620052a6565b60015b62000d8857919050565b5090565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6001600160a01b03908116600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515910181905290565b62002f6f620034bb565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002fbf576040516375e686b760e11b815260040160405180910390fd5b62001db662003ce8565b610109805462002fd9906200514c565b80601f016020809104026020016040519081016040528092919081815260200182805462003007906200514c565b8015620030585780601f106200302c5761010080835404028352916020019162003058565b820191906000526020600020905b8154815290600101906020018083116200303a57829003601f168201915b505050505081565b6200306a6200336f565b336200307681620033ca565b620030818162003b81565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d90529182209091620030fc919062004503565b6020810151610105546200311e916001600160a01b03909116908490620038cd565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162003155929190620050a2565b60405180910390a1505062001db66001606555565b62003179612710600a62005052565b81565b600054610100900460ff16620031a65760405162461bcd60e51b81526004016200153c9062005958565b6200119c8162003c96565b610108805462002fd9906200514c565b620031cc82620012db565b620031d78162003719565b620014518383620038ef565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b038616156200320e5750845b869150600061010f8054806020026020016040519081016040528092919081815260200182805480156200326c57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116200324d575b50506101075460fe546040519596506001600160a01b039091169463e1007d4a945090925087915062002d89908b90602001620059a3565b600062000d8860008051602062005fe48339815191528362002ef0565b620032cb620034bb565b6001600160a01b038116620031a65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200153c565b6200334d60008051602062005fe48339815191523362002ef0565b62001db6573360405163fc4be72f60e01b81526004016200153c91906200463d565b600260655403620033c35760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016200153c565b6002606555565b620033d58162002f1b565b6200119c57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090205460ff166200119c576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b0381166200119c576040516303988b8160e61b815260040160405180910390fd5b6001606555565b62003468816200342e565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000df99083906200463d565b33620034c662002e55565b6001600160a01b03161462001db65760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016200153c565b6001600160a01b038116600090815261010a602052604090205460ff16156200355a576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600090815261010a602052604090819020805460ff19166001179055517f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f19062000df99083906200463d565b806001600160a01b0316826001600160a01b031614620011835760405163bbe7961160e01b815260040160405180910390fd5b6001600160a01b038216600090815261010d60205260408120905b81548110156200371357826001600160a01b0316828281548110620036275762003627620052c6565b6000918252602090912001546001600160a01b031603620036fe5781548290620036549060019062005391565b81548110620036675762003667620052c6565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200369a576200369a620052c6565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480620036db57620036db62005621565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200370a8162005375565b915050620035fe565b50505050565b6200119c813362003d4c565b62003731828262002ef0565b6200118357600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556200376b3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6001600160a01b03163b151590565b600054610100900460ff16620037e85760405162461bcd60e51b81526004016200153c9062005958565b62001db662003db0565b600054610100900460ff1662001db65760405162461bcd60e51b81526004016200153c9062005958565b60006200382983620012db565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003713846323b872dd60e01b8585856040516024016200389593929190620050d5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915262003dda565b620014518363a9059cbb60e01b848460405160240162003895929190620050a2565b620038fb828262002ef0565b156200118357600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60008051602062006024833981519152546001600160a01b031690565b336200398162002e55565b6001600160a01b0316146200119c57336200399b62002e55565b60405163163678e960e01b81526004016200153c929190620050f9565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620039ee57620014518362003eb6565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003a4b575060408051601f3d908101601f1916820190925262003a4891810190620050bb565b60015b62003ab05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016200153c565b60008051602062006024833981519152811462003b225760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016200153c565b506200145183838362003f55565b62003b3b3362002f1b565b62001db657604051636a5cfb6d60e01b815260040160405180910390fd5b600062003b668362003f80565b801562003b7a575062003b7a838362003fb8565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003bee57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003bcf575b5050505050905060005b8151811015620014515781818151811062003c175762003c17620052c6565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003c4c91906200463d565b600060405180830381600087803b15801562003c6757600080fd5b505af115801562003c7c573d6000803e3d6000fd5b50505050808062003c8d9062005375565b91505062003bf8565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b610103805461010680546001600160a01b03199081166001600160a01b038416179091551690556040517fad0399dc40331b9a4977aa89da7a164a3fd482c65e6da73b25a94ea74fb688729062003d42906000906200463d565b60405180910390a1565b62003d58828262002ef0565b620011835762003d688162004043565b62003d7583602062004056565b60405160200162003d8892919062005a2c565b60408051601f198184030181529082905262461bcd60e51b82526200153c9160040162004fb4565b600054610100900460ff16620034565760405162461bcd60e51b81526004016200153c9062005958565b600062003e31826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166200420f9092919063ffffffff16565b905080516000148062003e5557508080602001905181019062003e55919062005a9f565b620014515760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016200153c565b62003ec181620037af565b62003f255760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016200153c565b6000805160206200602483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b62003f608362004228565b60008251118062003f6e5750805b1562001451576200371383836200426a565b600062003f95826301ffc9a760e01b62003fb8565b801562000d88575062003fb1826001600160e01b031962003fb8565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d915060005190508280156200402b575060208210155b8015620040385750600081115b979650505050505050565b606062000d886001600160a01b03831660145b606060006200406783600262005052565b6200407490600262005136565b6001600160401b038111156200408e576200408e62004679565b6040519080825280601f01601f191660200182016040528015620040b9576020820181803683370190505b509050600360fc1b81600081518110620040d757620040d7620052c6565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620041095762004109620052c6565b60200101906001600160f81b031916908160001a90535060006200412f84600262005052565b6200413c90600162005136565b90505b6001811115620041be576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620041745762004174620052c6565b1a60f81b8282815181106200418d576200418d620052c6565b60200101906001600160f81b031916908160001a90535060049490941c93620041b68162005abf565b90506200413f565b50831562003b7a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016200153c565b606062004220848460008562004292565b949350505050565b620042338162003eb6565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003b7a838360405180606001604052806027815260200162006044602791396200436a565b606082471015620042f55760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016200153c565b600080866001600160a01b0316858760405162004313919062005ad9565b60006040518083038185875af1925050503d806000811462004352576040519150601f19603f3d011682016040523d82523d6000602084013e62004357565b606091505b50915091506200403887838387620043e8565b6060600080856001600160a01b03168560405162004389919062005ad9565b600060405180830381855af49150503d8060008114620043c6576040519150601f19603f3d011682016040523d82523d6000602084013e620043cb565b606091505b5091509150620043de86838387620043e8565b9695505050505050565b606083156200445c57825160000362004454576200440685620037af565b620044545760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016200153c565b508162004220565b620042208383815115620044735781518083602001fd5b8060405162461bcd60e51b81526004016200153c919062004fb4565b828054828255906000526020600020908101928215620044e7579160200282015b82811115620044e757825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620044b0565b5062002eec9291506200451e565b6104ec8062005af883390190565b50805460008255906000526020600020908101906200119c91905b5b8082111562002eec57600081556001016200451f565b6000602082840312156200454857600080fd5b81356001600160e01b03198116811462003b7a57600080fd5b6000602082840312156200457457600080fd5b5035919050565b6001600160a01b03811681146200119c57600080fd5b80356200459e816200457b565b919050565b60008060408385031215620045b757600080fd5b8235620045c4816200457b565b91506020830135620045d6816200457b565b809150509250929050565b600060208284031215620045f457600080fd5b813562003b7a816200457b565b600080604083850312156200461557600080fd5b823562004622816200457b565b946020939093013593505050565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600080604083850312156200466557600080fd5b823591506020830135620045d6816200457b565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620046b457620046b462004679565b60405290565b60405161018081016001600160401b0381118282101715620046b457620046b462004679565b60405160c081016001600160401b0381118282101715620046b457620046b462004679565b60405161010081016001600160401b0381118282101715620046b457620046b462004679565b604051601f8201601f191681016001600160401b038111828210171562004756576200475662004679565b604052919050565b60006001600160401b038211156200477a576200477a62004679565b50601f01601f191660200190565b60006200479f62004799846200475e565b6200472b565b9050828152838383011115620047b457600080fd5b828260208301376000602084830101529392505050565b600082601f830112620047dd57600080fd5b62003b7a8383356020850162004788565b6000604082840312156200480157600080fd5b6200480b6200468f565b82358152905060208201356001600160401b038111156200482b57600080fd5b6200483984828501620047cb565b60208301525092915050565b80151581146200119c57600080fd5b80356200459e8162004845565b600080600080608085870312156200487857600080fd5b84356001600160401b03808211156200489057600080fd5b908601906101808289031215620048a657600080fd5b620048b0620046ba565b620048bb8362004591565b8152620048cb6020840162004591565b6020820152604083013560408201526060830135606082015260808301356080820152620048fc60a0840162004591565b60a08201526200490f60c0840162004591565b60c082015260e0830135828111156200492757600080fd5b620049358a828601620047ee565b60e0830152506101006200494b81850162004591565b9082015261012083810135838111156200496457600080fd5b620049728b828701620047cb565b8284015250506101406200498881850162004854565b908201526101608381013583811115620049a157600080fd5b620049af8b828701620047cb565b828401525050809650505050620049c96020860162004591565b9250620049d96040860162004591565b9150620049e96060860162004591565b905092959194509250565b6000806040838503121562004a0857600080fd5b823562004a15816200457b565b915060208301356001600160401b0381111562004a3157600080fd5b8301601f8101851362004a4357600080fd5b62004a548582356020840162004788565b9150509250929050565b60006080828403121562004a7157600080fd5b604051608081016001600160401b038111828210171562004a965762004a9662004679565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200459e57600080fd5b600481106200119c57600080fd5b80356200459e8162004ad7565b60006020828403121562004b0557600080fd5b604051602081016001600160401b038111828210171562004b2a5762004b2a62004679565b6040529135825250919050565b600060c0828403121562004b4a57600080fd5b62004b54620046e0565b9050813562004b63816200457b565b8152602082013562004b75816200457b565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006101e0828403121562004bbe57600080fd5b60405160e081016001600160401b038111828210171562004be35762004be362004679565b60405290508062004bf5848462004a5e565b815262004c056080840162004ac7565b602082015260a083013562004c1a8162004ad7565b604082015262004c2e8460c0850162004af2565b606082015262004c428460e0850162004b37565b60808201526101a083013562004c58816200457b565b60a082015262004c6c6101c0840162004591565b60c08201525092915050565b6000806000610220848603121562004c8f57600080fd5b833562004c9c816200457b565b925062004cad856020860162004baa565b91506102008401356001600160401b0381111562004cca57600080fd5b62004cd886828701620047ee565b9150509250925092565b60006001600160401b0382111562004cfe5762004cfe62004679565b5060051b60200190565b600082601f83011262004d1a57600080fd5b8135602062004d2d620047998362004ce2565b82815260059290921b8401810191818101908684111562004d4d57600080fd5b8286015b8481101562004d7557803562004d67816200457b565b835291830191830162004d51565b509695505050505050565b6000610200828403121562004d9457600080fd5b62004d9e62004705565b905062004dac838362004a5e565b815262004dbc6080830162004ac7565b602082015262004dcf60a0830162004ae5565b604082015262004de38360c0840162004af2565b606082015262004df78360e0840162004b37565b608082015262004e0b6101a0830162004591565b60a082015262004e1f6101c0830162004591565b60c08201526101e08201356001600160401b0381111562004e3f57600080fd5b62004e4d8482850162004d08565b60e08301525092915050565b60008060006060848603121562004e6f57600080fd5b833562004e7c816200457b565b925060208401356001600160401b038082111562004e9957600080fd5b62004ea78783880162004d80565b9350604086013591508082111562004ebe57600080fd5b5062004cd886828701620047ee565b6000806000806080858703121562004ee457600080fd5b843562004ef1816200457b565b9350602085013562004f03816200457b565b925060408501356001600160401b038082111562004f2057600080fd5b62004f2e8883890162004d80565b9350606087013591508082111562004f4557600080fd5b5062004f5487828801620047ee565b91505092959194509250565b60005b8381101562004f7d57818101518382015260200162004f63565b50506000910152565b6000815180845262004fa081602086016020860162004f60565b601f01601f19169290920160200192915050565b60208152600062003b7a602083018462004f86565b600080600080610240858703121562004fe157600080fd5b843562004fee816200457b565b9350602085013562005000816200457b565b925062005011866040870162004baa565b91506102208501356001600160401b038111156200502e57600080fd5b62004f5487828801620047ee565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000d885762000d886200503c565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200509557600080fd5b815162003b7a8162004ad7565b6001600160a01b03929092168252602082015260400190565b600060208284031215620050ce57600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200513157634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000d885762000d886200503c565b600181811c908216806200516157607f821691505b6020821081036200518257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200145157600081815260208120601f850160051c81016020861015620051b15750805b601f850160051c820191505b81811015620051d257828155600101620051bd565b505050505050565b81516001600160401b03811115620051f657620051f662004679565b6200520e816200520784546200514c565b8462005188565b602080601f8311600181146200524657600084156200522d5750858301515b600019600386901b1c1916600185901b178555620051d2565b600085815260208120601f198616915b82811015620052775788860151825594840194600190910190840162005256565b5085821015620052965787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620052b957600080fd5b815162003b7a816200457b565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620052f057600080fd5b82516001600160401b038111156200530757600080fd5b8301601f810185136200531957600080fd5b80516200532a620047998262004ce2565b81815260059190911b820183019083810190878311156200534a57600080fd5b928401925b828410156200403857835162005365816200457b565b825292840192908401906200534f565b6000600182016200538a576200538a6200503c565b5060010190565b8181038181111562000d885762000d886200503c565b60008154620053b6816200514c565b808552602060018381168015620053d65760018114620053f15762005421565b60ff1985168884015283151560051b88018301955062005421565b866000528260002060005b85811015620054195781548a8201860152908301908401620053fc565b890184019650505b505050505092915050565b80518252600060208201516040602085015262004220604085018262004f86565b600081518084526020808501945080840160005b83811015620054885781516001600160a01b03168752958201959082019060010162005461565b509495945050505050565b85815260a060208201526000620054ae60a0830187620053a7565b8281036040840152620054c281876200542c565b6001600160a01b038616606085015283810360808501529050620054e781856200544d565b98975050505050505050565b8381526060602082015260006200550e6060830185620053a7565b8281036040840152620043de81856200542c565b6020808252602c908201526000805160206200600483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200600483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6001600160a01b0393841681529183166020830152909116604082015260600190565b6001600160a01b0383168152604060208201819052600090620042209083018462004f86565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b634e487b7160e01b600052603160045260246000fd5b600060208083850312156200564b57600080fd5b82516001600160401b03808211156200566357600080fd5b9084019060c082870312156200567857600080fd5b62005682620046e0565b825181528383015162005695816200457b565b818501526040830151620056a9816200457b565b6040820152606083015182811115620056c157600080fd5b830160408189031215620056d457600080fd5b620056de6200468f565b815181528582015184811115620056f457600080fd5b82019350601f840189136200570857600080fd5b835191506200571b62004799836200475e565b82815289878487010111156200573057600080fd5b620057418388830189880162004f60565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b60038110620057a657620057a66200506c565b9052565b60048110620057a657620057a66200506c565b80516001600160a01b0390811683526020808301519091169083015260408082015190830152606080820151908301526080808201519083015260a090810151910152565b60208152620058166020820183516200576d565b600060208301516200582c60a084018262005793565b5060408301516200584160c0840182620057aa565b5060608301515160e0830152608083015162005862610100840182620057bd565b5060a0830151620058786101c084018262004630565b5060c08301516200588e6101e084018262004630565b5060e083015161020083810152620042206102208401826200544d565b878152600060018060a01b03808916602084015260e06040840152620058d560e084018962004f86565b818816606085015286608085015283810360a0850152620058f781876200542c565b91505082810360c08401526200590e81856200544d565b9a9950505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a06080820181905260009062004038908301846200542c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006101e082019050620059b98284516200576d565b6020830151620059cd608084018262005793565b506040830151620059e260a0840182620057aa565b5060608301515160c0830152608083015162005a0260e0840182620057bd565b5060a08301516001600160a01b039081166101a084015260c0909301519092166101c09091015290565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005a6081601785016020880162004f60565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005a9381602884016020880162004f60565b01602801949350505050565b60006020828403121562005ab257600080fd5b815162003b7a8162004845565b60008162005ad15762005ad16200503c565b506000190190565b6000825162005aed81846020870162004f60565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220e6ba9d9015bdf5efd1a73c73a257325198572762d36c817daa948fadcb91f2bf64736f6c63430008130033","sourceMap":"522:2047:105:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3057:213:43;;;;;;;;;;-1:-1:-1;3057:213:43;;;;;:::i;:::-;;:::i;:::-;;;470:14:136;;463:22;445:41;;433:2;418:18;3057:213:43;;;;;;;;23771:115:104;;;;;;;;;;-1:-1:-1;23860:19:104;;23771:115;;;643:25:136;;;631:2;616:18;23771:115:104;497:177:136;6099:24:104;;;;;;;;;;;;;;;;24088:288;;;;;;;;;;-1:-1:-1;24088:288:104;;;;;:::i;:::-;;:::i;:::-;;13850:1170;;;;;;;;;;-1:-1:-1;13850:1170:104;;;;;:::i;:::-;;:::i;20388:128::-;;;;;;;;;;-1:-1:-1;20388:128:104;;;;;:::i;:::-;;:::i;9754:110::-;;;;;;;;;;-1:-1:-1;9754:110:104;;;;;:::i;:::-;;:::i;6180:25::-;;;;;;;;;;-1:-1:-1;6180:25:104;;;;;;;;19553:128;;;;;;;;;;-1:-1:-1;19553:128:104;;;;;:::i;:::-;;:::i;15026:699::-;;;;;;;;;;-1:-1:-1;15026:699:104;;;;;:::i;:::-;;:::i;4862:129:43:-;;;;;;;;;;-1:-1:-1;4862:129:43;;;;;:::i;:::-;;:::i;23288:477:104:-;;;;;;;;;;;;;:::i;7736:82::-;;;;;;;;;;-1:-1:-1;7736:82:104;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;19069:151::-;;;;;;;;;;-1:-1:-1;19069:151:104;;;;;:::i;:::-;-1:-1:-1;;;;;19172:28:104;19146:7;19172:28;;;:19;:28;;;;;:41;;;;19069:151;5287:145:43;;;;;;;;;;-1:-1:-1;5287:145:43;;;;;:::i;:::-;;:::i;23892:190:104:-;;;;;;;;;;-1:-1:-1;23892:190:104;;;;;:::i;:::-;;:::i;6000:25::-;;;;;;;;;;;;;;;;10144:2497;;;;;;;;;;-1:-1:-1;10144:2497:104;;;;;:::i;:::-;;:::i;21350:1932::-;;;;;;;;;;;;;:::i;6396:214:43:-;;;;;;;;;;-1:-1:-1;6396:214:43;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;20522:248:104:-;;;;;;;;;;-1:-1:-1;20522:248:104;;;;;:::i;:::-;;:::i;7271:68::-;;;;;;;;;;-1:-1:-1;7271:68:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;7896:107;;;;;;;;;;-1:-1:-1;7896:107:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:64;;;;;;:::i;:::-;;:::i;12647:531:104:-;;;;;;;;;;-1:-1:-1;12647:531:104;;;;;:::i;:::-;;:::i;:::-;;;;12805:25:136;;;-1:-1:-1;;;;;12866:32:136;;;12861:2;12846:18;;12839:60;12778:18;12647:531:104;12631:274:136;2762:131:64;;;;;;;;;;;;;:::i;16170:1009:104:-;;;;;;;;;;-1:-1:-1;16170:1009:104;;;;;:::i;:::-;;:::i;584:1317:105:-;;;;;;;;;;-1:-1:-1;584:1317:105;;;;;:::i;:::-;;:::i;6550:31:104:-;;;;;;;;;;-1:-1:-1;6550:31:104;;;;-1:-1:-1;;;;;6550:31:104;;;17322:1562;;;;;;;;;;-1:-1:-1;17322:1562:104;;;;;:::i;:::-;;:::i;7407:98::-;;;;;;;;;;-1:-1:-1;7407:98:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;25509:583;;;;;;;;;;-1:-1:-1;25509:583:104;;;;;:::i;:::-;;:::i;6649:41::-;;;;;;;;;;-1:-1:-1;6649:41:104;;;;-1:-1:-1;;;;;6649:41:104;;;6909:24;;;;;;;;;;-1:-1:-1;6909:24:104;;;;-1:-1:-1;;;;;6909:24:104;;;2085:101:45;;;;;;;;;;;;;:::i;19945:237:104:-;;;;;;;;;;-1:-1:-1;19945:237:104;;;;;:::i;:::-;;:::i;8337:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8337:68:104;;6453:38;;;;;;;;;;-1:-1:-1;6453:38:104;;;;-1:-1:-1;;;;;6453:38:104;;;18890:173;;;;;;;;;;-1:-1:-1;18890:173:104;;;;;:::i;:::-;-1:-1:-1;;;;;19015:30:104;;;18989:7;19015:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;18890:173;5795:34;;;;;;;;;;;;;;;;6740:25;;;;;;;;;;-1:-1:-1;6740:25:104;;;;-1:-1:-1;;;;;6740:25:104;;;19226:321;;;;;;;;;;-1:-1:-1;19226:321:104;;;;;:::i;:::-;;:::i;1907:660:105:-;;;;;;;;;;-1:-1:-1;1907:660:105;;;;;:::i;:::-;;:::i;7605:60:104:-;;;;;;;;;;-1:-1:-1;7605:60:104;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7605:60:104;;;;;;;;;;;;;-1:-1:-1;;;;;17412:32:136;;;17394:51;;17476:2;17461:18;;17454:34;;;;17531:14;17524:22;17504:18;;;17497:50;17382:2;17367:18;7605:60:104;17198:355:136;5906:27:104;;;;;;;;;;;;;;;;525:604:103;;;;;;;;;;;;;:::i;3357:145:43:-;;;;;;;;;;-1:-1:-1;3357:145:43;;;;;:::i;:::-;;:::i;5379:75:104:-;;;;;;;;;;;;5412:42;5379:75;;2336:49:43;;;;;;;;;;-1:-1:-1;2336:49:43;2381:4;2336:49;;21154:190:104;;;;;;;;;;-1:-1:-1;21154:190:104;;;;;:::i;:::-;;:::i;9870:124::-;;;;;;;;;;-1:-1:-1;9870:124:104;;;;;:::i;:::-;;:::i;6272:26::-;;;;;;;;;;-1:-1:-1;6272:26:104;;;;;;;-1:-1:-1;;;;;6272:26:104;;;20969:179;;;;;;;;;;;;;:::i;7125:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;24558:465::-;;;;;;;;;;;;;:::i;5668:54::-;;;;;;;;;;;;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;7040:27:104:-;;;;;;;;;;;;;:::i;5712:147:43:-;;;;;;;;;;-1:-1:-1;5712:147:43;;;;;:::i;:::-;;:::i;6981:17:104:-;;;;;;;;;;-1:-1:-1;6981:17:104;;;;-1:-1:-1;;;;;6981:17:104;;;5544:49;;;;;;;;;;;;5586:7;5544:49;;6828:25;;;;;;;;;;-1:-1:-1;6828:25:104;;;;-1:-1:-1;;;;;6828:25:104;;;13184:660;;;;;;;;;;-1:-1:-1;13184:660:104;;;;;:::i;:::-;;:::i;24419:133::-;;;;;;;;;;-1:-1:-1;24419:133:104;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;6356:30:104:-;;;;;;;;;;-1:-1:-1;6356:30:104;;;;-1:-1:-1;;;;;6356:30:104;;;5202:92;;;;;;;;;;-1:-1:-1;5275:12:104;;;;;;;;;;;;-1:-1:-1;;;5275:12:104;;;;5202:92;;3057:213:43;3142:4;-1:-1:-1;;;;;;3165:58:43;;-1:-1:-1;;;3165:58:43;;:98;;-1:-1:-1;;;;;;;;;;1189:51:53;;;3227:36:43;3158:105;3057:213;-1:-1:-1;;3057:213:43:o;24088:288:104:-;24164:17;:15;:17::i;:::-;5702:20;5586:7;5702:2;:20;:::i;:::-;24195:16;:26;24191:86;;;24244:22;;-1:-1:-1;;;24244:22:104;;;;;;;;;;;24191:86;24286:12;:31;;;24332:37;;643:25:136;;;24332:37:104;;631:2:136;616:18;24332:37:104;;;;;;;;24088:288;:::o;13850:1170::-;2526:21:48;:19;:21::i;:::-;13958:34:104::1;13984:7;13958:25;:34::i;:::-;14002:30;14022:9;14002:19;:30::i;:::-;14042:29;14061:9;14042:18;:29::i;:::-;-1:-1:-1::0;;;;;14086:36:104;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;14082:107;;;14156:22;;-1:-1:-1::0;;;14156:22:104::1;;;;;;;;;;;14082:107;-1:-1:-1::0;;;;;14222:28:104;;::::1;14199:20;14222:28:::0;;;:19:::1;:28;::::0;;;;;;;;14199:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;14345:19:::1;::::0;14425:21:::1;14394:9;-1:-1:-1::0;;;;;14379:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;14375:354:::1;;14481:51;::::0;-1:-1:-1;;;14481:51:104;;-1:-1:-1;;;;;14481:39:104;::::1;::::0;::::1;::::0;:51:::1;::::0;14521:7;;14530:1:::1;::::0;14481:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14462:70;;14375:354;;;14599:17;14568:9;-1:-1:-1::0;;;;;14553:40:104::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;14549:180;;14651:67;::::0;-1:-1:-1;;;14651:67:104;;-1:-1:-1;;;;;14651:39:104;::::1;::::0;::::1;::::0;:67:::1;::::0;14691:7;;14700:17;;14651:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14632:86;;14549:180;-1:-1:-1::0;;;;;14739:30:104;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;14828:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;14828:54:104::1;14878:4;14828:54:::0;;::::1;::::0;;;14893:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;14893:43:104::1;::::0;;::::1;::::0;;;14952:61;::::1;::::0;::::1;::::0;14761:7;;14770:9;;14783:16;;14952:61:::1;:::i;:::-;;;;;;;;13948:1072;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;13850:1170:104;;:::o;20388:128::-;20456:17;:15;:17::i;:::-;20483:26;20499:9;20483:15;:26::i;:::-;20388:128;:::o;9754:110::-;1355:13:45;:11;:13::i;:::-;9830:16:104::1;:27:::0;;-1:-1:-1;;;;;;9830:27:104::1;-1:-1:-1::0;;;;;9830:27:104;;;::::1;::::0;;;::::1;::::0;;9754:110::o;19553:128::-;19621:17;:15;:17::i;:::-;19648:26;19661:12;19648;:26::i;15026:699::-;15123:34;15149:7;15123:25;:34::i;:::-;15167:29;15186:9;15167:18;:29::i;:::-;15206:42;15226:10;15238:9;15206:19;:42::i;:::-;-1:-1:-1;;;;;15264:36:104;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;15259:110;;15334:24;;-1:-1:-1;;;15334:24:104;;;;;;;;;;;15259:110;-1:-1:-1;;;;;15379:36:104;;;15429:5;15379:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;15379:55:104;;;15444:30;;;:21;:30;;;;;:41;;;;;;;;;:45;15499:44;15407:7;15416:9;15499:24;:44::i;:::-;15673:45;15699:7;15708:9;15673:45;;;;;;;:::i;:::-;;;;;;;;15026:699;;:::o;4862:129:43:-;4936:7;4962:12;;;:6;:12;;;;;:22;;;;4862:129::o;23288:477:104:-;23421:15;;23351:7;;-1:-1:-1;;;;;23421:15:104;23351:7;23516:21;5586:7;23516:3;:21;:::i;:::-;23499:12;;23477:19;;:34;;;;:::i;:::-;23476:62;;;;:::i;:::-;23447:91;-1:-1:-1;23548:24:104;23659:21;5586:7;23659:3;:21;:::i;:::-;23610:44;;-1:-1:-1;;;23610:44:104;;-1:-1:-1;;;;;23610:29:104;;;;;:44;;23648:4;;23610:44;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23588:19;;:66;;;;:::i;:::-;23587:94;;;;:::i;:::-;23548:133;;23742:16;23721:18;23699:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;23692:66;;;;;23288:477;:::o;7736:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7736:82:104;;-1:-1:-1;7736:82:104;;-1:-1:-1;7736:82:104:o;5287:145:43:-;5370:18;5383:4;5370:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5400:25:::1;5411:4;5417:7;5400:10;:25::i;:::-;5287:145:::0;;;:::o;23892:190:104:-;23969:17;:15;:17::i;:::-;23996:19;:32;;;24043;;643:25:136;;;24043:32:104;;631:2:136;616:18;24043:32:104;497:177:136;10144:2497:104;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;22268:2:136;3325:201:47;;;22250:21:136;22307:2;22287:18;;;22280:30;22346:34;22326:18;;;22319:62;-1:-1:-1;;;22397:18:136;;;22390:44;22451:19;;3325:201:47;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;10361:24:104::1;10378:6;10361:16;:24::i;:::-;10395;:22;:24::i;:::-;10429:22;:20;:22::i;:::-;10462:49;-1:-1:-1::0;;;;;;;;;;;2381:4:43::1;10462:13:104;:49::i;:::-;10522:48;10549:6;:19;;;10522:18;:48::i;:::-;10580:39;10599:6;:19;;;10580:18;:39::i;:::-;10648:12:::0;;10629:32:::1;::::0;:18:::1;:32::i;:::-;10671:43;10690:6;:23;;;10671:18;:43::i;:::-;10729:20;::::0;::::1;::::0;:25;10725:95:::1;;10770:39;10789:6;:19;;;10770:18;:39::i;:::-;10842:12:::0;;10829:4:::1;:26:::0;;-1:-1:-1;;;;;10829:26:104;;::::1;-1:-1:-1::0;;;;;;10829:26:104;;::::1;;::::0;;;10879:19:::1;::::0;::::1;::::0;10865:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;10912:27:::1;::::0;::::1;::::0;10842:12:::1;10912:32:::0;10908:89:::1;;10967:19;;-1:-1:-1::0;;;10967:19:104::1;;;;;;;;;;;10908:89;11028:27;::::0;::::1;::::0;11006:19:::1;:49:::0;11080:20:::1;::::0;::::1;::::0;11065:12:::1;:35:::0;11126:21:::1;::::0;::::1;::::0;11110:13:::1;:37:::0;;-1:-1:-1;;11110:37:104::1;::::0;::::1;;::::0;;;::::1;::::0;;11173:21:::1;::::0;::::1;::::0;11157:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;11223:23:104::1;::::0;::::1;::::0;11204:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;11275:23:104::1;::::0;::::1;::::0;11257:15:::1;:41:::0;;-1:-1:-1;;;;;;11257:41:104;;::::1;-1:-1:-1::0;;;;;11257:41:104;;::::1;;::::0;;11322:19:::1;::::0;::::1;::::0;11308:11:::1;:33:::0;;-1:-1:-1;;;;;;11308:33:104::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;11371:19;;::::1;::::0;11351:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;11402:47:::1;::::0;-1:-1:-1;;;;;;;;;;;8378:27:104;11402:10:::1;:47::i;:::-;11481:4;;;;;;;;;-1:-1:-1::0;;;;;11481:4:104::1;-1:-1:-1::0;;;;;11481:16:104::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11460:8;:40:::0;;-1:-1:-1;;;;;;11460:40:104::1;-1:-1:-1::0;;;;;11460:40:104;;::::1;;::::0;;11607:11:::1;::::0;11511:36:::1;::::0;11607:11:::1;11599:32;-1:-1:-1::0;11599:37:104;11595:427:::1;;11674:16;::::0;;11688:1:::1;11674:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11674:16:104::1;11652:38;;11729:10;11704:19;11724:1;11704:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;11704:35:104::1;;;-1:-1:-1::0;;;;;11704:35:104::1;;;::::0;::::1;11595:427;;;11796:11;::::0;:23:::1;::::0;;-1:-1:-1;;;11796:23:104;;;;11770::::1;::::0;-1:-1:-1;;;;;11796:11:104::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;11770;;11796;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;11796:23:104::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;11770:49;;11869:6;:13;11885:1;11869:17;;;;:::i;:::-;-1:-1:-1::0;;;;;11855:32:104::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;11855:32:104::1;;11833:54;;11906:9;11901:111;11925:6;:13;11921:1;:17;11901:111;;;11988:6;11995:1;11988:9;;;;;;;;:::i;:::-;;;;;;;11963:19;11983:1;11963:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11963:34:104;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;11940:3;::::1;::::0;::::1;:::i;:::-;;;;11901:111;;;;11756:266;11595:427;12094:11;::::0;12052:26;;-1:-1:-1;;;;;12094:11:104;;::::1;::::0;12032:19;;12052:30:::1;::::0;12094:11;;12052:30:::1;:::i;:::-;12032:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12032:74:104::1;;;-1:-1:-1::0;;;;;12032:74:104::1;;;::::0;::::1;12178:4;12116:19;12165:1;12136:19;:26;:30;;;;:::i;:::-;12116:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12116:67:104;;::::1;:51;::::0;;::::1;::::0;;;;;:67;12295:8:::1;::::0;12318:13:::1;::::0;::::1;::::0;12348:16:::1;::::0;::::1;::::0;12295:106:::1;::::0;-1:-1:-1;;;12295:106:104;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;12318:13;12333::::1;::::0;12374:4:::1;::::0;12381:19;;12295:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12271:9;:130:::0;12412:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;12459:16:104::1;:36:::0;;-1:-1:-1;;;;;12459:36:104;;::::1;-1:-1:-1::0;;;;;;12459:36:104;;::::1;;::::0;;;12505:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;12591:9:::1;::::0;12617:16:::1;::::0;::::1;::::0;12571:63:::1;::::0;::::1;::::0;::::1;::::0;12591:9;;12602:13:::1;::::0;12617:16;12571:63:::1;:::i;:::-;;;;;;;;10351:2290;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;29847:36:136;;3721:14:47;;29835:2:136;29820:18;3721:14:47;;;;;;;3647:99;3269:483;10144:2497:104;;;;:::o;21350:1932::-;2526:21:48;:19;:21::i;:::-;21440:10:104::1;21422:15;21487:28:::0;;;:19:::1;:28;::::0;;;;21576:15:::1;::::0;21487:28;;-1:-1:-1;;;;;21576:15:104;;::::1;::::0;21671:21:::1;5586:7;21671:3;:21;:::i;:::-;21654:12;;21632:19;;:34;;;;:::i;:::-;21631:62;;;;:::i;:::-;21602:91:::0;-1:-1:-1;21703:24:104::1;21814:21;5586:7;21814:3;:21;:::i;:::-;21765:44;::::0;-1:-1:-1;;;21765:44:104;;-1:-1:-1;;;;;21765:29:104;::::1;::::0;::::1;::::0;:44:::1;::::0;21803:4:::1;::::0;21765:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21743:19;;:66;;;;:::i;:::-;21742:94;;;;:::i;:::-;21703:133;;21851:17;21860:7;21851:8;:17::i;:::-;21846:1430;;21884:22;::::0;::::1;:29:::0;;-1:-1:-1;;21884:29:104::1;21909:4;21884:29:::0;;::::1;::::0;;;21953:19:::1;::::0;21928:22;;::::1;:44:::0;;;22124:143:::1;::::0;22170:7;;22187:4:::1;::::0;22237:16;;22194:40:::1;::::0;22216:18;;22194:40:::1;:::i;:::-;:59;;;;:::i;:::-;22124:11;::::0;-1:-1:-1;;;;;22124:11:104::1;::::0;:143;;:28:::1;:143::i;:::-;22692:22:::0;;22688:178:::1;;22819:11;::::0;22794::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;22794:11:104;;::::1;::::0;22819::::1;::::0;;::::1;;22832:18:::0;22794:24:::1;:57::i;:::-;22949:20:::0;;22945:255:::1;;23103:82;23128:14;-1:-1:-1::0;;;;;23128:36:104::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23103:11;::::0;-1:-1:-1;;;;;23103:11:104::1;::::0;23168:16;23103:24:::1;:82::i;:::-;23219:46;23236:7;23245:19;;23219:46;;;;;;;:::i;:::-;;;;;;;;21846:1430;21412:1870;;;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;2568:20;21350:1932:104:o;6396:214:43:-;-1:-1:-1;;;;;6491:23:43;;965:10:51;6491:23:43;6483:83;;;;-1:-1:-1;;;6483:83:43;;30096:2:136;6483:83:43;;;30078:21:136;30135:2;30115:18;;;30108:30;30174:34;30154:18;;;30147:62;-1:-1:-1;;;30225:18:136;;;30218:45;30280:19;;6483:83:43;29894:411:136;6483:83:43;6577:26;6589:4;6595:7;6577:11;:26::i;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;20522:248:104:-:0;20594:17;:15;:17::i;:::-;20621:25;20640:5;20621:18;:25::i;:::-;20656:18;:26;;-1:-1:-1;;;;;;20656:26:104;-1:-1:-1;;;;;20656:26:104;;;;;;;;;20730:11;;20697:66;;;;;;20730:11;;;20656:26;20697:66;:::i;3657:220:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;12647:531:104:-:0;12940:16;;13036:4;;13043:23;;12805:14;;;;;;-1:-1:-1;;;;;12940:16:104;;;;-1:-1:-1;;;12998:28:104;13036:4;;;13043:23;13068:7;:5;:7::i;:::-;12975:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;12975:101:104;;;;;;;;;;;;;;-1:-1:-1;;;;;12975:101:104;-1:-1:-1;;;;;;12975:101:104;;;;;;;;;;12898:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;12853:247;;13118:53;13129:13;13144:6;13152:7;13161:9;13118:10;:53::i;:::-;13111:60;;;;;12647:531;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;32364:2:136;2064:92:64;;;32346:21:136;32403:2;32383:18;;;32376:30;32442:34;32422:18;;;32415:62;-1:-1:-1;;;32493:18:136;;;32486:54;32557:19;;2064:92:64;32162:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;16170:1009:104:-;2526:21:48;:19;:21::i;:::-;16254:26:104::1;:24;:26::i;:::-;16307:10;16290:14;16363:26:::0;;;:18:::1;:26;::::0;;;;;;;16327:62;;;;;;::::1;::::0;;;;;;;;;;;;16363:26;;16327:62;;::::1;16363:26:::0;16327:62;;::::1;;;;;;;;;;;;;;;;::::0;;-1:-1:-1;;;;;16327:62:104::1;::::0;;;;;::::1;::::0;::::1;;::::0;;::::1;;;;;;;;;;;16400:24;16440:9:::0;16452:1:::1;16440:13;;16435:536;16459:16;:23;16455:1;:27;16435:536;;;16642:16;16659:1;16642:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16627:49:104::1;;16677:6;16685:13;16627:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16608:91:::0;-1:-1:-1;16717:21:104;;16713:232:::1;;-1:-1:-1::0;;;;;16758:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;16788:19;;16812:16;;16758:29;16788:16;;16805:1;;16788:19;::::1;;;;;:::i;:::-;;;;;;;-1:-1:-1::0;;;;;16758:50:104::1;-1:-1:-1::0;;;;;16758:50:104::1;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;16713:232:104::1;16484:3:::0;::::1;::::0;::::1;:::i;:::-;;;;16435:536;;;-1:-1:-1::0;16981:11:104::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;16981:11:104::1;17010:6:::0;17026:4:::1;17033:13:::0;16981:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;17057:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;17101:13;;17057:27;:57:::1;::::0;17101:13;;17057:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;17129:43:104::1;::::0;::::1;::::0;::::1;::::0;17150:6;;17158:13;;17129:43:::1;:::i;:::-;;;;;;;;16244:935;;;2568:20:48::0;1808:1;3074:7;:22;2894:209;584:1317:105;877:16;;973:4;;980:23;;742:14;;;;;;-1:-1:-1;;;;;877:16:105;;;;-1:-1:-1;;;935:28:105;973:4;;;980:23;1005:7;:5;:7::i;:::-;912:101;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;912:101:105;;;;;;;;;;;;;;-1:-1:-1;;;;;912:101:105;-1:-1:-1;;;;;;912:101:105;;;;;;;;;;835:192;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;790:247;;1068:53;1079:13;1094:6;1102:7;1111:9;1068:10;:53::i;:::-;1144:19;;;;1047:74;;-1:-1:-1;1047:74:105;-1:-1:-1;;;;;;1136:42:105;1132:454;;1232:4;1198:7;:24;;;:31;:38;1194:134;;;1256:57;;-1:-1:-1;;;1256:57:105;;32789:2:136;1256:57:105;;;32771:21:136;32828:2;32808:18;;;32801:30;32867:34;32847:18;;;32840:62;-1:-1:-1;;;32918:18:136;;;32911:45;32973:19;;1256:57:105;32587:411:136;1194:134:105;1341:21;1405:6;1375:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1365:48;;;;;;1341:72;;1432:9;1427:149;1451:7;:24;;;:31;1447:1;:35;1427:149;;;1507:54;1518:13;1533:7;:24;;;1558:1;1533:27;;;;;;;;:::i;:::-;;;;;;;1507:10;:54::i;:::-;1484:3;;;;:::i;:::-;;;;1427:149;;;;1180:406;1132:454;1667:141;1734:6;1704:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;1694:48;;;;;;1790:6;1754:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1744:54;;;;;;1667:13;:141::i;:::-;1818:76;1875:6;1839:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;1829:54;;;;;;1885:8;1818:10;:76::i;:::-;780:1121;584:1317;;;;;;:::o;17322:1562:104:-;2526:21:48;:19;:21::i;:::-;17408:26:104::1;:24;:26::i;:::-;17461:10;17444:14;17518:26:::0;;;:18:::1;:26;::::0;;;;;;;17655:19:::1;::::0;17594::::1;:27:::0;;;;;;:40:::1;;::::0;17518:26;;17444:14;17655:19;17594:58:::1;::::0;17637:15;;17594:58:::1;:::i;:::-;:80;17590:140;;;17697:22;;-1:-1:-1::0;;;17697:22:104::1;;;;;;;;;;;17590:140;17739:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;17739:11:104::1;17764:6:::0;17772:15;17739:24:::1;:49::i;:::-;17803:9;17798:951;17822:23:::0;;17818:27;::::1;17798:951;;;17866:16;17885;17902:1;17885:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;17885:19:104::1;::::0;-1:-1:-1;17922:60:104::1;17885:19:::0;-1:-1:-1;;;17922:26:104::1;:60::i;:::-;17918:804;;;18021:63;::::0;-1:-1:-1;;;18021:63:104;;-1:-1:-1;;;;;18021:38:104;::::1;::::0;::::1;::::0;:63:::1;::::0;18060:6;;18068:15;;18021:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18002:82;;18102:20;18125:21;:29;18147:6;-1:-1:-1::0;;;;;18125:29:104::1;-1:-1:-1::0;;;;;18125:29:104::1;;;;;;;;;;;;:50;18155:16;18172:1;18155:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18155:19:104::1;18125:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;18197:31:104;;::::1;18193:259;;;18259:57;::::0;-1:-1:-1;;;18259:57:104;;::::1;::::0;::::1;33842:25:136::0;;;33883:18;;;33876:34;;;33815:18;;18259:57:104::1;33668:248:136::0;18193:259:104::1;-1:-1:-1::0;;;;;18363:29:104;::::1;;::::0;;;:21:::1;:29;::::0;;;;18393:19;;18417:16;;18363:29;18393:16;;18410:1;;18393:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18393:19:104::1;18363:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;18393:19;18363:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;17984:482:104::1;17918:804;;;18596:23:::0;;18579:16;;18596:27:::1;::::0;18622:1:::1;::::0;18596:27:::1;:::i;:::-;18579:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;18579:45:104::1;18557:16;18574:1;18557:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;-1:-1:-1::0;;;;;18557:67:104::1;;;;;;18642:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;18642:22:104;;;;;-1:-1:-1;;;;;;18642:22:104::1;::::0;;;;;18682:25:::1;18698:8:::0;18682:15:::1;:25::i;:::-;-1:-1:-1::0;17847:3:104;::::1;::::0;::::1;:::i;:::-;;;;17798:951;;;-1:-1:-1::0;;;;;;18758:27:104;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;18802:15;;18758:27;:59:::1;::::0;18802:15;;18758:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;18832:45:104::1;::::0;::::1;::::0;::::1;::::0;18853:6;;18861:15;;18832:45:::1;:::i;25509:583::-:0;2526:21:48;:19;:21::i;:::-;25610:17:104::1;:15;:17::i;:::-;25642:13;::::0;;::::1;25637:68;;25678:16;;-1:-1:-1::0;;;25678:16:104::1;;;;;;;;;;;25637:68;25719:17;25728:7;25719:8;:17::i;:::-;25714:75;;25759:19;;-1:-1:-1::0;;;25759:19:104::1;;;;;;;;;;;25714:75;-1:-1:-1::0;;;;;25821:28:104;;::::1;25798:20;25821:28:::0;;;:19:::1;:28;::::0;;;;;;;;25798:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;25859:32:::1;25841:7:::0;25859:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;25908:28:104;;::::1;;::::0;;;:19:::1;:28;::::0;;;;;;25901:35;;-1:-1:-1;;;;;;25901:35:104::1;::::0;;;;::::1;::::0;;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;25901:35:104::1;::::0;;25990:19;::::1;::::0;25947:11:::1;::::0;:63:::1;::::0;:11:::1;::::0;25972:16;;25947:24:::1;:63::i;:::-;26025:60;26038:7;26047:16;26065:6;:19;;;26025:60;;;;;;;;:::i;:::-;;;;;;;;25600:492;2568:20:48::0;1808:1;3074:7;:22;2894:209;2085:101:45;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;19945:237:104:-:0;20018:17;:15;:17::i;:::-;20072:4;;:20;;-1:-1:-1;;;20072:20:104;;;;;643:25:136;;;20045:16:104;;-1:-1:-1;;;;;20072:4:104;;:12;;616:18:136;;20072:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20072:20:104;;;;;;;;;;;;:::i;:::-;:29;;;20045:57;;20112:28;20131:8;20112:18;:28::i;:::-;20150:25;20166:8;20150:15;:25::i;19226:321::-;19296:17;:15;:17::i;:::-;19350:4;;:20;;-1:-1:-1;;;19350:20:104;;;;;643:25:136;;;19323:16:104;;-1:-1:-1;;;;;19350:4:104;;:12;;616:18:136;;19350:20:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19350:20:104;;;;;;;;;;;;:::i;:::-;:29;;;19323:57;;19390:28;19409:8;19390:18;:28::i;:::-;19432:60;-1:-1:-1;;;;;19432:26:104;;-1:-1:-1;;;19432:26:104;:60::i;:::-;19428:113;;;19508:22;19521:8;19508:12;:22::i;1907:660:105:-;2098:14;;5412:42:104;-1:-1:-1;;;;;2178:20:105;;;2174:65;;-1:-1:-1;2222:6:105;2174:65;2259:9;2248:20;;2279:31;2313:14;2279:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2279:48:105;;;;;;;;;;;;;;;;-1:-1:-1;;2347:4:105;;2394:9;;2415:19;;2279:48;;-1:-1:-1;;;;;;2347:4:105;;;;:33;;-1:-1:-1;2394:9:105;;-1:-1:-1;2405:8:105;;-1:-1:-1;2415:19:105;;2426:7;;2415:19;;;:::i;:::-;;;;;;;;;;;;;2436:5;2443:1;2446:9;2457:14;2347:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2338:143;;2497:63;2509:6;2517:8;2535:4;2542:6;2550:9;2497:63;;;;;;;;;;:::i;:::-;;;;;;;;2132:435;;1907:660;;;;;;;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;581:548;525:604;:::o;3357:145:43:-;3443:4;3466:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3466:29:43;;;;;;;;;;;;;;;3357:145::o;21154:190:104:-;-1:-1:-1;;;;;21270:28:104;;;21218:14;21270:28;;;:19;:28;;;;;;;;;21244:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21154:190::o;9870:124::-;1355:13:45;:11;:13::i;:::-;9953:23:104::1;:34:::0;;-1:-1:-1;;;;;;9953:34:104::1;-1:-1:-1::0;;;;;9953:34:104;;;::::1;::::0;;;::::1;::::0;;9870:124::o;20969:179::-;21041:18;;-1:-1:-1;;;;;21041:18:104;21027:10;:32;21023:89;;21082:19;;-1:-1:-1;;;21082:19:104;;;;;;;;;;;21023:89;21121:20;:18;:20::i;7125:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;24558:465::-;2526:21:48;:19;:21::i;:::-;24642:10:104::1;24662:34;24642:10:::0;24662:25:::1;:34::i;:::-;24706:32;24730:7;24706:23;:32::i;:::-;-1:-1:-1::0;;;;;24771:28:104;;::::1;24748:20;24771:28:::0;;;:19:::1;:28;::::0;;;;;;;24748:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;24816:28;;;-1:-1:-1;;;;;;24809:35:104;;::::1;::::0;;;;;;;-1:-1:-1;;24809:35:104;;::::1;::::0;;;24861:18:::1;:27:::0;;;;;24748:51;;24854:34:::1;::::0;24861:27;24854:34:::1;:::i;:::-;24933:19;::::0;::::1;::::0;24899:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;24899:11:104;;::::1;::::0;24924:7;;24899:24:::1;:54::i;:::-;24968:48;24987:7;24996:6;:19;;;24968:48;;;;;;;:::i;:::-;;;;;;;;24614:409;;2568:20:48::0;1808:1;3074:7;:22;2894:209;5668:54:104;5702:20;5586:7;5702:2;:20;:::i;:::-;5668:54;:::o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;480:32:103::1;499:12;480:18;:32::i;7040:27:104:-:0;;;;;;;:::i;5712:147:43:-;5796:18;5809:4;5796:12;:18::i;:::-;2814:16;2825:4;2814:10;:16::i;:::-;5826:26:::1;5838:4;5844:7;5826:11;:26::i;13184:660:104:-:0;13375:14;;5412:42;-1:-1:-1;;;;;13455:20:104;;;13451:65;;-1:-1:-1;13499:6:104;13451:65;13536:9;13525:20;;13556:31;13590:14;13556:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13556:48:104;;;;;;;;;;;;;;;;-1:-1:-1;;13624:4:104;;13671:9;;13692:19;;13556:48;;-1:-1:-1;;;;;;13624:4:104;;;;:33;;-1:-1:-1;13671:9:104;;-1:-1:-1;13682:8:104;;-1:-1:-1;13692:19:104;;13703:7;;13692:19;;;:::i;24419:133::-;24490:4;24513:32;-1:-1:-1;;;;;;;;;;;24537:7:104;24513;:32::i;2335:198:45:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;41132:2:136;2415:73:45::1;::::0;::::1;41114:21:136::0;41171:2;41151:18;;;41144:30;41210:34;41190:18;;;41183:62;-1:-1:-1;;;41261:18:136;;;41254:36;41307:19;;2415:73:45::1;40930:402:136::0;8578:167:104;8642:35;-1:-1:-1;;;;;;;;;;;8666:10:104;8642:7;:35::i;:::-;8637:102;;8717:10;8700:28;;-1:-1:-1;;;8700:28:104;;;;;;;;:::i;2601:287:48:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:48;;41539:2:136;2725:63:48;;;41521:21:136;41578:2;41558:18;;;41551:30;41617:33;41597:18;;;41590:61;41668:18;;2725:63:48;41337:355:136;2725:63:48;1851:1;2863:7;:18;2601:287::o;8909:157:104:-;8990:17;8999:7;8990:8;:17::i;:::-;8985:75;;9030:19;;-1:-1:-1;;;9030:19:104;;;;;;;;;;;9072:163;-1:-1:-1;;;;;9149:28:104;;;;;;:17;:28;;;;;;;;9144:85;;9200:18;;-1:-1:-1;;;9200:18:104;;;;;;;;;;;9615:133;-1:-1:-1;;;;;9689:22:104;;9685:56;;9720:21;;-1:-1:-1;;;9720:21:104;;;;;;;;;;;2894:209:48;1808:1;3074:7;:22;2894:209::o;20188:194:104:-;20259:29;20278:9;20259:18;:29::i;:::-;-1:-1:-1;;;;;20298:28:104;;20329:5;20298:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;20298:36:104;;;20349:26;;;;;20316:9;;20349:26;:::i;1620:130:45:-;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;41899:2:136;1675:68:45;;;41881:21:136;;;41918:18;;;41911:30;41977:34;41957:18;;;41950:62;42029:18;;1675:68:45;41697:356:136;19687:252:104;-1:-1:-1;;;;;19762:31:104;;;;;;:17;:31;;;;;;;;19758:85;;;19816:16;;-1:-1:-1;;;19816:16:104;;;;;;;;;;;19758:85;-1:-1:-1;;;;;19852:31:104;;;;;;:17;:31;;;;;;;:38;;-1:-1:-1;;19852:38:104;19886:4;19852:38;;;19905:27;;;;;19870:12;;19905:27;:::i;9241:172::-;9345:9;-1:-1:-1;;;;;9334:20:104;:7;-1:-1:-1;;;;;9334:20:104;;9330:77;;9377:19;;-1:-1:-1;;;9377:19:104;;;;;;;;;;;15731:433;-1:-1:-1;;;;;15865:27:104;;15828:34;15865:27;;;:18;:27;;;;;;15902:256;15926:23;;15922:27;;15902:256;;;15997:9;-1:-1:-1;;;;;15974:32:104;:16;15991:1;15974:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;15974:19:104;:32;15970:178;;16065:23;;16048:16;;16065:27;;16091:1;;16065:27;:::i;:::-;16048:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16048:45:104;16026:16;16043:1;16026:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;16026:67:104;;;;;-1:-1:-1;;;;;16026:67:104;;;;;;16111:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;16111:22:104;;;;;-1:-1:-1;;;;;;16111:22:104;;;;;;15970:178;15951:3;;;;:::i;:::-;;;;15902:256;;;;15818:346;15731:433;;:::o;3796:103:43:-;3862:30;3873:4;965:10:51;3862::43;:30::i;7945:233::-;8028:22;8036:4;8042:7;8028;:22::i;:::-;8023:149;;8066:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8066:29:43;;;;;;;;;:36;;-1:-1:-1;;8066:36:43;8098:4;8066:36;;;8148:12;965:10:51;;886:96;8148:12:43;-1:-1:-1;;;;;8121:40:43;8139:7;-1:-1:-1;;;;;8121:40:43;8133:4;8121:40;;;;;;;;;;7945:233;;:::o;1423:320:50:-;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1889:111:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;:::-;1959:34:48::1;:32;:34::i;2854:60:43:-:0;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;7530:247:43:-;7613:25;7641:18;7654:4;7641:12;:18::i;:::-;7669:12;;;;:6;:12;;;;;;:22;;:34;;;7718:52;7613:46;;-1:-1:-1;7694:9:43;;7613:46;;7676:4;;7718:52;;7669:12;7718:52;7603:174;7530:247;;:::o;1355:203:73:-;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:73;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:73;-1:-1:-1;;;;;;1482:68:73;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;8349:234:43:-;8432:22;8440:4;8446:7;8432;:22::i;:::-;8428:149;;;8502:5;8470:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8470:29:43;;;;;;;;;;:37;;-1:-1:-1;;8470:37:43;;;8526:40;965:10:51;;8470:12:43;;8526:40;;8502:5;8526:40;8349:234;;:::o;1175:140:60:-;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;;;;;;;;:::i;2494:922:60:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;42260:2:136;3262:56:60;;;42242:21:136;42299:2;42279:18;;;42272:30;42338:34;42318:18;;;42311:62;-1:-1:-1;;;42389:18:136;;;42382:44;42443:19;;3262:56:60;42058:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;42675:2:136;3140:82:60;;;42657:21:136;42714:2;42694:18;;;42687:30;42753:34;42733:18;;;42726:62;-1:-1:-1;;;42804:18:136;;;42797:39;42853:19;;3140:82:60;42473:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;8751:152:104:-;8824:20;8833:10;8824:8;:20::i;:::-;8819:78;;8867:19;;-1:-1:-1;;;8867:19:104;;;;;;;;;;;1349:282:81;1436:4;1543:23;1558:7;1543:14;:23::i;:::-;:81;;;;;1570:54;1603:7;1612:11;1570:32;:54::i;:::-;1536:88;1349:282;-1:-1:-1;;;1349:282:81:o;25029:474:104:-;-1:-1:-1;;;;;25142:27:104;;25106:33;25142:27;;;:18;:27;;;;;;;;25106:63;;;;;;;;;;;;;;;;;;;25142:27;;25106:63;;;25142:27;25106:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;25106:63:104;;;;;;;;;;;;;;;;;;;;;;;25250:9;25245:252;25269:16;:23;25265:1;:27;25245:252;;;25440:16;25457:1;25440:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;25425:52:104;;25478:7;25425:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25294:3;;;;;:::i;:::-;;;;25245:252;;2687:187:45;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;20776::104:-;20853:18;;;20833:11;:39;;-1:-1:-1;;;;;;20833:39:104;;;-1:-1:-1;;;;;20853:18:104;;20833:39;;;;20882:25;;;20922:34;;;;;;20853:18;;20922:34;:::i;:::-;;;;;;;;20776:187::o;4180:501:43:-;4268:22;4276:4;4282:7;4268;:22::i;:::-;4263:412;;4451:39;4482:7;4451:30;:39::i;:::-;4561:49;4600:4;4607:2;4561:30;:49::i;:::-;4358:274;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;4358:274:43;;;;;;;;;;-1:-1:-1;;;4306:358:43;;;;;;;:::i;2006:109:48:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;;;;;;:::i;5173:642:73:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:73;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:73;;44368:2:136;5697:111:73;;;44350:21:136;44407:2;44387:18;;;44380:30;44446:34;44426:18;;;44419:62;-1:-1:-1;;;44497:18:136;;;44490:40;44547:19;;5697:111:73;44166:406:136;1406:259:60;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;44779:2:136;1479:95:60;;;44761:21:136;44818:2;44798:18;;;44791:30;44857:34;44837:18;;;44830:62;-1:-1:-1;;;44908:18:136;;;44901:43;44961:19;;1479:95:60;44577:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;704:427:81:-;768:4;975:68;1008:7;-1:-1:-1;;;975:32:81;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:81;1093:7;-1:-1:-1;;;;;;1060:32:81;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:81:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;45153:33:136;;4592:71:81;;;;45135:52:136;;;;4592:71:81;;;;;;;;;;45108:18:136;;;;4592:71:81;;;;;;;;;-1:-1:-1;;;;;4592:71:81;-1:-1:-1;;;4592:71:81;;;4871:20;;4523:4;;4592:71;4523:4;;;;;;4592:71;4523:4;;4871:20;4836:7;4829:5;4818:86;4807:97;;4931:16;4917:30;;4981:4;4975:11;4960:26;;5013:7;:29;;;;;5038:4;5024:10;:18;;5013:29;:48;;;;;5060:1;5046:11;:15;5013:48;5006:55;4421:647;-1:-1:-1;;;;;;;4421:647:81:o;2473:149:52:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:52;;376:2;1884:437;1959:13;1984:19;2016:10;2020:6;2016:1;:10;:::i;:::-;:14;;2029:1;2016:14;:::i;:::-;-1:-1:-1;;;;;2006:25:52;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:52;;1984:47;;-1:-1:-1;;;2041:6:52;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:52;;;;;;;;;-1:-1:-1;;;2066:6:52;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:52;;;;;;;;-1:-1:-1;2096:9:52;2108:10;2112:6;2108:1;:10;:::i;:::-;:14;;2121:1;2108:14;:::i;:::-;2096:26;;2091:128;2128:1;2124;:5;2091:128;;;-1:-1:-1;;;2171:5:52;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:52;;;;;;;;-1:-1:-1;2207:1:52;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:52;;2228:55;;;;-1:-1:-1;;;2228:55:52;;45541:2:136;2228:55:52;;;45523:21:136;;;45560:18;;;45553:30;45619:34;45599:18;;;45592:62;45671:18;;2228:55:52;45339:356:136;4108:223:76;4241:12;4272:52;4294:6;4302:4;4308:1;4311:12;4272:21;:52::i;:::-;4265:59;4108:223;-1:-1:-1;;;;4108:223:76:o;1771:152:60:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:76;;45902:2:136;5354:81:76;;;45884:21:136;45941:2;45921:18;;;45914:30;45980:34;45960:18;;;45953:62;-1:-1:-1;;;46031:18:136;;;46024:36;46077:19;;5354:81:76;45700:402:136;5354:81:76;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:76;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;5535:26;:69::i;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;46601:2:136;8113:60:76;;;46583:21:136;46640:2;46620:18;;;46613:30;46679:31;46659:18;;;46652:59;46728:18;;8113:60:76;46399:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:286:136;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;167:23;;-1:-1:-1;;;;;;219:32:136;;209:43;;199:71;;266:1;263;256:12;861:180;920:6;973:2;961:9;952:7;948:23;944:32;941:52;;;989:1;986;979:12;941:52;-1:-1:-1;1012:23:136;;861:180;-1:-1:-1;861:180:136:o;1046:131::-;-1:-1:-1;;;;;1121:31:136;;1111:42;;1101:70;;1167:1;1164;1157:12;1182:134;1250:20;;1279:31;1250:20;1279:31;:::i;:::-;1182:134;;;:::o;1321:388::-;1389:6;1397;1450:2;1438:9;1429:7;1425:23;1421:32;1418:52;;;1466:1;1463;1456:12;1418:52;1505:9;1492:23;1524:31;1549:5;1524:31;:::i;:::-;1574:5;-1:-1:-1;1631:2:136;1616:18;;1603:32;1644:33;1603:32;1644:33;:::i;:::-;1696:7;1686:17;;;1321:388;;;;;:::o;1714:247::-;1773:6;1826:2;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1881:9;1868:23;1900:31;1925:5;1900:31;:::i;2151:315::-;2219:6;2227;2280:2;2268:9;2259:7;2255:23;2251:32;2248:52;;;2296:1;2293;2286:12;2248:52;2335:9;2322:23;2354:31;2379:5;2354:31;:::i;:::-;2404:5;2456:2;2441:18;;;;2428:32;;-1:-1:-1;;;2151:315:136:o;2471:104::-;-1:-1:-1;;;;;2537:31:136;2525:44;;2471:104::o;2580:203::-;-1:-1:-1;;;;;2744:32:136;;;;2726:51;;2714:2;2699:18;;2580:203::o;2788:315::-;2856:6;2864;2917:2;2905:9;2896:7;2892:23;2888:32;2885:52;;;2933:1;2930;2923:12;2885:52;2969:9;2956:23;2946:33;;3029:2;3018:9;3014:18;3001:32;3042:31;3067:5;3042:31;:::i;3108:127::-;3169:10;3164:3;3160:20;3157:1;3150:31;3200:4;3197:1;3190:15;3224:4;3221:1;3214:15;3240:257;3312:4;3306:11;;;3344:17;;-1:-1:-1;;;;;3376:34:136;;3412:22;;;3373:62;3370:88;;;3438:18;;:::i;:::-;3474:4;3467:24;3240:257;:::o;3502:255::-;3574:2;3568:9;3616:6;3604:19;;-1:-1:-1;;;;;3638:34:136;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:136;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:255::-;4092:2;4086:9;4134:6;4122:19;;-1:-1:-1;;;;;4156:34:136;;4192:22;;;4153:62;4150:88;;;4218:18;;:::i;4280:275::-;4351:2;4345:9;4416:2;4397:13;;-1:-1:-1;;4393:27:136;4381:40;;-1:-1:-1;;;;;4436:34:136;;4472:22;;;4433:62;4430:88;;;4498:18;;:::i;:::-;4534:2;4527:22;4280:275;;-1:-1:-1;4280:275:136:o;4560:187::-;4609:4;-1:-1:-1;;;;;4631:30:136;;4628:56;;;4664:18;;:::i;:::-;-1:-1:-1;4730:2:136;4709:15;-1:-1:-1;;4705:29:136;4736:4;4701:40;;4560:187::o;4752:338::-;4817:5;4846:53;4862:36;4891:6;4862:36;:::i;:::-;4846:53;:::i;:::-;4837:62;;4922:6;4915:5;4908:21;4962:3;4953:6;4948:3;4944:16;4941:25;4938:45;;;4979:1;4976;4969:12;4938:45;5028:6;5023:3;5016:4;5009:5;5005:16;4992:43;5082:1;5075:4;5066:6;5059:5;5055:18;5051:29;5044:40;4752:338;;;;;:::o;5095:222::-;5138:5;5191:3;5184:4;5176:6;5172:17;5168:27;5158:55;;5209:1;5206;5199:12;5158:55;5231:80;5307:3;5298:6;5285:20;5278:4;5270:6;5266:17;5231:80;:::i;5322:411::-;5377:5;5425:4;5413:9;5408:3;5404:19;5400:30;5397:50;;;5443:1;5440;5433:12;5397:50;5465:22;;:::i;:::-;5510:23;;5496:38;;5456:31;-1:-1:-1;5585:2:136;5570:18;;5557:32;-1:-1:-1;;;;;5601:30:136;;5598:50;;;5644:1;5641;5634:12;5598:50;5680:46;5722:3;5713:6;5702:9;5698:22;5680:46;:::i;:::-;5675:2;5668:5;5664:14;5657:70;;5322:411;;;;:::o;5738:118::-;5824:5;5817:13;5810:21;5803:5;5800:32;5790:60;;5846:1;5843;5836:12;5861:128;5926:20;;5955:28;5926:20;5955:28;:::i;5994:1871::-;6136:6;6144;6152;6160;6213:3;6201:9;6192:7;6188:23;6184:33;6181:53;;;6230:1;6227;6220:12;6181:53;6257:23;;-1:-1:-1;;;;;6329:14:136;;;6326:34;;;6356:1;6353;6346:12;6326:34;6379:22;;;;6435:6;6417:16;;;6413:29;6410:49;;;6455:1;6452;6445:12;6410:49;6481:22;;:::i;:::-;6526;6545:2;6526:22;:::i;:::-;6519:5;6512:37;6581:31;6608:2;6604;6600:11;6581:31;:::i;:::-;6576:2;6569:5;6565:14;6558:55;6666:2;6662;6658:11;6645:25;6640:2;6633:5;6629:14;6622:49;6724:2;6720;6716:11;6703:25;6698:2;6691:5;6687:14;6680:49;6783:3;6779:2;6775:12;6762:26;6756:3;6749:5;6745:15;6738:51;6822:32;6849:3;6845:2;6841:12;6822:32;:::i;:::-;6816:3;6809:5;6805:15;6798:57;6888:32;6915:3;6911:2;6907:12;6888:32;:::i;:::-;6882:3;6875:5;6871:15;6864:57;6967:3;6963:2;6959:12;6946:26;6997:2;6987:8;6984:16;6981:36;;;7013:1;7010;7003:12;6981:36;7050:54;7096:7;7085:8;7081:2;7077:17;7050:54;:::i;:::-;7044:3;7037:5;7033:15;7026:79;;7124:3;7159:31;7186:2;7182;7178:11;7159:31;:::i;:::-;7143:14;;;7136:55;7210:3;7251:11;;;7238:25;7275:16;;;7272:36;;;7304:1;7301;7294:12;7272:36;7340:45;7377:7;7366:8;7362:2;7358:17;7340:45;:::i;:::-;7335:2;7328:5;7324:14;7317:69;;;7405:3;7440:28;7464:2;7460;7456:11;7440:28;:::i;:::-;7424:14;;;7417:52;7488:3;7529:11;;;7516:25;7553:16;;;7550:36;;;7582:1;7579;7572:12;7550:36;7618:45;7655:7;7644:8;7640:2;7636:17;7618:45;:::i;:::-;7613:2;7606:5;7602:14;7595:69;;;7683:5;7673:15;;;;;7707:38;7741:2;7730:9;7726:18;7707:38;:::i;:::-;7697:48;;7764:38;7798:2;7787:9;7783:18;7764:38;:::i;:::-;7754:48;;7821:38;7855:2;7844:9;7840:18;7821:38;:::i;:::-;7811:48;;5994:1871;;;;;;;:::o;8130:585::-;8207:6;8215;8268:2;8256:9;8247:7;8243:23;8239:32;8236:52;;;8284:1;8281;8274:12;8236:52;8323:9;8310:23;8342:31;8367:5;8342:31;:::i;:::-;8392:5;-1:-1:-1;8448:2:136;8433:18;;8420:32;-1:-1:-1;;;;;8464:30:136;;8461:50;;;8507:1;8504;8497:12;8461:50;8530:22;;8583:4;8575:13;;8571:27;-1:-1:-1;8561:55:136;;8612:1;8609;8602:12;8561:55;8635:74;8701:7;8696:2;8683:16;8678:2;8674;8670:11;8635:74;:::i;:::-;8625:84;;;8130:585;;;;;:::o;8720:605::-;8775:5;8823:4;8811:9;8806:3;8802:19;8798:30;8795:50;;;8841:1;8838;8831:12;8795:50;8874:2;8868:9;8916:4;8904:17;;-1:-1:-1;;;;;8936:34:136;;8972:22;;;8933:62;8930:88;;;8998:18;;:::i;:::-;9038:10;9034:2;9027:22;;9067:6;9058:15;;9110:9;9097:23;9089:6;9082:39;9182:2;9171:9;9167:18;9154:32;9149:2;9141:6;9137:15;9130:57;9248:2;9237:9;9233:18;9220:32;9215:2;9207:6;9203:15;9196:57;9314:2;9303:9;9299:18;9286:32;9281:2;9273:6;9269:15;9262:57;;8720:605;;;;:::o;9330:153::-;9408:20;;9457:1;9447:12;;9437:40;;9473:1;9470;9463:12;9488:110;9572:1;9565:5;9562:12;9552:40;;9588:1;9585;9578:12;9603:152;9680:20;;9709:40;9680:20;9709:40;:::i;9760:416::-;9824:5;9872:4;9860:9;9855:3;9851:19;9847:30;9844:50;;;9890:1;9887;9880:12;9844:50;9923:2;9917:9;9965:4;9953:17;;-1:-1:-1;;;;;9985:34:136;;10021:22;;;9982:62;9979:88;;;10047:18;;:::i;:::-;10083:2;10076:22;10146:23;;10131:39;;-1:-1:-1;10116:6:136;9760:416;-1:-1:-1;9760:416:136:o;10181:701::-;10244:5;10292:4;10280:9;10275:3;10271:19;10267:30;10264:50;;;10310:1;10307;10300:12;10264:50;10332:22;;:::i;:::-;10323:31;;10391:9;10378:23;10410:33;10435:7;10410:33;:::i;:::-;10452:22;;10526:2;10511:18;;10498:32;10539:33;10498:32;10539:33;:::i;:::-;10604:7;10599:2;10592:5;10588:14;10581:31;;10672:2;10661:9;10657:18;10644:32;10639:2;10632:5;10628:14;10621:56;10737:2;10726:9;10722:18;10709:32;10704:2;10697:5;10693:14;10686:56;10803:3;10792:9;10788:19;10775:33;10769:3;10762:5;10758:15;10751:58;10870:3;10859:9;10855:19;10842:33;10836:3;10829:5;10825:15;10818:58;10181:701;;;;:::o;10887:1090::-;10962:5;11010:6;10998:9;10993:3;10989:19;10985:32;10982:52;;;11030:1;11027;11020:12;10982:52;11063:2;11057:9;11105:4;11093:17;;-1:-1:-1;;;;;11125:34:136;;11161:22;;;11122:62;11119:88;;;11187:18;;:::i;:::-;11223:2;11216:22;11256:6;-1:-1:-1;11256:6:136;11286:42;11324:3;11313:9;11286:42;:::i;:::-;11278:6;11271:58;11364:49;11408:3;11397:9;11393:19;11364:49;:::i;:::-;11357:4;11349:6;11345:17;11338:76;11466:3;11455:9;11451:19;11438:33;11480:42;11514:7;11480:42;:::i;:::-;11550:2;11538:15;;11531:32;11598:61;11655:3;11649;11634:19;;11598:61;:::i;:::-;11591:4;11583:6;11579:17;11572:88;11694:61;11751:3;11744:4;11733:9;11729:20;11694:61;:::i;:::-;11688:3;11680:6;11676:16;11669:87;11808:3;11797:9;11793:19;11780:33;11822;11847:7;11822:33;:::i;:::-;11883:3;11871:16;;11864:33;11931:39;11965:3;11950:19;;11931:39;:::i;:::-;11925:3;11917:6;11913:16;11906:65;;10887:1090;;;;:::o;11982:644::-;12134:6;12142;12150;12203:3;12191:9;12182:7;12178:23;12174:33;12171:53;;;12220:1;12217;12210:12;12171:53;12259:9;12246:23;12278:31;12303:5;12278:31;:::i;:::-;12328:5;-1:-1:-1;12352:75:136;12419:7;12414:2;12399:18;;12352:75;:::i;:::-;12342:85;-1:-1:-1;12478:3:136;12463:19;;12450:33;-1:-1:-1;;;;;12495:30:136;;12492:50;;;12538:1;12535;12528:12;12492:50;12561:59;12612:7;12603:6;12592:9;12588:22;12561:59;:::i;:::-;12551:69;;;11982:644;;;;;:::o;12910:183::-;12970:4;-1:-1:-1;;;;;12992:30:136;;12989:56;;;13025:18;;:::i;:::-;-1:-1:-1;13070:1:136;13066:14;13082:4;13062:25;;12910:183::o;13098:737::-;13152:5;13205:3;13198:4;13190:6;13186:17;13182:27;13172:55;;13223:1;13220;13213:12;13172:55;13259:6;13246:20;13285:4;13309:60;13325:43;13365:2;13325:43;:::i;13309:60::-;13403:15;;;13489:1;13485:10;;;;13473:23;;13469:32;;;13434:12;;;;13513:15;;;13510:35;;;13541:1;13538;13531:12;13510:35;13577:2;13569:6;13565:15;13589:217;13605:6;13600:3;13597:15;13589:217;;;13685:3;13672:17;13702:31;13727:5;13702:31;:::i;:::-;13746:18;;13784:12;;;;13622;;13589:217;;;-1:-1:-1;13824:5:136;13098:737;-1:-1:-1;;;;;;13098:737:136:o;13840:974::-;13921:5;13969:6;13957:9;13952:3;13948:19;13944:32;13941:52;;;13989:1;13986;13979:12;13941:52;14011:22;;:::i;:::-;14002:31;;14056:42;14094:3;14083:9;14056:42;:::i;:::-;14049:5;14042:57;14133:49;14177:3;14166:9;14162:19;14133:49;:::i;:::-;14126:4;14119:5;14115:16;14108:75;14217:48;14260:3;14249:9;14245:19;14217:48;:::i;:::-;14210:4;14203:5;14199:16;14192:74;14300:61;14357:3;14351;14340:9;14336:19;14300:61;:::i;:::-;14293:4;14286:5;14282:16;14275:87;14395:60;14451:3;14445;14434:9;14430:19;14395:60;:::i;:::-;14389:3;14382:5;14378:15;14371:85;14489:39;14523:3;14512:9;14508:19;14489:39;:::i;:::-;14483:3;14476:5;14472:15;14465:64;14562:39;14596:3;14585:9;14581:19;14562:39;:::i;:::-;14556:3;14545:15;;14538:64;14653:3;14638:19;;14625:33;-1:-1:-1;;;;;14670:30:136;;14667:50;;;14713:1;14710;14703:12;14667:50;14750:57;14803:3;14794:6;14783:9;14779:22;14750:57;:::i;:::-;14744:3;14737:5;14733:15;14726:82;;13840:974;;;;:::o;14819:777::-;14971:6;14979;14987;15040:2;15028:9;15019:7;15015:23;15011:32;15008:52;;;15056:1;15053;15046:12;15008:52;15095:9;15082:23;15114:31;15139:5;15114:31;:::i;:::-;15164:5;-1:-1:-1;15220:2:136;15205:18;;15192:32;-1:-1:-1;;;;;15273:14:136;;;15270:34;;;15300:1;15297;15290:12;15270:34;15323:85;15400:7;15391:6;15380:9;15376:22;15323:85;:::i;:::-;15313:95;;15461:2;15450:9;15446:18;15433:32;15417:48;;15490:2;15480:8;15477:16;15474:36;;;15506:1;15503;15496:12;15474:36;;15529:61;15582:7;15571:8;15560:9;15556:24;15529:61;:::i;16274:919::-;16435:6;16443;16451;16459;16512:3;16500:9;16491:7;16487:23;16483:33;16480:53;;;16529:1;16526;16519:12;16480:53;16568:9;16555:23;16587:31;16612:5;16587:31;:::i;:::-;16637:5;-1:-1:-1;16694:2:136;16679:18;;16666:32;16707:33;16666:32;16707:33;:::i;:::-;16759:7;-1:-1:-1;16817:2:136;16802:18;;16789:32;-1:-1:-1;;;;;16870:14:136;;;16867:34;;;16897:1;16894;16887:12;16867:34;16920:85;16997:7;16988:6;16977:9;16973:22;16920:85;:::i;:::-;16910:95;;17058:2;17047:9;17043:18;17030:32;17014:48;;17087:2;17077:8;17074:16;17071:36;;;17103:1;17100;17093:12;17071:36;;17126:61;17179:7;17168:8;17157:9;17153:24;17126:61;:::i;:::-;17116:71;;;16274:919;;;;;;;:::o;17558:250::-;17643:1;17653:113;17667:6;17664:1;17661:13;17653:113;;;17743:11;;;17737:18;17724:11;;;17717:39;17689:2;17682:10;17653:113;;;-1:-1:-1;;17800:1:136;17782:16;;17775:27;17558:250::o;17813:271::-;17855:3;17893:5;17887:12;17920:6;17915:3;17908:19;17936:76;18005:6;17998:4;17993:3;17989:14;17982:4;17975:5;17971:16;17936:76;:::i;:::-;18066:2;18045:15;-1:-1:-1;;18041:29:136;18032:39;;;;18073:4;18028:50;;17813:271;-1:-1:-1;;17813:271:136:o;18089:220::-;18238:2;18227:9;18220:21;18201:4;18258:45;18299:2;18288:9;18284:18;18276:6;18258:45;:::i;18761:785::-;18922:6;18930;18938;18946;18999:3;18987:9;18978:7;18974:23;18970:33;18967:53;;;19016:1;19013;19006:12;18967:53;19055:9;19042:23;19074:31;19099:5;19074:31;:::i;:::-;19124:5;-1:-1:-1;19181:2:136;19166:18;;19153:32;19194:33;19153:32;19194:33;:::i;:::-;19246:7;-1:-1:-1;19272:75:136;19339:7;19334:2;19319:18;;19272:75;:::i;:::-;19262:85;-1:-1:-1;19398:3:136;19383:19;;19370:33;-1:-1:-1;;;;;19415:30:136;;19412:50;;;19458:1;19455;19448:12;19412:50;19481:59;19532:7;19523:6;19512:9;19508:22;19481:59;:::i;19551:127::-;19612:10;19607:3;19603:20;19600:1;19593:31;19643:4;19640:1;19633:15;19667:4;19664:1;19657:15;19683:168;19756:9;;;19787;;19804:15;;;19798:22;;19784:37;19774:71;;19825:18;;:::i;19856:127::-;19917:10;19912:3;19908:20;19905:1;19898:31;19948:4;19945:1;19938:15;19972:4;19969:1;19962:15;19988:277;20075:6;20128:2;20116:9;20107:7;20103:23;20099:32;20096:52;;;20144:1;20141;20134:12;20096:52;20176:9;20170:16;20195:40;20229:5;20195:40;:::i;20270:282::-;-1:-1:-1;;;;;20470:32:136;;;;20452:51;;20534:2;20519:18;;20512:34;20440:2;20425:18;;20270:282::o;20557:184::-;20627:6;20680:2;20668:9;20659:7;20655:23;20651:32;20648:52;;;20696:1;20693;20686:12;20648:52;-1:-1:-1;20719:16:136;;20557:184;-1:-1:-1;20557:184:136:o;21025:375::-;-1:-1:-1;;;;;21283:15:136;;;21265:34;;21335:15;;;;21330:2;21315:18;;21308:43;21382:2;21367:18;;21360:34;;;;21215:2;21200:18;;21025:375::o;21405:304::-;-1:-1:-1;;;;;21635:15:136;;;21617:34;;21687:15;;21682:2;21667:18;;21660:43;21567:2;21552:18;;21405:304::o;21714:217::-;21754:1;21780;21770:132;;21824:10;21819:3;21815:20;21812:1;21805:31;21859:4;21856:1;21849:15;21887:4;21884:1;21877:15;21770:132;-1:-1:-1;21916:9:136;;21714:217::o;21936:125::-;22001:9;;;22022:10;;;22019:36;;;22035:18;;:::i;22481:380::-;22560:1;22556:12;;;;22603;;;22624:61;;22678:4;22670:6;22666:17;22656:27;;22624:61;22731:2;22723:6;22720:14;22700:18;22697:38;22694:161;;22777:10;22772:3;22768:20;22765:1;22758:31;22812:4;22809:1;22802:15;22840:4;22837:1;22830:15;22694:161;;22481:380;;;:::o;22992:545::-;23094:2;23089:3;23086:11;23083:448;;;23130:1;23155:5;23151:2;23144:17;23200:4;23196:2;23186:19;23270:2;23258:10;23254:19;23251:1;23247:27;23241:4;23237:38;23306:4;23294:10;23291:20;23288:47;;;-1:-1:-1;23329:4:136;23288:47;23384:2;23379:3;23375:12;23372:1;23368:20;23362:4;23358:31;23348:41;;23439:82;23457:2;23450:5;23447:13;23439:82;;;23502:17;;;23483:1;23472:13;23439:82;;;23443:3;;;22992:545;;;:::o;23713:1352::-;23833:10;;-1:-1:-1;;;;;23855:30:136;;23852:56;;;23888:18;;:::i;:::-;23917:97;24007:6;23967:38;23999:4;23993:11;23967:38;:::i;:::-;23961:4;23917:97;:::i;:::-;24069:4;;24133:2;24122:14;;24150:1;24145:663;;;;24852:1;24869:6;24866:89;;;-1:-1:-1;24921:19:136;;;24915:26;24866:89;-1:-1:-1;;23670:1:136;23666:11;;;23662:24;23658:29;23648:40;23694:1;23690:11;;;23645:57;24968:81;;24115:944;;24145:663;22939:1;22932:14;;;22976:4;22963:18;;-1:-1:-1;;24181:20:136;;;24299:236;24313:7;24310:1;24307:14;24299:236;;;24402:19;;;24396:26;24381:42;;24494:27;;;;24462:1;24450:14;;;;24329:19;;24299:236;;;24303:3;24563:6;24554:7;24551:19;24548:201;;;24624:19;;;24618:26;-1:-1:-1;;24707:1:136;24703:14;;;24719:3;24699:24;24695:37;24691:42;24676:58;24661:74;;24548:201;-1:-1:-1;;;;;24795:1:136;24779:14;;;24775:22;24762:36;;-1:-1:-1;23713:1352:136:o;25070:251::-;25140:6;25193:2;25181:9;25172:7;25168:23;25164:32;25161:52;;;25209:1;25206;25199:12;25161:52;25241:9;25235:16;25260:31;25285:5;25260:31;:::i;25326:127::-;25387:10;25382:3;25378:20;25375:1;25368:31;25418:4;25415:1;25408:15;25442:4;25439:1;25432:15;25458:956;25553:6;25584:2;25627;25615:9;25606:7;25602:23;25598:32;25595:52;;;25643:1;25640;25633:12;25595:52;25670:16;;-1:-1:-1;;;;;25698:30:136;;25695:50;;;25741:1;25738;25731:12;25695:50;25764:22;;25817:4;25809:13;;25805:27;-1:-1:-1;25795:55:136;;25846:1;25843;25836:12;25795:55;25875:2;25869:9;25898:60;25914:43;25954:2;25914:43;:::i;25898:60::-;25992:15;;;26074:1;26070:10;;;;26062:19;;26058:28;;;26023:12;;;;26098:19;;;26095:39;;;26130:1;26127;26120:12;26095:39;26154:11;;;;26174:210;26190:6;26185:3;26182:15;26174:210;;;26263:3;26257:10;26280:31;26305:5;26280:31;:::i;:::-;26324:18;;26207:12;;;;26362;;;;26174:210;;26419:135;26458:3;26479:17;;;26476:43;;26499:18;;:::i;:::-;-1:-1:-1;26546:1:136;26535:13;;26419:135::o;26559:128::-;26626:9;;;26647:11;;;26644:37;;;26661:18;;:::i;26692:772::-;26742:3;26783:5;26777:12;26812:36;26838:9;26812:36;:::i;:::-;26857:19;;;26895:4;26918:1;26935:18;;;26962:146;;;;27122:1;27117:341;;;;26928:530;;26962:146;-1:-1:-1;;27004:24:136;;26990:12;;;26983:46;27076:14;;27069:22;27066:1;27062:30;27053:40;;27049:49;;;-1:-1:-1;26962:146:136;;27117:341;27148:5;27145:1;27138:16;27195:2;27192:1;27182:16;27220:1;27234:174;27248:6;27245:1;27242:13;27234:174;;;27335:14;;27317:11;;;27313:20;;27306:44;27378:16;;;;27263:10;;27234:174;;;27432:11;;27428:20;;;-1:-1:-1;;26928:530:136;;;;;;26692:772;;;;:::o;27469:252::-;27556:5;27550:12;27545:3;27538:25;27520:3;27609:4;27602:5;27598:16;27592:23;27647:4;27640;27635:3;27631:14;27624:28;27668:47;27709:4;27704:3;27700:14;27686:12;27668:47;:::i;27726:461::-;27779:3;27817:5;27811:12;27844:6;27839:3;27832:19;27870:4;27899:2;27894:3;27890:12;27883:19;;27936:2;27929:5;27925:14;27957:1;27967:195;27981:6;27978:1;27975:13;27967:195;;;28046:13;;-1:-1:-1;;;;;28042:39:136;28030:52;;28102:12;;;;28137:15;;;;28078:1;27996:9;27967:195;;;-1:-1:-1;28178:3:136;;27726:461;-1:-1:-1;;;;;27726:461:136:o;28192:804::-;28552:6;28541:9;28534:25;28595:3;28590:2;28579:9;28575:18;28568:31;28515:4;28622:54;28671:3;28660:9;28656:19;28648:6;28622:54;:::i;:::-;28724:9;28716:6;28712:22;28707:2;28696:9;28692:18;28685:50;28758:42;28793:6;28785;28758:42;:::i;:::-;-1:-1:-1;;;;;28836:32:136;;28831:2;28816:18;;28809:60;28906:22;;;28900:3;28885:19;;28878:51;28744:56;-1:-1:-1;28946:44:136;28744:56;28975:6;28946:44;:::i;:::-;28938:52;28192:804;-1:-1:-1;;;;;;;;28192:804:136:o;29190:500::-;29444:6;29433:9;29426:25;29487:2;29482;29471:9;29467:18;29460:30;29407:4;29513:53;29562:2;29551:9;29547:18;29539:6;29513:53;:::i;:::-;29614:9;29606:6;29602:22;29597:2;29586:9;29582:18;29575:50;29642:42;29677:6;29669;29642:42;:::i;30310:408::-;30512:2;30494:21;;;30551:2;30531:18;;;30524:30;-1:-1:-1;;;;;;;;;;;30585:2:136;30570:18;;30563:62;-1:-1:-1;;;30656:2:136;30641:18;;30634:42;30708:3;30693:19;;30310:408::o;30723:::-;30925:2;30907:21;;;30964:2;30944:18;;;30937:30;-1:-1:-1;;;;;;;;;;;30998:2:136;30983:18;;30976:62;-1:-1:-1;;;31069:2:136;31054:18;;31047:42;31121:3;31106:19;;30723:408::o;31453:384::-;-1:-1:-1;;;;;31711:15:136;;;31693:34;;31763:15;;;31758:2;31743:18;;31736:43;31815:15;;;31810:2;31795:18;;31788:43;31643:2;31628:18;;31453:384::o;31842:315::-;-1:-1:-1;;;;;32017:32:136;;31999:51;;32086:2;32081;32066:18;;32059:30;;;-1:-1:-1;;32106:45:136;;32132:18;;32124:6;32106:45;:::i;33003:324::-;-1:-1:-1;;;33233:24:136;;33282:1;33273:11;;33266:27;;;;33318:2;33309:12;;33003:324::o;33332:331::-;-1:-1:-1;;;33562:30:136;;33617:2;33608:12;;33601:28;;;;33654:2;33645:12;;33332:331::o;33921:127::-;33982:10;33977:3;33973:20;33970:1;33963:31;34013:4;34010:1;34003:15;34037:4;34034:1;34027:15;34053:1653;34145:6;34176:2;34219;34207:9;34198:7;34194:23;34190:32;34187:52;;;34235:1;34232;34225:12;34187:52;34262:16;;-1:-1:-1;;;;;34327:14:136;;;34324:34;;;34354:1;34351;34344:12;34324:34;34377:22;;;;34433:4;34415:16;;;34411:27;34408:47;;;34451:1;34448;34441:12;34408:47;34477:22;;:::i;:::-;34528:2;34522:9;34515:5;34508:24;34570:2;34566;34562:11;34556:18;34583:33;34608:7;34583:33;:::i;:::-;34632:14;;;34625:31;34694:2;34686:11;;34680:18;34707:33;34680:18;34707:33;:::i;:::-;34767:2;34756:14;;34749:31;34819:2;34811:11;;34805:18;34835:16;;;34832:36;;;34864:1;34861;34854:12;34832:36;34887:17;;34938:2;34920:16;;;34916:25;34913:45;;;34954:1;34951;34944:12;34913:45;34982:22;;:::i;:::-;35035:2;35029:9;35020:7;35013:26;35078:2;35074;35070:11;35064:18;35107:2;35097:8;35094:16;35091:36;;;35123:1;35120;35113:12;35091:36;35146:17;;;-1:-1:-1;35194:4:136;35186:13;;35182:27;-1:-1:-1;35172:55:136;;35223:1;35220;35213:12;35172:55;35252:2;35246:9;35236:19;;35277:49;35293:32;35322:2;35293:32;:::i;35277:49::-;35349:2;35342:5;35335:17;35389:7;35384:2;35379;35375;35371:11;35367:20;35364:33;35361:53;;;35410:1;35407;35400:12;35361:53;35423:67;35487:2;35482;35475:5;35471:14;35466:2;35462;35458:11;35423:67;:::i;:::-;35506:16;;;35499:31;;;;-1:-1:-1;35557:2:136;35546:14;;35539:31;;;;-1:-1:-1;35617:3:136;35609:12;;;35603:19;35586:15;;;35579:44;35670:3;35662:12;;;35656:19;35639:15;;;35632:44;35550:5;34053:1653;-1:-1:-1;;;34053:1653:136:o;35711:261::-;35791:5;35785:12;35780:3;35773:25;35847:4;35840:5;35836:16;35830:23;35823:4;35818:3;35814:14;35807:47;35903:4;35896:5;35892:16;35886:23;35879:4;35874:3;35870:14;35863:47;35959:4;35952:5;35948:16;35942:23;35935:4;35930:3;35926:14;35919:47;;;35711:261::o;35977:143::-;36061:1;36054:5;36051:12;36041:46;;36067:18;;:::i;:::-;36096;;35977:143::o;36125:142::-;36208:1;36201:5;36198:12;36188:46;;36214:18;;:::i;36272:437::-;36396:12;;-1:-1:-1;;;;;36392:21:136;;;36380:34;;36467:4;36456:16;;;36450:23;36446:32;;;36430:14;;;36423:56;36528:4;36517:16;;;36511:23;36495:14;;;36488:47;36584:4;36573:16;;;36567:23;36551:14;;;36544:47;36640:4;36629:16;;;36623:23;36607:14;;;36600:47;36360:3;36685:16;;;36679:23;36663:14;;36656:47;36272:437::o;36714:1197::-;36941:2;36930:9;36923:21;36953:61;37010:2;36999:9;36995:18;36986:6;36980:13;36953:61;:::i;:::-;36904:4;37061:2;37053:6;37049:15;37043:22;37074:63;37132:3;37121:9;37117:19;37103:12;37074:63;:::i;:::-;;37186:4;37178:6;37174:17;37168:24;37201:64;37260:3;37249:9;37245:19;37229:14;37201:64;:::i;:::-;;37326:4;37318:6;37314:17;37308:24;37302:31;37296:3;37285:9;37281:19;37274:60;37383:4;37375:6;37371:17;37365:24;37398:71;37464:3;37453:9;37449:19;37433:14;37398:71;:::i;:::-;;37518:3;37510:6;37506:16;37500:23;37532:55;37582:3;37571:9;37567:19;37551:14;37532:55;:::i;:::-;;37636:3;37628:6;37624:16;37618:23;37650:55;37700:3;37689:9;37685:19;37669:14;37650:55;:::i;:::-;-1:-1:-1;37754:3:136;37742:16;;37736:23;37778:6;37800:18;;;37793:30;37840:65;37900:3;37885:19;;37736:23;37840:65;:::i;37916:979::-;38341:6;38330:9;38323:25;38304:4;38384:1;38380;38375:3;38371:11;38367:19;38434:2;38426:6;38422:15;38417:2;38406:9;38402:18;38395:43;38474:3;38469:2;38458:9;38454:18;38447:31;38501:46;38542:3;38531:9;38527:19;38519:6;38501:46;:::i;:::-;38595:2;38587:6;38583:15;38578:2;38567:9;38563:18;38556:43;38636:6;38630:3;38619:9;38615:19;38608:35;38692:9;38684:6;38680:22;38674:3;38663:9;38659:19;38652:51;38726:42;38761:6;38753;38726:42;:::i;:::-;38712:56;;;38817:9;38809:6;38805:22;38799:3;38788:9;38784:19;38777:51;38845:44;38882:6;38874;38845:44;:::i;:::-;38837:52;37916:979;-1:-1:-1;;;;;;;;;;37916:979:136:o;38900:613::-;39175:25;;;-1:-1:-1;;;;;39274:15:136;;;39269:2;39254:18;;39247:43;39326:15;;;39321:2;39306:18;;39299:43;39378:15;;39373:2;39358:18;;39351:43;39227:3;39425;39410:19;;39403:32;;;39156:4;;39452:55;;39487:19;;39479:6;39452:55;:::i;39518:407::-;39720:2;39702:21;;;39759:2;39739:18;;;39732:30;39798:34;39793:2;39778:18;;39771:62;-1:-1:-1;;;39864:2:136;39849:18;;39842:41;39915:3;39900:19;;39518:407::o;39930:995::-;40120:4;40162:3;40151:9;40147:19;40139:27;;40175:52;40217:9;40208:6;40202:13;40175:52;:::i;:::-;40274:4;40266:6;40262:17;40256:24;40289:64;40347:4;40336:9;40332:20;40318:12;40289:64;:::i;:::-;;40402:4;40394:6;40390:17;40384:24;40417:65;40476:4;40465:9;40461:20;40445:14;40417:65;:::i;:::-;;40544:4;40536:6;40532:17;40526:24;40520:31;40513:4;40502:9;40498:20;40491:61;40601:4;40593:6;40589:17;40583:24;40616:72;40682:4;40671:9;40667:20;40651:14;40616:72;:::i;:::-;-1:-1:-1;40737:4:136;40725:17;;40719:24;-1:-1:-1;;;;;40821:23:136;;;40812:6;40797:22;;40790:55;40907:4;40895:17;;;40889:24;40885:33;;;40876:6;40861:22;;;40854:65;39930:995;:::o;43099:812::-;-1:-1:-1;;;43505:3:136;43498:38;43480:3;43565:6;43559:13;43581:75;43649:6;43644:2;43639:3;43635:12;43628:4;43620:6;43616:17;43581:75;:::i;:::-;-1:-1:-1;;;43715:2:136;43675:16;;;43707:11;;;43700:40;43765:13;;43787:76;43765:13;43849:2;43841:11;;43834:4;43822:17;;43787:76;:::i;:::-;43883:17;43902:2;43879:26;;43099:812;-1:-1:-1;;;;43099:812:136:o;43916:245::-;43983:6;44036:2;44024:9;44015:7;44011:23;44007:32;44004:52;;;44052:1;44049;44042:12;44004:52;44084:9;44078:16;44103:28;44125:5;44103:28;:::i;45198:136::-;45237:3;45265:5;45255:39;;45274:18;;:::i;:::-;-1:-1:-1;;;45310:18:136;;45198:136::o;46107:287::-;46236:3;46274:6;46268:13;46290:66;46349:6;46344:3;46337:4;46329:6;46325:17;46290:66;:::i;:::-;46372:16;;;;;46107:287;-1:-1:-1;;46107:287:136:o","linkReferences":{},"immutableReferences":{"55572":[{"start":7744,"length":32},{"start":7811,"length":32},{"start":8062,"length":32},{"start":8129,"length":32},{"start":8467,"length":32}]}},"methodIdentifiers":{"COUNCIL_MEMBER()":"733a2d1f","DEFAULT_ADMIN_ROLE()":"a217fddf","MAX_FEE()":"bc063e1a","NATIVE()":"a0cf0aea","PRECISION_SCALE()":"d7050f07","VERSION()":"ffa1ad74","acceptCouncilSafe()":"b5058c50","activateMemberInStrategy(address,address)":"0d4a8b49","addStrategy(address)":"223e5479","addStrategyByPoolId(uint256)":"82d6a1e7","addressToMemberInfo(address)":"88cfe684","allo()":"d6d8428d","cloneNonce()":"33960459","collateralVaultTemplate()":"77122d56","communityFee()":"8961be6b","communityName()":"c6d572ae","councilSafe()":"6c53db9a","covenantIpfsHash()":"b64e39af","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"524e59e8","createPool(address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"579eb7e5","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address),(uint256,string))":"e16d0e32","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,address[]),(uint256,string))":"8659ffdd","deactivateMemberInStrategy(address,address)":"22bcf999","decreasePower(uint256)":"5ecf71c5","enabledStrategies(address)":"3a871fe1","feeReceiver()":"b3f00674","gardenToken()":"db61d65c","getBasisStakedAmount()":"0331383c","getMemberPowerInStrategy(address,address)":"7817ee4f","getMemberStakedAmount(address)":"2c611c4a","getRoleAdmin(bytes32)":"248a9ca3","getStakeAmountWithFees()":"28c309e9","grantRole(bytes32,address)":"2f2ff15d","hasRole(bytes32,address)":"91d14854","increasePower(uint256)":"559de05d","initialize((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string),address,address,address)":"34196355","initialize(address)":"c4d66de8","isCouncilMember(address)":"ebd7dc52","isKickEnabled()":"1f787d28","isMember(address)":"a230c524","kickMember(address,address)":"6871eb4d","memberActivatedInStrategies(address,address)":"477a5cc0","memberPowerInStrategy(address,address)":"65e3864c","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","removeStrategy(address)":"175188e8","removeStrategyByPoolId(uint256)":"73265c37","renounceOwnership()":"715018a6","renounceRole(bytes32,address)":"36568abe","revokeRole(bytes32,address)":"d547741f","setBasisStakedAmount(uint256)":"31f61bca","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityFee(uint256)":"0d12bbdb","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember()":"3517aa7d","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","transferOwnership(address)":"f2fde38b","unregisterMember()":"b99b4370","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_decreaseAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_currentPower\",\"type\":\"uint256\"}],\"name\":\"CantDecreaseMoreThanPower\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DecreaseUnderMinimum\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"KickNotEnabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NewFeeGreaterThanMax\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"RegistryCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotNewOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SenderNotStrategy\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyDisabled\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyActivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyDeactivated\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserAlreadyRegistered\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotGardenOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"UserNotInCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"UserNotInRegistry\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ValueCannotBeZero\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"}],\"name\":\"AlloSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newFee\",\"type\":\"uint256\"}],\"name\":\"CommunityFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safeOwner\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newSafeOwner\",\"type\":\"address\"}],\"name\":\"CouncilSafeChangeStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"CouncilSafeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_pointsToIncrease\",\"type\":\"uint256\"}],\"name\":\"MemberActivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"MemberDeactivatedStrategy\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberKicked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_unstakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerDecreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_stakedAmount\",\"type\":\"uint256\"}],\"name\":\"MemberPowerIncreased\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"MemberRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_amountReturned\",\"type\":\"uint256\"}],\"name\":\"MemberUnregistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_poolId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"PoolCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"indexed\":false,\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"RegistryInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"COUNCIL_MEMBER\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DEFAULT_ADMIN_ROLE\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MAX_FEE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"NATIVE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"PRECISION_SCALE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"acceptCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newStrategy\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"addStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"addressToMemberInfo\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"stakedAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isRegistered\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo\",\"outputs\":[{\"internalType\":\"contract FAllo\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloneNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"communityName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"covenantIpfsHash\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_token\",\"type\":\"address\"},{\"components\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxRatio\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"weight\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"decay\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"minThresholdPoints\",\"type\":\"uint256\"}],\"internalType\":\"struct CVParams\",\"name\":\"cvParams\",\"type\":\"tuple\"},{\"internalType\":\"enum ProposalType\",\"name\":\"proposalType\",\"type\":\"uint8\"},{\"internalType\":\"enum PointSystem\",\"name\":\"pointSystem\",\"type\":\"uint8\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"maxAmount\",\"type\":\"uint256\"}],\"internalType\":\"struct PointSystemConfig\",\"name\":\"pointConfig\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"contract IArbitrator\",\"name\":\"arbitrator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"tribunalSafe\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"submitterCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"challengerCollateralAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRuling\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"defaultRulingTimeout\",\"type\":\"uint256\"}],\"internalType\":\"struct ArbitrableConfig\",\"name\":\"arbitrableConfig\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"registryCommunity\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"}],\"internalType\":\"struct CVStrategyInitializeParamsV0_0\",\"name\":\"_params\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"}],\"name\":\"createPool\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"deactivateMemberInStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountUnstaked\",\"type\":\"uint256\"}],\"name\":\"decreasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"enabledStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isEnabled\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"feeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardenToken\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getBasisStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"getMemberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"getMemberStakedAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"}],\"name\":\"getRoleAdmin\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getStakeAmountWithFees\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"grantRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"hasRole\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_amountStaked\",\"type\":\"uint256\"}],\"name\":\"increasePower\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isCouncilMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isKickEnabled\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMember\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"_isMember\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_transferAddress\",\"type\":\"address\"}],\"name\":\"kickMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"memberActivatedInStrategies\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isActivated\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"}],\"name\":\"memberPowerInStrategy\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"power\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pendingCouncilSafe\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profileId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registerStakeAmount\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract IRegistry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryFactory\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"removeStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"poolId\",\"type\":\"uint256\"}],\"name\":\"removeStrategyByPoolId\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"setBasisStakedAmount\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_newCommunityFee\",\"type\":\"uint256\"}],\"name\":\"setCommunityFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address payable\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"setCouncilSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stakeAndRegisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"member\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"strategiesByMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"strategiesAddresses\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unregisterMember\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryCommunityV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"RoleAdminChanged(bytes32,bytes32,bytes32)\":{\"details\":\"Emitted when `newAdminRole` is set as ``role``'s admin role, replacing `previousAdminRole` `DEFAULT_ADMIN_ROLE` is the starting admin for all roles, despite {RoleAdminChanged} not being emitted signaling this. _Available since v3.1._\"},\"RoleGranted(bytes32,address,address)\":{\"details\":\"Emitted when `account` is granted `role`. `sender` is the account that originated the contract call, an admin role bearer except when using {AccessControl-_setupRole}.\"},\"RoleRevoked(bytes32,address,address)\":{\"details\":\"Emitted when `account` is revoked `role`. `sender` is the account that originated the contract call: - if using `revokeRole`, it is the admin role bearer - if using `renounceRole`, it is the role bearer (i.e. `account`)\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"getRoleAdmin(bytes32)\":{\"details\":\"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.\"},\"grantRole(bytes32,address)\":{\"details\":\"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event.\"},\"hasRole(bytes32,address)\":{\"details\":\"Returns `true` if `account` has been granted `role`.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"renounceRole(bytes32,address)\":{\"details\":\"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event.\"},\"revokeRole(bytes32,address)\":{\"details\":\"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event.\"},\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"COUNCIL_MEMBER()\":{\"notice\":\"Role to council safe members\"},\"MAX_FEE()\":{\"notice\":\"The maximum fee that can be charged to the community\"},\"NATIVE()\":{\"notice\":\"The native address to represent native token eg: ETH in mainnet\"},\"PRECISION_SCALE()\":{\"notice\":\"The precision scale used in the contract to avoid loss of precision\"},\"addressToMemberInfo(address)\":{\"notice\":\"Member information as the staked amount and if is registered in the community\"},\"allo()\":{\"notice\":\"The Allo contract address\"},\"cloneNonce()\":{\"notice\":\"The nonce used to create new strategy clones\"},\"collateralVaultTemplate()\":{\"notice\":\"The address of the collateral vault template\"},\"communityFee()\":{\"notice\":\"The fee charged to the community for each registration\"},\"communityName()\":{\"notice\":\"The community name\"},\"councilSafe()\":{\"notice\":\"The council safe contract address\"},\"covenantIpfsHash()\":{\"notice\":\"The covenant IPFS hash of community\"},\"enabledStrategies(address)\":{\"notice\":\"List of enabled/disabled strategies\"},\"feeReceiver()\":{\"notice\":\"The address that receives the community fee\"},\"gardenToken()\":{\"notice\":\"The token used to stake in the community\"},\"isKickEnabled()\":{\"notice\":\"Enable or disable the kick feature\"},\"memberActivatedInStrategies(address,address)\":{\"notice\":\"Mapping to check if a member is activated in a strategy\"},\"memberPowerInStrategy(address,address)\":{\"notice\":\"Power points for each member in each strategy\"},\"pendingCouncilSafe()\":{\"notice\":\"The address of the pending council safe owner\"},\"profileId()\":{\"notice\":\"The profileId of the community in the Allo Registry\"},\"registerStakeAmount()\":{\"notice\":\"The amount of tokens required to register a member\"},\"registry()\":{\"notice\":\"The Registry Allo contract\"},\"registryFactory()\":{\"notice\":\"The address of the registry factory\"},\"strategiesByMember(address,uint256)\":{\"notice\":\"List of strategies for each member are activated\"},\"strategyTemplate()\":{\"notice\":\"The address of the strategy template\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":\"RegistryCommunityV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"uint256","name":"_decreaseAmount","type":"uint256"},{"internalType":"uint256","name":"_currentPower","type":"uint256"}],"type":"error","name":"CantDecreaseMoreThanPower"},{"inputs":[],"type":"error","name":"DecreaseUnderMinimum"},{"inputs":[],"type":"error","name":"KickNotEnabled"},{"inputs":[],"type":"error","name":"NewFeeGreaterThanMax"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"inputs":[],"type":"error","name":"RegistryCannotBeZero"},{"inputs":[],"type":"error","name":"SenderNotNewOwner"},{"inputs":[],"type":"error","name":"SenderNotStrategy"},{"inputs":[],"type":"error","name":"StrategyDisabled"},{"inputs":[],"type":"error","name":"StrategyExists"},{"inputs":[],"type":"error","name":"UserAlreadyActivated"},{"inputs":[],"type":"error","name":"UserAlreadyDeactivated"},{"inputs":[],"type":"error","name":"UserAlreadyRegistered"},{"inputs":[],"type":"error","name":"UserNotGardenOwner"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"type":"error","name":"UserNotInCouncil"},{"inputs":[],"type":"error","name":"UserNotInRegistry"},{"inputs":[],"type":"error","name":"ValueCannotBeZero"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"_allo","type":"address","indexed":false}],"type":"event","name":"AlloSet","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountSet","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256","indexed":false}],"type":"event","name":"CommunityFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_safeOwner","type":"address","indexed":false},{"internalType":"address","name":"_newSafeOwner","type":"address","indexed":false}],"type":"event","name":"CouncilSafeChangeStarted","anonymous":false},{"inputs":[{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"CouncilSafeSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"uint256","name":"_pointsToIncrease","type":"uint256","indexed":false}],"type":"event","name":"MemberActivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"MemberDeactivatedStrategy","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"address","name":"_transferAddress","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberKicked","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_unstakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerDecreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_stakedAmount","type":"uint256","indexed":false}],"type":"event","name":"MemberPowerIncreased","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountStaked","type":"uint256","indexed":false}],"type":"event","name":"MemberRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"_member","type":"address","indexed":false},{"internalType":"uint256","name":"_amountReturned","type":"uint256","indexed":false}],"type":"event","name":"MemberUnregistered","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_poolId","type":"uint256","indexed":false},{"internalType":"address","name":"_strategy","type":"address","indexed":false},{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"address","name":"_token","type":"address","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"PoolCreated","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"_profileId","type":"bytes32","indexed":false},{"internalType":"string","name":"_communityName","type":"string","indexed":false},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}],"indexed":false}],"type":"event","name":"RegistryInitialized","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"previousAdminRole","type":"bytes32","indexed":true},{"internalType":"bytes32","name":"newAdminRole","type":"bytes32","indexed":true}],"type":"event","name":"RoleAdminChanged","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleGranted","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32","indexed":true},{"internalType":"address","name":"account","type":"address","indexed":true},{"internalType":"address","name":"sender","type":"address","indexed":true}],"type":"event","name":"RoleRevoked","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_MEMBER","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MAX_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"NATIVE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"PRECISION_SCALE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"acceptCouncilSafe"},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateMemberInStrategy"},{"inputs":[{"internalType":"address","name":"_newStrategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addStrategyByPoolId"},{"inputs":[{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"addressToMemberInfo","outputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"stakedAmount","type":"uint256"},{"internalType":"bool","name":"isRegistered","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"allo","outputs":[{"internalType":"contract FAllo","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"cloneNonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"communityName","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"covenantIpfsHash","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_1","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"address","name":"_token","type":"address"},{"internalType":"struct CVStrategyInitializeParamsV0_0","name":"_params","type":"tuple","components":[{"internalType":"struct CVParams","name":"cvParams","type":"tuple","components":[{"internalType":"uint256","name":"maxRatio","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"decay","type":"uint256"},{"internalType":"uint256","name":"minThresholdPoints","type":"uint256"}]},{"internalType":"enum ProposalType","name":"proposalType","type":"uint8"},{"internalType":"enum PointSystem","name":"pointSystem","type":"uint8"},{"internalType":"struct PointSystemConfig","name":"pointConfig","type":"tuple","components":[{"internalType":"uint256","name":"maxAmount","type":"uint256"}]},{"internalType":"struct ArbitrableConfig","name":"arbitrableConfig","type":"tuple","components":[{"internalType":"contract IArbitrator","name":"arbitrator","type":"address"},{"internalType":"address","name":"tribunalSafe","type":"address"},{"internalType":"uint256","name":"submitterCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"challengerCollateralAmount","type":"uint256"},{"internalType":"uint256","name":"defaultRuling","type":"uint256"},{"internalType":"uint256","name":"defaultRulingTimeout","type":"uint256"}]},{"internalType":"address","name":"registryCommunity","type":"address"},{"internalType":"address","name":"sybilScorer","type":"address"}]},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createPool","outputs":[{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"strategy","type":"address"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"deactivateMemberInStrategy"},{"inputs":[{"internalType":"uint256","name":"_amountUnstaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreasePower"},{"inputs":[{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"enabledStrategies","outputs":[{"internalType":"bool","name":"isEnabled","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardenToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getBasisStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberPowerInStrategy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"getMemberStakedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getStakeAmountWithFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"grantRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"_amountStaked","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increasePower"},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isCouncilMember","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"isKickEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMember","outputs":[{"internalType":"bool","name":"_isMember","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_member","type":"address"},{"internalType":"address","name":"_transferAddress","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"kickMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"address","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"memberActivatedInStrategies","outputs":[{"internalType":"bool","name":"isActivated","type":"bool"}]},{"inputs":[{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"member","type":"address"}],"stateMutability":"view","type":"function","name":"memberPowerInStrategy","outputs":[{"internalType":"uint256","name":"power","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"pendingCouncilSafe","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profileId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registerStakeAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract IRegistry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryFactory","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"uint256","name":"poolId","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategyByPoolId"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"renounceRole"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"revokeRole"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setBasisStakedAmount"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"uint256","name":"_newCommunityFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityFee"},{"inputs":[{"internalType":"address payable","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCouncilSafe"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"stakeAndRegisterMember"},{"inputs":[{"internalType":"address","name":"member","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"strategiesByMember","outputs":[{"internalType":"address","name":"strategiesAddresses","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"unregisterMember"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"getRoleAdmin(bytes32)":{"details":"Returns the admin role that controls `role`. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}."},"grantRole(bytes32,address)":{"details":"Grants `role` to `account`. If `account` had not been already granted `role`, emits a {RoleGranted} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleGranted} event."},"hasRole(bytes32,address)":{"details":"Returns `true` if `account` has been granted `role`."},"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"renounceRole(bytes32,address)":{"details":"Revokes `role` from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked `role`, emits a {RoleRevoked} event. Requirements: - the caller must be `account`. May emit a {RoleRevoked} event."},"revokeRole(bytes32,address)":{"details":"Revokes `role` from `account`. If `account` had been granted `role`, emits a {RoleRevoked} event. Requirements: - the caller must have ``role``'s admin role. May emit a {RoleRevoked} event."},"supportsInterface(bytes4)":{"details":"See {IERC165-supportsInterface}."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{"COUNCIL_MEMBER()":{"notice":"Role to council safe members"},"MAX_FEE()":{"notice":"The maximum fee that can be charged to the community"},"NATIVE()":{"notice":"The native address to represent native token eg: ETH in mainnet"},"PRECISION_SCALE()":{"notice":"The precision scale used in the contract to avoid loss of precision"},"addressToMemberInfo(address)":{"notice":"Member information as the staked amount and if is registered in the community"},"allo()":{"notice":"The Allo contract address"},"cloneNonce()":{"notice":"The nonce used to create new strategy clones"},"collateralVaultTemplate()":{"notice":"The address of the collateral vault template"},"communityFee()":{"notice":"The fee charged to the community for each registration"},"communityName()":{"notice":"The community name"},"councilSafe()":{"notice":"The council safe contract address"},"covenantIpfsHash()":{"notice":"The covenant IPFS hash of community"},"enabledStrategies(address)":{"notice":"List of enabled/disabled strategies"},"feeReceiver()":{"notice":"The address that receives the community fee"},"gardenToken()":{"notice":"The token used to stake in the community"},"isKickEnabled()":{"notice":"Enable or disable the kick feature"},"memberActivatedInStrategies(address,address)":{"notice":"Mapping to check if a member is activated in a strategy"},"memberPowerInStrategy(address,address)":{"notice":"Power points for each member in each strategy"},"pendingCouncilSafe()":{"notice":"The address of the pending council safe owner"},"profileId()":{"notice":"The profileId of the community in the Allo Registry"},"registerStakeAmount()":{"notice":"The amount of tokens required to register a member"},"registry()":{"notice":"The Registry Allo contract"},"registryFactory()":{"notice":"The address of the registry factory"},"strategiesByMember(address,uint256)":{"notice":"List of strategies for each member are activated"},"strategyTemplate()":{"notice":"The address of the strategy template"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":"RegistryCommunityV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":53167,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":53236,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53969,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":52389,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)"},{"astId":52696,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":70459,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":70462,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":70465,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":70468,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":70471,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":70474,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":70477,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":70480,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":70483,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":70486,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":70490,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":70494,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)56528"},{"astId":70498,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)75844"},{"astId":70502,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)75577"},{"astId":70505,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":70508,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":70513,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":70520,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberPowerInStrategy","offset":0,"slot":"267","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":70526,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)70271_storage)"},{"astId":70532,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"strategiesByMember","offset":0,"slot":"269","type":"t_mapping(t_address,t_array(t_address)dyn_storage)"},{"astId":70539,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"memberActivatedInStrategies","offset":0,"slot":"270","type":"t_mapping(t_address,t_mapping(t_address,t_bool))"},{"astId":70543,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":72173,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"__gap","offset":0,"slot":"272","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_address_payable":{"encoding":"inplace","label":"address payable","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_contract(FAllo)75577":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)56528":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)75844":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_mapping(t_address,t_array(t_address)dyn_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address[])","numberOfBytes":"32","value":"t_array(t_address)dyn_storage"},"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_bool))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(address => bool))","numberOfBytes":"32","value":"t_mapping(t_address,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(Member)70271_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)70271_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_mapping(t_bytes32,t_struct(RoleData)52384_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)52384_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)70271_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":70266,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":70268,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":70270,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)52384_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":52381,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":52383,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol:RegistryCommunityV0_1","label":"adminRole","offset":0,"slot":"1","type":"t_bytes32"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","id":72404,"exportedSymbols":{"ArbitrableConfig":[65628],"CVStrategyInitializeParamsV0_1":[69242],"CVStrategyV0_0":[69194],"CVStrategyV0_1":[69756],"CreateProposal":[65557],"ERC1967Proxy":[55021],"Metadata":[3098],"PointSystemConfig":[65614],"ProposalType":[65540],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403]},"nodeType":"SourceUnit","src":"42:2528:105","nodes":[{"id":72176,"nodeType":"PragmaDirective","src":"42:24:105","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72181,"nodeType":"ImportDirective","src":"68:147:105","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"./RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72177,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72178,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"108:8:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72179,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"122:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72180,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"140:37:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72187,"nodeType":"ImportDirective","src":"216:153:105","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":69195,"symbolAliases":[{"foreign":{"id":72182,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"229:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72183,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65614,"src":"249:17:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72184,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65628,"src":"272:16:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72185,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65540,"src":"294:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72186,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65557,"src":"312:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72190,"nodeType":"ImportDirective","src":"371:98:105","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol","file":"@src/CVStrategy/CVStrategyV0_1.sol","nameLocation":"-1:-1:-1","scope":72404,"sourceUnit":69757,"symbolAliases":[{"foreign":{"id":72188,"name":"CVStrategyV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69756,"src":"379:14:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72189,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69242,"src":"395:30:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72403,"nodeType":"ContractDefinition","src":"522:2047:105","nodes":[{"id":72330,"nodeType":"FunctionDefinition","src":"584:1317:105","nodes":[],"body":{"id":72329,"nodeType":"Block","src":"780:1121:105","nodes":[],"statements":[{"assignments":[72209],"declarations":[{"constant":false,"id":72209,"mutability":"mutable","name":"strategyProxy","nameLocation":"798:13:105","nodeType":"VariableDeclaration","scope":72329,"src":"790:21:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72208,"name":"address","nodeType":"ElementaryTypeName","src":"790:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72234,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72217,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70483,"src":"877:16:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72216,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"869:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72215,"name":"address","nodeType":"ElementaryTypeName","src":"869:7:105","typeDescriptions":{}}},"id":72218,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"869:25:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72221,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69194,"src":"935:14:105","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69194_$","typeString":"type(contract CVStrategyV0_0)"}},"id":72222,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"950:4:105","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66002,"src":"935:19:105","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":72223,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"955:8:105","memberName":"selector","nodeType":"MemberAccess","src":"935:28:105","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":72226,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"973:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}],"id":72225,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"965:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72224,"name":"address","nodeType":"ElementaryTypeName","src":"965:7:105","typeDescriptions":{}}},"id":72227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"965:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72228,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70480,"src":"980:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72229,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"1005:5:105","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1005:7:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72219,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"912:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72220,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"916:18:105","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"912:22:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"912:101:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"835:16:105","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72213,"nodeType":"UserDefinedTypeName","pathNode":{"id":72212,"name":"ERC1967Proxy","nameLocations":["839:12:105"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"839:12:105"},"referencedDeclaration":55021,"src":"839:12:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"835:192:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72211,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"814:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72210,"name":"address","nodeType":"ElementaryTypeName","src":"814:7:105","typeDescriptions":{}}},"id":72233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"814:223:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"790:247:105"},{"expression":{"id":72244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":72235,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1048:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72236,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72206,"src":"1056:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":72237,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"1047:18:105","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72239,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72209,"src":"1079:13:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72240,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72195,"src":"1094:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72241,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1102:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},{"id":72242,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72201,"src":"1111:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72238,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[72330,72402,71009,71081],"referencedDeclaration":72402,"src":"1068:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_1 memory,struct Metadata memory) returns (uint256,address)"}},"id":72243,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1068:53:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"src":"1047:74:105","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72245,"nodeType":"ExpressionStatement","src":"1047:74:105"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72255,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":72248,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1144:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72249,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1152:11:105","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":69238,"src":"1144:19:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72247,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1136:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72246,"name":"address","nodeType":"ElementaryTypeName","src":"1136:7:105","typeDescriptions":{}}},"id":72250,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:28:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72253,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1176:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72252,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1168:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72251,"name":"address","nodeType":"ElementaryTypeName","src":"1168:7:105","typeDescriptions":{}}},"id":72254,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1168:10:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1136:42:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72300,"nodeType":"IfStatement","src":"1132:454:105","trueBody":{"id":72299,"nodeType":"Block","src":"1180:406:105","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":72256,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1198:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72257,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1206:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1198:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72258,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1223:6:105","memberName":"length","nodeType":"MemberAccess","src":"1198:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"31303030","id":72259,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1232:4:105","typeDescriptions":{"typeIdentifier":"t_rational_1000_by_1","typeString":"int_const 1000"},"value":"1000"},"src":"1198:38:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72266,"nodeType":"IfStatement","src":"1194:134:105","trueBody":{"id":72265,"nodeType":"Block","src":"1238:90:105","statements":[{"expression":{"arguments":[{"hexValue":"546f6f206d616e7920696e697469616c20616c6c6f776c697374206d656d626572732c206d61782069732031303030","id":72262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1263:49:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""},"value":"Too many initial allowlist members, max is 1000"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_54b5b495f7a4396dff1eba508663bf9c4bcd13232e33466a93c0b6f443ee89c3","typeString":"literal_string \"Too many initial allowlist members, max is 1000\""}],"id":72261,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"1256:6:105","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":72263,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1256:57:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72264,"nodeType":"ExpressionStatement","src":"1256:57:105"}]}},{"assignments":[72268],"declarations":[{"constant":false,"id":72268,"mutability":"mutable","name":"allowlistRole","nameLocation":"1349:13:105","nodeType":"VariableDeclaration","scope":72299,"src":"1341:21:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":72267,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1341:7:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":72276,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72272,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1392:11:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72273,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1405:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72270,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1375:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72271,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1379:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1375:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72274,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1375:37:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72269,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1365:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:48:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1341:72:105"},{"body":{"id":72297,"nodeType":"Block","src":"1489:87:105","statements":[{"expression":{"arguments":[{"id":72290,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72268,"src":"1518:13:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"expression":{"id":72291,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1533:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72292,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1541:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1533:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72294,"indexExpression":{"id":72293,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1558:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1533:27:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72289,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1507:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72295,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1507:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72296,"nodeType":"ExpressionStatement","src":"1507:54:105"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72281,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1447:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"expression":{"id":72282,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72198,"src":"1451:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72283,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1459:16:105","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":69241,"src":"1451:24:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72284,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1476:6:105","memberName":"length","nodeType":"MemberAccess","src":"1451:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1447:35:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72298,"initializationExpression":{"assignments":[72278],"declarations":[{"constant":false,"id":72278,"mutability":"mutable","name":"i","nameLocation":"1440:1:105","nodeType":"VariableDeclaration","scope":72298,"src":"1432:9:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72277,"name":"uint256","nodeType":"ElementaryTypeName","src":"1432:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72280,"initialValue":{"hexValue":"30","id":72279,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1444:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"1432:13:105"},"loopExpression":{"expression":{"id":72287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"1484:3:105","subExpression":{"id":72286,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72278,"src":"1484:1:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72288,"nodeType":"ExpressionStatement","src":"1484:3:105"},"nodeType":"ForStatement","src":"1427:149:105"}]}},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72305,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1721:11:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72306,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1734:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72303,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1704:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72304,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1708:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1704:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72307,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1704:37:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72302,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1694:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72308,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1694:48:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72312,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1771:17:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72313,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1790:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72310,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1754:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72311,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1758:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1754:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72314,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1754:43:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72309,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1744:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1744:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":72301,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52628,"src":"1667:13:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":72316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1667:141:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72317,"nodeType":"ExpressionStatement","src":"1667:141:105"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1856:17:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72323,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72204,"src":"1875:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72320,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1839:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72321,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1843:12:105","memberName":"encodePacked","nodeType":"MemberAccess","src":"1839:16:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1839:43:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72319,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"1829:9:105","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1829:54:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72326,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72206,"src":"1885:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72318,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52660,"src":"1818:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1818:76:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72328,"nodeType":"ExpressionStatement","src":"1818:76:105"}]},"functionSelector":"579eb7e5","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"593:10:105","parameters":{"id":72202,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72195,"mutability":"mutable","name":"_token","nameLocation":"612:6:105","nodeType":"VariableDeclaration","scope":72330,"src":"604:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72194,"name":"address","nodeType":"ElementaryTypeName","src":"604:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72198,"mutability":"mutable","name":"_params","nameLocation":"658:7:105","nodeType":"VariableDeclaration","scope":72330,"src":"620:45:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72197,"nodeType":"UserDefinedTypeName","pathNode":{"id":72196,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["620:30:105"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"620:30:105"},"referencedDeclaration":69242,"src":"620:30:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72201,"mutability":"mutable","name":"_metadata","nameLocation":"683:9:105","nodeType":"VariableDeclaration","scope":72330,"src":"667:25:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72200,"nodeType":"UserDefinedTypeName","pathNode":{"id":72199,"name":"Metadata","nameLocations":["667:8:105"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"667:8:105"},"referencedDeclaration":3098,"src":"667:8:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"603:90:105"},"returnParameters":{"id":72207,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72204,"mutability":"mutable","name":"poolId","nameLocation":"750:6:105","nodeType":"VariableDeclaration","scope":72330,"src":"742:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72203,"name":"uint256","nodeType":"ElementaryTypeName","src":"742:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72206,"mutability":"mutable","name":"strategy","nameLocation":"766:8:105","nodeType":"VariableDeclaration","scope":72330,"src":"758:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72205,"name":"address","nodeType":"ElementaryTypeName","src":"758:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"741:34:105"},"scope":72403,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72402,"nodeType":"FunctionDefinition","src":"1907:660:105","nodes":[],"body":{"id":72401,"nodeType":"Block","src":"2132:435:105","nodes":[],"statements":[{"assignments":[72348],"declarations":[{"constant":false,"id":72348,"mutability":"mutable","name":"token","nameLocation":"2150:5:105","nodeType":"VariableDeclaration","scope":72401,"src":"2142:13:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72347,"name":"address","nodeType":"ElementaryTypeName","src":"2142:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72350,"initialValue":{"id":72349,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70444,"src":"2158:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2142:22:105"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72356,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72351,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2178:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":72354,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2196:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72353,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2188:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72352,"name":"address","nodeType":"ElementaryTypeName","src":"2188:7:105","typeDescriptions":{}}},"id":72355,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2188:10:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2178:20:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72362,"nodeType":"IfStatement","src":"2174:65:105","trueBody":{"id":72361,"nodeType":"Block","src":"2200:39:105","statements":[{"expression":{"id":72359,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72357,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72348,"src":"2214:5:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72358,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2222:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2214:14:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72360,"nodeType":"ExpressionStatement","src":"2214:14:105"}]}},{"expression":{"id":72365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72363,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2248:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72364,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72332,"src":"2259:9:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2248:20:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72366,"nodeType":"ExpressionStatement","src":"2248:20:105"},{"assignments":[72371],"declarations":[{"constant":false,"id":72371,"mutability":"mutable","name":"_pool_managers","nameLocation":"2296:14:105","nodeType":"VariableDeclaration","scope":72401,"src":"2279:31:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72369,"name":"address","nodeType":"ElementaryTypeName","src":"2279:7:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72370,"nodeType":"ArrayTypeName","src":"2279:9:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72373,"initialValue":{"id":72372,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70543,"src":"2313:14:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2279:48:105"},{"expression":{"id":72388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72374,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72343,"src":"2338:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72377,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70468,"src":"2394:9:105","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72378,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2405:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72381,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72337,"src":"2426:7:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":72379,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2415:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72380,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2419:6:105","memberName":"encode","nodeType":"MemberAccess","src":"2415:10:105","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72382,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2415:19:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":72383,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72348,"src":"2436:5:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":72384,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2443:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":72385,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72340,"src":"2446:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":72386,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72371,"src":"2457:14:105","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":72375,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70502,"src":"2347:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$75577","typeString":"contract FAllo"}},"id":72376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2352:28:105","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":75563,"src":"2347:33:105","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$3098_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_uint256_$","typeString":"function (bytes32,address,bytes memory,address,uint256,struct Metadata memory,address[] memory) payable external returns (uint256)"}},"id":72387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2347:134:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2338:143:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72389,"nodeType":"ExpressionStatement","src":"2338:143:105"},{"eventCall":{"arguments":[{"id":72391,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72343,"src":"2509:6:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72392,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72345,"src":"2517:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72395,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2535:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72394,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2527:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72393,"name":"address","nodeType":"ElementaryTypeName","src":"2527:7:105","typeDescriptions":{}}},"id":72396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2527:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72397,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72334,"src":"2542:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72398,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72340,"src":"2550:9:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72390,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70380,"src":"2497:11:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$3098_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":72399,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2497:63:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72400,"nodeType":"EmitStatement","src":"2492:68:105"}]},"functionSelector":"8659ffdd","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"1916:10:105","parameters":{"id":72341,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72332,"mutability":"mutable","name":"_strategy","nameLocation":"1944:9:105","nodeType":"VariableDeclaration","scope":72402,"src":"1936:17:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72331,"name":"address","nodeType":"ElementaryTypeName","src":"1936:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72334,"mutability":"mutable","name":"_token","nameLocation":"1971:6:105","nodeType":"VariableDeclaration","scope":72402,"src":"1963:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72333,"name":"address","nodeType":"ElementaryTypeName","src":"1963:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72337,"mutability":"mutable","name":"_params","nameLocation":"2025:7:105","nodeType":"VariableDeclaration","scope":72402,"src":"1987:45:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72336,"nodeType":"UserDefinedTypeName","pathNode":{"id":72335,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1987:30:105"],"nodeType":"IdentifierPath","referencedDeclaration":69242,"src":"1987:30:105"},"referencedDeclaration":69242,"src":"1987:30:105","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$69242_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72340,"mutability":"mutable","name":"_metadata","nameLocation":"2058:9:105","nodeType":"VariableDeclaration","scope":72402,"src":"2042:25:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72339,"nodeType":"UserDefinedTypeName","pathNode":{"id":72338,"name":"Metadata","nameLocations":["2042:8:105"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2042:8:105"},"referencedDeclaration":3098,"src":"2042:8:105","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"1926:147:105"},"returnParameters":{"id":72346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72343,"mutability":"mutable","name":"poolId","nameLocation":"2106:6:105","nodeType":"VariableDeclaration","scope":72402,"src":"2098:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72342,"name":"uint256","nodeType":"ElementaryTypeName","src":"2098:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72345,"mutability":"mutable","name":"strategy","nameLocation":"2122:8:105","nodeType":"VariableDeclaration","scope":72402,"src":"2114:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72344,"name":"address","nodeType":"ElementaryTypeName","src":"2114:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2097:34:105"},"scope":72403,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":72192,"name":"RegistryCommunityV0_0","nameLocations":["556:21:105"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"556:21:105"},"id":72193,"nodeType":"InheritanceSpecifier","src":"556:21:105"}],"canonicalName":"RegistryCommunityV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72191,"nodeType":"StructuredDocumentation","src":"471:51:105","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72403,72174,52697,53970,53982,52770,53237,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryCommunityV0_1","nameLocation":"531:21:105","scope":72404,"usedErrors":[70122,70382,70384,70388,70390,70392,70394,70396,70398,70400,70402,70404,70406,70408,70410,70412,70414,70416,70422]}],"license":"AGPL-3.0-only"},"id":105} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json b/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json index 35d5d6ed..ae32c391 100644 --- a/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json +++ b/pkg/contracts/out/RegistryFactoryDiamond.sol/RegistryFactoryDiamond.json @@ -1 +1 @@ -{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"diamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"initializeOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"event","name":"DiamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","indexed":false,"internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","indexed":false,"internalType":"address"},{"name":"_calldata","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotAddSelectorsToZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotRemoveFunctionThatDoesNotExist","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotRemoveImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionThatDoesNotExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotReplaceImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"DiamondAlreadyInitialized","inputs":[]},{"type":"error","name":"FunctionNotFound","inputs":[{"name":"_functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"IncorrectFacetCutAction","inputs":[{"name":"_action","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InitializationFunctionReverted","inputs":[{"name":"_initializationContractAddress","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"NoBytecodeAtAddress","inputs":[{"name":"_contractAddress","type":"address","internalType":"address"},{"name":"_message","type":"string","internalType":"string"}]},{"type":"error","name":"NoSelectorsProvidedForFacetForCut","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]},{"type":"error","name":"NotContractOwner","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_contractOwner","type":"address","internalType":"address"}]},{"type":"error","name":"RemoveFacetAddressMustBeZeroAddress","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50611287806100206000396000f3fe60806040526004361061007a5760003560e01c806302c1d0b1146101115780631f931c1c1461014757806352d1902d146101675780635c94e4d2146101a457806377122d56146101c45780638c5f36bb146101e4578063affed0e014610204578063b2bdfa7b1461021a578063b8bed9011461023a57610081565b3661008157005b600080356001600160e01b03191681526000805160206111be833981519152602081905260409091205481906001600160a01b0316806100eb576000356001600160e01b031916604051630a82dd7360e31b81526004016100e29190610bfa565b60405180910390fd5b3660008037600080366000845af43d6000803e80801561010a573d6000f35b3d6000fd5b005b34801561011d57600080fd5b50606854610131906001600160a01b031681565b60405161013e9190610c0f565b60405180910390f35b34801561015357600080fd5b5061010f610162366004610c87565b61025a565b34801561017357600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b60405190815260200161013e565b3480156101b057600080fd5b50606954610131906001600160a01b031681565b3480156101d057600080fd5b50606a54610131906001600160a01b031681565b3480156101f057600080fd5b5061010f6101ff366004610d38565b6102b3565b34801561021057600080fd5b5061019660655481565b34801561022657600080fd5b50603354610131906001600160a01b031681565b34801561024657600080fd5b50606754610131906001600160a01b031681565b6102626102ed565b6102ac61026f8587610deb565b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061034692505050565b5050505050565b6102bb6104ed565b156102d957604051639289b96160e01b815260040160405180910390fd5b6102e28161050a565b6102ea61056a565b50565b6102f5610593565b600301546001600160a01b031633146103445733610311610593565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100e2565b565b60005b83518110156104a257600084828151811061036657610366610f2e565b6020026020010151604001519050600085838151811061038857610388610f2e565b602002602001015160000151905081516000036103ba578060405163e767f91f60e01b81526004016100e29190610c0f565b60008684815181106103ce576103ce610f2e565b6020026020010151602001519050600060028111156103ef576103ef610f44565b81600281111561040157610401610f44565b036104155761041082846105a5565b61048c565b600181600281111561042957610429610f44565b0361043857610410828461073c565b600281600281111561044c5761044c610f44565b0361045b5761041082846108ae565b80600281111561046d5761046d610f44565b604051633ff4d20f60e11b815260ff90911660048201526024016100e2565b505050808061049a90610f70565b915050610349565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb6738383836040516104d693929190610fd9565b60405180910390a16104e88282610b0c565b505050565b60006104f7610593565b60030154600160a01b900460ff16919050565b6000610514610593565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b6001610574610593565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b6000805160206111be83398151915290565b6001600160a01b0382166105ce57806040516302b8da0760e21b81526004016100e291906110d9565b60006105d8610593565b9050600081600101805490509050610608846040518060600160405280602481526020016111de60249139610bd2565b60005b83518110156102ac57600084828151811061062857610628610f2e565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b0316801561067b578160405163ebbf5d0760e01b81526004016100e29190610bfa565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff90930219169190911790558361072481611127565b9450505050808061073490610f70565b91505061060b565b6000610746610593565b90506001600160a01b038316610771578160405163cd98a96f60e01b81526004016100e291906110d9565b6107938360405180606001604052806028815260200161122a60289139610bd2565b60005b82518110156108a85760008382815181106107b3576107b3610f2e565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b03163081036108075781604051632901806d60e11b81526004016100e29190610bfa565b856001600160a01b0316816001600160a01b03160361083b5781604051631ac6ce8d60e11b81526004016100e29190610bfa565b6001600160a01b0381166108645781604051637479f93960e01b81526004016100e29190610bfa565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108a081610f70565b915050610796565b50505050565b60006108b8610593565b60018101549091506001600160a01b038416156108ea578360405163d091bc8160e01b81526004016100e29190610c0f565b60005b83518110156102ac57600084828151811061090a5761090a610f2e565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff16938201939093529092509061097b5781604051637a08a22d60e01b81526004016100e29190610bfa565b8051306001600160a01b03909116036109a95781604051630df5fd6160e31b81526004016100e29190610bfa565b836109b381611148565b94505083816020015161ffff1614610a915760008560010185815481106109dc576109dc610f2e565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a1f57610a1f610f2e565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aa457610aa461115f565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b0481610f70565b9150506108ed565b6001600160a01b038216610b1e575050565b610b408260405180606001604052806028815260200161120260289139610bd2565b600080836001600160a01b031683604051610b5b9190611175565b600060405180830381855af49150503d8060008114610b96576040519150601f19603f3d011682016040523d82523d6000602084013e610b9b565b606091505b5091509150816108a857805115610bb55780518082602001fd5b838360405163192105d760e01b81526004016100e2929190611191565b813b60008190036104e857828260405163919834b960e01b81526004016100e2929190611191565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610c3a57600080fd5b919050565b60008083601f840112610c5157600080fd5b5081356001600160401b03811115610c6857600080fd5b602083019150836020828501011115610c8057600080fd5b9250929050565b600080600080600060608688031215610c9f57600080fd5b85356001600160401b0380821115610cb657600080fd5b818801915088601f830112610cca57600080fd5b813581811115610cd957600080fd5b8960208260051b8501011115610cee57600080fd5b60208301975080965050610d0460208901610c23565b94506040880135915080821115610d1a57600080fd5b50610d2788828901610c3f565b969995985093965092949392505050565b600060208284031215610d4a57600080fd5b610d5382610c23565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610d9257610d92610d5a565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610dc057610dc0610d5a565b604052919050565b60006001600160401b03821115610de157610de1610d5a565b5060051b60200190565b6000610dfe610df984610dc8565b610d98565b83815260208082019190600586811b860136811115610e1c57600080fd5b865b81811015610f215780356001600160401b0380821115610e3e5760008081fd5b818a01915060608236031215610e545760008081fd5b610e5c610d70565b610e6583610c23565b81528683013560038110610e795760008081fd5b8188015260408381013583811115610e915760008081fd5b939093019236601f850112610ea857600092508283fd5b83359250610eb8610df984610dc8565b83815292871b84018801928881019036851115610ed55760008081fd5b948901945b84861015610f0a5785356001600160e01b031981168114610efb5760008081fd5b82529489019490890190610eda565b918301919091525088525050948301948301610e1e565b5092979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f8257610f82610f5a565b5060010190565b60005b83811015610fa4578181015183820152602001610f8c565b50506000910152565b60008151808452610fc5816020860160208601610f89565b601f01601f19169290920160200192915050565b60006060808301818452808751808352608092508286019150828160051b8701016020808b0160005b848110156110a957898403607f19018652815180516001600160a01b0316855283810151898601906003811061104857634e487b7160e01b600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b808310156110945783516001600160e01b031916825292860192600192909201919086019061106a565b50978501979550505090820190600101611002565b50506001600160a01b038a169088015286810360408801526110cb8189610fad565b9a9950505050505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561111b5783516001600160e01b031916835292840192918401916001016110f5565b50909695505050505050565b600061ffff80831681810361113e5761113e610f5a565b6001019392505050565b60008161115757611157610f5a565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251611187818460208701610f89565b9190910192915050565b6001600160a01b03831681526040602082018190526000906111b590830184610fad565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a264697066735822122023f46e62afc083e2ffdbc5542bf4d97526429215811a8140a833931931c907be64736f6c63430008130033","sourceMap":"255:1029:110:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361061007a5760003560e01c806302c1d0b1146101115780631f931c1c1461014757806352d1902d146101675780635c94e4d2146101a457806377122d56146101c45780638c5f36bb146101e4578063affed0e014610204578063b2bdfa7b1461021a578063b8bed9011461023a57610081565b3661008157005b600080356001600160e01b03191681526000805160206111be833981519152602081905260409091205481906001600160a01b0316806100eb576000356001600160e01b031916604051630a82dd7360e31b81526004016100e29190610bfa565b60405180910390fd5b3660008037600080366000845af43d6000803e80801561010a573d6000f35b3d6000fd5b005b34801561011d57600080fd5b50606854610131906001600160a01b031681565b60405161013e9190610c0f565b60405180910390f35b34801561015357600080fd5b5061010f610162366004610c87565b61025a565b34801561017357600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b60405190815260200161013e565b3480156101b057600080fd5b50606954610131906001600160a01b031681565b3480156101d057600080fd5b50606a54610131906001600160a01b031681565b3480156101f057600080fd5b5061010f6101ff366004610d38565b6102b3565b34801561021057600080fd5b5061019660655481565b34801561022657600080fd5b50603354610131906001600160a01b031681565b34801561024657600080fd5b50606754610131906001600160a01b031681565b6102626102ed565b6102ac61026f8587610deb565b8484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061034692505050565b5050505050565b6102bb6104ed565b156102d957604051639289b96160e01b815260040160405180910390fd5b6102e28161050a565b6102ea61056a565b50565b6102f5610593565b600301546001600160a01b031633146103445733610311610593565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100e2565b565b60005b83518110156104a257600084828151811061036657610366610f2e565b6020026020010151604001519050600085838151811061038857610388610f2e565b602002602001015160000151905081516000036103ba578060405163e767f91f60e01b81526004016100e29190610c0f565b60008684815181106103ce576103ce610f2e565b6020026020010151602001519050600060028111156103ef576103ef610f44565b81600281111561040157610401610f44565b036104155761041082846105a5565b61048c565b600181600281111561042957610429610f44565b0361043857610410828461073c565b600281600281111561044c5761044c610f44565b0361045b5761041082846108ae565b80600281111561046d5761046d610f44565b604051633ff4d20f60e11b815260ff90911660048201526024016100e2565b505050808061049a90610f70565b915050610349565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb6738383836040516104d693929190610fd9565b60405180910390a16104e88282610b0c565b505050565b60006104f7610593565b60030154600160a01b900460ff16919050565b6000610514610593565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b6001610574610593565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b6000805160206111be83398151915290565b6001600160a01b0382166105ce57806040516302b8da0760e21b81526004016100e291906110d9565b60006105d8610593565b9050600081600101805490509050610608846040518060600160405280602481526020016111de60249139610bd2565b60005b83518110156102ac57600084828151811061062857610628610f2e565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b0316801561067b578160405163ebbf5d0760e01b81526004016100e29190610bfa565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff90930219169190911790558361072481611127565b9450505050808061073490610f70565b91505061060b565b6000610746610593565b90506001600160a01b038316610771578160405163cd98a96f60e01b81526004016100e291906110d9565b6107938360405180606001604052806028815260200161122a60289139610bd2565b60005b82518110156108a85760008382815181106107b3576107b3610f2e565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b03163081036108075781604051632901806d60e11b81526004016100e29190610bfa565b856001600160a01b0316816001600160a01b03160361083b5781604051631ac6ce8d60e11b81526004016100e29190610bfa565b6001600160a01b0381166108645781604051637479f93960e01b81526004016100e29190610bfa565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108a081610f70565b915050610796565b50505050565b60006108b8610593565b60018101549091506001600160a01b038416156108ea578360405163d091bc8160e01b81526004016100e29190610c0f565b60005b83518110156102ac57600084828151811061090a5761090a610f2e565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff16938201939093529092509061097b5781604051637a08a22d60e01b81526004016100e29190610bfa565b8051306001600160a01b03909116036109a95781604051630df5fd6160e31b81526004016100e29190610bfa565b836109b381611148565b94505083816020015161ffff1614610a915760008560010185815481106109dc576109dc610f2e565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a1f57610a1f610f2e565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aa457610aa461115f565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b0481610f70565b9150506108ed565b6001600160a01b038216610b1e575050565b610b408260405180606001604052806028815260200161120260289139610bd2565b600080836001600160a01b031683604051610b5b9190611175565b600060405180830381855af49150503d8060008114610b96576040519150601f19603f3d011682016040523d82523d6000602084013e610b9b565b606091505b5091509150816108a857805115610bb55780518082602001fd5b838360405163192105d760e01b81526004016100e2929190611191565b813b60008190036104e857828260405163919834b960e01b81526004016100e2929190611191565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610c3a57600080fd5b919050565b60008083601f840112610c5157600080fd5b5081356001600160401b03811115610c6857600080fd5b602083019150836020828501011115610c8057600080fd5b9250929050565b600080600080600060608688031215610c9f57600080fd5b85356001600160401b0380821115610cb657600080fd5b818801915088601f830112610cca57600080fd5b813581811115610cd957600080fd5b8960208260051b8501011115610cee57600080fd5b60208301975080965050610d0460208901610c23565b94506040880135915080821115610d1a57600080fd5b50610d2788828901610c3f565b969995985093965092949392505050565b600060208284031215610d4a57600080fd5b610d5382610c23565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610d9257610d92610d5a565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610dc057610dc0610d5a565b604052919050565b60006001600160401b03821115610de157610de1610d5a565b5060051b60200190565b6000610dfe610df984610dc8565b610d98565b83815260208082019190600586811b860136811115610e1c57600080fd5b865b81811015610f215780356001600160401b0380821115610e3e5760008081fd5b818a01915060608236031215610e545760008081fd5b610e5c610d70565b610e6583610c23565b81528683013560038110610e795760008081fd5b8188015260408381013583811115610e915760008081fd5b939093019236601f850112610ea857600092508283fd5b83359250610eb8610df984610dc8565b83815292871b84018801928881019036851115610ed55760008081fd5b948901945b84861015610f0a5785356001600160e01b031981168114610efb5760008081fd5b82529489019490890190610eda565b918301919091525088525050948301948301610e1e565b5092979650505050505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201610f8257610f82610f5a565b5060010190565b60005b83811015610fa4578181015183820152602001610f8c565b50506000910152565b60008151808452610fc5816020860160208601610f89565b601f01601f19169290920160200192915050565b60006060808301818452808751808352608092508286019150828160051b8701016020808b0160005b848110156110a957898403607f19018652815180516001600160a01b0316855283810151898601906003811061104857634e487b7160e01b600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b808310156110945783516001600160e01b031916825292860192600192909201919086019061106a565b50978501979550505090820190600101611002565b50506001600160a01b038a169088015286810360408801526110cb8189610fad565b9a9950505050505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561111b5783516001600160e01b031916835292840192918401916001016110f5565b50909695505050505050565b600061ffff80831681810361113e5761113e610f5a565b6001019392505050565b60008161115757611157610f5a565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251611187818460208701610f89565b9190910192915050565b6001600160a01b03831681526040602082018190526000906111b590830184610fad565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a264697066735822122023f46e62afc083e2ffdbc5542bf4d97526429215811a8140a833931931c907be64736f6c63430008130033","sourceMap":"255:1029:110:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1319:36:109;1616:7;;-1:-1:-1;;;;;;1616:7:109;1581:43;;-1:-1:-1;;;;;;;;;;;1581:43:109;;;;;;;;:56;1585:45:119;;-1:-1:-1;;;;;1581:56:109;;1647:82;;1710:7;;-1:-1:-1;;;;;;1710:7:109;1693:25;;-1:-1:-1;;;1693:25:109;;;;;;;;:::i;:::-;;;;;;;;1647:82;1925:14;1922:1;1919;1906:34;2069:1;2066;2050:14;2047:1;2040:5;2033;2020:51;2141:16;2138:1;2135;2120:38;2245:6;2264:38;;;;2335:16;2332:1;2325:27;2264:38;2283:16;2280:1;2273:27;2238:116;;963:40:110;;;;;;;;;;-1:-1:-1;963:40:110;;;;-1:-1:-1;;;;;963:40:110;;;;;;;;;;:::i;:::-;;;;;;;;2982:234:109;;;;;;;;;;-1:-1:-1;2982:234:109;;;;;:::i;:::-;;:::i;2411:118::-;;;;;;;;;;-1:-1:-1;803:66:109;2411:118;;;2230:25:129;;;2218:2;2203:18;2411:118:109;2084:177:129;1009:31:110;;;;;;;;;;-1:-1:-1;1009:31:110;;;;-1:-1:-1;;;;;1009:31:110;;;1046:38;;;;;;;;;;-1:-1:-1;1046:38:110;;;;-1:-1:-1;;;;;1046:38:110;;;911:239:109;;;;;;;;;;-1:-1:-1;911:239:109;;;;;:::i;:::-;;:::i;842:20:110:-;;;;;;;;;;;;;;;;782:22;;;;;;;;;;-1:-1:-1;782:22:110;;;;-1:-1:-1;;;;;782:22:110;;;924:33;;;;;;;;;;-1:-1:-1;924:33:110;;;;-1:-1:-1;;;;;924:33:110;;;2982:234:109;3112:35;:33;:35::i;:::-;3157:52;;3179:11;;3157:52;:::i;:::-;3192:5;3199:9;;3157:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3157:21:109;;-1:-1:-1;;;3157:52:109:i;:::-;2982:234;;;;;:::o;911:239::-;975:26;:24;:26::i;:::-;971:91;;;1024:27;;-1:-1:-1;;;1024:27:109;;;;;;;;;;;971:91;1071:35;1099:6;1071:27;:35::i;:::-;1116:27;:25;:27::i;:::-;911:239;:::o;3144:206:119:-;3220:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;;;3220:30:119;3206:10;:44;3202:142;;3290:10;3302:16;:14;:16::i;:::-;:30;;;3273:60;;-1:-1:-1;;;;;;3273:60:119;;-1:-1:-1;;;;;6467:15:129;;;3273:60:119;;;6449:34:129;3302:30:119;;6499:18:129;;;6492:43;6384:18;;3273:60:119;6237:304:129;3202:142:119;3144:206::o;3494:1179::-;3620:18;3615:948;3653:11;:18;3640:10;:31;3615:948;;;3701:33;3737:11;3749:10;3737:23;;;;;;;;:::i;:::-;;;;;;;:41;;;3701:77;;3792:20;3815:11;3827:10;3815:23;;;;;;;;:::i;:::-;;;;;;;:36;;;3792:59;;3869:17;:24;3897:1;3869:29;3865:122;;3959:12;3925:47;;-1:-1:-1;;;3925:47:119;;;;;;;;:::i;3865:122::-;4000:33;4036:11;4048:10;4036:23;;;;;;;;:::i;:::-;;;;;;;:30;;;4000:66;;4094:27;4084:37;;;;;;;;:::i;:::-;:6;:37;;;;;;;;:::i;:::-;;4080:473;;4141:45;4154:12;4168:17;4141:12;:45::i;:::-;4080:473;;;4221:31;4211:6;:41;;;;;;;;:::i;:::-;;4207:346;;4272:49;4289:12;4303:17;4272:16;:49::i;4207:346::-;4356:30;4346:6;:40;;;;;;;;:::i;:::-;;4342:211;;4406:48;4422:12;4436:17;4406:15;:48::i;4342:211::-;4530:6;4524:13;;;;;;;;:::i;:::-;4500:38;;-1:-1:-1;;;4500:38:119;;6982:4:129;6970:17;;;4500:38:119;;;6952:36:129;6925:18;;4500:38:119;6810:184:129;4342:211:119;3687:876;;;3673:12;;;;;:::i;:::-;;;;3615:948;;;;4577:41;4588:11;4601:5;4608:9;4577:41;;;;;;;;:::i;:::-;;;;;;;;4628:38;4649:5;4656:9;4628:20;:38::i;:::-;3494:1179;;;:::o;2435:107::-;2483:4;2505:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;2505:30:119;;;;;;-1:-1:-1;2435:107:119:o;2732:264::-;2796:25;2824:16;:14;:16::i;:::-;2874;;;;;-1:-1:-1;;;;;2900:28:119;;;-1:-1:-1;;;;;;2900:28:119;;;;;;;2943:46;;2796:44;;-1:-1:-1;2874:16:119;;;;2943:46;;2850:21;;2943:46;2786:210;;2732:264;:::o;2547:89::-;2625:4;2592:16;:14;:16::i;:::-;:30;;:37;;;;;-1:-1:-1;;;2592:37:119;-1:-1:-1;;;;2592:37:119;;;;;;;;;2547:89::o;2232:197::-;-1:-1:-1;;;;;;;;;;;1585:45:119;2232:197::o;4679:1026::-;-1:-1:-1;;;;;4783:27:119;;4779:116;;4865:18;4833:51;;-1:-1:-1;;;4833:51:119;;;;;;;;:::i;4779:116::-;4904:25;4932:16;:14;:16::i;:::-;4904:44;;4958:20;4988:2;:12;;:19;;;;4958:50;;5018:77;5041:13;5018:77;;;;;;;;;;;;;;;;;:22;:77::i;:::-;5110:21;5105:594;5149:18;:25;5133:13;:41;5105:594;;;5207:15;5225:18;5244:13;5225:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;5298:44:119;;5272:23;5298:44;;;;;;;;;;;:57;5225:33;;-1:-1:-1;;;;;;5298:57:119;5373:29;;5369:128;;5473:8;5429:53;;-1:-1:-1;;;5429:53:119;;;;;;;;:::i;5369:128::-;5557:61;;;;;;;;-1:-1:-1;;;;;5557:61:119;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;5510:44:119;;-1:-1:-1;5510:44:119;;;;;;;;;:108;;;;;;;;;-1:-1:-1;;;5510:108:119;-1:-1:-1;;;;;;5510:108:119;;;;;;;;;;;;;;;;5632:12;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5510:108;5632:27;;;;;;;;;;;;;;;;5604:13;5673:15;5604:13;5673:15;:::i;:::-;;;;5193:506;;5176:15;;;;;:::i;:::-;;;;5105:594;;5711:1315;5815:25;5843:16;:14;:16::i;:::-;5815:44;-1:-1:-1;;;;;;5873:27:119;;5869:131;;5970:18;5923:66;;-1:-1:-1;;;5923:66:119;;;;;;;;:::i;5869:131::-;6009:81;6032:13;6009:81;;;;;;;;;;;;;;;;;:22;:81::i;:::-;6105:21;6100:920;6144:18;:25;6128:13;:41;6100:920;;;6202:15;6220:18;6239:13;6220:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;6293:44:119;;6267:23;6293:44;;;;;;;;;;;:57;6220:33;;-1:-1:-1;;;;;;6293:57:119;6502:4;6475:32;;6471:118;;6565:8;6534:40;;-1:-1:-1;;;6534:40:119;;;;;;;;:::i;6471:118::-;6625:13;-1:-1:-1;;;;;6606:32:119;:15;-1:-1:-1;;;;;6606:32:119;;6602:144;;6722:8;6665:66;;-1:-1:-1;;;6665:66:119;;;;;;;;:::i;6602:144::-;-1:-1:-1;;;;;6763:29:119;;6759:123;;6858:8;6819:48;;-1:-1:-1;;;6819:48:119;;;;;;;;:::i;6759:123::-;-1:-1:-1;;;;;;;6936:44:119;:34;:44;;;;;;;;;;:73;;-1:-1:-1;;;;;;6936:73:119;-1:-1:-1;;;;;6936:73:119;;;;;6171:15;;;;:::i;:::-;;;;6100:920;;;;5805:1221;5711:1315;;:::o;7032:1713::-;7135:25;7163:16;:14;:16::i;:::-;7213:12;;;:19;7135:44;;-1:-1:-1;;;;;;7246:27:119;;;7242:115;;7332:13;7296:50;;-1:-1:-1;;;7296:50:119;;;;;;;;:::i;7242:115::-;7371:21;7366:1373;7410:18;:25;7394:13;:41;7366:1373;;;7468:15;7486:18;7505:13;7486:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;7625:44:119;;7533:73;7625:44;;;;;;;;;;;7533:136;;;;;;;;;-1:-1:-1;;;;;7533:136:119;;;;;-1:-1:-1;;;7533:136:119;;;;;;;;;;;;7486:33;;-1:-1:-1;7533:136:119;7683:153;;7812:8;7775:46;;-1:-1:-1;;;7775:46:119;;;;;;;;:::i;7683:153::-;7947:47;;8006:4;-1:-1:-1;;;;;7947:64:119;;;;7943:149;;8068:8;8038:39;;-1:-1:-1;;;8038:39:119;;;;;;;;:::i;7943:149::-;8156:15;;;;:::i;:::-;;;;8244:13;8189:34;:51;;;:68;;;8185:411;;8277:19;8299:2;:12;;8312:13;8299:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;8277:49;;8412:12;8344:2;:12;;8357:34;:51;;;8344:65;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:80;;;:65;;;;;;:80;;;;;;;;;;;;;;;;;;;;;;8530:51;;;;-1:-1:-1;;;;;;8442:48:119;;;;;;;;;;;;;:139;;-1:-1:-1;;;;8442:139:119;-1:-1:-1;;;8442:139:119;;;;;;;;;;;;;;8185:411;8645:2;:12;;:18;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;8645:18:119;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8684:44:119;;;;;;;;;-1:-1:-1;8684:44:119;;;8677:51;;-1:-1:-1;;;;;;8677:51:119;;;7437:15;;;;:::i;:::-;;;;7366:1373;;8751:734;-1:-1:-1;;;;;8843:19:119;;8839:56;;8751:734;;:::o;8839:56::-;8904:73;8927:5;8904:73;;;;;;;;;;;;;;;;;:22;:73::i;:::-;8988:12;9002:18;9024:5;-1:-1:-1;;;;;9024:18:119;9043:9;9024:29;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8987:66;;;;9068:7;9063:416;;9095:12;;:16;9091:378;;9277:5;9271:12;9327:15;9319:5;9315:2;9311:14;9304:39;9091:378;9437:5;9444:9;9406:48;;-1:-1:-1;;;9406:48:119;;;;;;;;;:::i;9491:320::-;9664:22;;9595:20;9709:17;;;9705:100;;9769:9;9780:13;9749:45;;-1:-1:-1;;;9749:45:119;;;;;;;;;:::i;14:202:129:-;-1:-1:-1;;;;;;176:33:129;;;;158:52;;146:2;131:18;;14:202::o;330:203::-;-1:-1:-1;;;;;494:32:129;;;;476:51;;464:2;449:18;;330:203::o;538:173::-;606:20;;-1:-1:-1;;;;;655:31:129;;645:42;;635:70;;701:1;698;691:12;635:70;538:173;;;:::o;716:347::-;767:8;777:6;831:3;824:4;816:6;812:17;808:27;798:55;;849:1;846;839:12;798:55;-1:-1:-1;872:20:129;;-1:-1:-1;;;;;904:30:129;;901:50;;;947:1;944;937:12;901:50;984:4;976:6;972:17;960:29;;1036:3;1029:4;1020:6;1012;1008:19;1004:30;1001:39;998:59;;;1053:1;1050;1043:12;998:59;716:347;;;;;:::o;1068:1011::-;1212:6;1220;1228;1236;1244;1297:2;1285:9;1276:7;1272:23;1268:32;1265:52;;;1313:1;1310;1303:12;1265:52;1340:23;;-1:-1:-1;;;;;1412:14:129;;;1409:34;;;1439:1;1436;1429:12;1409:34;1477:6;1466:9;1462:22;1452:32;;1522:7;1515:4;1511:2;1507:13;1503:27;1493:55;;1544:1;1541;1534:12;1493:55;1584:2;1571:16;1610:2;1602:6;1599:14;1596:34;;;1626:1;1623;1616:12;1596:34;1681:7;1674:4;1664:6;1661:1;1657:14;1653:2;1649:23;1645:34;1642:47;1639:67;;;1702:1;1699;1692:12;1639:67;1733:4;1729:2;1725:13;1715:23;;1757:6;1747:16;;;1782:40;1816:4;1805:9;1801:20;1782:40;:::i;:::-;1772:50;;1875:2;1864:9;1860:18;1847:32;1831:48;;1904:2;1894:8;1891:16;1888:36;;;1920:1;1917;1910:12;1888:36;;1959:60;2011:7;2000:8;1989:9;1985:24;1959:60;:::i;:::-;1068:1011;;;;-1:-1:-1;1068:1011:129;;-1:-1:-1;2038:8:129;;1933:86;1068:1011;-1:-1:-1;;;1068:1011:129:o;2266:186::-;2325:6;2378:2;2366:9;2357:7;2353:23;2349:32;2346:52;;;2394:1;2391;2384:12;2346:52;2417:29;2436:9;2417:29;:::i;:::-;2407:39;2266:186;-1:-1:-1;;;2266:186:129:o;2639:127::-;2700:10;2695:3;2691:20;2688:1;2681:31;2731:4;2728:1;2721:15;2755:4;2752:1;2745:15;2771:253;2843:2;2837:9;2885:4;2873:17;;-1:-1:-1;;;;;2905:34:129;;2941:22;;;2902:62;2899:88;;;2967:18;;:::i;:::-;3003:2;2996:22;2771:253;:::o;3029:275::-;3100:2;3094:9;3165:2;3146:13;;-1:-1:-1;;3142:27:129;3130:40;;-1:-1:-1;;;;;3185:34:129;;3221:22;;;3182:62;3179:88;;;3247:18;;:::i;:::-;3283:2;3276:22;3029:275;;-1:-1:-1;3029:275:129:o;3309:191::-;3377:4;-1:-1:-1;;;;;3399:30:129;;3396:56;;;3432:18;;:::i;:::-;-1:-1:-1;3477:1:129;3473:14;3489:4;3469:25;;3309:191::o;3505:2727::-;3677:9;3712:72;3728:55;3776:6;3728:55;:::i;:::-;3712:72;:::i;:::-;3818:19;;;3856:4;3876:12;;;;3806:3;3907:1;3942:15;;;3931:27;;3981:14;3970:26;;3967:46;;;4009:1;4006;3999:12;3967:46;4033:5;4047:2152;4063:6;4058:3;4055:15;4047:2152;;;4136:17;;-1:-1:-1;;;;;4210:19:129;;;4207:109;;;4270:1;4299:2;4295;4288:14;4207:109;4350:11;4343:5;4339:23;4329:33;;4407:4;4402:2;4386:14;4382:23;4378:34;4375:124;;;4453:1;4482:2;4478;4471:14;4375:124;4527:22;;:::i;:::-;4578;4597:2;4578:22;:::i;:::-;4569:7;4562:39;4650:2;4646;4642:11;4629:25;4689:1;4680:7;4677:14;4667:112;;4733:1;4762:2;4758;4751:14;4667:112;4799:16;;;4792:33;4848:2;4890:11;;;4877:25;4918:14;;;4915:104;;;4973:1;5002:2;4998;4991:14;4915:104;5043:15;;;;;5101:14;5094:4;5085:14;;5081:35;5071:136;;5159:1;5148:12;;5189:3;5184;5177:16;5071:136;5244:3;5231:17;5220:28;;5274:69;5290:52;5338:3;5290:52;:::i;5274:69::-;5387:18;;;5483:12;;;5474:22;;5470:31;;;5427:14;;;;5530;5517:28;;5514:121;;;5587:1;5617:3;5612;5605:16;5514:121;5661:12;;;;5686:394;5704:8;5697:5;5694:19;5686:394;;;5787:19;;-1:-1:-1;;;;;;5845:34:129;;5833:47;;5823:164;;5931:1;5965:3;5960;5953:16;5823:164;6004:22;;5725:14;;;;6052;;;;5686:394;;;6100:16;;;6093:31;;;;-1:-1:-1;6137:20:129;;-1:-1:-1;;6177:12:129;;;;4080;;4047:2152;;;-1:-1:-1;6221:5:129;;3505:2727;-1:-1:-1;;;;;;;3505:2727:129:o;6546:127::-;6607:10;6602:3;6598:20;6595:1;6588:31;6638:4;6635:1;6628:15;6662:4;6659:1;6652:15;6678:127;6739:10;6734:3;6730:20;6727:1;6720:31;6770:4;6767:1;6760:15;6794:4;6791:1;6784:15;6999:127;7060:10;7055:3;7051:20;7048:1;7041:31;7091:4;7088:1;7081:15;7115:4;7112:1;7105:15;7131:135;7170:3;7191:17;;;7188:43;;7211:18;;:::i;:::-;-1:-1:-1;7258:1:129;7247:13;;7131:135::o;7271:250::-;7356:1;7366:113;7380:6;7377:1;7374:13;7366:113;;;7456:11;;;7450:18;7437:11;;;7430:39;7402:2;7395:10;7366:113;;;-1:-1:-1;;7513:1:129;7495:16;;7488:27;7271:250::o;7526:270::-;7567:3;7605:5;7599:12;7632:6;7627:3;7620:19;7648:76;7717:6;7710:4;7705:3;7701:14;7694:4;7687:5;7683:16;7648:76;:::i;:::-;7778:2;7757:15;-1:-1:-1;;7753:29:129;7744:39;;;;7785:4;7740:50;;7526:270;-1:-1:-1;;7526:270:129:o;7801:2092::-;8071:4;8100:2;8140;8129:9;8125:18;8170:2;8159:9;8152:21;8193:6;8228;8222:13;8259:6;8251;8244:22;8285:3;8275:13;;8319:2;8308:9;8304:18;8297:25;;8381:2;8371:6;8368:1;8364:14;8353:9;8349:30;8345:39;8403:4;8442:2;8434:6;8430:15;8463:1;8473:1249;8487:6;8484:1;8481:13;8473:1249;;;8552:22;;;-1:-1:-1;;8548:37:129;8536:50;;8609:13;;8696:9;;-1:-1:-1;;;;;8692:35:129;8677:51;;8767:11;;;8761:18;8649:15;;;;8819:1;8802:19;;8792:170;;8872:10;8867:3;8863:20;8860:1;8853:31;8911:4;8908:1;8901:15;8943:4;8940:1;8933:15;8792:170;8982:15;;;8975:37;9035:4;9080:11;;;9074:18;9112:15;;;9105:27;;;9193:21;;9227:24;;;;9317:23;;;;-1:-1:-1;;9273:15:129;;;;9378:236;9394:8;9389:3;9386:17;9378:236;;;9475:15;;-1:-1:-1;;;;;;9471:42:129;9457:57;;9583:17;;;;9422:1;9413:11;;;;;9540:14;;;;9378:236;;;-1:-1:-1;9700:12:129;;;;9637:5;-1:-1:-1;;;9665:15:129;;;;8509:1;8502:9;8473:1249;;;-1:-1:-1;;;;;;;287:31:129;;9758:18;;;275:44;9815:22;;;9808:4;9793:20;;9786:52;9855:32;9819:6;9872;9855:32;:::i;:::-;9847:40;7801:2092;-1:-1:-1;;;;;;;;;;7801:2092:129:o;9898:657::-;10067:2;10119:21;;;10189:13;;10092:18;;;10211:22;;;10038:4;;10067:2;10290:15;;;;10264:2;10249:18;;;10038:4;10333:196;10347:6;10344:1;10341:13;10333:196;;;10412:13;;-1:-1:-1;;;;;;10408:40:129;10396:53;;10504:15;;;;10469:12;;;;10369:1;10362:9;10333:196;;;-1:-1:-1;10546:3:129;;9898:657;-1:-1:-1;;;;;;9898:657:129:o;10560:197::-;10598:3;10626:6;10667:2;10660:5;10656:14;10694:2;10685:7;10682:15;10679:41;;10700:18;;:::i;:::-;10749:1;10736:15;;10560:197;-1:-1:-1;;;10560:197:129:o;10762:136::-;10801:3;10829:5;10819:39;;10838:18;;:::i;:::-;-1:-1:-1;;;10874:18:129;;10762:136::o;10903:127::-;10964:10;10959:3;10955:20;10952:1;10945:31;10995:4;10992:1;10985:15;11019:4;11016:1;11009:15;11035:287;11164:3;11202:6;11196:13;11218:66;11277:6;11272:3;11265:4;11257:6;11253:17;11218:66;:::i;:::-;11300:16;;;;;11035:287;-1:-1:-1;;11035:287:129:o;11327:314::-;-1:-1:-1;;;;;11502:32:129;;11484:51;;11571:2;11566;11551:18;;11544:30;;;-1:-1:-1;;11591:44:129;;11616:18;;11608:6;11591:44;:::i;:::-;11583:52;11327:314;-1:-1:-1;;;;11327:314:129:o","linkReferences":{}},"methodIdentifiers":{"_owner()":"b2bdfa7b","collateralVaultTemplate()":"77122d56","diamondCut((address,uint8,bytes4[])[],address,bytes)":"1f931c1c","gardensFeeReceiver()":"b8bed901","initializeOwner(address)":"8c5f36bb","nonce()":"affed0e0","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","strategyTemplate()":"5c94e4d2"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotAddFunctionToDiamondThatAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotAddSelectorsToZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveFunctionThatDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveImmutableFunction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionThatDoesNotExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotReplaceFunctionsFromFacetWithZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceImmutableFunction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DiamondAlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_functionSelector\",\"type\":\"bytes4\"}],\"name\":\"FunctionNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_action\",\"type\":\"uint8\"}],\"name\":\"IncorrectFacetCutAction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_initializationContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"InitializationFunctionReverted\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contractAddress\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_message\",\"type\":\"string\"}],\"name\":\"NoBytecodeAtAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"NoSelectorsProvidedForFacetForCut\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_contractOwner\",\"type\":\"address\"}],\"name\":\"NotContractOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"RemoveFacetAddressMustBeZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"indexed\":false,\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"DiamondCut\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"diamondCut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initializeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"params\":{\"_calldata\":\"A function call, including function selector and arguments _calldata is executed with delegatecall on _init\",\"_diamondCut\":\"Contains the facet addresses and function selectors\",\"_init\":\"The address of the contract or facet to execute _calldata\"}},\"proxiableUUID()\":{\"details\":\"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"notice\":\"Add/replace/remove any number of functions and optionally execute a function with delegatecall\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":\"RegistryFactoryDiamond\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"pkg/contracts/src/diamonds/BaseDiamond.sol\":{\"keccak256\":\"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303\",\"dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU\"]},\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":{\"keccak256\":\"0xc1ec04abe147dffbc963a2529f7ccc0d25c0ce1e9abf4f09b13f3a2101da5b38\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ce4b0a7eb89fc40611f04d2db03e741b5aaee36002c6237da9a36e4e7fffedd9\",\"dweb:/ipfs/QmS4iFdTqPrMJpNWrohcYnM6F8PiLiAtfCtcLEahxtwdNQ\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99\",\"dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotAddSelectorsToZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveFunctionThatDoesNotExist"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveImmutableFunction"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionThatDoesNotExists"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceImmutableFunction"},{"inputs":[],"type":"error","name":"DiamondAlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"_functionSelector","type":"bytes4"}],"type":"error","name":"FunctionNotFound"},{"inputs":[{"internalType":"uint8","name":"_action","type":"uint8"}],"type":"error","name":"IncorrectFacetCutAction"},{"inputs":[{"internalType":"address","name":"_initializationContractAddress","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"type":"error","name":"InitializationFunctionReverted"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"string","name":"_message","type":"string"}],"type":"error","name":"NoBytecodeAtAddress"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"NoSelectorsProvidedForFacetForCut"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_contractOwner","type":"address"}],"type":"error","name":"NotContractOwner"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"RemoveFacetAddressMustBeZeroAddress"},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}],"indexed":false},{"internalType":"address","name":"_init","type":"address","indexed":false},{"internalType":"bytes","name":"_calldata","type":"bytes","indexed":false}],"type":"event","name":"DiamondCut","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_init","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"diamondCut"},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeOwner"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"params":{"_calldata":"A function call, including function selector and arguments _calldata is executed with delegatecall on _init","_diamondCut":"Contains the facet addresses and function selectors","_init":"The address of the contract or facet to execute _calldata"}},"proxiableUUID()":{"details":"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy."}},"version":1},"userdoc":{"kind":"user","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"notice":"Add/replace/remove any number of functions and optionally execute a function with delegatecall"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":"RegistryFactoryDiamond"},"evmVersion":"paris","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"pkg/contracts/src/diamonds/BaseDiamond.sol":{"keccak256":"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8","urls":["bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303","dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":{"keccak256":"0xc1ec04abe147dffbc963a2529f7ccc0d25c0ce1e9abf4f09b13f3a2101da5b38","urls":["bzz-raw://ce4b0a7eb89fc40611f04d2db03e741b5aaee36002c6237da9a36e4e7fffedd9","dweb:/ipfs/QmS4iFdTqPrMJpNWrohcYnM6F8PiLiAtfCtcLEahxtwdNQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af","urls":["bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99","dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":73429,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":73431,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":73435,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap1","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":73437,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":73441,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap2","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73443,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73448,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73425_storage)"},{"astId":73450,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73452,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73454,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73456,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73460,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap3","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)73425_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73425_storage"},"t_struct(CommunityInfo)73425_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73422,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73424,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol","id":73462,"exportedSymbols":{"BaseDiamond":[73414],"CommunityInfo":[73425],"LibDiamond":[75008],"RegistryFactoryDiamond":[73461]},"nodeType":"SourceUnit","src":"42:1243:110","nodes":[{"id":73416,"nodeType":"PragmaDirective","src":"42:24:110","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73418,"nodeType":"ImportDirective","src":"68:58:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"@src/diamonds/BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":73462,"sourceUnit":73415,"symbolAliases":[{"foreign":{"id":73417,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73414,"src":"76:11:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73420,"nodeType":"ImportDirective","src":"127:66:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"@src/diamonds/libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":73462,"sourceUnit":75009,"symbolAliases":[{"foreign":{"id":73419,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75008,"src":"135:10:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73425,"nodeType":"StructDefinition","src":"196:57:110","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":73422,"mutability":"mutable","name":"fee","nameLocation":"231:3:110","nodeType":"VariableDeclaration","scope":73425,"src":"223:11:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73421,"name":"uint256","nodeType":"ElementaryTypeName","src":"223:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":73424,"mutability":"mutable","name":"valid","nameLocation":"245:5:110","nodeType":"VariableDeclaration","scope":73425,"src":"240:10:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73423,"name":"bool","nodeType":"ElementaryTypeName","src":"240:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"203:13:110","scope":73462,"visibility":"public"},{"id":73461,"nodeType":"ContractDefinition","src":"255:1029:110","nodes":[{"id":73429,"nodeType":"VariableDeclaration","src":"685:27:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initialized","nameLocation":"700:12:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":73428,"name":"uint8","nodeType":"ElementaryTypeName","src":"685:5:110","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"private"},{"id":73431,"nodeType":"VariableDeclaration","src":"718:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initializing","nameLocation":"731:13:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73430,"name":"bool","nodeType":"ElementaryTypeName","src":"718:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"id":73435,"nodeType":"VariableDeclaration","src":"750:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap1","nameLocation":"770:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73432,"name":"uint256","nodeType":"ElementaryTypeName","src":"750:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73434,"length":{"hexValue":"3530","id":73433,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"758:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"750:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"},{"id":73437,"nodeType":"VariableDeclaration","src":"782:22:110","nodes":[],"constant":false,"functionSelector":"b2bdfa7b","mutability":"mutable","name":"_owner","nameLocation":"798:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73436,"name":"address","nodeType":"ElementaryTypeName","src":"782:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73441,"nodeType":"VariableDeclaration","src":"810:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap2","nameLocation":"830:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":73438,"name":"uint256","nodeType":"ElementaryTypeName","src":"810:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73440,"length":{"hexValue":"3439","id":73439,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"818:2:110","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"810:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"},{"id":73443,"nodeType":"VariableDeclaration","src":"842:20:110","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"857:5:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73442,"name":"uint256","nodeType":"ElementaryTypeName","src":"842:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":73448,"nodeType":"VariableDeclaration","src":"869:49:110","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"903:15:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73425_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":73447,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":73444,"name":"address","nodeType":"ElementaryTypeName","src":"877:7:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"869:33:110","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73425_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":73446,"nodeType":"UserDefinedTypeName","pathNode":{"id":73445,"name":"CommunityInfo","nameLocations":["888:13:110"],"nodeType":"IdentifierPath","referencedDeclaration":73425,"src":"888:13:110"},"referencedDeclaration":73425,"src":"888:13:110","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73425_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":73450,"nodeType":"VariableDeclaration","src":"924:33:110","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"939:18:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73449,"name":"address","nodeType":"ElementaryTypeName","src":"924:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73452,"nodeType":"VariableDeclaration","src":"963:40:110","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"978:25:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73451,"name":"address","nodeType":"ElementaryTypeName","src":"963:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73454,"nodeType":"VariableDeclaration","src":"1009:31:110","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"1024:16:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73453,"name":"address","nodeType":"ElementaryTypeName","src":"1009:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73456,"nodeType":"VariableDeclaration","src":"1046:38:110","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"1061:23:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73455,"name":"address","nodeType":"ElementaryTypeName","src":"1046:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73460,"nodeType":"VariableDeclaration","src":"1090:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap3","nameLocation":"1110:6:110","scope":73461,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73457,"name":"uint256","nodeType":"ElementaryTypeName","src":"1090:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73459,"length":{"hexValue":"3530","id":73458,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1098:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1090:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73426,"name":"BaseDiamond","nameLocations":["290:11:110"],"nodeType":"IdentifierPath","referencedDeclaration":73414,"src":"290:11:110"},"id":73427,"nodeType":"InheritanceSpecifier","src":"290:11:110"}],"canonicalName":"RegistryFactoryDiamond","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[73461,73414,74223,74204,54984],"name":"RegistryFactoryDiamond","nameLocation":"264:22:110","scope":73462,"usedErrors":[73289,73291,74289,74293,74298,74304,74308,74312,74317,74321,74325,74329,74333,74337,74341,74347]}],"license":"AGPL-3.0-only"},"id":110} \ No newline at end of file +{"abi":[{"type":"fallback","stateMutability":"payable"},{"type":"receive","stateMutability":"payable"},{"type":"function","name":"_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"diamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"initializeOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeOwnerCut","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_diamondCut","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"event","name":"DiamondCut","inputs":[{"name":"_diamondCut","type":"tuple[]","indexed":false,"internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_init","type":"address","indexed":false,"internalType":"address"},{"name":"_calldata","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotAddSelectorsToZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotRemoveFunctionThatDoesNotExist","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotRemoveImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionThatDoesNotExists","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress","inputs":[{"name":"_selectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"type":"error","name":"CannotReplaceImmutableFunction","inputs":[{"name":"_selector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"DiamondAlreadyInitialized","inputs":[]},{"type":"error","name":"FunctionNotFound","inputs":[{"name":"_functionSelector","type":"bytes4","internalType":"bytes4"}]},{"type":"error","name":"IncorrectFacetCutAction","inputs":[{"name":"_action","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"InitializationFunctionReverted","inputs":[{"name":"_initializationContractAddress","type":"address","internalType":"address"},{"name":"_calldata","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"NoBytecodeAtAddress","inputs":[{"name":"_contractAddress","type":"address","internalType":"address"},{"name":"_message","type":"string","internalType":"string"}]},{"type":"error","name":"NoSelectorsProvidedForFacetForCut","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]},{"type":"error","name":"NotContractOwner","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_contractOwner","type":"address","internalType":"address"}]},{"type":"error","name":"RemoveFacetAddressMustBeZeroAddress","inputs":[{"name":"_facetAddress","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50611427806100206000396000f3fe6080604052600436106100855760003560e01c806302c1d0b11461011c5780631f931c1c1461015257806352d1902d146101725780635c94e4d2146101af57806377122d56146101cf5780638c5f36bb146101ef578063944ab9ed1461020f578063affed0e01461022f578063b2bdfa7b14610245578063b8bed901146102655761008c565b3661008c57005b600080356001600160e01b031916815260008051602061135e833981519152602081905260409091205481906001600160a01b0316806100f6576000356001600160e01b031916604051630a82dd7360e31b81526004016100ed9190610c9d565b60405180910390fd5b3660008037600080366000845af43d6000803e808015610115573d6000f35b3d6000fd5b005b34801561012857600080fd5b5060685461013c906001600160a01b031681565b6040516101499190610cb2565b60405180910390f35b34801561015e57600080fd5b5061011a61016d366004610d2a565b610285565b34801561017e57600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b604051908152602001610149565b3480156101bb57600080fd5b5060695461013c906001600160a01b031681565b3480156101db57600080fd5b50606a5461013c906001600160a01b031681565b3480156101fb57600080fd5b5061011a61020a366004610ddb565b6102de565b34801561021b57600080fd5b5061011a61022a366004610fd1565b610342565b34801561023b57600080fd5b506101a160655481565b34801561025157600080fd5b5060335461013c906001600160a01b031681565b34801561027157600080fd5b5060675461013c906001600160a01b031681565b61028d610354565b6102d761029a85876110c1565b8484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103ad92505050565b5050505050565b6040805160008082526020820190925261033f91839190610329565b604080516060808201835260008083526020830152918101919091528152602001906001900390816102fa5790505b5060408051600080825260208201909252610554565b50565b61034e84848484610554565b50505050565b61035c610596565b600301546001600160a01b031633146103ab5733610378610596565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100ed565b565b60005b83518110156105095760008482815181106103cd576103cd6110ce565b602002602001015160400151905060008583815181106103ef576103ef6110ce565b60200260200101516000015190508151600003610421578060405163e767f91f60e01b81526004016100ed9190610cb2565b6000868481518110610435576104356110ce565b602002602001015160200151905060006002811115610456576104566110e4565b816002811115610468576104686110e4565b0361047c5761047782846105a8565b6104f3565b6001816002811115610490576104906110e4565b0361049f57610477828461073f565b60028160028111156104b3576104b36110e4565b036104c25761047782846108ab565b8060028111156104d4576104d46110e4565b604051633ff4d20f60e11b815260ff90911660048201526024016100ed565b505050808061050190611110565b9150506103b0565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb67383838360405161053d93929190611179565b60405180910390a161054f8282610b09565b505050565b61055c610bcf565b1561057a57604051639289b96160e01b815260040160405180910390fd5b61058384610bec565b61058b610c4c565b61034e8383836103ad565b60008051602061135e83398151915290565b6001600160a01b0382166105d157806040516302b8da0760e21b81526004016100ed9190611279565b60006105db610596565b905060008160010180549050905061060b8460405180606001604052806024815260200161137e60249139610c75565b60005b83518110156102d757600084828151811061062b5761062b6110ce565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b0316801561067e578160405163ebbf5d0760e01b81526004016100ed9190610c9d565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff909302191691909117905583610727816112c7565b9450505050808061073790611110565b91505061060e565b6000610749610596565b90506001600160a01b038316610774578160405163cd98a96f60e01b81526004016100ed9190611279565b610796836040518060600160405280602881526020016113ca60289139610c75565b60005b825181101561034e5760008382815181106107b6576107b66110ce565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b031630810361080a5781604051632901806d60e11b81526004016100ed9190610c9d565b856001600160a01b0316816001600160a01b03160361083e5781604051631ac6ce8d60e11b81526004016100ed9190610c9d565b6001600160a01b0381166108675781604051637479f93960e01b81526004016100ed9190610c9d565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108a381611110565b915050610799565b60006108b5610596565b60018101549091506001600160a01b038416156108e7578360405163d091bc8160e01b81526004016100ed9190610cb2565b60005b83518110156102d7576000848281518110610907576109076110ce565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff1693820193909352909250906109785781604051637a08a22d60e01b81526004016100ed9190610c9d565b8051306001600160a01b03909116036109a65781604051630df5fd6160e31b81526004016100ed9190610c9d565b836109b0816112e8565b94505083816020015161ffff1614610a8e5760008560010185815481106109d9576109d96110ce565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a1c57610a1c6110ce565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aa157610aa16112ff565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b0181611110565b9150506108ea565b6001600160a01b038216610b1b575050565b610b3d826040518060600160405280602881526020016113a260289139610c75565b600080836001600160a01b031683604051610b589190611315565b600060405180830381855af49150503d8060008114610b93576040519150601f19603f3d011682016040523d82523d6000602084013e610b98565b606091505b50915091508161034e57805115610bb25780518082602001fd5b838360405163192105d760e01b81526004016100ed929190611331565b6000610bd9610596565b60030154600160a01b900460ff16919050565b6000610bf6610596565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b6001610c56610596565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b813b600081900361054f57828260405163919834b960e01b81526004016100ed929190611331565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610cdd57600080fd5b919050565b60008083601f840112610cf457600080fd5b5081356001600160401b03811115610d0b57600080fd5b602083019150836020828501011115610d2357600080fd5b9250929050565b600080600080600060608688031215610d4257600080fd5b85356001600160401b0380821115610d5957600080fd5b818801915088601f830112610d6d57600080fd5b813581811115610d7c57600080fd5b8960208260051b8501011115610d9157600080fd5b60208301975080965050610da760208901610cc6565b94506040880135915080821115610dbd57600080fd5b50610dca88828901610ce2565b969995985093965092949392505050565b600060208284031215610ded57600080fd5b610df682610cc6565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610e3557610e35610dfd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610e6357610e63610dfd565b604052919050565b60006001600160401b03821115610e8457610e84610dfd565b5060051b60200190565b6000610ea1610e9c84610e6b565b610e3b565b8381529050602080820190600585811b850187811115610ec057600080fd5b855b81811015610fc55780356001600160401b0380821115610ee25760008081fd5b908801906060828c031215610ef75760008081fd5b610eff610e13565b610f0883610cc6565b81528683013560038110610f1c5760008081fd5b8188015260408381013583811115610f345760008081fd5b8085019450508c601f850112610f4c57600092508283fd5b83359250610f5c610e9c84610e6b565b83815292871b8401880192888101908e851115610f795760008081fd5b948901945b84861015610fae5785356001600160e01b031981168114610f9f5760008081fd5b82529489019490890190610f7e565b918301919091525087525050938301938301610ec2565b50505050509392505050565b60008060008060808587031215610fe757600080fd5b610ff085610cc6565b93506020858101356001600160401b038082111561100d57600080fd5b818801915088601f83011261102157600080fd5b61102f898335858501610e8e565b955061103d60408901610cc6565b9450606088013591508082111561105357600080fd5b818801915088601f83011261106757600080fd5b81358181111561107957611079610dfd565b61108b601f8201601f19168501610e3b565b915080825289848285010111156110a157600080fd5b808484018584013760008482840101525080935050505092959194509250565b6000610df6368484610e8e565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611122576111226110fa565b5060010190565b60005b8381101561114457818101518382015260200161112c565b50506000910152565b60008151808452611165816020860160208601611129565b601f01601f19169290920160200192915050565b60006060808301818452808751808352608092508286019150828160051b8701016020808b0160005b8481101561124957898403607f19018652815180516001600160a01b031685528381015189860190600381106111e857634e487b7160e01b600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b808310156112345783516001600160e01b031916825292860192600192909201919086019061120a565b509785019795505050908201906001016111a2565b50506001600160a01b038a1690880152868103604088015261126b818961114d565b9a9950505050505050505050565b6020808252825182820181905260009190848201906040850190845b818110156112bb5783516001600160e01b03191683529284019291840191600101611295565b50909695505050505050565b600061ffff8083168181036112de576112de6110fa565b6001019392505050565b6000816112f7576112f76110fa565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251611327818460208701611129565b9190910192915050565b6001600160a01b03831681526040602082018190526000906113559083018461114d565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a264697066735822122028e7ad1a1ae74ac08671447b9bbc8e05ed97465775661948daa0d86944e3f3c464736f6c63430008130033","sourceMap":"255:1029:110:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106100855760003560e01c806302c1d0b11461011c5780631f931c1c1461015257806352d1902d146101725780635c94e4d2146101af57806377122d56146101cf5780638c5f36bb146101ef578063944ab9ed1461020f578063affed0e01461022f578063b2bdfa7b14610245578063b8bed901146102655761008c565b3661008c57005b600080356001600160e01b031916815260008051602061135e833981519152602081905260409091205481906001600160a01b0316806100f6576000356001600160e01b031916604051630a82dd7360e31b81526004016100ed9190610c9d565b60405180910390fd5b3660008037600080366000845af43d6000803e808015610115573d6000f35b3d6000fd5b005b34801561012857600080fd5b5060685461013c906001600160a01b031681565b6040516101499190610cb2565b60405180910390f35b34801561015e57600080fd5b5061011a61016d366004610d2a565b610285565b34801561017e57600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b604051908152602001610149565b3480156101bb57600080fd5b5060695461013c906001600160a01b031681565b3480156101db57600080fd5b50606a5461013c906001600160a01b031681565b3480156101fb57600080fd5b5061011a61020a366004610ddb565b6102de565b34801561021b57600080fd5b5061011a61022a366004610fd1565b610342565b34801561023b57600080fd5b506101a160655481565b34801561025157600080fd5b5060335461013c906001600160a01b031681565b34801561027157600080fd5b5060675461013c906001600160a01b031681565b61028d610354565b6102d761029a85876110c1565b8484848080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506103ad92505050565b5050505050565b6040805160008082526020820190925261033f91839190610329565b604080516060808201835260008083526020830152918101919091528152602001906001900390816102fa5790505b5060408051600080825260208201909252610554565b50565b61034e84848484610554565b50505050565b61035c610596565b600301546001600160a01b031633146103ab5733610378610596565b60030154604051600162bed83560e01b031981526001600160a01b039283166004820152911660248201526044016100ed565b565b60005b83518110156105095760008482815181106103cd576103cd6110ce565b602002602001015160400151905060008583815181106103ef576103ef6110ce565b60200260200101516000015190508151600003610421578060405163e767f91f60e01b81526004016100ed9190610cb2565b6000868481518110610435576104356110ce565b602002602001015160200151905060006002811115610456576104566110e4565b816002811115610468576104686110e4565b0361047c5761047782846105a8565b6104f3565b6001816002811115610490576104906110e4565b0361049f57610477828461073f565b60028160028111156104b3576104b36110e4565b036104c25761047782846108ab565b8060028111156104d4576104d46110e4565b604051633ff4d20f60e11b815260ff90911660048201526024016100ed565b505050808061050190611110565b9150506103b0565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb67383838360405161053d93929190611179565b60405180910390a161054f8282610b09565b505050565b61055c610bcf565b1561057a57604051639289b96160e01b815260040160405180910390fd5b61058384610bec565b61058b610c4c565b61034e8383836103ad565b60008051602061135e83398151915290565b6001600160a01b0382166105d157806040516302b8da0760e21b81526004016100ed9190611279565b60006105db610596565b905060008160010180549050905061060b8460405180606001604052806024815260200161137e60249139610c75565b60005b83518110156102d757600084828151811061062b5761062b6110ce565b6020908102919091018101516001600160e01b031981166000908152918690526040909120549091506001600160a01b0316801561067e578160405163ebbf5d0760e01b81526004016100ed9190610c9d565b6040805180820182526001600160a01b03808a16825261ffff80881660208085019182526001600160e01b0319881660009081528b8252958620945185549251909316600160a01b026001600160b01b0319909216929093169190911717909155600180880180549182018155835291206008820401805460e085901c60046007909416939093026101000a92830263ffffffff909302191691909117905583610727816112c7565b9450505050808061073790611110565b91505061060e565b6000610749610596565b90506001600160a01b038316610774578160405163cd98a96f60e01b81526004016100ed9190611279565b610796836040518060600160405280602881526020016113ca60289139610c75565b60005b825181101561034e5760008382815181106107b6576107b66110ce565b6020908102919091018101516001600160e01b031981166000908152918590526040909120549091506001600160a01b031630810361080a5781604051632901806d60e11b81526004016100ed9190610c9d565b856001600160a01b0316816001600160a01b03160361083e5781604051631ac6ce8d60e11b81526004016100ed9190610c9d565b6001600160a01b0381166108675781604051637479f93960e01b81526004016100ed9190610c9d565b506001600160e01b031916600090815260208390526040902080546001600160a01b0319166001600160a01b038616179055806108a381611110565b915050610799565b60006108b5610596565b60018101549091506001600160a01b038416156108e7578360405163d091bc8160e01b81526004016100ed9190610cb2565b60005b83518110156102d7576000848281518110610907576109076110ce565b6020908102919091018101516001600160e01b0319811660009081528683526040908190208151808301909252546001600160a01b038116808352600160a01b90910461ffff1693820193909352909250906109785781604051637a08a22d60e01b81526004016100ed9190610c9d565b8051306001600160a01b03909116036109a65781604051630df5fd6160e31b81526004016100ed9190610c9d565b836109b0816112e8565b94505083816020015161ffff1614610a8e5760008560010185815481106109d9576109d96110ce565b90600052602060002090600891828204019190066004029054906101000a900460e01b90508086600101836020015161ffff1681548110610a1c57610a1c6110ce565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c92909202939093179055838201516001600160e01b03199390931681529087905260409020805461ffff60a01b1916600160a01b61ffff909316929092029190911790555b84600101805480610aa157610aa16112ff565b60008281526020808220600860001990940193840401805463ffffffff600460078716026101000a0219169055919092556001600160e01b0319909316815291859052506040902080546001600160b01b031916905580610b0181611110565b9150506108ea565b6001600160a01b038216610b1b575050565b610b3d826040518060600160405280602881526020016113a260289139610c75565b600080836001600160a01b031683604051610b589190611315565b600060405180830381855af49150503d8060008114610b93576040519150601f19603f3d011682016040523d82523d6000602084013e610b98565b606091505b50915091508161034e57805115610bb25780518082602001fd5b838360405163192105d760e01b81526004016100ed929190611331565b6000610bd9610596565b60030154600160a01b900460ff16919050565b6000610bf6610596565b6003810180546001600160a01b038581166001600160a01b031983168117909355604051939450169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b6001610c56610596565b6003018054911515600160a01b0260ff60a01b19909216919091179055565b813b600081900361054f57828260405163919834b960e01b81526004016100ed929190611331565b6001600160e01b031991909116815260200190565b6001600160a01b0391909116815260200190565b80356001600160a01b0381168114610cdd57600080fd5b919050565b60008083601f840112610cf457600080fd5b5081356001600160401b03811115610d0b57600080fd5b602083019150836020828501011115610d2357600080fd5b9250929050565b600080600080600060608688031215610d4257600080fd5b85356001600160401b0380821115610d5957600080fd5b818801915088601f830112610d6d57600080fd5b813581811115610d7c57600080fd5b8960208260051b8501011115610d9157600080fd5b60208301975080965050610da760208901610cc6565b94506040880135915080821115610dbd57600080fd5b50610dca88828901610ce2565b969995985093965092949392505050565b600060208284031215610ded57600080fd5b610df682610cc6565b9392505050565b634e487b7160e01b600052604160045260246000fd5b604051606081016001600160401b0381118282101715610e3557610e35610dfd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715610e6357610e63610dfd565b604052919050565b60006001600160401b03821115610e8457610e84610dfd565b5060051b60200190565b6000610ea1610e9c84610e6b565b610e3b565b8381529050602080820190600585811b850187811115610ec057600080fd5b855b81811015610fc55780356001600160401b0380821115610ee25760008081fd5b908801906060828c031215610ef75760008081fd5b610eff610e13565b610f0883610cc6565b81528683013560038110610f1c5760008081fd5b8188015260408381013583811115610f345760008081fd5b8085019450508c601f850112610f4c57600092508283fd5b83359250610f5c610e9c84610e6b565b83815292871b8401880192888101908e851115610f795760008081fd5b948901945b84861015610fae5785356001600160e01b031981168114610f9f5760008081fd5b82529489019490890190610f7e565b918301919091525087525050938301938301610ec2565b50505050509392505050565b60008060008060808587031215610fe757600080fd5b610ff085610cc6565b93506020858101356001600160401b038082111561100d57600080fd5b818801915088601f83011261102157600080fd5b61102f898335858501610e8e565b955061103d60408901610cc6565b9450606088013591508082111561105357600080fd5b818801915088601f83011261106757600080fd5b81358181111561107957611079610dfd565b61108b601f8201601f19168501610e3b565b915080825289848285010111156110a157600080fd5b808484018584013760008482840101525080935050505092959194509250565b6000610df6368484610e8e565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201611122576111226110fa565b5060010190565b60005b8381101561114457818101518382015260200161112c565b50506000910152565b60008151808452611165816020860160208601611129565b601f01601f19169290920160200192915050565b60006060808301818452808751808352608092508286019150828160051b8701016020808b0160005b8481101561124957898403607f19018652815180516001600160a01b031685528381015189860190600381106111e857634e487b7160e01b600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b808310156112345783516001600160e01b031916825292860192600192909201919086019061120a565b509785019795505050908201906001016111a2565b50506001600160a01b038a1690880152868103604088015261126b818961114d565b9a9950505050505050505050565b6020808252825182820181905260009190848201906040850190845b818110156112bb5783516001600160e01b03191683529284019291840191600101611295565b50909695505050505050565b600061ffff8083168181036112de576112de6110fa565b6001019392505050565b6000816112f7576112f76110fa565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251611327818460208701611129565b9190910192915050565b6001600160a01b03831681526040602082018190526000906113559083018461114d565b94935050505056fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c4c69624469616d6f6e644375743a2041646420666163657420686173206e6f20636f64654c69624469616d6f6e644375743a205f696e6974206164647265737320686173206e6f20636f64654c69624469616d6f6e644375743a205265706c61636520666163657420686173206e6f20636f6465a264697066735822122028e7ad1a1ae74ac08671447b9bbc8e05ed97465775661948daa0d86944e3f3c464736f6c63430008130033","sourceMap":"255:1029:110:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1875:36:109;2172:7;;-1:-1:-1;;;;;;2172:7:109;2137:43;;-1:-1:-1;;;;;;;;;;;2137:43:109;;;;;;;;:56;1585:45:122;;-1:-1:-1;;;;;2137:56:109;;2203:82;;2266:7;;-1:-1:-1;;;;;;2266:7:109;2249:25;;-1:-1:-1;;;2249:25:109;;;;;;;;:::i;:::-;;;;;;;;2203:82;2481:14;2478:1;2475;2462:34;2625:1;2622;2606:14;2603:1;2596:5;2589;2576:51;2697:16;2694:1;2691;2676:38;2801:6;2820:38;;;;2891:16;2888:1;2881:27;2820:38;2839:16;2836:1;2829:27;2794:116;;963:40:110;;;;;;;;;;-1:-1:-1;963:40:110;;;;-1:-1:-1;;;;;963:40:110;;;;;;;;;;:::i;:::-;;;;;;;;3538:234:109;;;;;;;;;;-1:-1:-1;3538:234:109;;;;;:::i;:::-;;:::i;2967:118::-;;;;;;;;;;-1:-1:-1;867:66:109;2967:118;;;2230:25:136;;;2218:2;2203:18;2967:118:109;2084:177:136;1009:31:110;;;;;;;;;;-1:-1:-1;1009:31:110;;;;-1:-1:-1;;;;;1009:31:110;;;1046:38;;;;;;;;;;-1:-1:-1;1046:38:110;;;;-1:-1:-1;;;;;1046:38:110;;;1570:136:109;;;;;;;;;;-1:-1:-1;1570:136:109;;;;;:::i;:::-;;:::i;975:203::-;;;;;;;;;;-1:-1:-1;975:203:109;;;;;:::i;:::-;;:::i;842:20:110:-;;;;;;;;;;;;;;;;782:22;;;;;;;;;;-1:-1:-1;782:22:110;;;;-1:-1:-1;;;;;782:22:110;;;924:33;;;;;;;;;;-1:-1:-1;924:33:110;;;;-1:-1:-1;;;;;924:33:110;;;3538:234:109;3668:35;:33;:35::i;:::-;3713:52;;3735:11;;3713:52;:::i;:::-;3748:5;3755:9;;3713:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3713:21:109;;-1:-1:-1;;;3713:52:109:i;:::-;3538:234;;;;;:::o;1570:136::-;1655:17;;;1670:1;1655:17;;;;;;;;;1630:69;;1647:6;;1655:17;;;;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;1655:17:109;;;;;;;;;;;;;;;-1:-1:-1;1686:12:109;;;1682:1;1686:12;;;;;;;;;1630:16;:69::i;:::-;1570:136;:::o;975:203::-;1116:55;1133:6;1141:11;1154:5;1161:9;1116:16;:55::i;:::-;975:203;;;;:::o;3780:382:122:-;4024:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;;;4024:30:122;4010:10;:44;4007:140;;4093:10;4105:16;:14;:16::i;:::-;:30;;;4076:60;;-1:-1:-1;;;;;;4076:60:122;;-1:-1:-1;;;;;7919:15:136;;;4076:60:122;;;7901:34:136;4105:30:122;;7951:18:136;;;7944:43;7836:18;;4076:60:122;7689:304:136;4007:140:122;3780:382::o;4306:1179::-;4432:18;4427:948;4465:11;:18;4452:10;:31;4427:948;;;4513:33;4549:11;4561:10;4549:23;;;;;;;;:::i;:::-;;;;;;;:41;;;4513:77;;4604:20;4627:11;4639:10;4627:23;;;;;;;;:::i;:::-;;;;;;;:36;;;4604:59;;4681:17;:24;4709:1;4681:29;4677:122;;4771:12;4737:47;;-1:-1:-1;;;4737:47:122;;;;;;;;:::i;4677:122::-;4812:33;4848:11;4860:10;4848:23;;;;;;;;:::i;:::-;;;;;;;:30;;;4812:66;;4906:27;4896:37;;;;;;;;:::i;:::-;:6;:37;;;;;;;;:::i;:::-;;4892:473;;4953:45;4966:12;4980:17;4953:12;:45::i;:::-;4892:473;;;5033:31;5023:6;:41;;;;;;;;:::i;:::-;;5019:346;;5084:49;5101:12;5115:17;5084:16;:49::i;5019:346::-;5168:30;5158:6;:40;;;;;;;;:::i;:::-;;5154:211;;5218:48;5234:12;5248:17;5218:15;:48::i;5154:211::-;5342:6;5336:13;;;;;;;;:::i;:::-;5312:38;;-1:-1:-1;;;5312:38:122;;8434:4:136;8422:17;;;5312:38:122;;;8404:36:136;8377:18;;5312:38:122;8262:184:136;5154:211:122;4499:876;;;4485:12;;;;;:::i;:::-;;;;4427:948;;;;5389:41;5400:11;5413:5;5420:9;5389:41;;;;;;;;:::i;:::-;;;;;;;;5440:38;5461:5;5468:9;5440:20;:38::i;:::-;4306:1179;;;:::o;1183:381:109:-;1326:26;:24;:26::i;:::-;1322:91;;;1375:27;;-1:-1:-1;;;1375:27:109;;;;;;;;;;;1322:91;1422:35;1450:6;1422:27;:35::i;:::-;1467:27;:25;:27::i;:::-;1504:52;1526:11;1539:5;1546:9;1504:21;:52::i;2445:197:122:-;-1:-1:-1;;;;;;;;;;;1585:45:122;2445:197::o;5491:1026::-;-1:-1:-1;;;;;5595:27:122;;5591:116;;5677:18;5645:51;;-1:-1:-1;;;5645:51:122;;;;;;;;:::i;5591:116::-;5716:25;5744:16;:14;:16::i;:::-;5716:44;;5770:20;5800:2;:12;;:19;;;;5770:50;;5830:77;5853:13;5830:77;;;;;;;;;;;;;;;;;:22;:77::i;:::-;5922:21;5917:594;5961:18;:25;5945:13;:41;5917:594;;;6019:15;6037:18;6056:13;6037:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;6110:44:122;;6084:23;6110:44;;;;;;;;;;;:57;6037:33;;-1:-1:-1;;;;;;6110:57:122;6185:29;;6181:128;;6285:8;6241:53;;-1:-1:-1;;;6241:53:122;;;;;;;;:::i;6181:128::-;6369:61;;;;;;;;-1:-1:-1;;;;;6369:61:122;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;6322:44:122;;-1:-1:-1;6322:44:122;;;;;;;;;:108;;;;;;;;;-1:-1:-1;;;6322:108:122;-1:-1:-1;;;;;;6322:108:122;;;;;;;;;;;;;;;;6444:12;;;:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6322:108;6444:27;;;;;;;;;;;;;;;;6416:13;6485:15;6416:13;6485:15;:::i;:::-;;;;6005:506;;5988:15;;;;;:::i;:::-;;;;5917:594;;6523:1315;6627:25;6655:16;:14;:16::i;:::-;6627:44;-1:-1:-1;;;;;;6685:27:122;;6681:131;;6782:18;6735:66;;-1:-1:-1;;;6735:66:122;;;;;;;;:::i;6681:131::-;6821:81;6844:13;6821:81;;;;;;;;;;;;;;;;;:22;:81::i;:::-;6917:21;6912:920;6956:18;:25;6940:13;:41;6912:920;;;7014:15;7032:18;7051:13;7032:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;7105:44:122;;7079:23;7105:44;;;;;;;;;;;:57;7032:33;;-1:-1:-1;;;;;;7105:57:122;7314:4;7287:32;;7283:118;;7377:8;7346:40;;-1:-1:-1;;;7346:40:122;;;;;;;;:::i;7283:118::-;7437:13;-1:-1:-1;;;;;7418:32:122;:15;-1:-1:-1;;;;;7418:32:122;;7414:144;;7534:8;7477:66;;-1:-1:-1;;;7477:66:122;;;;;;;;:::i;7414:144::-;-1:-1:-1;;;;;7575:29:122;;7571:123;;7670:8;7631:48;;-1:-1:-1;;;7631:48:122;;;;;;;;:::i;7571:123::-;-1:-1:-1;;;;;;;7748:44:122;:34;:44;;;;;;;;;;:73;;-1:-1:-1;;;;;;7748:73:122;-1:-1:-1;;;;;7748:73:122;;;;;6983:15;;;;:::i;:::-;;;;6912:920;;7844:1713;7947:25;7975:16;:14;:16::i;:::-;8025:12;;;:19;7947:44;;-1:-1:-1;;;;;;8058:27:122;;;8054:115;;8144:13;8108:50;;-1:-1:-1;;;8108:50:122;;;;;;;;:::i;8054:115::-;8183:21;8178:1373;8222:18;:25;8206:13;:41;8178:1373;;;8280:15;8298:18;8317:13;8298:33;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;;8437:44:122;;8345:73;8437:44;;;;;;;;;;;8345:136;;;;;;;;;-1:-1:-1;;;;;8345:136:122;;;;;-1:-1:-1;;;8345:136:122;;;;;;;;;;;;8298:33;;-1:-1:-1;8345:136:122;8495:153;;8624:8;8587:46;;-1:-1:-1;;;8587:46:122;;;;;;;;:::i;8495:153::-;8759:47;;8818:4;-1:-1:-1;;;;;8759:64:122;;;;8755:149;;8880:8;8850:39;;-1:-1:-1;;;8850:39:122;;;;;;;;:::i;8755:149::-;8968:15;;;;:::i;:::-;;;;9056:13;9001:34;:51;;;:68;;;8997:411;;9089:19;9111:2;:12;;9124:13;9111:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;9089:49;;9224:12;9156:2;:12;;9169:34;:51;;;9156:65;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:80;;;:65;;;;;;:80;;;;;;;;;;;;;;;;;;;;;;9342:51;;;;-1:-1:-1;;;;;;9254:48:122;;;;;;;;;;;;;:139;;-1:-1:-1;;;;9254:139:122;-1:-1:-1;;;9254:139:122;;;;;;;;;;;;;;8997:411;9457:2;:12;;:18;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;9457:18:122;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9496:44:122;;;;;;;;;-1:-1:-1;9496:44:122;;;9489:51;;-1:-1:-1;;;;;;9489:51:122;;;8249:15;;;;:::i;:::-;;;;8178:1373;;9563:734;-1:-1:-1;;;;;9655:19:122;;9651:56;;9563:734;;:::o;9651:56::-;9716:73;9739:5;9716:73;;;;;;;;;;;;;;;;;:22;:73::i;:::-;9800:12;9814:18;9836:5;-1:-1:-1;;;;;9836:18:122;9855:9;9836:29;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9799:66;;;;9880:7;9875:416;;9907:12;;:16;9903:378;;10089:5;10083:12;10139:15;10131:5;10127:2;10123:14;10116:39;9903:378;10249:5;10256:9;10218:48;;-1:-1:-1;;;10218:48:122;;;;;;;;;:::i;2648:107::-;2696:4;2718:16;:14;:16::i;:::-;:30;;;-1:-1:-1;;;2718:30:122;;;;;;-1:-1:-1;2648:107:122:o;2945:264::-;3009:25;3037:16;:14;:16::i;:::-;3087;;;;;-1:-1:-1;;;;;3113:28:122;;;-1:-1:-1;;;;;;3113:28:122;;;;;;;3156:46;;3009:44;;-1:-1:-1;3087:16:122;;;;3156:46;;3063:21;;3156:46;2999:210;;2945:264;:::o;2760:89::-;2838:4;2805:16;:14;:16::i;:::-;:30;;:37;;;;;-1:-1:-1;;;2805:37:122;-1:-1:-1;;;;2805:37:122;;;;;;;;;2760:89::o;10303:320::-;10476:22;;10407:20;10521:17;;;10517:100;;10581:9;10592:13;10561:45;;-1:-1:-1;;;10561:45:122;;;;;;;;;:::i;14:202:136:-;-1:-1:-1;;;;;;176:33:136;;;;158:52;;146:2;131:18;;14:202::o;330:203::-;-1:-1:-1;;;;;494:32:136;;;;476:51;;464:2;449:18;;330:203::o;538:173::-;606:20;;-1:-1:-1;;;;;655:31:136;;645:42;;635:70;;701:1;698;691:12;635:70;538:173;;;:::o;716:347::-;767:8;777:6;831:3;824:4;816:6;812:17;808:27;798:55;;849:1;846;839:12;798:55;-1:-1:-1;872:20:136;;-1:-1:-1;;;;;904:30:136;;901:50;;;947:1;944;937:12;901:50;984:4;976:6;972:17;960:29;;1036:3;1029:4;1020:6;1012;1008:19;1004:30;1001:39;998:59;;;1053:1;1050;1043:12;998:59;716:347;;;;;:::o;1068:1011::-;1212:6;1220;1228;1236;1244;1297:2;1285:9;1276:7;1272:23;1268:32;1265:52;;;1313:1;1310;1303:12;1265:52;1340:23;;-1:-1:-1;;;;;1412:14:136;;;1409:34;;;1439:1;1436;1429:12;1409:34;1477:6;1466:9;1462:22;1452:32;;1522:7;1515:4;1511:2;1507:13;1503:27;1493:55;;1544:1;1541;1534:12;1493:55;1584:2;1571:16;1610:2;1602:6;1599:14;1596:34;;;1626:1;1623;1616:12;1596:34;1681:7;1674:4;1664:6;1661:1;1657:14;1653:2;1649:23;1645:34;1642:47;1639:67;;;1702:1;1699;1692:12;1639:67;1733:4;1729:2;1725:13;1715:23;;1757:6;1747:16;;;1782:40;1816:4;1805:9;1801:20;1782:40;:::i;:::-;1772:50;;1875:2;1864:9;1860:18;1847:32;1831:48;;1904:2;1894:8;1891:16;1888:36;;;1920:1;1917;1910:12;1888:36;;1959:60;2011:7;2000:8;1989:9;1985:24;1959:60;:::i;:::-;1068:1011;;;;-1:-1:-1;1068:1011:136;;-1:-1:-1;2038:8:136;;1933:86;1068:1011;-1:-1:-1;;;1068:1011:136:o;2266:186::-;2325:6;2378:2;2366:9;2357:7;2353:23;2349:32;2346:52;;;2394:1;2391;2384:12;2346:52;2417:29;2436:9;2417:29;:::i;:::-;2407:39;2266:186;-1:-1:-1;;;2266:186:136:o;2457:127::-;2518:10;2513:3;2509:20;2506:1;2499:31;2549:4;2546:1;2539:15;2573:4;2570:1;2563:15;2589:253;2661:2;2655:9;2703:4;2691:17;;-1:-1:-1;;;;;2723:34:136;;2759:22;;;2720:62;2717:88;;;2785:18;;:::i;:::-;2821:2;2814:22;2589:253;:::o;2847:275::-;2918:2;2912:9;2983:2;2964:13;;-1:-1:-1;;2960:27:136;2948:40;;-1:-1:-1;;;;;3003:34:136;;3039:22;;;3000:62;2997:88;;;3065:18;;:::i;:::-;3101:2;3094:22;2847:275;;-1:-1:-1;2847:275:136:o;3127:191::-;3195:4;-1:-1:-1;;;;;3217:30:136;;3214:56;;;3250:18;;:::i;:::-;-1:-1:-1;3295:1:136;3291:14;3307:4;3287:25;;3127:191::o;3323:2568::-;3410:5;3439:72;3455:55;3503:6;3455:55;:::i;:::-;3439:72;:::i;:::-;3545:21;;;3430:81;-1:-1:-1;3585:4:136;3605:14;;;;3638:1;3674:15;;;3662:28;;3702:15;;;3699:35;;;3730:1;3727;3720:12;3699:35;3754:6;3769:2116;3785:6;3780:3;3777:15;3769:2116;;;3858:17;;-1:-1:-1;;;;;3932:19:136;;;3929:109;;;3992:1;4021:2;4017;4010:14;3929:109;4061:24;;;;4119:4;4105:12;;;4101:23;4098:113;;;4165:1;4194:2;4190;4183:14;4098:113;4237:22;;:::i;:::-;4286;4305:2;4286:22;:::i;:::-;4279:5;4272:37;4358:2;4354;4350:11;4337:25;4397:1;4388:7;4385:14;4375:112;;4441:1;4470:2;4466;4459:14;4375:112;4507:14;;;4500:31;4554:2;4598:11;;;4585:25;4626:16;;;4623:106;;;4683:1;4712:2;4708;4701:14;4623:106;4761:8;4757:2;4753:17;4742:28;;;4813:3;4806:4;4801:3;4797:14;4793:24;4783:125;;4860:1;4849:12;;4890:3;4885;4878:16;4783:125;4945:3;4932:17;4921:28;;4975:69;4991:52;5039:3;4991:52;:::i;4975:69::-;5088:18;;;5184:12;;;5175:22;;5171:31;;;5128:14;;;;5218:17;;;5215:110;;;5277:1;5307:3;5302;5295:16;5215:110;5351:12;;;;5376:394;5394:8;5387:5;5384:19;5376:394;;;5477:19;;-1:-1:-1;;;;;;5535:34:136;;5523:47;;5513:164;;5621:1;5655:3;5650;5643:16;5513:164;5694:22;;5415:14;;;;5742;;;;5376:394;;;5790:14;;;5783:29;;;;-1:-1:-1;5825:18:136;;-1:-1:-1;;5863:12:136;;;;3802;;3769:2116;;;3773:3;;;;;3323:2568;;;;;:::o;5896:1302::-;6043:6;6051;6059;6067;6120:3;6108:9;6099:7;6095:23;6091:33;6088:53;;;6137:1;6134;6127:12;6088:53;6160:29;6179:9;6160:29;:::i;:::-;6150:39;-1:-1:-1;6208:2:136;6246:18;;;6233:32;-1:-1:-1;;;;;6314:14:136;;;6311:34;;;6341:1;6338;6331:12;6311:34;6379:6;6368:9;6364:22;6354:32;;6424:7;6417:4;6413:2;6409:13;6405:27;6395:55;;6446:1;6443;6436:12;6395:55;6469:93;6554:7;6549:2;6536:16;6531:2;6527;6523:11;6469:93;:::i;:::-;6459:103;;6581:38;6615:2;6604:9;6600:18;6581:38;:::i;:::-;6571:48;;6672:2;6661:9;6657:18;6644:32;6628:48;;6701:2;6691:8;6688:16;6685:36;;;6717:1;6714;6707:12;6685:36;6755:8;6744:9;6740:24;6730:34;;6802:7;6795:4;6791:2;6787:13;6783:27;6773:55;;6824:1;6821;6814:12;6773:55;6860:2;6847:16;6882:2;6878;6875:10;6872:36;;;6888:18;;:::i;:::-;6930:53;6973:2;6954:13;;-1:-1:-1;;6950:27:136;6946:36;;6930:53;:::i;:::-;6917:66;;7006:2;6999:5;6992:17;7046:7;7041:2;7036;7032;7028:11;7024:20;7021:33;7018:53;;;7067:1;7064;7057:12;7018:53;7122:2;7117;7113;7109:11;7104:2;7097:5;7093:14;7080:45;7166:1;7161:2;7156;7149:5;7145:14;7141:23;7134:34;;7187:5;7177:15;;;;;5896:1302;;;;;;;:::o;7385:299::-;7557:9;7594:84;7663:14;7655:6;7648:5;7594:84;:::i;7998:127::-;8059:10;8054:3;8050:20;8047:1;8040:31;8090:4;8087:1;8080:15;8114:4;8111:1;8104:15;8130:127;8191:10;8186:3;8182:20;8179:1;8172:31;8222:4;8219:1;8212:15;8246:4;8243:1;8236:15;8451:127;8512:10;8507:3;8503:20;8500:1;8493:31;8543:4;8540:1;8533:15;8567:4;8564:1;8557:15;8583:135;8622:3;8643:17;;;8640:43;;8663:18;;:::i;:::-;-1:-1:-1;8710:1:136;8699:13;;8583:135::o;8723:250::-;8808:1;8818:113;8832:6;8829:1;8826:13;8818:113;;;8908:11;;;8902:18;8889:11;;;8882:39;8854:2;8847:10;8818:113;;;-1:-1:-1;;8965:1:136;8947:16;;8940:27;8723:250::o;8978:270::-;9019:3;9057:5;9051:12;9084:6;9079:3;9072:19;9100:76;9169:6;9162:4;9157:3;9153:14;9146:4;9139:5;9135:16;9100:76;:::i;:::-;9230:2;9209:15;-1:-1:-1;;9205:29:136;9196:39;;;;9237:4;9192:50;;8978:270;-1:-1:-1;;8978:270:136:o;9253:2092::-;9523:4;9552:2;9592;9581:9;9577:18;9622:2;9611:9;9604:21;9645:6;9680;9674:13;9711:6;9703;9696:22;9737:3;9727:13;;9771:2;9760:9;9756:18;9749:25;;9833:2;9823:6;9820:1;9816:14;9805:9;9801:30;9797:39;9855:4;9894:2;9886:6;9882:15;9915:1;9925:1249;9939:6;9936:1;9933:13;9925:1249;;;10004:22;;;-1:-1:-1;;10000:37:136;9988:50;;10061:13;;10148:9;;-1:-1:-1;;;;;10144:35:136;10129:51;;10219:11;;;10213:18;10101:15;;;;10271:1;10254:19;;10244:170;;10324:10;10319:3;10315:20;10312:1;10305:31;10363:4;10360:1;10353:15;10395:4;10392:1;10385:15;10244:170;10434:15;;;10427:37;10487:4;10532:11;;;10526:18;10564:15;;;10557:27;;;10645:21;;10679:24;;;;10769:23;;;;-1:-1:-1;;10725:15:136;;;;10830:236;10846:8;10841:3;10838:17;10830:236;;;10927:15;;-1:-1:-1;;;;;;10923:42:136;10909:57;;11035:17;;;;10874:1;10865:11;;;;;10992:14;;;;10830:236;;;-1:-1:-1;11152:12:136;;;;11089:5;-1:-1:-1;;;11117:15:136;;;;9961:1;9954:9;9925:1249;;;-1:-1:-1;;;;;;;287:31:136;;11210:18;;;275:44;11267:22;;;11260:4;11245:20;;11238:52;11307:32;11271:6;11324;11307:32;:::i;:::-;11299:40;9253:2092;-1:-1:-1;;;;;;;;;;9253:2092:136:o;11350:657::-;11519:2;11571:21;;;11641:13;;11544:18;;;11663:22;;;11490:4;;11519:2;11742:15;;;;11716:2;11701:18;;;11490:4;11785:196;11799:6;11796:1;11793:13;11785:196;;;11864:13;;-1:-1:-1;;;;;;11860:40:136;11848:53;;11956:15;;;;11921:12;;;;11821:1;11814:9;11785:196;;;-1:-1:-1;11998:3:136;;11350:657;-1:-1:-1;;;;;;11350:657:136:o;12012:197::-;12050:3;12078:6;12119:2;12112:5;12108:14;12146:2;12137:7;12134:15;12131:41;;12152:18;;:::i;:::-;12201:1;12188:15;;12012:197;-1:-1:-1;;;12012:197:136:o;12214:136::-;12253:3;12281:5;12271:39;;12290:18;;:::i;:::-;-1:-1:-1;;;12326:18:136;;12214:136::o;12355:127::-;12416:10;12411:3;12407:20;12404:1;12397:31;12447:4;12444:1;12437:15;12471:4;12468:1;12461:15;12487:287;12616:3;12654:6;12648:13;12670:66;12729:6;12724:3;12717:4;12709:6;12705:17;12670:66;:::i;:::-;12752:16;;;;;12487:287;-1:-1:-1;;12487:287:136:o;12779:314::-;-1:-1:-1;;;;;12954:32:136;;12936:51;;13023:2;13018;13003:18;;12996:30;;;-1:-1:-1;;13043:44:136;;13068:18;;13060:6;13043:44;:::i;:::-;13035:52;12779:314;-1:-1:-1;;;;12779:314:136:o","linkReferences":{}},"methodIdentifiers":{"_owner()":"b2bdfa7b","collateralVaultTemplate()":"77122d56","diamondCut((address,uint8,bytes4[])[],address,bytes)":"1f931c1c","gardensFeeReceiver()":"b8bed901","initializeOwner(address)":"8c5f36bb","initializeOwnerCut(address,(address,uint8,bytes4[])[],address,bytes)":"944ab9ed","nonce()":"affed0e0","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","strategyTemplate()":"5c94e4d2"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotAddFunctionToDiamondThatAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotAddSelectorsToZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveFunctionThatDoesNotExist\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotRemoveImmutableFunction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionThatDoesNotExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4[]\",\"name\":\"_selectors\",\"type\":\"bytes4[]\"}],\"name\":\"CannotReplaceFunctionsFromFacetWithZeroAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_selector\",\"type\":\"bytes4\"}],\"name\":\"CannotReplaceImmutableFunction\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DiamondAlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_functionSelector\",\"type\":\"bytes4\"}],\"name\":\"FunctionNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_action\",\"type\":\"uint8\"}],\"name\":\"IncorrectFacetCutAction\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_initializationContractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"InitializationFunctionReverted\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_contractAddress\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_message\",\"type\":\"string\"}],\"name\":\"NoBytecodeAtAddress\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"NoSelectorsProvidedForFacetForCut\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_contractOwner\",\"type\":\"address\"}],\"name\":\"NotContractOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_facetAddress\",\"type\":\"address\"}],\"name\":\"RemoveFacetAddressMustBeZeroAddress\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"indexed\":false,\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"DiamondCut\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"diamondCut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initializeOwner\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_diamondCut\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_init\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_calldata\",\"type\":\"bytes\"}],\"name\":\"initializeOwnerCut\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"params\":{\"_calldata\":\"A function call, including function selector and arguments _calldata is executed with delegatecall on _init\",\"_diamondCut\":\"Contains the facet addresses and function selectors\",\"_init\":\"The address of the contract or facet to execute _calldata\"}},\"proxiableUUID()\":{\"details\":\"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"diamondCut((address,uint8,bytes4[])[],address,bytes)\":{\"notice\":\"Add/replace/remove any number of functions and optionally execute a function with delegatecall\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":\"RegistryFactoryDiamond\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"pkg/contracts/src/diamonds/BaseDiamond.sol\":{\"keccak256\":\"0xfa4aa595fad506af3f7f1f1a8706cf052f31a66de4a5da856864dc41e22abd40\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ff36a0b4d2001ad27a235eb8a980e7db12a37e1c6e149a92c131de955b1ba02f\",\"dweb:/ipfs/QmNiBVSmfFmuUPLiuTRYShz6K6zKbHiCDnfgxpo1TqLhXC\"]},\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":{\"keccak256\":\"0xc1ec04abe147dffbc963a2529f7ccc0d25c0ce1e9abf4f09b13f3a2101da5b38\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ce4b0a7eb89fc40611f04d2db03e741b5aaee36002c6237da9a36e4e7fffedd9\",\"dweb:/ipfs/QmS4iFdTqPrMJpNWrohcYnM6F8PiLiAtfCtcLEahxtwdNQ\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0x01675a91456b875c07bc26e3715dd8be8471e405db41ff77b89109922a8d187f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://69a8844c1a0993d94b0d2f468323e93f04e2bba8a1f7012318b96e5b2a892344\",\"dweb:/ipfs/QmYMr41yUDJDFH19qieAqzPyFDApUyQu5wtajnHMfmKGzB\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotAddFunctionToDiamondThatAlreadyExists"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotAddSelectorsToZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveFunctionThatDoesNotExist"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotRemoveImmutableFunction"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionThatDoesNotExists"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet"},{"inputs":[{"internalType":"bytes4[]","name":"_selectors","type":"bytes4[]"}],"type":"error","name":"CannotReplaceFunctionsFromFacetWithZeroAddress"},{"inputs":[{"internalType":"bytes4","name":"_selector","type":"bytes4"}],"type":"error","name":"CannotReplaceImmutableFunction"},{"inputs":[],"type":"error","name":"DiamondAlreadyInitialized"},{"inputs":[{"internalType":"bytes4","name":"_functionSelector","type":"bytes4"}],"type":"error","name":"FunctionNotFound"},{"inputs":[{"internalType":"uint8","name":"_action","type":"uint8"}],"type":"error","name":"IncorrectFacetCutAction"},{"inputs":[{"internalType":"address","name":"_initializationContractAddress","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"type":"error","name":"InitializationFunctionReverted"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"string","name":"_message","type":"string"}],"type":"error","name":"NoBytecodeAtAddress"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"NoSelectorsProvidedForFacetForCut"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_contractOwner","type":"address"}],"type":"error","name":"NotContractOwner"},{"inputs":[{"internalType":"address","name":"_facetAddress","type":"address"}],"type":"error","name":"RemoveFacetAddressMustBeZeroAddress"},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}],"indexed":false},{"internalType":"address","name":"_init","type":"address","indexed":false},{"internalType":"bytes","name":"_calldata","type":"bytes","indexed":false}],"type":"event","name":"DiamondCut","anonymous":false},{"inputs":[],"stateMutability":"payable","type":"fallback"},{"inputs":[],"stateMutability":"view","type":"function","name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_init","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"diamondCut"},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeOwner"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"struct IDiamond.FacetCut[]","name":"_diamondCut","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_init","type":"address"},{"internalType":"bytes","name":"_calldata","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"initializeOwnerCut"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"params":{"_calldata":"A function call, including function selector and arguments _calldata is executed with delegatecall on _init","_diamondCut":"Contains the facet addresses and function selectors","_init":"The address of the contract or facet to execute _calldata"}},"proxiableUUID()":{"details":"Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy."}},"version":1},"userdoc":{"kind":"user","methods":{"diamondCut((address,uint8,bytes4[])[],address,bytes)":{"notice":"Add/replace/remove any number of functions and optionally execute a function with delegatecall"}},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":"RegistryFactoryDiamond"},"evmVersion":"paris","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"pkg/contracts/src/diamonds/BaseDiamond.sol":{"keccak256":"0xfa4aa595fad506af3f7f1f1a8706cf052f31a66de4a5da856864dc41e22abd40","urls":["bzz-raw://ff36a0b4d2001ad27a235eb8a980e7db12a37e1c6e149a92c131de955b1ba02f","dweb:/ipfs/QmNiBVSmfFmuUPLiuTRYShz6K6zKbHiCDnfgxpo1TqLhXC"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":{"keccak256":"0xc1ec04abe147dffbc963a2529f7ccc0d25c0ce1e9abf4f09b13f3a2101da5b38","urls":["bzz-raw://ce4b0a7eb89fc40611f04d2db03e741b5aaee36002c6237da9a36e4e7fffedd9","dweb:/ipfs/QmS4iFdTqPrMJpNWrohcYnM6F8PiLiAtfCtcLEahxtwdNQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0x01675a91456b875c07bc26e3715dd8be8471e405db41ff77b89109922a8d187f","urls":["bzz-raw://69a8844c1a0993d94b0d2f468323e93f04e2bba8a1f7012318b96e5b2a892344","dweb:/ipfs/QmYMr41yUDJDFH19qieAqzPyFDApUyQu5wtajnHMfmKGzB"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":73497,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":73499,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":73503,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap1","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":73505,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":73509,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap2","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73511,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73516,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73493_storage)"},{"astId":73518,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73520,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73522,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73524,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73528,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap3","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)73493_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73493_storage"},"t_struct(CommunityInfo)73493_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73490,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73492,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol","id":73530,"exportedSymbols":{"BaseDiamond":[73482],"CommunityInfo":[73493],"LibDiamond":[75442],"RegistryFactoryDiamond":[73529]},"nodeType":"SourceUnit","src":"42:1243:110","nodes":[{"id":73484,"nodeType":"PragmaDirective","src":"42:24:110","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73486,"nodeType":"ImportDirective","src":"68:58:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"@src/diamonds/BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":73530,"sourceUnit":73483,"symbolAliases":[{"foreign":{"id":73485,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73482,"src":"76:11:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73488,"nodeType":"ImportDirective","src":"127:66:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"@src/diamonds/libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":73530,"sourceUnit":75443,"symbolAliases":[{"foreign":{"id":73487,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75442,"src":"135:10:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73493,"nodeType":"StructDefinition","src":"196:57:110","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":73490,"mutability":"mutable","name":"fee","nameLocation":"231:3:110","nodeType":"VariableDeclaration","scope":73493,"src":"223:11:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73489,"name":"uint256","nodeType":"ElementaryTypeName","src":"223:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":73492,"mutability":"mutable","name":"valid","nameLocation":"245:5:110","nodeType":"VariableDeclaration","scope":73493,"src":"240:10:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73491,"name":"bool","nodeType":"ElementaryTypeName","src":"240:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"203:13:110","scope":73530,"visibility":"public"},{"id":73529,"nodeType":"ContractDefinition","src":"255:1029:110","nodes":[{"id":73497,"nodeType":"VariableDeclaration","src":"685:27:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initialized","nameLocation":"700:12:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":73496,"name":"uint8","nodeType":"ElementaryTypeName","src":"685:5:110","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"private"},{"id":73499,"nodeType":"VariableDeclaration","src":"718:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initializing","nameLocation":"731:13:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73498,"name":"bool","nodeType":"ElementaryTypeName","src":"718:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"id":73503,"nodeType":"VariableDeclaration","src":"750:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap1","nameLocation":"770:6:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73500,"name":"uint256","nodeType":"ElementaryTypeName","src":"750:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73502,"length":{"hexValue":"3530","id":73501,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"758:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"750:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"},{"id":73505,"nodeType":"VariableDeclaration","src":"782:22:110","nodes":[],"constant":false,"functionSelector":"b2bdfa7b","mutability":"mutable","name":"_owner","nameLocation":"798:6:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73504,"name":"address","nodeType":"ElementaryTypeName","src":"782:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73509,"nodeType":"VariableDeclaration","src":"810:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap2","nameLocation":"830:6:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":73506,"name":"uint256","nodeType":"ElementaryTypeName","src":"810:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73508,"length":{"hexValue":"3439","id":73507,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"818:2:110","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"810:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"},{"id":73511,"nodeType":"VariableDeclaration","src":"842:20:110","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"857:5:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73510,"name":"uint256","nodeType":"ElementaryTypeName","src":"842:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":73516,"nodeType":"VariableDeclaration","src":"869:49:110","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"903:15:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73493_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":73515,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":73512,"name":"address","nodeType":"ElementaryTypeName","src":"877:7:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"869:33:110","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73493_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":73514,"nodeType":"UserDefinedTypeName","pathNode":{"id":73513,"name":"CommunityInfo","nameLocations":["888:13:110"],"nodeType":"IdentifierPath","referencedDeclaration":73493,"src":"888:13:110"},"referencedDeclaration":73493,"src":"888:13:110","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73493_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":73518,"nodeType":"VariableDeclaration","src":"924:33:110","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"939:18:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73517,"name":"address","nodeType":"ElementaryTypeName","src":"924:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73520,"nodeType":"VariableDeclaration","src":"963:40:110","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"978:25:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73519,"name":"address","nodeType":"ElementaryTypeName","src":"963:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73522,"nodeType":"VariableDeclaration","src":"1009:31:110","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"1024:16:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73521,"name":"address","nodeType":"ElementaryTypeName","src":"1009:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73524,"nodeType":"VariableDeclaration","src":"1046:38:110","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"1061:23:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73523,"name":"address","nodeType":"ElementaryTypeName","src":"1046:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73528,"nodeType":"VariableDeclaration","src":"1090:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap3","nameLocation":"1110:6:110","scope":73529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73525,"name":"uint256","nodeType":"ElementaryTypeName","src":"1090:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73527,"length":{"hexValue":"3530","id":73526,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1098:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1090:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73494,"name":"BaseDiamond","nameLocations":["290:11:110"],"nodeType":"IdentifierPath","referencedDeclaration":73482,"src":"290:11:110"},"id":73495,"nodeType":"InheritanceSpecifier","src":"290:11:110"}],"canonicalName":"RegistryFactoryDiamond","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[73529,73482,74574,74555,54984],"name":"RegistryFactoryDiamond","nameLocation":"264:22:110","scope":73530,"usedErrors":[73296,73298,74663,74667,74672,74678,74682,74686,74691,74695,74699,74703,74707,74711,74715,74721]}],"license":"AGPL-3.0-only"},"id":110} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json b/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json index c0a8d751..b6e00179 100644 --- a/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json +++ b/pkg/contracts/out/RegistryFactoryFacet.sol/RegistryFactoryFacet.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"cutsCommunity","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"}],"stateMutability":"view"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_cuts","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b50608051612a1561004c6000396000818161073c0152818161077f01528181610810015281816108530152610b980152612a156000f3fe6080604052600436106200014c5760003560e01c806302c1d0b114620001515780630a992e0c146200018b5780631459457a14620001bf5780631b71f0e414620001e65780633659cfe6146200020b5780634f1ef28614620002305780634f1f4c0c146200024757806352d1902d146200026c5780635a2c8ace14620002845780635c94e4d214620002a95780635decae0214620002cb578063715018a614620002f057806377122d5614620003085780638279c7db146200032a5780638da5cb5b146200034f57806390a74e2e1462000367578063987435be146200039c578063affed0e014620003bc578063b0d3713a14620003d4578063b5b3ca2c14620003f9578063b8bed901146200041e578063beb331a31462000440578063c4d66de81462000465578063f2fde38b146200048a578063f5016b5e14620004af578063ffa1ad741462000500575b600080fd5b3480156200015e57600080fd5b5060685462000173906001600160a01b031681565b604051620001829190620017d8565b60405180910390f35b3480156200019857600080fd5b50620001b0620001aa36600462001814565b62000535565b60405190815260200162000182565b348015620001cc57600080fd5b50620001e4620001de36600462001834565b6200059b565b005b348015620001f357600080fd5b50620001e46200020536600462001814565b62000706565b3480156200021857600080fd5b50620001e46200022a36600462001814565b62000732565b620001e4620002413660046200196e565b62000806565b3480156200025457600080fd5b50620001e462000266366004620019d8565b620008cb565b3480156200027957600080fd5b50620001b062000b8b565b3480156200029157600080fd5b50620001e4620002a336600462001ab0565b62000c3c565b348015620002b657600080fd5b5060695462000173906001600160a01b031681565b348015620002d857600080fd5b50620001e4620002ea36600462001814565b62000cad565b348015620002fd57600080fd5b50620001e462000cd9565b3480156200031557600080fd5b50606a5462000173906001600160a01b031681565b3480156200033757600080fd5b50620001e46200034936600462001814565b62000cf1565b3480156200035c57600080fd5b506200017362000d4d565b3480156200037457600080fd5b506200038c6200038636600462001aea565b62000dee565b6040516200018292919062001b3d565b348015620003a957600080fd5b506067546001600160a01b031662000173565b348015620003c957600080fd5b50620001b060655481565b348015620003e157600080fd5b50620001e4620003f336600462001814565b62000e29565b3480156200040657600080fd5b50620001e46200041836600462001b5c565b62000e55565b3480156200042b57600080fd5b5060675462000173906001600160a01b031681565b3480156200044d57600080fd5b50620001736200045f36600462001c23565b62000eb1565b3480156200047257600080fd5b50620001e46200048436600462001814565b620010c2565b3480156200049757600080fd5b50620001e4620004a936600462001814565b6200113a565b348015620004bc57600080fd5b50620004ef620004ce36600462001814565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000182565b3480156200050d57600080fd5b506040805180820182526003815262302e3160e81b6020820152905162000182919062001dd2565b6001600160a01b03811660009081526066602052604081206001015460ff166200057f578160405163f5a6943d60e01b8152600401620005769190620017d8565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005bc5750600054600160ff909116105b80620005e15750620005ce30620011ab565b158015620005e1575060005460ff166001145b620006005760405162461bcd60e51b8152600401620005769062001de7565b6000805460ff19166001179055801562000624576000805461ff0019166101001790555b6200062f86620010c2565b60006065556200063f85620011ba565b6200064a84620011ba565b6200065582620011ba565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a805492851692909116919091179055604051600080516020620029c083398151915290620006c0908790620017d8565b60405180910390a18015620006fe576000805461ff001916905560405160018152600080516020620029798339815191529060200160405180910390a15b505050505050565b62000710620011e2565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200077d5760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007b162001245565b6001600160a01b031614620007da5760405162461bcd60e51b8152600401620005769062001e70565b620007e58162001262565b604080516000808252602082019092526200080391839190620012b4565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008515760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200088562001245565b6001600160a01b031614620008ae5760405162461bcd60e51b8152600401620005769062001e70565b620008b98262001262565b620008c782826001620012b4565b5050565b620008d5620011e2565b600054600290610100900460ff16158015620008f8575060005460ff8083169116105b620009175760405162461bcd60e51b8152600401620005769062001de7565b6000805461ffff191660ff83161761010017905562000936876200113a565b6200094186620011ba565b6200094c82620011ba565b606880546001600160a01b038089166001600160a01b03199283161790925560698054868416908316179055606a80549285169290911691909117905560005b8481101562000b5157609d6040518060600160405280888885818110620009b757620009b762001eab565b9050602002810190620009cb919062001ec1565b620009db90602081019062001814565b6001600160a01b03168152602001888885818110620009fe57620009fe62001eab565b905060200281019062000a12919062001ec1565b62000a2590604081019060200162001ee2565b600281111562000a395762000a3962001b04565b815260200188888581811062000a535762000a5362001eab565b905060200281019062000a67919062001ec1565b62000a7790604081019062001f05565b80806020026020016040519081016040528093929190818152602001838360200280828437600092018290525093909452505083546001810185559381526020908190208351600295860290910180546001600160a01b031981166001600160a01b0390931692831782559285015194959094935084926001600160a81b03191690911790600160a01b90849081111562000b165762000b1662001b04565b02179055506040820151805162000b38916001840191602090910190620016f7565b505050808062000b489062001f58565b9150506200098c565b506000805461ff001916905560405160ff82168152600080516020620029798339815191529060200160405180910390a150505050505050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462000c285760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000576565b506000805160206200295983398151915290565b62000c46620011e2565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b62000cb7620011e2565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000ce3620011e2565b62000cef600062001431565b565b62000cfb620011e2565b62000d0681620011ba565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620029c08339815191529062000d42908390620017d8565b60405180910390a150565b60008062000d636033546001600160a01b031690565b9050806001600160a01b03163b60000362000d7d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000dda575060408051601f3d908101601f1916820190925262000dd79181019062001f80565b60015b62000de457919050565b92915050565b5090565b609d818154811062000dff57600080fd5b60009182526020909120600290910201546001600160a01b0381169150600160a01b900460ff1682565b62000e33620011e2565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000e5f620011e2565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000ca1565b606580546000918262000ec48362001f58565b9091555060808301523060a08301526068546000906001600160a01b0316638c5f36bb60e01b62000ef462000d4d565b60405160240162000f069190620017d8565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000f4590620017a6565b62000f5292919062001fa0565b604051809103906000f08015801562000f6f573d6000803e3d6000fd5b506040516307e4c70760e21b81529091506001600160a01b03821690631f931c1c9062000fa590609d9060009060040162001fd4565b600060405180830381600087803b15801562000fc057600080fd5b505af115801562000fd5573d6000803e3d6000fd5b5050606954606a548493506001600160a01b038085169350633419635592889290821691166200100462000d4d565b6040518563ffffffff1660e01b8152600401620010259493929190620022d6565b600060405180830381600087803b1580156200104057600080fd5b505af115801562001055573d6000803e3d6000fd5b5050506001600160a01b038216600090815260666020526040908190206001908101805460ff19169091179055517fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299150620010b3908390620017d8565b60405180910390a19392505050565b600054610100900460ff166200112f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000576565b620008038162001431565b62001144620011e2565b6001600160a01b0381166200112f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000576565b6001600160a01b03163b151590565b6001600160a01b03811662000803576040516303988b8160e61b815260040160405180910390fd5b33620011ed62000d4d565b6001600160a01b03161462000cef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000576565b60008051602062002959833981519152546001600160a01b031690565b336200126d62000d4d565b6001600160a01b0316146200080357336200128762000d4d565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000576565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620012ef57620012ea8362001483565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156200134c575060408051601f3d908101601f1916820190925262001349918101906200241e565b60015b620013b15760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000576565b600080516020620029598339815191528114620014235760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000576565b50620012ea83838362001522565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6200148e81620011ab565b620014f25760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000576565b6000805160206200295983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200152d8362001553565b6000825111806200153b5750805b15620012ea576200154d838362001595565b50505050565b6200155e8162001483565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620015bd83836040518060600160405280602781526020016200299960279139620015c4565b9392505050565b6060600080856001600160a01b031685604051620015e3919062002438565b600060405180830381855af49150503d806000811462001620576040519150601f19603f3d011682016040523d82523d6000602084013e62001625565b606091505b5091509150620016388683838762001642565b9695505050505050565b60608315620016b6578251600003620016ae576200166085620011ab565b620016ae5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000576565b5081620016c2565b620016c28383620016ca565b949350505050565b815115620016db5781518083602001fd5b8060405162461bcd60e51b815260040162000576919062001dd2565b82805482825590600052602060002090600701600890048101928215620017985791602002820160005b838211156200176457835183826101000a81548163ffffffff021916908360e01c0217905550926020019260040160208160030104928301926001030262001721565b8015620017965782816101000a81549063ffffffff021916905560040160208160030104928301926001030262001764565b505b5062000dea929150620017b4565b6104ec806200244d83390190565b5b8082111562000dea5760008155600101620017b5565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200080357600080fd5b80356200180f81620017ec565b919050565b6000602082840312156200182757600080fd5b8135620015bd81620017ec565b600080600080600060a086880312156200184d57600080fd5b85356200185a81620017ec565b945060208601356200186c81620017ec565b935060408601356200187e81620017ec565b925060608601356200189081620017ec565b91506080860135620018a281620017ec565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b0381118282101715620018ec57620018ec620018b0565b60405290565b60006001600160401b03808411156200190f576200190f620018b0565b604051601f8501601f19908116603f011681019082821181831017156200193a576200193a620018b0565b816040528093508581528686860111156200195457600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200198257600080fd5b82356200198f81620017ec565b915060208301356001600160401b03811115620019ab57600080fd5b8301601f81018513620019bd57600080fd5b620019ce85823560208401620018f2565b9150509250929050565b60008060008060008060a08789031215620019f257600080fd5b8635620019ff81620017ec565b9550602087013562001a1181620017ec565b945060408701356001600160401b038082111562001a2e57600080fd5b818901915089601f83011262001a4357600080fd5b81358181111562001a5357600080fd5b8a60208260051b850101111562001a6957600080fd5b60208301965080955050505062001a836060880162001802565b915062001a936080880162001802565b90509295509295509295565b803580151581146200180f57600080fd5b6000806040838503121562001ac457600080fd5b823562001ad181620017ec565b915062001ae16020840162001a9f565b90509250929050565b60006020828403121562001afd57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6003811062001b3957634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038316815260408101620015bd602083018462001b1a565b6000806040838503121562001b7057600080fd5b823562001b7d81620017ec565b946020939093013593505050565b600082601f83011262001b9d57600080fd5b620015bd83833560208501620018f2565b60006040828403121562001bc157600080fd5b604080519081016001600160401b03808211838310171562001be75762001be7620018b0565b8160405282935084358352602085013591508082111562001c0757600080fd5b5062001c168582860162001b8b565b6020830152505092915050565b60006020828403121562001c3657600080fd5b81356001600160401b038082111562001c4e57600080fd5b90830190610180828603121562001c6457600080fd5b62001c6e620018c6565b62001c798362001802565b815262001c896020840162001802565b602082015260408301356040820152606083013560608201526080830135608082015262001cba60a0840162001802565b60a082015262001ccd60c0840162001802565b60c082015260e08301358281111562001ce557600080fd5b62001cf38782860162001bae565b60e08301525061010062001d0981850162001802565b90820152610120838101358381111562001d2257600080fd5b62001d308882870162001b8b565b82840152505061014062001d4681850162001a9f565b90820152610160838101358381111562001d5f57600080fd5b62001d6d8882870162001b8b565b918301919091525095945050505050565b60005b8381101562001d9b57818101518382015260200162001d81565b50506000910152565b6000815180845262001dbe81602086016020860162001d7e565b601f01601f19169290920160200192915050565b602081526000620015bd602083018462001da4565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60008235605e1983360301811262001ed857600080fd5b9190910192915050565b60006020828403121562001ef557600080fd5b813560038110620015bd57600080fd5b6000808335601e1984360301811262001f1d57600080fd5b8301803591506001600160401b0382111562001f3857600080fd5b6020019150600581901b360382131562001f5157600080fd5b9250929050565b60006001820162001f7957634e487b7160e01b600052601160045260246000fd5b5060010190565b60006020828403121562001f9357600080fd5b8151620015bd81620017ec565b6001600160a01b0383168152604060208201819052600090620016c29083018462001da4565b6001600160e01b0319169052565b60608152600060608201845480825260808401915060808160051b8501018660005260208060002060005b848110156200228957878403607f1901865281546001600160a01b038116855260608501906200203985870160a083901c60ff1662001b1a565b506060604086015260018381018054808452600091825260208083209401905b806007840110156200212157845462002076838260e01b62001fc6565b6001600160e01b031962002093848b0160c084901b831662001fc6565b620020a760408501828460a01b1662001fc6565b620020bb60608501828460801b1662001fc6565b620020cf60808501828460601b1662001fc6565b620020e360a08501828460401b1662001fc6565b620020f660c0850182848d1b1662001fc6565b6200210760e0850182841662001fc6565b505061010082019150838501945060088301925062002059565b9354938083101562002145576200213c828660e01b62001fc6565b91830191908701905b808310156200217157620021688260c087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200219d57620021948260a087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021c957620021c082608087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021f557620021ec82606087901b6001600160e01b03191662001fc6565b91830191908701905b8083101562002221576200221882604087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200224b576200224282868a1b6001600160e01b03191662001fc6565b91830191908701905b808310156200226f576200226a826001600160e01b0319871662001fc6565b908701905b509886019896505050600292909201915060010162001fff565b50506200229981870188620017cb565b5084810360408601526000815260208101979650505050505050565b805182526000602082015160406020850152620016c2604085018262001da4565b60808152620022ea608082018651620017cb565b600060208601516200230060a0840182620017cb565b50604086015160c0830152606086015160e08301526080860151610100818185015260a088015191506101206200233a81860184620017cb565b60c089015192506101406200235281870185620017cb565b60e08a01519350610180610160818189015262002374610200890187620022b5565b948c01519495506200238988830186620017cb565b838c01519450607f19935083888703016101a0890152620023ab868662001da4565b9550828c01519450620023c36101c089018615159052565b808c0151945050505080858403016101e086015250620023e4828262001da4565b92505050620023f76020830186620017cb565b620024066040830185620017cb565b620024156060830184620017cb565b95945050505050565b6000602082840312156200243157600080fd5b5051919050565b6000825162001ed881846020870162001d7e56fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220dafeddf6f9a5a991f315268eeaa99492bbcf382c81b1b686bf227b30551269cc64736f6c63430008130033","sourceMap":"1002:2516:114:-:0;;;1088:4:64;1045:48;;1002:2516:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106200014c5760003560e01c806302c1d0b114620001515780630a992e0c146200018b5780631459457a14620001bf5780631b71f0e414620001e65780633659cfe6146200020b5780634f1ef28614620002305780634f1f4c0c146200024757806352d1902d146200026c5780635a2c8ace14620002845780635c94e4d214620002a95780635decae0214620002cb578063715018a614620002f057806377122d5614620003085780638279c7db146200032a5780638da5cb5b146200034f57806390a74e2e1462000367578063987435be146200039c578063affed0e014620003bc578063b0d3713a14620003d4578063b5b3ca2c14620003f9578063b8bed901146200041e578063beb331a31462000440578063c4d66de81462000465578063f2fde38b146200048a578063f5016b5e14620004af578063ffa1ad741462000500575b600080fd5b3480156200015e57600080fd5b5060685462000173906001600160a01b031681565b604051620001829190620017d8565b60405180910390f35b3480156200019857600080fd5b50620001b0620001aa36600462001814565b62000535565b60405190815260200162000182565b348015620001cc57600080fd5b50620001e4620001de36600462001834565b6200059b565b005b348015620001f357600080fd5b50620001e46200020536600462001814565b62000706565b3480156200021857600080fd5b50620001e46200022a36600462001814565b62000732565b620001e4620002413660046200196e565b62000806565b3480156200025457600080fd5b50620001e462000266366004620019d8565b620008cb565b3480156200027957600080fd5b50620001b062000b8b565b3480156200029157600080fd5b50620001e4620002a336600462001ab0565b62000c3c565b348015620002b657600080fd5b5060695462000173906001600160a01b031681565b348015620002d857600080fd5b50620001e4620002ea36600462001814565b62000cad565b348015620002fd57600080fd5b50620001e462000cd9565b3480156200031557600080fd5b50606a5462000173906001600160a01b031681565b3480156200033757600080fd5b50620001e46200034936600462001814565b62000cf1565b3480156200035c57600080fd5b506200017362000d4d565b3480156200037457600080fd5b506200038c6200038636600462001aea565b62000dee565b6040516200018292919062001b3d565b348015620003a957600080fd5b506067546001600160a01b031662000173565b348015620003c957600080fd5b50620001b060655481565b348015620003e157600080fd5b50620001e4620003f336600462001814565b62000e29565b3480156200040657600080fd5b50620001e46200041836600462001b5c565b62000e55565b3480156200042b57600080fd5b5060675462000173906001600160a01b031681565b3480156200044d57600080fd5b50620001736200045f36600462001c23565b62000eb1565b3480156200047257600080fd5b50620001e46200048436600462001814565b620010c2565b3480156200049757600080fd5b50620001e4620004a936600462001814565b6200113a565b348015620004bc57600080fd5b50620004ef620004ce36600462001814565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000182565b3480156200050d57600080fd5b506040805180820182526003815262302e3160e81b6020820152905162000182919062001dd2565b6001600160a01b03811660009081526066602052604081206001015460ff166200057f578160405163f5a6943d60e01b8152600401620005769190620017d8565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005bc5750600054600160ff909116105b80620005e15750620005ce30620011ab565b158015620005e1575060005460ff166001145b620006005760405162461bcd60e51b8152600401620005769062001de7565b6000805460ff19166001179055801562000624576000805461ff0019166101001790555b6200062f86620010c2565b60006065556200063f85620011ba565b6200064a84620011ba565b6200065582620011ba565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a805492851692909116919091179055604051600080516020620029c083398151915290620006c0908790620017d8565b60405180910390a18015620006fe576000805461ff001916905560405160018152600080516020620029798339815191529060200160405180910390a15b505050505050565b62000710620011e2565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200077d5760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007b162001245565b6001600160a01b031614620007da5760405162461bcd60e51b8152600401620005769062001e70565b620007e58162001262565b604080516000808252602082019092526200080391839190620012b4565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008515760405162461bcd60e51b8152600401620005769062001e35565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200088562001245565b6001600160a01b031614620008ae5760405162461bcd60e51b8152600401620005769062001e70565b620008b98262001262565b620008c782826001620012b4565b5050565b620008d5620011e2565b600054600290610100900460ff16158015620008f8575060005460ff8083169116105b620009175760405162461bcd60e51b8152600401620005769062001de7565b6000805461ffff191660ff83161761010017905562000936876200113a565b6200094186620011ba565b6200094c82620011ba565b606880546001600160a01b038089166001600160a01b03199283161790925560698054868416908316179055606a80549285169290911691909117905560005b8481101562000b5157609d6040518060600160405280888885818110620009b757620009b762001eab565b9050602002810190620009cb919062001ec1565b620009db90602081019062001814565b6001600160a01b03168152602001888885818110620009fe57620009fe62001eab565b905060200281019062000a12919062001ec1565b62000a2590604081019060200162001ee2565b600281111562000a395762000a3962001b04565b815260200188888581811062000a535762000a5362001eab565b905060200281019062000a67919062001ec1565b62000a7790604081019062001f05565b80806020026020016040519081016040528093929190818152602001838360200280828437600092018290525093909452505083546001810185559381526020908190208351600295860290910180546001600160a01b031981166001600160a01b0390931692831782559285015194959094935084926001600160a81b03191690911790600160a01b90849081111562000b165762000b1662001b04565b02179055506040820151805162000b38916001840191602090910190620016f7565b505050808062000b489062001f58565b9150506200098c565b506000805461ff001916905560405160ff82168152600080516020620029798339815191529060200160405180910390a150505050505050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462000c285760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000576565b506000805160206200295983398151915290565b62000c46620011e2565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b62000cb7620011e2565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000ce3620011e2565b62000cef600062001431565b565b62000cfb620011e2565b62000d0681620011ba565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620029c08339815191529062000d42908390620017d8565b60405180910390a150565b60008062000d636033546001600160a01b031690565b9050806001600160a01b03163b60000362000d7d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000dda575060408051601f3d908101601f1916820190925262000dd79181019062001f80565b60015b62000de457919050565b92915050565b5090565b609d818154811062000dff57600080fd5b60009182526020909120600290910201546001600160a01b0381169150600160a01b900460ff1682565b62000e33620011e2565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000e5f620011e2565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000ca1565b606580546000918262000ec48362001f58565b9091555060808301523060a08301526068546000906001600160a01b0316638c5f36bb60e01b62000ef462000d4d565b60405160240162000f069190620017d8565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000f4590620017a6565b62000f5292919062001fa0565b604051809103906000f08015801562000f6f573d6000803e3d6000fd5b506040516307e4c70760e21b81529091506001600160a01b03821690631f931c1c9062000fa590609d9060009060040162001fd4565b600060405180830381600087803b15801562000fc057600080fd5b505af115801562000fd5573d6000803e3d6000fd5b5050606954606a548493506001600160a01b038085169350633419635592889290821691166200100462000d4d565b6040518563ffffffff1660e01b8152600401620010259493929190620022d6565b600060405180830381600087803b1580156200104057600080fd5b505af115801562001055573d6000803e3d6000fd5b5050506001600160a01b038216600090815260666020526040908190206001908101805460ff19169091179055517fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299150620010b3908390620017d8565b60405180910390a19392505050565b600054610100900460ff166200112f5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000576565b620008038162001431565b62001144620011e2565b6001600160a01b0381166200112f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000576565b6001600160a01b03163b151590565b6001600160a01b03811662000803576040516303988b8160e61b815260040160405180910390fd5b33620011ed62000d4d565b6001600160a01b03161462000cef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000576565b60008051602062002959833981519152546001600160a01b031690565b336200126d62000d4d565b6001600160a01b0316146200080357336200128762000d4d565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000576565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615620012ef57620012ea8362001483565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156200134c575060408051601f3d908101601f1916820190925262001349918101906200241e565b60015b620013b15760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000576565b600080516020620029598339815191528114620014235760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000576565b50620012ea83838362001522565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6200148e81620011ab565b620014f25760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000576565b6000805160206200295983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200152d8362001553565b6000825111806200153b5750805b15620012ea576200154d838362001595565b50505050565b6200155e8162001483565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620015bd83836040518060600160405280602781526020016200299960279139620015c4565b9392505050565b6060600080856001600160a01b031685604051620015e3919062002438565b600060405180830381855af49150503d806000811462001620576040519150601f19603f3d011682016040523d82523d6000602084013e62001625565b606091505b5091509150620016388683838762001642565b9695505050505050565b60608315620016b6578251600003620016ae576200166085620011ab565b620016ae5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000576565b5081620016c2565b620016c28383620016ca565b949350505050565b815115620016db5781518083602001fd5b8060405162461bcd60e51b815260040162000576919062001dd2565b82805482825590600052602060002090600701600890048101928215620017985791602002820160005b838211156200176457835183826101000a81548163ffffffff021916908360e01c0217905550926020019260040160208160030104928301926001030262001721565b8015620017965782816101000a81549063ffffffff021916905560040160208160030104928301926001030262001764565b505b5062000dea929150620017b4565b6104ec806200244d83390190565b5b8082111562000dea5760008155600101620017b5565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200080357600080fd5b80356200180f81620017ec565b919050565b6000602082840312156200182757600080fd5b8135620015bd81620017ec565b600080600080600060a086880312156200184d57600080fd5b85356200185a81620017ec565b945060208601356200186c81620017ec565b935060408601356200187e81620017ec565b925060608601356200189081620017ec565b91506080860135620018a281620017ec565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b0381118282101715620018ec57620018ec620018b0565b60405290565b60006001600160401b03808411156200190f576200190f620018b0565b604051601f8501601f19908116603f011681019082821181831017156200193a576200193a620018b0565b816040528093508581528686860111156200195457600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200198257600080fd5b82356200198f81620017ec565b915060208301356001600160401b03811115620019ab57600080fd5b8301601f81018513620019bd57600080fd5b620019ce85823560208401620018f2565b9150509250929050565b60008060008060008060a08789031215620019f257600080fd5b8635620019ff81620017ec565b9550602087013562001a1181620017ec565b945060408701356001600160401b038082111562001a2e57600080fd5b818901915089601f83011262001a4357600080fd5b81358181111562001a5357600080fd5b8a60208260051b850101111562001a6957600080fd5b60208301965080955050505062001a836060880162001802565b915062001a936080880162001802565b90509295509295509295565b803580151581146200180f57600080fd5b6000806040838503121562001ac457600080fd5b823562001ad181620017ec565b915062001ae16020840162001a9f565b90509250929050565b60006020828403121562001afd57600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6003811062001b3957634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038316815260408101620015bd602083018462001b1a565b6000806040838503121562001b7057600080fd5b823562001b7d81620017ec565b946020939093013593505050565b600082601f83011262001b9d57600080fd5b620015bd83833560208501620018f2565b60006040828403121562001bc157600080fd5b604080519081016001600160401b03808211838310171562001be75762001be7620018b0565b8160405282935084358352602085013591508082111562001c0757600080fd5b5062001c168582860162001b8b565b6020830152505092915050565b60006020828403121562001c3657600080fd5b81356001600160401b038082111562001c4e57600080fd5b90830190610180828603121562001c6457600080fd5b62001c6e620018c6565b62001c798362001802565b815262001c896020840162001802565b602082015260408301356040820152606083013560608201526080830135608082015262001cba60a0840162001802565b60a082015262001ccd60c0840162001802565b60c082015260e08301358281111562001ce557600080fd5b62001cf38782860162001bae565b60e08301525061010062001d0981850162001802565b90820152610120838101358381111562001d2257600080fd5b62001d308882870162001b8b565b82840152505061014062001d4681850162001a9f565b90820152610160838101358381111562001d5f57600080fd5b62001d6d8882870162001b8b565b918301919091525095945050505050565b60005b8381101562001d9b57818101518382015260200162001d81565b50506000910152565b6000815180845262001dbe81602086016020860162001d7e565b601f01601f19169290920160200192915050565b602081526000620015bd602083018462001da4565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200293983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60008235605e1983360301811262001ed857600080fd5b9190910192915050565b60006020828403121562001ef557600080fd5b813560038110620015bd57600080fd5b6000808335601e1984360301811262001f1d57600080fd5b8301803591506001600160401b0382111562001f3857600080fd5b6020019150600581901b360382131562001f5157600080fd5b9250929050565b60006001820162001f7957634e487b7160e01b600052601160045260246000fd5b5060010190565b60006020828403121562001f9357600080fd5b8151620015bd81620017ec565b6001600160a01b0383168152604060208201819052600090620016c29083018462001da4565b6001600160e01b0319169052565b60608152600060608201845480825260808401915060808160051b8501018660005260208060002060005b848110156200228957878403607f1901865281546001600160a01b038116855260608501906200203985870160a083901c60ff1662001b1a565b506060604086015260018381018054808452600091825260208083209401905b806007840110156200212157845462002076838260e01b62001fc6565b6001600160e01b031962002093848b0160c084901b831662001fc6565b620020a760408501828460a01b1662001fc6565b620020bb60608501828460801b1662001fc6565b620020cf60808501828460601b1662001fc6565b620020e360a08501828460401b1662001fc6565b620020f660c0850182848d1b1662001fc6565b6200210760e0850182841662001fc6565b505061010082019150838501945060088301925062002059565b9354938083101562002145576200213c828660e01b62001fc6565b91830191908701905b808310156200217157620021688260c087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200219d57620021948260a087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021c957620021c082608087901b6001600160e01b03191662001fc6565b91830191908701905b80831015620021f557620021ec82606087901b6001600160e01b03191662001fc6565b91830191908701905b8083101562002221576200221882604087901b6001600160e01b03191662001fc6565b91830191908701905b808310156200224b576200224282868a1b6001600160e01b03191662001fc6565b91830191908701905b808310156200226f576200226a826001600160e01b0319871662001fc6565b908701905b509886019896505050600292909201915060010162001fff565b50506200229981870188620017cb565b5084810360408601526000815260208101979650505050505050565b805182526000602082015160406020850152620016c2604085018262001da4565b60808152620022ea608082018651620017cb565b600060208601516200230060a0840182620017cb565b50604086015160c0830152606086015160e08301526080860151610100818185015260a088015191506101206200233a81860184620017cb565b60c089015192506101406200235281870185620017cb565b60e08a01519350610180610160818189015262002374610200890187620022b5565b948c01519495506200238988830186620017cb565b838c01519450607f19935083888703016101a0890152620023ab868662001da4565b9550828c01519450620023c36101c089018615159052565b808c0151945050505080858403016101e086015250620023e4828262001da4565b92505050620023f76020830186620017cb565b620024066040830185620017cb565b620024156060830184620017cb565b95945050505050565b6000602082840312156200243157600080fd5b5051919050565b6000825162001ed881846020870162001d7e56fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220dafeddf6f9a5a991f315268eeaa99492bbcf382c81b1b686bf227b30551269cc64736f6c63430008130033","sourceMap":"1002:2516:114:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40:106;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:131;;;992:2;977:18;4804:249:106;858:177:131;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;1114:866:114:-;;;;;;;;;;-1:-1:-1;1114:866:114;;;;;:::i;:::-;;:::i;2762:131:64:-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;1858:136;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;1064:43:114:-;;;;;;;;;;-1:-1:-1;1064:43:114;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;1986:1394:114;;;;;;;;;;-1:-1:-1;1986:1394:114;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;9167:14:131;;9160:22;9142:41;;9130:2;9115:18;4654:144:106;9002:187:131;3390:93:114;;;;;;;;;;-1:-1:-1;3464:12:114;;;;;;;;;;;-1:-1:-1;;;3464:12:114;;;;3390:93;;;;3464:12;3390:93;:::i;4804:249:106:-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;10819:36:131;;-1:-1:-1;;;;;;;;;;;3721:14:47;10807:2:131;10792:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;1114:866:114:-;1355:13:45;:11;:13::i;:::-;4882::47::1;::::0;1370:1:114::1;::::0;4882:13:47::1;::::0;::::1;;;4881:14;:40:::0;::::1;;;-1:-1:-1::0;4899:12:47::1;::::0;:22:::1;::::0;;::::1;:12:::0;::::1;:22;4881:40;4873:99;;;;-1:-1:-1::0;;;4873:99:47::1;;;;;;;:::i;:::-;4982:12;:22:::0;;-1:-1:-1;;5014:20:47;4982:22:::1;::::0;::::1;5014:20:::0;4982:22:::1;5014:20;::::0;;1383:25:114::2;1401:6:::0;1383:17:::2;:25::i;:::-;1418:46;1437:26;1418:18;:46::i;:::-;1474:44;1493:24;1474:18;:44::i;:::-;1528:25;:54:::0;;-1:-1:-1;;;;;1528:54:114;;::::2;-1:-1:-1::0;;;;;;1528:54:114;;::::2;;::::0;;;1592:16:::2;:36:::0;;;;::::2;::::0;;::::2;;::::0;;1638:23:::2;:50:::0;;;;::::2;::::0;;;::::2;::::0;;;::::2;::::0;;1528:25:::2;1698:275;1715:16:::0;;::::2;1698:275;;;1752:13;1771:190;;;;;;;;1821:5;;1827:1;1821:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:21;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;;;;;1771:190:114::2;;;;;1868:5;;1874:1;1868:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:15;::::0;;;;;::::2;;;:::i;:::-;1771:190;;;;;;;;:::i;:::-;;;;;1920:5;;1926:1;1920:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:26;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;1771:190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;::::0;;;-1:-1:-1;1771:190:114;;;;-1:-1:-1;;1752:210:114;;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;-1:-1:-1;;;;;;1752:210:114;::::2;-1:-1:-1::0;;;;;1752:210:114;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;;;;;;-1:-1:-1;1752:210:114;;-1:-1:-1;;;;;;1752:210:114;;;;;-1:-1:-1;;;1752:210:114;;;;::::2;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;1752:210:114::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;::::2;:::i;:::-;;;;1733:3;;;;;:::i;:::-;;;;1698:275;;;-1:-1:-1::0;5071:5:47::1;5055:21:::0;;-1:-1:-1;;5055:21:47::1;::::0;;5091:20:::1;::::0;10849:4:131;10837:17;;10819:36;;-1:-1:-1;;;;;;;;;;;5091:20:47;10807:2:131;10792:18;5091:20:47::1;;;;;;;1378:1:45;1114:866:114::0;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;13613:2:131;2064:92:64;;;13595:21:131;13652:2;13632:18;;;13625:30;13691:34;13671:18;;;13664:62;-1:-1:-1;;;13742:18:131;;;13735:54;13806:19;;2064:92:64;13411:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;14004:51:131;;;14071:18;;;14064:50;4599:42:106::1;::::0;13977:18:131;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;1858:136::-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;:::-;;;;;;;;3867:222:::0;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;872:241::-;581:548;525:604;:::o;1064:43:114:-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1064:43:114;;;-1:-1:-1;;;;1064:43:114;;;;;:::o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;14555:51:131;;;14622:18;;14615:34;;;4384:43:106::1;::::0;14528:18:131;4384:43:106::1;14381:274:131::0;1986:1394:114;2191:5;:7;;2128:31;;;2191:7;;;:::i;:::-;;;;-1:-1:-1;2175:13:114;;;:23;2242:4;2208:23;;;:39;2318:25;;-1:-1:-1;;;;;;;2318:25:114;-1:-1:-1;;;2419:7:114;:5;:7::i;:::-;2358:69;;;;;;;;:::i;:::-;;;;-1:-1:-1;;2358:69:114;;;;;;;;;;;;;;-1:-1:-1;;;;;2358:69:114;-1:-1:-1;;;;;;2358:69:114;;;;;;;;;;2280:157;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2448:69:114;;-1:-1:-1;;;2448:69:114;;2259:178;;-1:-1:-1;;;;;;2448:38:114;;;;;:69;;2487:13;;2510:1;;2448:69;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3093:16:114;;3111:23;;3037:5;;-1:-1:-1;;;;;;3056:28:114;;;;-1:-1:-1;3056:28:114;;3085:6;;3093:16;;;;3111:23;3136:7;:5;:7::i;:::-;3056:88;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;3215:43:114;;;;;;:15;:43;;;;;;;3267:4;3215:49;;;:56;;-1:-1:-1;;3215:56:114;;;;;;3286:44;;;-1:-1:-1;3286:44:114;;3239:17;;3286:44;:::i;:::-;;;;;;;;3355:17;1986:1394;-1:-1:-1;;;1986:1394:114:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;22315:2:131;5366:69:47;;;22297:21:131;22354:2;22334:18;;;22327:30;22393:34;22373:18;;;22366:62;-1:-1:-1;;;22444:18:131;;;22437:41;22495:19;;5366:69:47;22113:407:131;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;22727:2:131;2415:73:45::1;::::0;::::1;22709:21:131::0;22766:2;22746:18;;;22739:30;22805:34;22785:18;;;22778:62;-1:-1:-1;;;22856:18:131;;;22849:36;22902:19;;2415:73:45::1;22525:402:131::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;23134:2:131;1675:68:45;;;23116:21:131;;;23153:18;;;23146:30;23212:34;23192:18;;;23185:62;23264:18;;1675:68:45;22932:356:131;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;23523:15:131;;;1252:35:103;;;23505:34:131;23575:15;;23555:18;;;23548:43;23440:18;;1252:35:103;23293:304:131;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;23993:2:131;3262:56:60;;;23975:21:131;24032:2;24012:18;;;24005:30;24071:34;24051:18;;;24044:62;-1:-1:-1;;;24122:18:131;;;24115:44;24176:19;;3262:56:60;23791:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;24408:2:131;3140:82:60;;;24390:21:131;24447:2;24427:18;;;24420:30;24486:34;24466:18;;;24459:62;-1:-1:-1;;;24537:18:131;;;24530:39;24586:19;;3140:82:60;24206:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;24818:2:131;1479:95:60;;;24800:21:131;24857:2;24837:18;;;24830:30;24896:34;24876:18;;;24869:62;-1:-1:-1;;;24947:18:131;;;24940:43;25000:19;;1479:95:60;24616:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;25524:2:131;8113:60:76;;;25506:21:131;25563:2;25543:18;;;25536:30;25602:31;25582:18;;;25575:59;25651:18;;8113:60:76;25322:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;14:104:131;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:131;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:131;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:131;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:131;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:131;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:131;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:131;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:131;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:131;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:131;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:131;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:131;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3470:1070::-;3621:6;3629;3637;3645;3653;3661;3714:3;3702:9;3693:7;3689:23;3685:33;3682:53;;;3731:1;3728;3721:12;3682:53;3770:9;3757:23;3789:31;3814:5;3789:31;:::i;:::-;3839:5;-1:-1:-1;3896:2:131;3881:18;;3868:32;3909:33;3868:32;3909:33;:::i;:::-;3961:7;-1:-1:-1;4019:2:131;4004:18;;3991:32;-1:-1:-1;;;;;4072:14:131;;;4069:34;;;4099:1;4096;4089:12;4069:34;4137:6;4126:9;4122:22;4112:32;;4182:7;4175:4;4171:2;4167:13;4163:27;4153:55;;4204:1;4201;4194:12;4153:55;4244:2;4231:16;4270:2;4262:6;4259:14;4256:34;;;4286:1;4283;4276:12;4256:34;4339:7;4334:2;4324:6;4321:1;4317:14;4313:2;4309:23;4305:32;4302:45;4299:65;;;4360:1;4357;4350:12;4299:65;4391:2;4387;4383:11;4373:21;;4413:6;4403:16;;;;;4438:38;4472:2;4461:9;4457:18;4438:38;:::i;:::-;4428:48;;4495:39;4529:3;4518:9;4514:19;4495:39;:::i;:::-;4485:49;;3470:1070;;;;;;;;:::o;4727:160::-;4792:20;;4848:13;;4841:21;4831:32;;4821:60;;4877:1;4874;4867:12;4892:315;4957:6;4965;5018:2;5006:9;4997:7;4993:23;4989:32;4986:52;;;5034:1;5031;5024:12;4986:52;5073:9;5060:23;5092:31;5117:5;5092:31;:::i;:::-;5142:5;-1:-1:-1;5166:35:131;5197:2;5182:18;;5166:35;:::i;:::-;5156:45;;4892:315;;;;;:::o;5212:180::-;5271:6;5324:2;5312:9;5303:7;5299:23;5295:32;5292:52;;;5340:1;5337;5330:12;5292:52;-1:-1:-1;5363:23:131;;5212:180;-1:-1:-1;5212:180:131:o;5397:127::-;5458:10;5453:3;5449:20;5446:1;5439:31;5489:4;5486:1;5479:15;5513:4;5510:1;5503:15;5529:242;5615:1;5608:5;5605:12;5595:143;;5660:10;5655:3;5651:20;5648:1;5641:31;5695:4;5692:1;5685:15;5723:4;5720:1;5713:15;5595:143;5747:18;;5529:242::o;5776:316::-;-1:-1:-1;;;;;5986:32:131;;5968:51;;5956:2;5941:18;;6028:58;6082:2;6067:18;;6059:6;6028:58;:::i;6097:315::-;6165:6;6173;6226:2;6214:9;6205:7;6201:23;6197:32;6194:52;;;6242:1;6239;6232:12;6194:52;6281:9;6268:23;6300:31;6325:5;6300:31;:::i;:::-;6350:5;6402:2;6387:18;;;;6374:32;;-1:-1:-1;;;6097:315:131:o;6417:221::-;6460:5;6513:3;6506:4;6498:6;6494:17;6490:27;6480:55;;6531:1;6528;6521:12;6480:55;6553:79;6628:3;6619:6;6606:20;6599:4;6591:6;6587:17;6553:79;:::i;6643:610::-;6698:5;6746:4;6734:9;6729:3;6725:19;6721:30;6718:50;;;6764:1;6761;6754:12;6718:50;6797:4;6791:11;;;6829:17;;-1:-1:-1;;;;;6898:18:131;;;6918:22;;;6895:46;6892:72;;;6944:18;;:::i;:::-;6986:10;6980:4;6973:24;7015:6;7006:15;;7058:9;7045:23;7037:6;7030:39;7120:2;7109:9;7105:18;7092:32;7078:46;;7147:2;7139:6;7136:14;7133:34;;;7163:1;7160;7153:12;7133:34;;7200:46;7242:3;7233:6;7222:9;7218:22;7200:46;:::i;:::-;7195:2;7187:6;7183:15;7176:71;;;6643:610;;;;:::o;7258:1643::-;7373:6;7426:2;7414:9;7405:7;7401:23;7397:32;7394:52;;;7442:1;7439;7432:12;7394:52;7469:23;;-1:-1:-1;;;;;7541:14:131;;;7538:34;;;7568:1;7565;7558:12;7538:34;7591:22;;;;7647:6;7629:16;;;7625:29;7622:49;;;7667:1;7664;7657:12;7622:49;7693:17;;:::i;:::-;7733:22;7752:2;7733:22;:::i;:::-;7726:5;7719:37;7788:31;7815:2;7811;7807:11;7788:31;:::i;:::-;7783:2;7776:5;7772:14;7765:55;7873:2;7869;7865:11;7852:25;7847:2;7840:5;7836:14;7829:49;7931:2;7927;7923:11;7910:25;7905:2;7898:5;7894:14;7887:49;7990:3;7986:2;7982:12;7969:26;7963:3;7956:5;7952:15;7945:51;8029:32;8056:3;8052:2;8048:12;8029:32;:::i;:::-;8023:3;8016:5;8012:15;8005:57;8095:32;8122:3;8118:2;8114:12;8095:32;:::i;:::-;8089:3;8082:5;8078:15;8071:57;8174:3;8170:2;8166:12;8153:26;8204:2;8194:8;8191:16;8188:36;;;8220:1;8217;8210:12;8188:36;8257:54;8303:7;8292:8;8288:2;8284:17;8257:54;:::i;:::-;8251:3;8244:5;8240:15;8233:79;;8331:3;8366:31;8393:2;8389;8385:11;8366:31;:::i;:::-;8350:14;;;8343:55;8417:3;8458:11;;;8445:25;8482:16;;;8479:36;;;8511:1;8508;8501:12;8479:36;8547:45;8584:7;8573:8;8569:2;8565:17;8547:45;:::i;:::-;8542:2;8535:5;8531:14;8524:69;;;8612:3;8647:28;8671:2;8667;8663:11;8647:28;:::i;:::-;8631:14;;;8624:52;8695:3;8736:11;;;8723:25;8760:16;;;8757:36;;;8789:1;8786;8779:12;8757:36;8825:45;8862:7;8851:8;8847:2;8843:17;8825:45;:::i;:::-;8809:14;;;8802:69;;;;-1:-1:-1;8813:5:131;7258:1643;-1:-1:-1;;;;;7258:1643:131:o;9496:250::-;9581:1;9591:113;9605:6;9602:1;9599:13;9591:113;;;9681:11;;;9675:18;9662:11;;;9655:39;9627:2;9620:10;9591:113;;;-1:-1:-1;;9738:1:131;9720:16;;9713:27;9496:250::o;9751:271::-;9793:3;9831:5;9825:12;9858:6;9853:3;9846:19;9874:76;9943:6;9936:4;9931:3;9927:14;9920:4;9913:5;9909:16;9874:76;:::i;:::-;10004:2;9983:15;-1:-1:-1;;9979:29:131;9970:39;;;;10011:4;9966:50;;9751:271;-1:-1:-1;;9751:271:131:o;10027:220::-;10176:2;10165:9;10158:21;10139:4;10196:45;10237:2;10226:9;10222:18;10214:6;10196:45;:::i;10252:410::-;10454:2;10436:21;;;10493:2;10473:18;;;10466:30;10532:34;10527:2;10512:18;;10505:62;-1:-1:-1;;;10598:2:131;10583:18;;10576:44;10652:3;10637:19;;10252:410::o;10866:408::-;11068:2;11050:21;;;11107:2;11087:18;;;11080:30;-1:-1:-1;;;;;;;;;;;11141:2:131;11126:18;;11119:62;-1:-1:-1;;;11212:2:131;11197:18;;11190:42;11264:3;11249:19;;10866:408::o;11279:::-;11481:2;11463:21;;;11520:2;11500:18;;;11493:30;-1:-1:-1;;;;;;;;;;;11554:2:131;11539:18;;11532:62;-1:-1:-1;;;11625:2:131;11610:18;;11603:42;11677:3;11662:19;;11279:408::o;11692:127::-;11753:10;11748:3;11744:20;11741:1;11734:31;11784:4;11781:1;11774:15;11808:4;11805:1;11798:15;11824:326;11919:4;11977:11;11964:25;12071:2;12067:7;12056:8;12040:14;12036:29;12032:43;12012:18;12008:68;11998:96;;12090:1;12087;12080:12;11998:96;12111:33;;;;;11824:326;-1:-1:-1;;11824:326:131:o;12155:276::-;12234:6;12287:2;12275:9;12266:7;12262:23;12258:32;12255:52;;;12303:1;12300;12293:12;12255:52;12342:9;12329:23;12381:1;12374:5;12371:12;12361:40;;12397:1;12394;12387:12;12436:544;12528:4;12534:6;12594:11;12581:25;12688:2;12684:7;12673:8;12657:14;12653:29;12649:43;12629:18;12625:68;12615:96;;12707:1;12704;12697:12;12615:96;12734:33;;12786:20;;;-1:-1:-1;;;;;;12818:30:131;;12815:50;;;12861:1;12858;12851:12;12815:50;12894:4;12882:17;;-1:-1:-1;12945:1:131;12941:14;;;12925;12921:35;12911:46;;12908:66;;;12970:1;12967;12960:12;12908:66;12436:544;;;;;:::o;12985:232::-;13024:3;13045:17;;;13042:140;;13104:10;13099:3;13095:20;13092:1;13085:31;13139:4;13136:1;13129:15;13167:4;13164:1;13157:15;13042:140;-1:-1:-1;13209:1:131;13198:13;;12985:232::o;14125:251::-;14195:6;14248:2;14236:9;14227:7;14223:23;14219:32;14216:52;;;14264:1;14261;14254:12;14216:52;14296:9;14290:16;14315:31;14340:5;14315:31;:::i;14660:315::-;-1:-1:-1;;;;;14835:32:131;;14817:51;;14904:2;14899;14884:18;;14877:30;;;-1:-1:-1;;14924:45:131;;14950:18;;14942:6;14924:45;:::i;15125:104::-;-1:-1:-1;;;;;;15190:32:131;15178:45;;15125:104::o;15234:4574::-;15589:2;15578:9;15571:21;15552:4;15627:2;15616:9;15612:18;15659:6;15653:13;15687:6;15682:3;15675:19;15725:3;15714:9;15710:19;15703:26;;15788:3;15778:6;15775:1;15771:14;15760:9;15756:30;15752:40;15811:6;15808:1;15801:17;15837:4;15877:2;15874:1;15864:16;15898:1;15908:3713;15922:6;15919:1;15916:13;15908:3713;;;15987:22;;;-1:-1:-1;;15983:37:131;15971:50;;16093:13;;-1:-1:-1;;;;;16134:35:131;;16119:51;;16060:2;16048:15;;;16183:79;16246:15;;;16157:3;16218:19;;;16239:4;16214:30;16183:79;:::i;:::-;-1:-1:-1;16373:2:131;16366:4;16354:17;;16347:29;16285:1;16319:15;;;16437:19;;9428;;;15072:1;15065:14;;;9480:4;15096:18;;;;9471:14;;16668:915;16712:8;16708:1;16695:11;16691:19;16688:33;16668:915;;;16849:8;16843:15;16875:40;16909:5;16902:4;16897:3;16893:14;16875:40;:::i;:::-;-1:-1:-1;;;;;;16979:58:131;17022:14;;;17005:3;17001:14;;;16997:23;;16979:58;:::i;:::-;17054:60;17108:4;17101:5;17097:16;17092:2;17085:4;17080:3;17076:14;17072:23;17054:60;:::i;:::-;17131:58;17185:2;17178:5;17174:14;17169:2;17162:4;17157:3;17153:14;17149:23;17131:58;:::i;:::-;17206;17259:3;17252:5;17248:15;17243:2;17236:4;17232:2;17228:13;17224:22;17206:58;:::i;:::-;17281:60;17336:3;17329:5;17325:15;17320:2;17313:4;17307;17303:15;17299:24;17281:60;:::i;:::-;17358:58;17411:3;17404:5;17400:15;17395:2;17388:4;17384:2;17380:13;17376:22;17358:58;:::i;:::-;17433:49;17477:3;17470:5;17466:15;17461:2;17455:4;17451:13;17433:49;:::i;:::-;;;17519:3;17512:5;17508:15;17499:24;;17566:2;17556:8;17552:17;17540:29;;16784:1;16771:11;16767:19;16752:34;;16668:915;;;17610:15;;;17641:25;;;17638:207;;;17697:42;17733:5;17724:6;17719:3;17715:16;17697:42;:::i;:::-;17811:20;;;;17765:14;;;;17638:207;17877:8;17864:11;17861:25;17858:234;;;17917:69;17980:5;17943:3;17939:16;;;-1:-1:-1;;;;;;17935:43:131;17917:69;:::i;:::-;18058:20;;;;18012:14;;;;17858:234;18124:8;18111:11;18108:25;18105:234;;;18164:69;18227:5;18190:3;18186:16;;;-1:-1:-1;;;;;;18182:43:131;18164:69;:::i;:::-;18305:20;;;;18259:14;;;;18105:234;18371:8;18358:11;18355:25;18352:234;;;18411:69;18474:5;18437:3;18433:16;;;-1:-1:-1;;;;;;18429:43:131;18411:69;:::i;:::-;18552:20;;;;18506:14;;;;18352:234;18618:8;18605:11;18602:25;18599:233;;;18658:68;18720:5;18684:2;18680:15;;;-1:-1:-1;;;;;;18676:42:131;18658:68;:::i;:::-;18798:20;;;;18752:14;;;;18599:233;18864:8;18851:11;18848:25;18845:235;;;18904:70;18968:5;18930:4;18926:17;;;-1:-1:-1;;;;;;18922:44:131;18904:70;:::i;:::-;19046:20;;;;19000:14;;;;18845:235;19112:8;19099:11;19096:25;19093:233;;;19152:68;19214:5;19174:15;;;-1:-1:-1;;;;;;19170:42:131;19152:68;:::i;:::-;19292:20;;;;19246:14;;;;19093:233;19358:8;19345:11;19342:25;19339:172;;;19398:59;19451:5;-1:-1:-1;;;;;;19416:33:131;;19398:59;:::i;:::-;19483:14;;;;19339:172;-1:-1:-1;19599:12:131;;;;19534:5;-1:-1:-1;;;19574:4:131;19562:17;;;;;-1:-1:-1;15944:1:131;15937:9;15908:3713;;;15912:3;;19630:46;19672:2;19661:9;19657:18;19649:6;19630:46;:::i;:::-;-1:-1:-1;19714:22:131;;;19707:4;19692:20;;19685:52;9290:1;9278:14;;9325:4;9316:14;;19746:56;15234:4574;-1:-1:-1;;;;;;;15234:4574:131:o;19813:252::-;19900:5;19894:12;19889:3;19882:25;19864:3;19953:4;19946:5;19942:16;19936:23;19991:4;19984;19979:3;19975:14;19968:28;20012:47;20053:4;20048:3;20044:14;20030:12;20012:47;:::i;20070:2038::-;20395:3;20384:9;20377:22;20408:54;20457:3;20446:9;20442:19;20433:6;20427:13;20408:54;:::i;:::-;20358:4;20509;20501:6;20497:17;20491:24;20524:53;20572:3;20561:9;20557:19;20543:12;20524:53;:::i;:::-;;20632:4;20624:6;20620:17;20614:24;20608:3;20597:9;20593:19;20586:53;20694:4;20686:6;20682:17;20676:24;20670:3;20659:9;20655:19;20648:53;20738:3;20730:6;20726:16;20720:23;20762:3;20801:2;20796;20785:9;20781:18;20774:30;20853:3;20845:6;20841:16;20835:23;20813:45;;20877:3;20889:54;20939:2;20928:9;20924:18;20908:14;20889:54;:::i;:::-;20992:3;20984:6;20980:16;20974:23;20952:45;;21016:3;21028:54;21078:2;21067:9;21063:18;21047:14;21028:54;:::i;:::-;21131:3;21123:6;21119:16;21113:23;21091:45;;21155:6;21180:3;21219:2;21214;21203:9;21199:18;21192:30;21245:63;21303:3;21292:9;21288:19;21272:14;21245:63;:::i;:::-;21345:15;;;21339:22;21231:77;;-1:-1:-1;21370:54:131;21405:18;;;21339:22;21370:54;:::i;:::-;21473:2;21465:6;21461:15;21455:22;21433:44;;21500:3;21496:8;21486:18;;21569:2;21557:9;21549:6;21545:22;21541:31;21535:3;21524:9;21520:19;21513:60;21596:41;21630:6;21614:14;21596:41;:::i;:::-;21582:55;;21686:2;21678:6;21674:15;21668:22;21646:44;;21699:52;21746:3;21735:9;21731:19;21715:14;8976:13;8969:21;8957:34;;8906:91;21699:52;21800:2;21792:6;21788:15;21782:22;21760:44;;;;;21869:2;21857:9;21849:6;21845:22;21841:31;21835:3;21824:9;21820:19;21813:60;;21890:41;21924:6;21908:14;21890:41;:::i;:::-;21882:49;;;;21940:48;21982:4;21971:9;21967:20;21959:6;21940:48;:::i;:::-;21997;22039:4;22028:9;22024:20;22016:6;21997:48;:::i;:::-;22054;22096:4;22085:9;22081:20;22073:6;22054:48;:::i;:::-;20070:2038;;;;;;;:::o;23602:184::-;23672:6;23725:2;23713:9;23704:7;23700:23;23696:32;23693:52;;;23741:1;23738;23731:12;23693:52;-1:-1:-1;23764:16:131;;23602:184;-1:-1:-1;23602:184:131:o;25030:287::-;25159:3;25197:6;25191:13;25213:66;25272:6;25267:3;25260:4;25252:6;25248:17;25213:66;:::i","linkReferences":{},"immutableReferences":{"55572":[{"start":1852,"length":32},{"start":1919,"length":32},{"start":2064,"length":32},{"start":2131,"length":32},{"start":2968,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","cutsCommunity(uint256)":"90a74e2e","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2(address,address,(address,uint8,bytes4[])[],address,address)":"4f1f4c0c","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"cutsCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_cuts\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":\"RegistryFactoryFacet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/diamonds/BaseDiamond.sol\":{\"keccak256\":\"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303\",\"dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU\"]},\"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol\":{\"keccak256\":\"0x3f5ced030e374705f9b421ad075197772a79f468841510f876e1ddf2d281b1da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d524eb2ccd9668b98af426fc0b716e8f1b2622018c1b850d2d141b4ff1473943\",\"dweb:/ipfs/Qmb8Q5azfj413XGjRpChY8zwyTJR4mLrZY5siUrDC1ytxX\"]},\"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol\":{\"keccak256\":\"0xf407d8d13beeae0f71270673636aab6f7366188c227e148063219eb871aaba4f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://74176d7d9836bb724611d4b1574ad683874a5e08615f2e00b7ad345d2104eab3\",\"dweb:/ipfs/QmUdg53mFzjJPcw5yFGYdXvC1BLTXFfiiFrqqdAwrNYzcp\"]},\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":{\"keccak256\":\"0x6267e4e853f227a7d9a130edbb11344f5b4691910a9370777804ad033b6bd0b6\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ebc4c0531d476cc07d10a9e047a8bc14ae3c27810e7748b1ef392b12c35693b0\",\"dweb:/ipfs/QmWYNEq3DFXoyaDYKZ5Wqpnoo87czRAGNJLVb7fNXnrFtw\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol\":{\"keccak256\":\"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb\",\"dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty\"]},\"pkg/contracts/src/diamonds/interfaces/IERC165.sol\":{\"keccak256\":\"0x7541f7408d0f74162bc4664d5e012427f2ceaab2abadca0353269ef15ee03d8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8e7a34b3ea39f4c0dfa6f5ace5d9415e4d0c90cb3f4264e6946b808f2d4011c\",\"dweb:/ipfs/QmWdcRF4krMMb1ua3hmV8avdHKYa4XXt1iw7sxx1ntsEJa\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99\",\"dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"cutsCommunity","outputs":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"struct IDiamond.FacetCut[]","name":"_cuts","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":"RegistryFactoryFacet"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/BaseDiamond.sol":{"keccak256":"0x5e64fcb0783ae65918875f68c7f8e43827d69785dd004c87a711ebe41ee983c8","urls":["bzz-raw://070403bb83cca68dab8d41d35e9b86d1ecf00bb87ee330ebecf97ba40f16b303","dweb:/ipfs/QmPQkvHaaW4XdtLB8vn9NuFVw5gqGXgstoXwr9FQ9fEvdU"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol":{"keccak256":"0x3f5ced030e374705f9b421ad075197772a79f468841510f876e1ddf2d281b1da","urls":["bzz-raw://d524eb2ccd9668b98af426fc0b716e8f1b2622018c1b850d2d141b4ff1473943","dweb:/ipfs/Qmb8Q5azfj413XGjRpChY8zwyTJR4mLrZY5siUrDC1ytxX"],"license":"MIT"},"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol":{"keccak256":"0xf407d8d13beeae0f71270673636aab6f7366188c227e148063219eb871aaba4f","urls":["bzz-raw://74176d7d9836bb724611d4b1574ad683874a5e08615f2e00b7ad345d2104eab3","dweb:/ipfs/QmUdg53mFzjJPcw5yFGYdXvC1BLTXFfiiFrqqdAwrNYzcp"],"license":"MIT"},"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":{"keccak256":"0x6267e4e853f227a7d9a130edbb11344f5b4691910a9370777804ad033b6bd0b6","urls":["bzz-raw://ebc4c0531d476cc07d10a9e047a8bc14ae3c27810e7748b1ef392b12c35693b0","dweb:/ipfs/QmWYNEq3DFXoyaDYKZ5Wqpnoo87czRAGNJLVb7fNXnrFtw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol":{"keccak256":"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972","urls":["bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb","dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IERC165.sol":{"keccak256":"0x7541f7408d0f74162bc4664d5e012427f2ceaab2abadca0353269ef15ee03d8b","urls":["bzz-raw://a8e7a34b3ea39f4c0dfa6f5ace5d9415e4d0c90cb3f4264e6946b808f2d4011c","dweb:/ipfs/QmWdcRF4krMMb1ua3hmV8avdHKYa4XXt1iw7sxx1ntsEJa"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0xeb75fdceab40249ad31940721f8caba70463dfd6b7123c6c82af15293fe309af","urls":["bzz-raw://149605c7d813351c1051dca2c590ad7cc3024c0af8cfc87cb2436d0ca14fce99","dweb:/ipfs/QmZaR42hZuomNLdPttCdkqt97GFiCYQydRX5akkAbfzfoE"],"license":"MIT"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"},{"astId":74066,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"cutsCommunity","offset":0,"slot":"157","type":"t_array(t_struct(FacetCut)74279_storage)dyn_storage"},{"astId":74263,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"158","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes4)dyn_storage":{"encoding":"dynamic_array","label":"bytes4[]","numberOfBytes":"32","base":"t_bytes4"},"t_array(t_struct(FacetCut)74279_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct IDiamond.FacetCut[]","numberOfBytes":"32","base":"t_struct(FacetCut)74279_storage"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_enum(FacetCutAction)74270":{"encoding":"inplace","label":"enum IDiamond.FacetCutAction","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_struct(FacetCut)74279_storage":{"encoding":"inplace","label":"struct IDiamond.FacetCut","numberOfBytes":"64","members":[{"astId":74272,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"facetAddress","offset":0,"slot":"0","type":"t_address"},{"astId":74275,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"action","offset":20,"slot":"0","type":"t_enum(FacetCutAction)74270"},{"astId":74278,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"functionSelectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol","id":74265,"exportedSymbols":{"BaseDiamond":[73419],"Clone":[3002],"CommunityInfo":[74060],"DiamondCutFacet":[73502],"DiamondLoupeFacet":[73940],"ERC1967Proxy":[55021],"IDiamond":[74290],"IDiamondCut":[74309],"ProxyOwnableUpgrader":[70199],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403],"RegistryFactoryFacet":[74264],"RegistryFactoryV0_0":[72778]},"nodeType":"SourceUnit","src":"42:3477:114","nodes":[{"id":74032,"nodeType":"PragmaDirective","src":"42:24:114","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74035,"nodeType":"ImportDirective","src":"68:136:114","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":74033,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74034,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"108:37:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74037,"nodeType":"ImportDirective","src":"205:88:114","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":74036,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"213:21:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74039,"nodeType":"ImportDirective","src":"294:67:114","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":74038,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"302:20:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74041,"nodeType":"ImportDirective","src":"362:84:114","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":74040,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"370:12:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74043,"nodeType":"ImportDirective","src":"447:65:114","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":74042,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"455:5:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74045,"nodeType":"ImportDirective","src":"513:81:114","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"@src/RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":72779,"symbolAliases":[{"foreign":{"id":74044,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72778,"src":"521:19:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74047,"nodeType":"ImportDirective","src":"595:63:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamond.sol","file":"@src/diamonds/interfaces/IDiamond.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":74291,"symbolAliases":[{"foreign":{"id":74046,"name":"IDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74290,"src":"603:8:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74049,"nodeType":"ImportDirective","src":"659:69:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol","file":"@src/diamonds/interfaces/IDiamondCut.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":74310,"symbolAliases":[{"foreign":{"id":74048,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74309,"src":"667:11:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74051,"nodeType":"ImportDirective","src":"729:73:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol","file":"@src/diamonds/facets/DiamondCutFacet.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":73503,"symbolAliases":[{"foreign":{"id":74050,"name":"DiamondCutFacet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73502,"src":"737:15:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74053,"nodeType":"ImportDirective","src":"803:77:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol","file":"@src/diamonds/facets/DiamondLoupeFacet.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":73941,"symbolAliases":[{"foreign":{"id":74052,"name":"DiamondLoupeFacet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73940,"src":"811:17:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74055,"nodeType":"ImportDirective","src":"882:58:114","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"@src/diamonds/BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":74265,"sourceUnit":73420,"symbolAliases":[{"foreign":{"id":74054,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73419,"src":"890:11:114","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74060,"nodeType":"StructDefinition","src":"943:57:114","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":74057,"mutability":"mutable","name":"fee","nameLocation":"978:3:114","nodeType":"VariableDeclaration","scope":74060,"src":"970:11:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74056,"name":"uint256","nodeType":"ElementaryTypeName","src":"970:7:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74059,"mutability":"mutable","name":"valid","nameLocation":"992:5:114","nodeType":"VariableDeclaration","scope":74060,"src":"987:10:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74058,"name":"bool","nodeType":"ElementaryTypeName","src":"987:4:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"950:13:114","scope":74265,"visibility":"public"},{"id":74264,"nodeType":"ContractDefinition","src":"1002:2516:114","nodes":[{"id":74066,"nodeType":"VariableDeclaration","src":"1064:43:114","nodes":[],"constant":false,"functionSelector":"90a74e2e","mutability":"mutable","name":"cutsCommunity","nameLocation":"1094:13:114","scope":74264,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut[]"},"typeName":{"baseType":{"id":74064,"nodeType":"UserDefinedTypeName","pathNode":{"id":74063,"name":"IDiamondCut.FacetCut","nameLocations":["1064:11:114","1076:8:114"],"nodeType":"IdentifierPath","referencedDeclaration":74279,"src":"1064:20:114"},"referencedDeclaration":74279,"src":"1064:20:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_storage_ptr","typeString":"struct IDiamond.FacetCut"}},"id":74065,"nodeType":"ArrayTypeName","src":"1064:22:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr","typeString":"struct IDiamond.FacetCut[]"}},"visibility":"public"},{"id":74144,"nodeType":"FunctionDefinition","src":"1114:866:114","nodes":[],"body":{"id":74143,"nodeType":"Block","src":"1373:607:114","nodes":[],"statements":[{"expression":{"arguments":[{"id":74087,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74068,"src":"1401:6:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74086,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"1383:17:114","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74088,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1383:25:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74089,"nodeType":"ExpressionStatement","src":"1383:25:114"},{"expression":{"arguments":[{"id":74091,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74070,"src":"1437:26:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74090,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"1418:18:114","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74092,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1418:46:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74093,"nodeType":"ExpressionStatement","src":"1418:46:114"},{"expression":{"arguments":[{"id":74095,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74078,"src":"1493:24:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74094,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"1474:18:114","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1474:44:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74097,"nodeType":"ExpressionStatement","src":"1474:44:114"},{"expression":{"id":74100,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74098,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"1528:25:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74099,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74070,"src":"1556:26:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1528:54:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74101,"nodeType":"ExpressionStatement","src":"1528:54:114"},{"expression":{"id":74104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74102,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"1592:16:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74103,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74076,"src":"1611:17:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1592:36:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74105,"nodeType":"ExpressionStatement","src":"1592:36:114"},{"expression":{"id":74108,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74106,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"1638:23:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74107,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74078,"src":"1664:24:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1638:50:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74109,"nodeType":"ExpressionStatement","src":"1638:50:114"},{"body":{"id":74141,"nodeType":"Block","src":"1738:235:114","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"baseExpression":{"id":74126,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1821:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74128,"indexExpression":{"id":74127,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1827:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1821:8:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74129,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1830:12:114","memberName":"facetAddress","nodeType":"MemberAccess","referencedDeclaration":74272,"src":"1821:21:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":74130,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1868:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74132,"indexExpression":{"id":74131,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1874:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1868:8:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1877:6:114","memberName":"action","nodeType":"MemberAccess","referencedDeclaration":74275,"src":"1868:15:114","typeDescriptions":{"typeIdentifier":"t_enum$_FacetCutAction_$74270","typeString":"enum IDiamond.FacetCutAction"}},{"expression":{"baseExpression":{"id":74134,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1920:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74136,"indexExpression":{"id":74135,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1926:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1920:8:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74137,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1929:17:114","memberName":"functionSelectors","nodeType":"MemberAccess","referencedDeclaration":74278,"src":"1920:26:114","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes4_$dyn_calldata_ptr","typeString":"bytes4[] calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_FacetCutAction_$74270","typeString":"enum IDiamond.FacetCutAction"},{"typeIdentifier":"t_array$_t_bytes4_$dyn_calldata_ptr","typeString":"bytes4[] calldata"}],"expression":{"id":74124,"name":"IDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74290,"src":"1771:8:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IDiamond_$74290_$","typeString":"type(contract IDiamond)"}},"id":74125,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1780:8:114","memberName":"FacetCut","nodeType":"MemberAccess","referencedDeclaration":74279,"src":"1771:17:114","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_FacetCut_$74279_storage_ptr_$","typeString":"type(struct IDiamond.FacetCut storage pointer)"}},"id":74138,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1807:12:114","1860:6:114","1901:17:114"],"names":["facetAddress","action","functionSelectors"],"nodeType":"FunctionCall","src":"1771:190:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_memory_ptr","typeString":"struct IDiamond.FacetCut memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_FacetCut_$74279_memory_ptr","typeString":"struct IDiamond.FacetCut memory"}],"expression":{"id":74121,"name":"cutsCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74066,"src":"1752:13:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"}},"id":74123,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1766:4:114","memberName":"push","nodeType":"MemberAccess","src":"1752:18:114","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr_$_t_struct$_FacetCut_$74279_storage_$returns$__$attached_to$_t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr_$","typeString":"function (struct IDiamond.FacetCut storage ref[] storage pointer,struct IDiamond.FacetCut storage ref)"}},"id":74139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1752:210:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74140,"nodeType":"ExpressionStatement","src":"1752:210:114"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":74117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":74114,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1715:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":74115,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74074,"src":"1719:5:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1725:6:114","memberName":"length","nodeType":"MemberAccess","src":"1719:12:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1715:16:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74142,"initializationExpression":{"assignments":[74111],"declarations":[{"constant":false,"id":74111,"mutability":"mutable","name":"i","nameLocation":"1708:1:114","nodeType":"VariableDeclaration","scope":74142,"src":"1703:6:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74110,"name":"uint","nodeType":"ElementaryTypeName","src":"1703:4:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":74113,"initialValue":{"hexValue":"30","id":74112,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1712:1:114","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"1703:10:114"},"loopExpression":{"expression":{"id":74119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"1733:3:114","subExpression":{"id":74118,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74111,"src":"1733:1:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74120,"nodeType":"ExpressionStatement","src":"1733:3:114"},"nodeType":"ForStatement","src":"1698:275:114"}]},"functionSelector":"4f1f4c0c","implemented":true,"kind":"function","modifiers":[{"id":74081,"kind":"modifierInvocation","modifierName":{"id":74080,"name":"onlyOwner","nameLocations":["1346:9:114"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"1346:9:114"},"nodeType":"ModifierInvocation","src":"1346:9:114"},{"arguments":[{"hexValue":"32","id":74083,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1370:1:114","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":74084,"kind":"modifierInvocation","modifierName":{"id":74082,"name":"reinitializer","nameLocations":["1356:13:114"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"1356:13:114"},"nodeType":"ModifierInvocation","src":"1356:16:114"}],"name":"initializeV2","nameLocation":"1123:12:114","parameters":{"id":74079,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74068,"mutability":"mutable","name":"_owner","nameLocation":"1161:6:114","nodeType":"VariableDeclaration","scope":74144,"src":"1153:14:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74067,"name":"address","nodeType":"ElementaryTypeName","src":"1153:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74070,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"1185:26:114","nodeType":"VariableDeclaration","scope":74144,"src":"1177:34:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74069,"name":"address","nodeType":"ElementaryTypeName","src":"1177:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74074,"mutability":"mutable","name":"_cuts","nameLocation":"1250:5:114","nodeType":"VariableDeclaration","scope":74144,"src":"1221:34:114","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut[]"},"typeName":{"baseType":{"id":74072,"nodeType":"UserDefinedTypeName","pathNode":{"id":74071,"name":"IDiamond.FacetCut","nameLocations":["1221:8:114","1230:8:114"],"nodeType":"IdentifierPath","referencedDeclaration":74279,"src":"1221:17:114"},"referencedDeclaration":74279,"src":"1221:17:114","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74279_storage_ptr","typeString":"struct IDiamond.FacetCut"}},"id":74073,"nodeType":"ArrayTypeName","src":"1221:19:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage_ptr","typeString":"struct IDiamond.FacetCut[]"}},"visibility":"internal"},{"constant":false,"id":74076,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"1273:17:114","nodeType":"VariableDeclaration","scope":74144,"src":"1265:25:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74075,"name":"address","nodeType":"ElementaryTypeName","src":"1265:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74078,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"1308:24:114","nodeType":"VariableDeclaration","scope":74144,"src":"1300:32:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74077,"name":"address","nodeType":"ElementaryTypeName","src":"1300:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1135:203:114"},"returnParameters":{"id":74085,"nodeType":"ParameterList","parameters":[],"src":"1373:0:114"},"scope":74264,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74250,"nodeType":"FunctionDefinition","src":"1986:1394:114","nodes":[],"body":{"id":74249,"nodeType":"Block","src":"2165:1215:114","nodes":[],"statements":[{"expression":{"id":74158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74153,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74147,"src":"2175:6:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74155,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2182:6:114","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"2175:13:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74157,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2191:7:114","subExpression":{"id":74156,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"2191:5:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2175:23:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74159,"nodeType":"ExpressionStatement","src":"2175:23:114"},{"expression":{"id":74167,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74160,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74147,"src":"2208:6:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74162,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2215:16:114","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"2208:23:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":74165,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2242:4:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74264","typeString":"contract RegistryFactoryFacet"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74264","typeString":"contract RegistryFactoryFacet"}],"id":74164,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2234:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74163,"name":"address","nodeType":"ElementaryTypeName","src":"2234:7:114","typeDescriptions":{}}},"id":74166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2234:13:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2208:39:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74168,"nodeType":"ExpressionStatement","src":"2208:39:114"},{"assignments":[74171],"declarations":[{"constant":false,"id":74171,"mutability":"mutable","name":"proxy","nameLocation":"2272:5:114","nodeType":"VariableDeclaration","scope":74249,"src":"2259:18:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":74170,"nodeType":"UserDefinedTypeName","pathNode":{"id":74169,"name":"ERC1967Proxy","nameLocations":["2259:12:114"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"2259:12:114"},"referencedDeclaration":55021,"src":"2259:12:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":74188,"initialValue":{"arguments":[{"arguments":[{"id":74177,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"2318:25:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74176,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2310:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74175,"name":"address","nodeType":"ElementaryTypeName","src":"2310:7:114","typeDescriptions":{}}},"id":74178,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2310:34:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":74181,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73419,"src":"2381:11:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_BaseDiamond_$73419_$","typeString":"type(contract BaseDiamond)"}},"id":74182,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2393:15:114","memberName":"initializeOwner","nodeType":"MemberAccess","referencedDeclaration":73339,"src":"2381:27:114","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$returns$__$","typeString":"function BaseDiamond.initializeOwner(address)"}},"id":74183,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2409:8:114","memberName":"selector","nodeType":"MemberAccess","src":"2381:36:114","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74184,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"2419:5:114","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74185,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2419:7:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74179,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2358:3:114","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":74180,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2362:18:114","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"2358:22:114","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":74186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2358:69:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":74174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"2280:16:114","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":74173,"nodeType":"UserDefinedTypeName","pathNode":{"id":74172,"name":"ERC1967Proxy","nameLocations":["2284:12:114"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"2284:12:114"},"referencedDeclaration":55021,"src":"2284:12:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":74187,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2280:157:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"2259:178:114"},{"expression":{"arguments":[{"id":74196,"name":"cutsCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74066,"src":"2487:13:114","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"}},{"arguments":[{"hexValue":"30","id":74199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2510:1:114","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":74198,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2502:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74197,"name":"address","nodeType":"ElementaryTypeName","src":"2502:7:114","typeDescriptions":{}}},"id":74200,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2502:10:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"","id":74201,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2514:2:114","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74279_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"arguments":[{"arguments":[{"id":74192,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74171,"src":"2468:5:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":74191,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2460:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74190,"name":"address","nodeType":"ElementaryTypeName","src":"2460:7:114","typeDescriptions":{}}},"id":74193,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2460:14:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74189,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74309,"src":"2448:11:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IDiamondCut_$74309_$","typeString":"type(contract IDiamondCut)"}},"id":74194,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2448:27:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IDiamondCut_$74309","typeString":"contract IDiamondCut"}},"id":74195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2476:10:114","memberName":"diamondCut","nodeType":"MemberAccess","referencedDeclaration":74308,"src":"2448:38:114","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_array$_t_struct$_FacetCut_$74279_memory_ptr_$dyn_memory_ptr_$_t_address_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (struct IDiamond.FacetCut memory[] memory,address,bytes memory) external"}},"id":74202,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2448:69:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74203,"nodeType":"ExpressionStatement","src":"2448:69:114"},{"assignments":[74206],"declarations":[{"constant":false,"id":74206,"mutability":"mutable","name":"registryCommunity","nameLocation":"2979:17:114","nodeType":"VariableDeclaration","scope":74249,"src":"2957:39:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":74205,"nodeType":"UserDefinedTypeName","pathNode":{"id":74204,"name":"RegistryCommunityV0_0","nameLocations":["2957:21:114"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"2957:21:114"},"referencedDeclaration":72174,"src":"2957:21:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":74216,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":74212,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74171,"src":"3037:5:114","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":74211,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3029:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74210,"name":"address","nodeType":"ElementaryTypeName","src":"3029:7:114","typeDescriptions":{}}},"id":74213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3029:14:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74209,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3021:8:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":74208,"name":"address","nodeType":"ElementaryTypeName","src":"3021:8:114","stateMutability":"payable","typeDescriptions":{}}},"id":74214,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3021:23:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":74207,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"2999:21:114","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2999:46:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"2957:88:114"},{"expression":{"arguments":[{"id":74220,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74147,"src":"3085:6:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":74221,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"3093:16:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74222,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"3111:23:114","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74223,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"3136:5:114","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74224,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3136:7:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74217,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3056:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":74219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3074:10:114","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"3056:28:114","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address) external"}},"id":74225,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3056:88:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74226,"nodeType":"ExpressionStatement","src":"3056:88:114"},{"expression":{"id":74235,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74227,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"3215:15:114","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74232,"indexExpression":{"arguments":[{"id":74230,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3239:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74229,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3231:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74228,"name":"address","nodeType":"ElementaryTypeName","src":"3231:7:114","typeDescriptions":{}}},"id":74231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3231:26:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3215:43:114","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":74233,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3259:5:114","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"3215:49:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":74234,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3267:4:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3215:56:114","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74236,"nodeType":"ExpressionStatement","src":"3215:56:114"},{"eventCall":{"arguments":[{"arguments":[{"id":74240,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3311:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74239,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3303:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74238,"name":"address","nodeType":"ElementaryTypeName","src":"3303:7:114","typeDescriptions":{}}},"id":74241,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3303:26:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74237,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"3286:16:114","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3286:44:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74243,"nodeType":"EmitStatement","src":"3281:49:114"},{"expression":{"arguments":[{"id":74246,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74206,"src":"3355:17:114","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74245,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3347:7:114","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74244,"name":"address","nodeType":"ElementaryTypeName","src":"3347:7:114","typeDescriptions":{}}},"id":74247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3347:26:114","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":74152,"id":74248,"nodeType":"Return","src":"3340:33:114"}]},"baseFunctions":[72656],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"1995:14:114","overrides":{"id":74149,"nodeType":"OverrideSpecifier","overrides":[],"src":"2086:8:114"},"parameters":{"id":74148,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74147,"mutability":"mutable","name":"params","nameLocation":"2055:6:114","nodeType":"VariableDeclaration","scope":74250,"src":"2010:51:114","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":74146,"nodeType":"UserDefinedTypeName","pathNode":{"id":74145,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["2010:37:114"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"2010:37:114"},"referencedDeclaration":70264,"src":"2010:37:114","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"2009:53:114"},"returnParameters":{"id":74152,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74151,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"2136:23:114","nodeType":"VariableDeclaration","scope":74250,"src":"2128:31:114","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74150,"name":"address","nodeType":"ElementaryTypeName","src":"2128:7:114","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2127:33:114"},"scope":74264,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74259,"nodeType":"FunctionDefinition","src":"3390:93:114","nodes":[],"body":{"id":74258,"nodeType":"Block","src":"3454:29:114","nodes":[],"statements":[{"expression":{"hexValue":"302e31","id":74256,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3471:5:114","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cd160c72d102a6747abd189ac21d4a1f802e3fcc1bb8fc78cc4d558df0c7c21","typeString":"literal_string \"0.1\""},"value":"0.1"},"functionReturnParameters":74255,"id":74257,"nodeType":"Return","src":"3464:12:114"}]},"baseFunctions":[72773],"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"3399:7:114","overrides":{"id":74252,"nodeType":"OverrideSpecifier","overrides":[],"src":"3421:8:114"},"parameters":{"id":74251,"nodeType":"ParameterList","parameters":[],"src":"3406:2:114"},"returnParameters":{"id":74255,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74254,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74259,"src":"3439:13:114","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":74253,"name":"string","nodeType":"ElementaryTypeName","src":"3439:6:114","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3438:15:114"},"scope":74264,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":74263,"nodeType":"VariableDeclaration","src":"3490:25:114","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"3510:5:114","scope":74264,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74260,"name":"uint256","nodeType":"ElementaryTypeName","src":"3490:7:114","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74262,"length":{"hexValue":"3530","id":74261,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3498:2:114","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"3490:11:114","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74061,"name":"RegistryFactoryV0_0","nameLocations":["1035:19:114"],"nodeType":"IdentifierPath","referencedDeclaration":72778,"src":"1035:19:114"},"id":74062,"nodeType":"InheritanceSpecifier","src":"1035:19:114"}],"canonicalName":"RegistryFactoryFacet","contractDependencies":[55021],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74264,72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryFacet","nameLocation":"1011:20:114","scope":74265,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":114} \ No newline at end of file +{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"cutsCommunity","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"}],"stateMutability":"view"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_cuts","type":"tuple[]","internalType":"struct IDiamond.FacetCut[]","components":[{"name":"facetAddress","type":"address","internalType":"address"},{"name":"action","type":"uint8","internalType":"enum IDiamond.FacetCutAction"},{"name":"functionSelectors","type":"bytes4[]","internalType":"bytes4[]"}]},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516129da61004c6000396000818161073c0152818161077f01528181610810015281816108530152610b9801526129da6000f3fe6080604052600436106200014c5760003560e01c806302c1d0b114620001515780630a992e0c146200018b5780631459457a14620001bf5780631b71f0e414620001e65780633659cfe6146200020b5780634f1ef28614620002305780634f1f4c0c146200024757806352d1902d146200026c5780635a2c8ace14620002845780635c94e4d214620002a95780635decae0214620002cb578063715018a614620002f057806377122d5614620003085780638279c7db146200032a5780638da5cb5b146200034f57806390a74e2e1462000367578063987435be146200039c578063affed0e014620003bc578063b0d3713a14620003d4578063b5b3ca2c14620003f9578063b8bed901146200041e578063beb331a31462000440578063c4d66de81462000465578063f2fde38b146200048a578063f5016b5e14620004af578063ffa1ad741462000500575b600080fd5b3480156200015e57600080fd5b5060685462000173906001600160a01b031681565b60405162000182919062001783565b60405180910390f35b3480156200019857600080fd5b50620001b0620001aa366004620017bf565b62000535565b60405190815260200162000182565b348015620001cc57600080fd5b50620001e4620001de366004620017df565b6200059b565b005b348015620001f357600080fd5b50620001e462000205366004620017bf565b62000706565b3480156200021857600080fd5b50620001e46200022a366004620017bf565b62000732565b620001e46200024136600462001919565b62000806565b3480156200025457600080fd5b50620001e46200026636600462001983565b620008cb565b3480156200027957600080fd5b50620001b062000b8b565b3480156200029157600080fd5b50620001e4620002a336600462001a5b565b62000c3c565b348015620002b657600080fd5b5060695462000173906001600160a01b031681565b348015620002d857600080fd5b50620001e4620002ea366004620017bf565b62000cad565b348015620002fd57600080fd5b50620001e462000cd9565b3480156200031557600080fd5b50606a5462000173906001600160a01b031681565b3480156200033757600080fd5b50620001e462000349366004620017bf565b62000cf1565b3480156200035c57600080fd5b506200017362000d4d565b3480156200037457600080fd5b506200038c6200038636600462001a95565b62000dee565b6040516200018292919062001ae8565b348015620003a957600080fd5b506067546001600160a01b031662000173565b348015620003c957600080fd5b50620001b060655481565b348015620003e157600080fd5b50620001e4620003f3366004620017bf565b62000e29565b3480156200040657600080fd5b50620001e46200041836600462001b07565b62000e55565b3480156200042b57600080fd5b5060675462000173906001600160a01b031681565b3480156200044d57600080fd5b50620001736200045f36600462001bce565b62000eb1565b3480156200047257600080fd5b50620001e462000484366004620017bf565b6200106d565b3480156200049757600080fd5b50620001e4620004a9366004620017bf565b620010e5565b348015620004bc57600080fd5b50620004ef620004ce366004620017bf565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000182565b3480156200050d57600080fd5b506040805180820182526003815262302e3160e81b6020820152905162000182919062001d7d565b6001600160a01b03811660009081526066602052604081206001015460ff166200057f578160405163f5a6943d60e01b815260040162000576919062001783565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005bc5750600054600160ff909116105b80620005e15750620005ce3062001156565b158015620005e1575060005460ff166001145b620006005760405162461bcd60e51b8152600401620005769062001d92565b6000805460ff19166001179055801562000624576000805461ff0019166101001790555b6200062f866200106d565b60006065556200063f8562001165565b6200064a8462001165565b620006558262001165565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200298583398151915290620006c090879062001783565b60405180910390a18015620006fe576000805461ff0019169055604051600181526000805160206200293e8339815191529060200160405180910390a15b505050505050565b620007106200118d565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200077d5760405162461bcd60e51b8152600401620005769062001de0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007b1620011f0565b6001600160a01b031614620007da5760405162461bcd60e51b8152600401620005769062001e1b565b620007e5816200120d565b6040805160008082526020820190925262000803918391906200125f565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008515760405162461bcd60e51b8152600401620005769062001de0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662000885620011f0565b6001600160a01b031614620008ae5760405162461bcd60e51b8152600401620005769062001e1b565b620008b9826200120d565b620008c7828260016200125f565b5050565b620008d56200118d565b600054600290610100900460ff16158015620008f8575060005460ff8083169116105b620009175760405162461bcd60e51b8152600401620005769062001d92565b6000805461ffff191660ff8316176101001790556200093687620010e5565b620009418662001165565b6200094c8262001165565b606880546001600160a01b038089166001600160a01b03199283161790925560698054868416908316179055606a80549285169290911691909117905560005b8481101562000b5157609d6040518060600160405280888885818110620009b757620009b762001e56565b9050602002810190620009cb919062001e6c565b620009db906020810190620017bf565b6001600160a01b03168152602001888885818110620009fe57620009fe62001e56565b905060200281019062000a12919062001e6c565b62000a2590604081019060200162001e8d565b600281111562000a395762000a3962001aaf565b815260200188888581811062000a535762000a5362001e56565b905060200281019062000a67919062001e6c565b62000a7790604081019062001eb0565b80806020026020016040519081016040528093929190818152602001838360200280828437600092018290525093909452505083546001810185559381526020908190208351600295860290910180546001600160a01b031981166001600160a01b0390931692831782559285015194959094935084926001600160a81b03191690911790600160a01b90849081111562000b165762000b1662001aaf565b02179055506040820151805162000b38916001840191602090910190620016a2565b505050808062000b489062001f03565b9150506200098c565b506000805461ff001916905560405160ff821681526000805160206200293e8339815191529060200160405180910390a150505050505050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462000c285760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000576565b506000805160206200291e83398151915290565b62000c466200118d565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b62000cb76200118d565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000ce36200118d565b62000cef6000620013dc565b565b62000cfb6200118d565b62000d068162001165565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620029858339815191529062000d4290839062001783565b60405180910390a150565b60008062000d636033546001600160a01b031690565b9050806001600160a01b03163b60000362000d7d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000dda575060408051601f3d908101601f1916820190925262000dd79181019062001f2b565b60015b62000de457919050565b92915050565b5090565b609d818154811062000dff57600080fd5b60009182526020909120600290910201546001600160a01b0381169150600160a01b900460ff1682565b62000e336200118d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000e5f6200118d565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000ca1565b606580546000918262000ec48362001f03565b9091555060808301523060a08301526068546000906001600160a01b031663944ab9ed60e01b62000ef462000d4d565b6040805160008082526020820190925262000f179291609d916044810162001f59565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000f569062001751565b62000f6392919062002254565b604051809103906000f08015801562000f80573d6000803e3d6000fd5b50606954606a5491925082916001600160a01b03808416926334196355928892918216911662000faf62000d4d565b6040518563ffffffff1660e01b815260040162000fd094939291906200229b565b600060405180830381600087803b15801562000feb57600080fd5b505af115801562001000573d6000803e3d6000fd5b5050506001600160a01b038216600090815260666020526040908190206001908101805460ff19169091179055517fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2991506200105e90839062001783565b60405180910390a19392505050565b600054610100900460ff16620010da5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000576565b6200080381620013dc565b620010ef6200118d565b6001600160a01b038116620010da5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000576565b6001600160a01b03163b151590565b6001600160a01b03811662000803576040516303988b8160e61b815260040160405180910390fd5b336200119862000d4d565b6001600160a01b03161462000cef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000576565b6000805160206200291e833981519152546001600160a01b031690565b336200121862000d4d565b6001600160a01b0316146200080357336200123262000d4d565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000576565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200129a5762001295836200142e565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620012f7575060408051601f3d908101601f19168201909252620012f491810190620023e3565b60015b6200135c5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000576565b6000805160206200291e8339815191528114620013ce5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000576565b5062001295838383620014cd565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620014398162001156565b6200149d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000576565b6000805160206200291e83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620014d883620014fe565b600082511180620014e65750805b156200129557620014f8838362001540565b50505050565b62001509816200142e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200156883836040518060600160405280602781526020016200295e602791396200156f565b9392505050565b6060600080856001600160a01b0316856040516200158e9190620023fd565b600060405180830381855af49150503d8060008114620015cb576040519150601f19603f3d011682016040523d82523d6000602084013e620015d0565b606091505b5091509150620015e386838387620015ed565b9695505050505050565b606083156200166157825160000362001659576200160b8562001156565b620016595760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000576565b50816200166d565b6200166d838362001675565b949350505050565b815115620016865781518083602001fd5b8060405162461bcd60e51b815260040162000576919062001d7d565b82805482825590600052602060002090600701600890048101928215620017435791602002820160005b838211156200170f57835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302620016cc565b8015620017415782816101000a81549063ffffffff02191690556004016020816003010492830192600103026200170f565b505b5062000dea9291506200175f565b6104ec806200241283390190565b5b8082111562000dea576000815560010162001760565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200080357600080fd5b8035620017ba8162001797565b919050565b600060208284031215620017d257600080fd5b8135620015688162001797565b600080600080600060a08688031215620017f857600080fd5b8535620018058162001797565b94506020860135620018178162001797565b93506040860135620018298162001797565b925060608601356200183b8162001797565b915060808601356200184d8162001797565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200189757620018976200185b565b60405290565b60006001600160401b0380841115620018ba57620018ba6200185b565b604051601f8501601f19908116603f01168101908282118183101715620018e557620018e56200185b565b81604052809350858152868686011115620018ff57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200192d57600080fd5b82356200193a8162001797565b915060208301356001600160401b038111156200195657600080fd5b8301601f810185136200196857600080fd5b62001979858235602084016200189d565b9150509250929050565b60008060008060008060a087890312156200199d57600080fd5b8635620019aa8162001797565b95506020870135620019bc8162001797565b945060408701356001600160401b0380821115620019d957600080fd5b818901915089601f830112620019ee57600080fd5b813581811115620019fe57600080fd5b8a60208260051b850101111562001a1457600080fd5b60208301965080955050505062001a2e60608801620017ad565b915062001a3e60808801620017ad565b90509295509295509295565b80358015158114620017ba57600080fd5b6000806040838503121562001a6f57600080fd5b823562001a7c8162001797565b915062001a8c6020840162001a4a565b90509250929050565b60006020828403121562001aa857600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6003811062001ae457634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b03831681526040810162001568602083018462001ac5565b6000806040838503121562001b1b57600080fd5b823562001b288162001797565b946020939093013593505050565b600082601f83011262001b4857600080fd5b62001568838335602085016200189d565b60006040828403121562001b6c57600080fd5b604080519081016001600160401b03808211838310171562001b925762001b926200185b565b8160405282935084358352602085013591508082111562001bb257600080fd5b5062001bc18582860162001b36565b6020830152505092915050565b60006020828403121562001be157600080fd5b81356001600160401b038082111562001bf957600080fd5b90830190610180828603121562001c0f57600080fd5b62001c1962001871565b62001c2483620017ad565b815262001c3460208401620017ad565b602082015260408301356040820152606083013560608201526080830135608082015262001c6560a08401620017ad565b60a082015262001c7860c08401620017ad565b60c082015260e08301358281111562001c9057600080fd5b62001c9e8782860162001b59565b60e08301525061010062001cb4818501620017ad565b90820152610120838101358381111562001ccd57600080fd5b62001cdb8882870162001b36565b82840152505061014062001cf181850162001a4a565b90820152610160838101358381111562001d0a57600080fd5b62001d188882870162001b36565b918301919091525095945050505050565b60005b8381101562001d4657818101518382015260200162001d2c565b50506000910152565b6000815180845262001d6981602086016020860162001d29565b601f01601f19169290920160200192915050565b60208152600062001568602083018462001d4f565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c90820152600080516020620028fe83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620028fe83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60008235605e1983360301811262001e8357600080fd5b9190910192915050565b60006020828403121562001ea057600080fd5b8135600381106200156857600080fd5b6000808335601e1984360301811262001ec857600080fd5b8301803591506001600160401b0382111562001ee357600080fd5b6020019150600581901b360382131562001efc57600080fd5b9250929050565b60006001820162001f2457634e487b7160e01b600052601160045260246000fd5b5060010190565b60006020828403121562001f3e57600080fd5b8151620015688162001797565b6001600160e01b0319169052565b600060018060a01b038087168352602060808185015260808401875480825260a08601915060a08160051b870101896000528360002060005b838110156200222057609f198984030185528154878116845262001fbf87850160ff8360a01c1662001ac5565b506060604084015260608301600183015462001fdf818390815260200190565b915062001ff56001850160009081526020902090565b60005b82600782011015620020c057815462002015858260e01b62001f4b565b6001600160e01b031962002032868d0160c084901b831662001f4b565b6200204660408701828460a01b1662001f4b565b6200205a60608701828460801b1662001f4b565b6200206e60808701828460601b1662001f4b565b6200208260a08701828460401b1662001f4b565b6200209560c0870182848f1b1662001f4b565b620020a660e0870182841662001f4b565b505061010093909301926001919091019060080162001ff8565b90549082811015620020e357620020db848360e01b62001f4b565b928901926001015b828110156200210e57620021068460c084901b6001600160e01b03191662001f4b565b928901926001015b828110156200213957620021318460a084901b6001600160e01b03191662001f4b565b928901926001015b8281101562002164576200215c84608084901b6001600160e01b03191662001f4b565b928901926001015b828110156200218f576200218784606084901b6001600160e01b03191662001f4b565b928901926001015b82811015620021ba57620021b284604084901b6001600160e01b03191662001f4b565b928901926001015b82811015620021e357620021db84838c1b6001600160e01b03191662001f4b565b928901926001015b82811015620022075762002202846001600160e01b0319841662001f4b565b928901925b5050509486019492506002919091019060010162001f92565b505062002231604088018a62001776565b868103606088015262002245818962001d4f565b9b9a5050505050505050505050565b6001600160a01b03831681526040602082018190526000906200166d9083018462001d4f565b8051825260006020820151604060208501526200166d604085018262001d4f565b60808152620022af60808201865162001776565b60006020860151620022c560a084018262001776565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620022ff8186018462001776565b60c08901519250610140620023178187018562001776565b60e08a015193506101806101608181890152620023396102008901876200227a565b948c01519495506200234e8883018662001776565b838c01519450607f19935083888703016101a089015262002370868662001d4f565b9550828c01519450620023886101c089018615159052565b808c0151945050505080858403016101e086015250620023a9828262001d4f565b92505050620023bc602083018662001776565b620023cb604083018562001776565b620023da606083018462001776565b95945050505050565b600060208284031215620023f657600080fd5b5051919050565b6000825162001e8381846020870162001d2956fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da264697066735822122097a3c770058de4ae6f6aae30ba59be9f24297113cdbeae40a58febda43bf0cd764736f6c63430008130033","sourceMap":"1069:2252:116:-:0;;;1088:4:64;1045:48;;1069:2252:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106200014c5760003560e01c806302c1d0b114620001515780630a992e0c146200018b5780631459457a14620001bf5780631b71f0e414620001e65780633659cfe6146200020b5780634f1ef28614620002305780634f1f4c0c146200024757806352d1902d146200026c5780635a2c8ace14620002845780635c94e4d214620002a95780635decae0214620002cb578063715018a614620002f057806377122d5614620003085780638279c7db146200032a5780638da5cb5b146200034f57806390a74e2e1462000367578063987435be146200039c578063affed0e014620003bc578063b0d3713a14620003d4578063b5b3ca2c14620003f9578063b8bed901146200041e578063beb331a31462000440578063c4d66de81462000465578063f2fde38b146200048a578063f5016b5e14620004af578063ffa1ad741462000500575b600080fd5b3480156200015e57600080fd5b5060685462000173906001600160a01b031681565b60405162000182919062001783565b60405180910390f35b3480156200019857600080fd5b50620001b0620001aa366004620017bf565b62000535565b60405190815260200162000182565b348015620001cc57600080fd5b50620001e4620001de366004620017df565b6200059b565b005b348015620001f357600080fd5b50620001e462000205366004620017bf565b62000706565b3480156200021857600080fd5b50620001e46200022a366004620017bf565b62000732565b620001e46200024136600462001919565b62000806565b3480156200025457600080fd5b50620001e46200026636600462001983565b620008cb565b3480156200027957600080fd5b50620001b062000b8b565b3480156200029157600080fd5b50620001e4620002a336600462001a5b565b62000c3c565b348015620002b657600080fd5b5060695462000173906001600160a01b031681565b348015620002d857600080fd5b50620001e4620002ea366004620017bf565b62000cad565b348015620002fd57600080fd5b50620001e462000cd9565b3480156200031557600080fd5b50606a5462000173906001600160a01b031681565b3480156200033757600080fd5b50620001e462000349366004620017bf565b62000cf1565b3480156200035c57600080fd5b506200017362000d4d565b3480156200037457600080fd5b506200038c6200038636600462001a95565b62000dee565b6040516200018292919062001ae8565b348015620003a957600080fd5b506067546001600160a01b031662000173565b348015620003c957600080fd5b50620001b060655481565b348015620003e157600080fd5b50620001e4620003f3366004620017bf565b62000e29565b3480156200040657600080fd5b50620001e46200041836600462001b07565b62000e55565b3480156200042b57600080fd5b5060675462000173906001600160a01b031681565b3480156200044d57600080fd5b50620001736200045f36600462001bce565b62000eb1565b3480156200047257600080fd5b50620001e462000484366004620017bf565b6200106d565b3480156200049757600080fd5b50620001e4620004a9366004620017bf565b620010e5565b348015620004bc57600080fd5b50620004ef620004ce366004620017bf565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000182565b3480156200050d57600080fd5b506040805180820182526003815262302e3160e81b6020820152905162000182919062001d7d565b6001600160a01b03811660009081526066602052604081206001015460ff166200057f578160405163f5a6943d60e01b815260040162000576919062001783565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff1615808015620005bc5750600054600160ff909116105b80620005e15750620005ce3062001156565b158015620005e1575060005460ff166001145b620006005760405162461bcd60e51b8152600401620005769062001d92565b6000805460ff19166001179055801562000624576000805461ff0019166101001790555b6200062f866200106d565b60006065556200063f8562001165565b6200064a8462001165565b620006558262001165565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200298583398151915290620006c090879062001783565b60405180910390a18015620006fe576000805461ff0019169055604051600181526000805160206200293e8339815191529060200160405180910390a15b505050505050565b620007106200118d565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200077d5760405162461bcd60e51b8152600401620005769062001de0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316620007b1620011f0565b6001600160a01b031614620007da5760405162461bcd60e51b8152600401620005769062001e1b565b620007e5816200120d565b6040805160008082526020820190925262000803918391906200125f565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008515760405162461bcd60e51b8152600401620005769062001de0565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662000885620011f0565b6001600160a01b031614620008ae5760405162461bcd60e51b8152600401620005769062001e1b565b620008b9826200120d565b620008c7828260016200125f565b5050565b620008d56200118d565b600054600290610100900460ff16158015620008f8575060005460ff8083169116105b620009175760405162461bcd60e51b8152600401620005769062001d92565b6000805461ffff191660ff8316176101001790556200093687620010e5565b620009418662001165565b6200094c8262001165565b606880546001600160a01b038089166001600160a01b03199283161790925560698054868416908316179055606a80549285169290911691909117905560005b8481101562000b5157609d6040518060600160405280888885818110620009b757620009b762001e56565b9050602002810190620009cb919062001e6c565b620009db906020810190620017bf565b6001600160a01b03168152602001888885818110620009fe57620009fe62001e56565b905060200281019062000a12919062001e6c565b62000a2590604081019060200162001e8d565b600281111562000a395762000a3962001aaf565b815260200188888581811062000a535762000a5362001e56565b905060200281019062000a67919062001e6c565b62000a7790604081019062001eb0565b80806020026020016040519081016040528093929190818152602001838360200280828437600092018290525093909452505083546001810185559381526020908190208351600295860290910180546001600160a01b031981166001600160a01b0390931692831782559285015194959094935084926001600160a81b03191690911790600160a01b90849081111562000b165762000b1662001aaf565b02179055506040820151805162000b38916001840191602090910190620016a2565b505050808062000b489062001f03565b9150506200098c565b506000805461ff001916905560405160ff821681526000805160206200293e8339815191529060200160405180910390a150505050505050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462000c285760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000576565b506000805160206200291e83398151915290565b62000c466200118d565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b62000cb76200118d565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000ce36200118d565b62000cef6000620013dc565b565b62000cfb6200118d565b62000d068162001165565b606780546001600160a01b0319166001600160a01b038316179055604051600080516020620029858339815191529062000d4290839062001783565b60405180910390a150565b60008062000d636033546001600160a01b031690565b9050806001600160a01b03163b60000362000d7d57919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000dda575060408051601f3d908101601f1916820190925262000dd79181019062001f2b565b60015b62000de457919050565b92915050565b5090565b609d818154811062000dff57600080fd5b60009182526020909120600290910201546001600160a01b0381169150600160a01b900460ff1682565b62000e336200118d565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000e5f6200118d565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000ca1565b606580546000918262000ec48362001f03565b9091555060808301523060a08301526068546000906001600160a01b031663944ab9ed60e01b62000ef462000d4d565b6040805160008082526020820190925262000f179291609d916044810162001f59565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000f569062001751565b62000f6392919062002254565b604051809103906000f08015801562000f80573d6000803e3d6000fd5b50606954606a5491925082916001600160a01b03808416926334196355928892918216911662000faf62000d4d565b6040518563ffffffff1660e01b815260040162000fd094939291906200229b565b600060405180830381600087803b15801562000feb57600080fd5b505af115801562001000573d6000803e3d6000fd5b5050506001600160a01b038216600090815260666020526040908190206001908101805460ff19169091179055517fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2991506200105e90839062001783565b60405180910390a19392505050565b600054610100900460ff16620010da5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000576565b6200080381620013dc565b620010ef6200118d565b6001600160a01b038116620010da5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000576565b6001600160a01b03163b151590565b6001600160a01b03811662000803576040516303988b8160e61b815260040160405180910390fd5b336200119862000d4d565b6001600160a01b03161462000cef5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000576565b6000805160206200291e833981519152546001600160a01b031690565b336200121862000d4d565b6001600160a01b0316146200080357336200123262000d4d565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000576565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156200129a5762001295836200142e565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015620012f7575060408051601f3d908101601f19168201909252620012f491810190620023e3565b60015b6200135c5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000576565b6000805160206200291e8339815191528114620013ce5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000576565b5062001295838383620014cd565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620014398162001156565b6200149d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000576565b6000805160206200291e83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620014d883620014fe565b600082511180620014e65750805b156200129557620014f8838362001540565b50505050565b62001509816200142e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606200156883836040518060600160405280602781526020016200295e602791396200156f565b9392505050565b6060600080856001600160a01b0316856040516200158e9190620023fd565b600060405180830381855af49150503d8060008114620015cb576040519150601f19603f3d011682016040523d82523d6000602084013e620015d0565b606091505b5091509150620015e386838387620015ed565b9695505050505050565b606083156200166157825160000362001659576200160b8562001156565b620016595760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000576565b50816200166d565b6200166d838362001675565b949350505050565b815115620016865781518083602001fd5b8060405162461bcd60e51b815260040162000576919062001d7d565b82805482825590600052602060002090600701600890048101928215620017435791602002820160005b838211156200170f57835183826101000a81548163ffffffff021916908360e01c02179055509260200192600401602081600301049283019260010302620016cc565b8015620017415782816101000a81549063ffffffff02191690556004016020816003010492830192600103026200170f565b505b5062000dea9291506200175f565b6104ec806200241283390190565b5b8082111562000dea576000815560010162001760565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b03811681146200080357600080fd5b8035620017ba8162001797565b919050565b600060208284031215620017d257600080fd5b8135620015688162001797565b600080600080600060a08688031215620017f857600080fd5b8535620018058162001797565b94506020860135620018178162001797565b93506040860135620018298162001797565b925060608601356200183b8162001797565b915060808601356200184d8162001797565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200189757620018976200185b565b60405290565b60006001600160401b0380841115620018ba57620018ba6200185b565b604051601f8501601f19908116603f01168101908282118183101715620018e557620018e56200185b565b81604052809350858152868686011115620018ff57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200192d57600080fd5b82356200193a8162001797565b915060208301356001600160401b038111156200195657600080fd5b8301601f810185136200196857600080fd5b62001979858235602084016200189d565b9150509250929050565b60008060008060008060a087890312156200199d57600080fd5b8635620019aa8162001797565b95506020870135620019bc8162001797565b945060408701356001600160401b0380821115620019d957600080fd5b818901915089601f830112620019ee57600080fd5b813581811115620019fe57600080fd5b8a60208260051b850101111562001a1457600080fd5b60208301965080955050505062001a2e60608801620017ad565b915062001a3e60808801620017ad565b90509295509295509295565b80358015158114620017ba57600080fd5b6000806040838503121562001a6f57600080fd5b823562001a7c8162001797565b915062001a8c6020840162001a4a565b90509250929050565b60006020828403121562001aa857600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6003811062001ae457634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b03831681526040810162001568602083018462001ac5565b6000806040838503121562001b1b57600080fd5b823562001b288162001797565b946020939093013593505050565b600082601f83011262001b4857600080fd5b62001568838335602085016200189d565b60006040828403121562001b6c57600080fd5b604080519081016001600160401b03808211838310171562001b925762001b926200185b565b8160405282935084358352602085013591508082111562001bb257600080fd5b5062001bc18582860162001b36565b6020830152505092915050565b60006020828403121562001be157600080fd5b81356001600160401b038082111562001bf957600080fd5b90830190610180828603121562001c0f57600080fd5b62001c1962001871565b62001c2483620017ad565b815262001c3460208401620017ad565b602082015260408301356040820152606083013560608201526080830135608082015262001c6560a08401620017ad565b60a082015262001c7860c08401620017ad565b60c082015260e08301358281111562001c9057600080fd5b62001c9e8782860162001b59565b60e08301525061010062001cb4818501620017ad565b90820152610120838101358381111562001ccd57600080fd5b62001cdb8882870162001b36565b82840152505061014062001cf181850162001a4a565b90820152610160838101358381111562001d0a57600080fd5b62001d188882870162001b36565b918301919091525095945050505050565b60005b8381101562001d4657818101518382015260200162001d2c565b50506000910152565b6000815180845262001d6981602086016020860162001d29565b601f01601f19169290920160200192915050565b60208152600062001568602083018462001d4f565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c90820152600080516020620028fe83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020620028fe83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b60008235605e1983360301811262001e8357600080fd5b9190910192915050565b60006020828403121562001ea057600080fd5b8135600381106200156857600080fd5b6000808335601e1984360301811262001ec857600080fd5b8301803591506001600160401b0382111562001ee357600080fd5b6020019150600581901b360382131562001efc57600080fd5b9250929050565b60006001820162001f2457634e487b7160e01b600052601160045260246000fd5b5060010190565b60006020828403121562001f3e57600080fd5b8151620015688162001797565b6001600160e01b0319169052565b600060018060a01b038087168352602060808185015260808401875480825260a08601915060a08160051b870101896000528360002060005b838110156200222057609f198984030185528154878116845262001fbf87850160ff8360a01c1662001ac5565b506060604084015260608301600183015462001fdf818390815260200190565b915062001ff56001850160009081526020902090565b60005b82600782011015620020c057815462002015858260e01b62001f4b565b6001600160e01b031962002032868d0160c084901b831662001f4b565b6200204660408701828460a01b1662001f4b565b6200205a60608701828460801b1662001f4b565b6200206e60808701828460601b1662001f4b565b6200208260a08701828460401b1662001f4b565b6200209560c0870182848f1b1662001f4b565b620020a660e0870182841662001f4b565b505061010093909301926001919091019060080162001ff8565b90549082811015620020e357620020db848360e01b62001f4b565b928901926001015b828110156200210e57620021068460c084901b6001600160e01b03191662001f4b565b928901926001015b828110156200213957620021318460a084901b6001600160e01b03191662001f4b565b928901926001015b8281101562002164576200215c84608084901b6001600160e01b03191662001f4b565b928901926001015b828110156200218f576200218784606084901b6001600160e01b03191662001f4b565b928901926001015b82811015620021ba57620021b284604084901b6001600160e01b03191662001f4b565b928901926001015b82811015620021e357620021db84838c1b6001600160e01b03191662001f4b565b928901926001015b82811015620022075762002202846001600160e01b0319841662001f4b565b928901925b5050509486019492506002919091019060010162001f92565b505062002231604088018a62001776565b868103606088015262002245818962001d4f565b9b9a5050505050505050505050565b6001600160a01b03831681526040602082018190526000906200166d9083018462001d4f565b8051825260006020820151604060208501526200166d604085018262001d4f565b60808152620022af60808201865162001776565b60006020860151620022c560a084018262001776565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620022ff8186018462001776565b60c08901519250610140620023178187018562001776565b60e08a015193506101806101608181890152620023396102008901876200227a565b948c01519495506200234e8883018662001776565b838c01519450607f19935083888703016101a089015262002370868662001d4f565b9550828c01519450620023886101c089018615159052565b808c0151945050505080858403016101e086015250620023a9828262001d4f565b92505050620023bc602083018662001776565b620023cb604083018562001776565b620023da606083018462001776565b95945050505050565b600060208284031215620023f657600080fd5b5051919050565b6000825162001e8381846020870162001d2956fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da264697066735822122097a3c770058de4ae6f6aae30ba59be9f24297113cdbeae40a58febda43bf0cd764736f6c63430008130033","sourceMap":"1069:2252:116:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40:106;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:136;;;992:2;977:18;4804:249:106;858:177:136;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;1181:872:116:-;;;;;;;;;;-1:-1:-1;1181:872:116;;;;;:::i;:::-;;:::i;2762:131:64:-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;1858:136;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;1131:43:116:-;;;;;;;;;;-1:-1:-1;1131:43:116;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;2059:1124:116;;;;;;;;;;-1:-1:-1;2059:1124:116;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;9167:14:136;;9160:22;9142:41;;9130:2;9115:18;4654:144:106;9002:187:136;3193:93:116;;;;;;;;;;-1:-1:-1;3267:12:116;;;;;;;;;;;-1:-1:-1;;;3267:12:116;;;;3193:93;;;;3267:12;3193:93;:::i;4804:249:106:-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;10672:36:136;;-1:-1:-1;;;;;;;;;;;3721:14:47;10660:2:136;10645:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;1181:872:116:-;1355:13:45;:11;:13::i;:::-;4882::47::1;::::0;1437:1:116::1;::::0;4882:13:47::1;::::0;::::1;;;4881:14;:40:::0;::::1;;;-1:-1:-1::0;4899:12:47::1;::::0;:22:::1;::::0;;::::1;:12:::0;::::1;:22;4881:40;4873:99;;;;-1:-1:-1::0;;;4873:99:47::1;;;;;;;:::i;:::-;4982:12;:22:::0;;-1:-1:-1;;5014:20:47;4982:22:::1;::::0;::::1;5014:20:::0;4982:22:::1;5014:20;::::0;;1450:25:116::2;1468:6:::0;1450:17:::2;:25::i;:::-;1485:46;1504:26;1485:18;:46::i;:::-;1541:44;1560:24;1541:18;:44::i;:::-;1595:25;:54:::0;;-1:-1:-1;;;;;1595:54:116;;::::2;-1:-1:-1::0;;;;;;1595:54:116;;::::2;;::::0;;;1659:16:::2;:36:::0;;;;::::2;::::0;;::::2;;::::0;;1705:23:::2;:50:::0;;;;::::2;::::0;;;::::2;::::0;;;::::2;::::0;;1595:25:::2;1771:275;1788:16:::0;;::::2;1771:275;;;1825:13;1844:190;;;;;;;;1894:5;;1900:1;1894:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:21;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;-1:-1:-1::0;;;;;1844:190:116::2;;;;;1941:5;;1947:1;1941:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:15;::::0;;;;;::::2;;;:::i;:::-;1844:190;;;;;;;;:::i;:::-;;;;;1993:5;;1999:1;1993:8;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:26;::::0;::::2;::::0;::::2;::::0;::::2;:::i;:::-;1844:190;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::2;::::0;;;-1:-1:-1;1844:190:116;;;;-1:-1:-1;;1825:210:116;;::::2;::::0;::::2;::::0;;;;;::::2;::::0;;;;;;::::2;::::0;;::::2;::::0;;::::2;::::0;;-1:-1:-1;;;;;;1825:210:116;::::2;-1:-1:-1::0;;;;;1825:210:116;;::::2;::::0;;::::2;::::0;;;;::::2;::::0;;;;;;-1:-1:-1;1825:210:116;;-1:-1:-1;;;;;;1825:210:116;;;;;-1:-1:-1;;;1825:210:116;;;;::::2;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;1825:210:116::2;::::0;::::2;::::0;;;::::2;::::0;::::2;::::0;::::2;::::0;::::2;::::0;;::::2;::::0;::::2;:::i;:::-;;;;1806:3;;;;;:::i;:::-;;;;1771:275;;;-1:-1:-1::0;5071:5:47::1;5055:21:::0;;-1:-1:-1;;5055:21:47::1;::::0;;5091:20:::1;::::0;10702:4:136;10690:17;;10672:36;;-1:-1:-1;;;;;;;;;;;5091:20:47;10660:2:136;10645:18;5091:20:47::1;;;;;;;1378:1:45;1181:872:116::0;;;;;;:::o;2762:131:64:-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;13466:2:136;2064:92:64;;;13448:21:136;13505:2;13485:18;;;13478:30;13544:34;13524:18;;;13517:62;-1:-1:-1;;;13595:18:136;;;13588:54;13659:19;;2064:92:64;13264:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;13857:51:136;;;13924:18;;;13917:50;4599:42:106::1;::::0;13830:18:136;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;1858:136::-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;:::-;;;;;;;;3867:222:::0;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;872:241::-;581:548;525:604;:::o;1131:43:116:-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1131:43:116;;;-1:-1:-1;;;;1131:43:116;;;;;:::o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;14408:51:136;;;14475:18;;14468:34;;;4384:43:106::1;::::0;14381:18:136;4384:43:106::1;14234:274:136::0;2059:1124:116;2264:5;:7;;2201:31;;;2264:7;;;:::i;:::-;;;;-1:-1:-1;2248:13:116;;;:23;2315:4;2281:23;;;:39;2391:25;;-1:-1:-1;;;;;;;2391:25:116;-1:-1:-1;;;2495:7:116;:5;:7::i;:::-;2531:12;;;2527:1;2531:12;;;;;;;;;2431:113;;;2504:13;;2431:113;;;;:::i;:::-;;;;-1:-1:-1;;2431:113:116;;;;;;;;;;;;;;-1:-1:-1;;;;;2431:113:116;-1:-1:-1;;;;;;2431:113:116;;;;;;;;;;2353:201;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2946:16:116;;2964:23;;2332:222;;-1:-1:-1;2332:222:116;;-1:-1:-1;;;;;2909:28:116;;;;;;2938:6;;2946:16;;;;2964:23;2989:7;:5;:7::i;:::-;2909:88;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;3018:43:116;;;;;;:15;:43;;;;;;;3070:4;3018:49;;;:56;;-1:-1:-1;;3018:56:116;;;;;;3089:44;;;-1:-1:-1;3089:44:116;;3042:17;;3089:44;:::i;:::-;;;;;;;;3158:17;2059:1124;-1:-1:-1;;;2059:1124:116:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;22102:2:136;5366:69:47;;;22084:21:136;22141:2;22121:18;;;22114:30;22180:34;22160:18;;;22153:62;-1:-1:-1;;;22231:18:136;;;22224:41;22282:19;;5366:69:47;21900:407:136;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;22514:2:136;2415:73:45::1;::::0;::::1;22496:21:136::0;22553:2;22533:18;;;22526:30;22592:34;22572:18;;;22565:62;-1:-1:-1;;;22643:18:136;;;22636:36;22689:19;;2415:73:45::1;22312:402:136::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;22921:2:136;1675:68:45;;;22903:21:136;;;22940:18;;;22933:30;22999:34;22979:18;;;22972:62;23051:18;;1675:68:45;22719:356:136;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;23310:15:136;;;1252:35:103;;;23292:34:136;23362:15;;23342:18;;;23335:43;23227:18;;1252:35:103;23080:304:136;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;23780:2:136;3262:56:60;;;23762:21:136;23819:2;23799:18;;;23792:30;23858:34;23838:18;;;23831:62;-1:-1:-1;;;23909:18:136;;;23902:44;23963:19;;3262:56:60;23578:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;24195:2:136;3140:82:60;;;24177:21:136;24234:2;24214:18;;;24207:30;24273:34;24253:18;;;24246:62;-1:-1:-1;;;24324:18:136;;;24317:39;24373:19;;3140:82:60;23993:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;24605:2:136;1479:95:60;;;24587:21:136;24644:2;24624:18;;;24617:30;24683:34;24663:18;;;24656:62;-1:-1:-1;;;24734:18:136;;;24727:43;24787:19;;1479:95:60;24403:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;25311:2:136;8113:60:76;;;25293:21:136;25350:2;25330:18;;;25323:30;25389:31;25369:18;;;25362:59;25438:18;;8113:60:76;25109:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;14:104:136;-1:-1:-1;;;;;80:31:136;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:136;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:136;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:136;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:136;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:136;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:136;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:136;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:136;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:136;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:136;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:136;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:136;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3470:1070::-;3621:6;3629;3637;3645;3653;3661;3714:3;3702:9;3693:7;3689:23;3685:33;3682:53;;;3731:1;3728;3721:12;3682:53;3770:9;3757:23;3789:31;3814:5;3789:31;:::i;:::-;3839:5;-1:-1:-1;3896:2:136;3881:18;;3868:32;3909:33;3868:32;3909:33;:::i;:::-;3961:7;-1:-1:-1;4019:2:136;4004:18;;3991:32;-1:-1:-1;;;;;4072:14:136;;;4069:34;;;4099:1;4096;4089:12;4069:34;4137:6;4126:9;4122:22;4112:32;;4182:7;4175:4;4171:2;4167:13;4163:27;4153:55;;4204:1;4201;4194:12;4153:55;4244:2;4231:16;4270:2;4262:6;4259:14;4256:34;;;4286:1;4283;4276:12;4256:34;4339:7;4334:2;4324:6;4321:1;4317:14;4313:2;4309:23;4305:32;4302:45;4299:65;;;4360:1;4357;4350:12;4299:65;4391:2;4387;4383:11;4373:21;;4413:6;4403:16;;;;;4438:38;4472:2;4461:9;4457:18;4438:38;:::i;:::-;4428:48;;4495:39;4529:3;4518:9;4514:19;4495:39;:::i;:::-;4485:49;;3470:1070;;;;;;;;:::o;4727:160::-;4792:20;;4848:13;;4841:21;4831:32;;4821:60;;4877:1;4874;4867:12;4892:315;4957:6;4965;5018:2;5006:9;4997:7;4993:23;4989:32;4986:52;;;5034:1;5031;5024:12;4986:52;5073:9;5060:23;5092:31;5117:5;5092:31;:::i;:::-;5142:5;-1:-1:-1;5166:35:136;5197:2;5182:18;;5166:35;:::i;:::-;5156:45;;4892:315;;;;;:::o;5212:180::-;5271:6;5324:2;5312:9;5303:7;5299:23;5295:32;5292:52;;;5340:1;5337;5330:12;5292:52;-1:-1:-1;5363:23:136;;5212:180;-1:-1:-1;5212:180:136:o;5397:127::-;5458:10;5453:3;5449:20;5446:1;5439:31;5489:4;5486:1;5479:15;5513:4;5510:1;5503:15;5529:242;5615:1;5608:5;5605:12;5595:143;;5660:10;5655:3;5651:20;5648:1;5641:31;5695:4;5692:1;5685:15;5723:4;5720:1;5713:15;5595:143;5747:18;;5529:242::o;5776:316::-;-1:-1:-1;;;;;5986:32:136;;5968:51;;5956:2;5941:18;;6028:58;6082:2;6067:18;;6059:6;6028:58;:::i;6097:315::-;6165:6;6173;6226:2;6214:9;6205:7;6201:23;6197:32;6194:52;;;6242:1;6239;6232:12;6194:52;6281:9;6268:23;6300:31;6325:5;6300:31;:::i;:::-;6350:5;6402:2;6387:18;;;;6374:32;;-1:-1:-1;;;6097:315:136:o;6417:221::-;6460:5;6513:3;6506:4;6498:6;6494:17;6490:27;6480:55;;6531:1;6528;6521:12;6480:55;6553:79;6628:3;6619:6;6606:20;6599:4;6591:6;6587:17;6553:79;:::i;6643:610::-;6698:5;6746:4;6734:9;6729:3;6725:19;6721:30;6718:50;;;6764:1;6761;6754:12;6718:50;6797:4;6791:11;;;6829:17;;-1:-1:-1;;;;;6898:18:136;;;6918:22;;;6895:46;6892:72;;;6944:18;;:::i;:::-;6986:10;6980:4;6973:24;7015:6;7006:15;;7058:9;7045:23;7037:6;7030:39;7120:2;7109:9;7105:18;7092:32;7078:46;;7147:2;7139:6;7136:14;7133:34;;;7163:1;7160;7153:12;7133:34;;7200:46;7242:3;7233:6;7222:9;7218:22;7200:46;:::i;:::-;7195:2;7187:6;7183:15;7176:71;;;6643:610;;;;:::o;7258:1643::-;7373:6;7426:2;7414:9;7405:7;7401:23;7397:32;7394:52;;;7442:1;7439;7432:12;7394:52;7469:23;;-1:-1:-1;;;;;7541:14:136;;;7538:34;;;7568:1;7565;7558:12;7538:34;7591:22;;;;7647:6;7629:16;;;7625:29;7622:49;;;7667:1;7664;7657:12;7622:49;7693:17;;:::i;:::-;7733:22;7752:2;7733:22;:::i;:::-;7726:5;7719:37;7788:31;7815:2;7811;7807:11;7788:31;:::i;:::-;7783:2;7776:5;7772:14;7765:55;7873:2;7869;7865:11;7852:25;7847:2;7840:5;7836:14;7829:49;7931:2;7927;7923:11;7910:25;7905:2;7898:5;7894:14;7887:49;7990:3;7986:2;7982:12;7969:26;7963:3;7956:5;7952:15;7945:51;8029:32;8056:3;8052:2;8048:12;8029:32;:::i;:::-;8023:3;8016:5;8012:15;8005:57;8095:32;8122:3;8118:2;8114:12;8095:32;:::i;:::-;8089:3;8082:5;8078:15;8071:57;8174:3;8170:2;8166:12;8153:26;8204:2;8194:8;8191:16;8188:36;;;8220:1;8217;8210:12;8188:36;8257:54;8303:7;8292:8;8288:2;8284:17;8257:54;:::i;:::-;8251:3;8244:5;8240:15;8233:79;;8331:3;8366:31;8393:2;8389;8385:11;8366:31;:::i;:::-;8350:14;;;8343:55;8417:3;8458:11;;;8445:25;8482:16;;;8479:36;;;8511:1;8508;8501:12;8479:36;8547:45;8584:7;8573:8;8569:2;8565:17;8547:45;:::i;:::-;8542:2;8535:5;8531:14;8524:69;;;8612:3;8647:28;8671:2;8667;8663:11;8647:28;:::i;:::-;8631:14;;;8624:52;8695:3;8736:11;;;8723:25;8760:16;;;8757:36;;;8789:1;8786;8779:12;8757:36;8825:45;8862:7;8851:8;8847:2;8843:17;8825:45;:::i;:::-;8809:14;;;8802:69;;;;-1:-1:-1;8813:5:136;7258:1643;-1:-1:-1;;;;;7258:1643:136:o;9349:250::-;9434:1;9444:113;9458:6;9455:1;9452:13;9444:113;;;9534:11;;;9528:18;9515:11;;;9508:39;9480:2;9473:10;9444:113;;;-1:-1:-1;;9591:1:136;9573:16;;9566:27;9349:250::o;9604:271::-;9646:3;9684:5;9678:12;9711:6;9706:3;9699:19;9727:76;9796:6;9789:4;9784:3;9780:14;9773:4;9766:5;9762:16;9727:76;:::i;:::-;9857:2;9836:15;-1:-1:-1;;9832:29:136;9823:39;;;;9864:4;9819:50;;9604:271;-1:-1:-1;;9604:271:136:o;9880:220::-;10029:2;10018:9;10011:21;9992:4;10049:45;10090:2;10079:9;10075:18;10067:6;10049:45;:::i;10105:410::-;10307:2;10289:21;;;10346:2;10326:18;;;10319:30;10385:34;10380:2;10365:18;;10358:62;-1:-1:-1;;;10451:2:136;10436:18;;10429:44;10505:3;10490:19;;10105:410::o;10719:408::-;10921:2;10903:21;;;10960:2;10940:18;;;10933:30;-1:-1:-1;;;;;;;;;;;10994:2:136;10979:18;;10972:62;-1:-1:-1;;;11065:2:136;11050:18;;11043:42;11117:3;11102:19;;10719:408::o;11132:::-;11334:2;11316:21;;;11373:2;11353:18;;;11346:30;-1:-1:-1;;;;;;;;;;;11407:2:136;11392:18;;11385:62;-1:-1:-1;;;11478:2:136;11463:18;;11456:42;11530:3;11515:19;;11132:408::o;11545:127::-;11606:10;11601:3;11597:20;11594:1;11587:31;11637:4;11634:1;11627:15;11661:4;11658:1;11651:15;11677:326;11772:4;11830:11;11817:25;11924:2;11920:7;11909:8;11893:14;11889:29;11885:43;11865:18;11861:68;11851:96;;11943:1;11940;11933:12;11851:96;11964:33;;;;;11677:326;-1:-1:-1;;11677:326:136:o;12008:276::-;12087:6;12140:2;12128:9;12119:7;12115:23;12111:32;12108:52;;;12156:1;12153;12146:12;12108:52;12195:9;12182:23;12234:1;12227:5;12224:12;12214:40;;12250:1;12247;12240:12;12289:544;12381:4;12387:6;12447:11;12434:25;12541:2;12537:7;12526:8;12510:14;12506:29;12502:43;12482:18;12478:68;12468:96;;12560:1;12557;12550:12;12468:96;12587:33;;12639:20;;;-1:-1:-1;;;;;;12671:30:136;;12668:50;;;12714:1;12711;12704:12;12668:50;12747:4;12735:17;;-1:-1:-1;12798:1:136;12794:14;;;12778;12774:35;12764:46;;12761:66;;;12823:1;12820;12813:12;12761:66;12289:544;;;;;:::o;12838:232::-;12877:3;12898:17;;;12895:140;;12957:10;12952:3;12948:20;12945:1;12938:31;12992:4;12989:1;12982:15;13020:4;13017:1;13010:15;12895:140;-1:-1:-1;13062:1:136;13051:13;;12838:232::o;13978:251::-;14048:6;14101:2;14089:9;14080:7;14076:23;14072:32;14069:52;;;14117:1;14114;14107:12;14069:52;14149:9;14143:16;14168:31;14193:5;14168:31;:::i;14658:104::-;-1:-1:-1;;;;;;14723:32:136;14711:45;;14658:104::o;14767:4508::-;15059:4;15105:1;15101;15096:3;15092:11;15088:19;15146:2;15138:6;15134:15;15123:9;15116:34;15169:2;15207:3;15202:2;15191:9;15187:18;15180:31;15246:3;15235:9;15231:19;15279:6;15273:13;15307:6;15302:3;15295:19;15345:3;15334:9;15330:19;15323:26;;15408:3;15398:6;15395:1;15391:14;15380:9;15376:30;15372:40;15431:6;15428:1;15421:17;15474:2;15471:1;15461:16;15495:1;15505:3596;15519:6;15516:1;15513:13;15505:3596;;;15612:3;15608:8;15596:9;15588:6;15584:22;15580:37;15575:3;15568:50;15654:6;15648:13;15704:2;15693:9;15689:18;15681:6;15674:34;15721:79;15796:2;15788:6;15784:15;15777:4;15765:9;15760:3;15756:19;15752:30;15721:79;:::i;:::-;;15839:4;15832;15824:6;15820:17;15813:31;15882:4;15874:6;15870:17;15934:1;15926:6;15922:14;15916:21;15959:52;16002:8;15995:5;9281:19;;;9333:4;9324:14;;9194:150;15959:52;15950:61;;16040:64;16101:1;16093:6;16089:14;14605:1;14598:14;;;14642:4;14629:18;;;14513:140;16040:64;16136:1;16150:918;16194:8;16190:1;16177:11;16173:19;16170:33;16150:918;;;16331:8;16325:15;16357:40;16391:5;16384:4;16379:3;16375:14;16357:40;:::i;:::-;-1:-1:-1;;;;;;16461:58:136;16504:14;;;16487:3;16483:14;;;16479:23;;16461:58;:::i;:::-;16536:60;16590:4;16583:5;16579:16;16574:2;16567:4;16562:3;16558:14;16554:23;16536:60;:::i;:::-;16613;16667:4;16660:5;16656:16;16651:2;16644:4;16639:3;16635:14;16631:23;16613:60;:::i;:::-;16690;16745:3;16738:5;16734:15;16729:2;16722:4;16716;16712:15;16708:24;16690:60;:::i;:::-;16767;16822:3;16815:5;16811:15;16806:2;16799:4;16793;16789:15;16785:24;16767:60;:::i;:::-;16844:58;16897:3;16890:5;16886:15;16881:2;16874:4;16870:2;16866:13;16862:22;16844:58;:::i;:::-;16919:49;16963:3;16956:5;16952:15;16947:2;16941:4;16937:13;16919:49;:::i;:::-;-1:-1:-1;;17005:3:136;16994:15;;;;;17052:1;17038:16;;;;;16266:1;16249:19;16150:918;;;17095:15;;;17126:25;;;17123:206;;;17182:42;17218:5;17209:6;17204:3;17200:16;17182:42;:::i;:::-;17250:14;;;;17313:1;17296:19;17123:206;17361:8;17348:11;17345:25;17342:233;;;17401:69;17464:5;17427:3;17423:16;;;-1:-1:-1;;;;;;17419:43:136;17401:69;:::i;:::-;17496:14;;;;17559:1;17542:19;17342:233;17607:8;17594:11;17591:25;17588:233;;;17647:69;17710:5;17673:3;17669:16;;;-1:-1:-1;;;;;;17665:43:136;17647:69;:::i;:::-;17742:14;;;;17805:1;17788:19;17588:233;17853:8;17840:11;17837:25;17834:233;;;17893:69;17956:5;17919:3;17915:16;;;-1:-1:-1;;;;;;17911:43:136;17893:69;:::i;:::-;17988:14;;;;18051:1;18034:19;17834:233;18099:8;18086:11;18083:25;18080:234;;;18139:70;18203:5;18165:4;18161:17;;;-1:-1:-1;;;;;;18157:44:136;18139:70;:::i;:::-;18235:14;;;;18298:1;18281:19;18080:234;18346:8;18333:11;18330:25;18327:234;;;18386:70;18450:5;18412:4;18408:17;;;-1:-1:-1;;;;;;18404:44:136;18386:70;:::i;:::-;18482:14;;;;18545:1;18528:19;18327:234;18593:8;18580:11;18577:25;18574:232;;;18633:68;18695:5;18655:15;;;-1:-1:-1;;;;;;18651:42:136;18633:68;:::i;:::-;18727:14;;;;18790:1;18773:19;18574:232;18838:8;18825:11;18822:25;18819:172;;;18878:59;18931:5;-1:-1:-1;;;;;;18896:33:136;;18878:59;:::i;:::-;18963:14;;;;18819:172;-1:-1:-1;;;19079:12:136;;;;19014:5;-1:-1:-1;19054:4:136;19042:17;;;;;15541:1;15534:9;15505:3596;;;15509:3;;19110:48;19152:4;19141:9;19137:20;19129:6;19110:48;:::i;:::-;19208:9;19200:6;19196:22;19189:4;19178:9;19174:20;19167:52;19236:33;19262:6;19254;19236:33;:::i;:::-;19228:41;14767:4508;-1:-1:-1;;;;;;;;;;;14767:4508:136:o;19280:315::-;-1:-1:-1;;;;;19455:32:136;;19437:51;;19524:2;19519;19504:18;;19497:30;;;-1:-1:-1;;19544:45:136;;19570:18;;19562:6;19544:45;:::i;19600:252::-;19687:5;19681:12;19676:3;19669:25;19651:3;19740:4;19733:5;19729:16;19723:23;19778:4;19771;19766:3;19762:14;19755:28;19799:47;19840:4;19835:3;19831:14;19817:12;19799:47;:::i;19857:2038::-;20182:3;20171:9;20164:22;20195:54;20244:3;20233:9;20229:19;20220:6;20214:13;20195:54;:::i;:::-;20145:4;20296;20288:6;20284:17;20278:24;20311:53;20359:3;20348:9;20344:19;20330:12;20311:53;:::i;:::-;;20419:4;20411:6;20407:17;20401:24;20395:3;20384:9;20380:19;20373:53;20481:4;20473:6;20469:17;20463:24;20457:3;20446:9;20442:19;20435:53;20525:3;20517:6;20513:16;20507:23;20549:3;20588:2;20583;20572:9;20568:18;20561:30;20640:3;20632:6;20628:16;20622:23;20600:45;;20664:3;20676:54;20726:2;20715:9;20711:18;20695:14;20676:54;:::i;:::-;20779:3;20771:6;20767:16;20761:23;20739:45;;20803:3;20815:54;20865:2;20854:9;20850:18;20834:14;20815:54;:::i;:::-;20918:3;20910:6;20906:16;20900:23;20878:45;;20942:6;20967:3;21006:2;21001;20990:9;20986:18;20979:30;21032:63;21090:3;21079:9;21075:19;21059:14;21032:63;:::i;:::-;21132:15;;;21126:22;21018:77;;-1:-1:-1;21157:54:136;21192:18;;;21126:22;21157:54;:::i;:::-;21260:2;21252:6;21248:15;21242:22;21220:44;;21287:3;21283:8;21273:18;;21356:2;21344:9;21336:6;21332:22;21328:31;21322:3;21311:9;21307:19;21300:60;21383:41;21417:6;21401:14;21383:41;:::i;:::-;21369:55;;21473:2;21465:6;21461:15;21455:22;21433:44;;21486:52;21533:3;21522:9;21518:19;21502:14;8976:13;8969:21;8957:34;;8906:91;21486:52;21587:2;21579:6;21575:15;21569:22;21547:44;;;;;21656:2;21644:9;21636:6;21632:22;21628:31;21622:3;21611:9;21607:19;21600:60;;21677:41;21711:6;21695:14;21677:41;:::i;:::-;21669:49;;;;21727:48;21769:4;21758:9;21754:20;21746:6;21727:48;:::i;:::-;21784;21826:4;21815:9;21811:20;21803:6;21784:48;:::i;:::-;21841;21883:4;21872:9;21868:20;21860:6;21841:48;:::i;:::-;19857:2038;;;;;;;:::o;23389:184::-;23459:6;23512:2;23500:9;23491:7;23487:23;23483:32;23480:52;;;23528:1;23525;23518:12;23480:52;-1:-1:-1;23551:16:136;;23389:184;-1:-1:-1;23389:184:136:o;24817:287::-;24946:3;24984:6;24978:13;25000:66;25059:6;25054:3;25047:4;25039:6;25035:17;25000:66;:::i","linkReferences":{},"immutableReferences":{"55572":[{"start":1852,"length":32},{"start":1919,"length":32},{"start":2064,"length":32},{"start":2131,"length":32},{"start":2968,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","cutsCommunity(uint256)":"90a74e2e","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2(address,address,(address,uint8,bytes4[])[],address,address)":"4f1f4c0c","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"cutsCommunity\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"facetAddress\",\"type\":\"address\"},{\"internalType\":\"enum IDiamond.FacetCutAction\",\"name\":\"action\",\"type\":\"uint8\"},{\"internalType\":\"bytes4[]\",\"name\":\"functionSelectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct IDiamond.FacetCut[]\",\"name\":\"_cuts\",\"type\":\"tuple[]\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":\"RegistryFactoryFacet\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/diamonds/BaseDiamond.sol\":{\"keccak256\":\"0xfa4aa595fad506af3f7f1f1a8706cf052f31a66de4a5da856864dc41e22abd40\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ff36a0b4d2001ad27a235eb8a980e7db12a37e1c6e149a92c131de955b1ba02f\",\"dweb:/ipfs/QmNiBVSmfFmuUPLiuTRYShz6K6zKbHiCDnfgxpo1TqLhXC\"]},\"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol\":{\"keccak256\":\"0x3f5ced030e374705f9b421ad075197772a79f468841510f876e1ddf2d281b1da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d524eb2ccd9668b98af426fc0b716e8f1b2622018c1b850d2d141b4ff1473943\",\"dweb:/ipfs/Qmb8Q5azfj413XGjRpChY8zwyTJR4mLrZY5siUrDC1ytxX\"]},\"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol\":{\"keccak256\":\"0xf407d8d13beeae0f71270673636aab6f7366188c227e148063219eb871aaba4f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://74176d7d9836bb724611d4b1574ad683874a5e08615f2e00b7ad345d2104eab3\",\"dweb:/ipfs/QmUdg53mFzjJPcw5yFGYdXvC1BLTXFfiiFrqqdAwrNYzcp\"]},\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":{\"keccak256\":\"0x2834801c6de5f7548d319c81a4cf8b0e9be465234fabdf2f22992e1163fa8b0c\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://9bd9ea0a9fa87f4bb0201a4a5a25cdc11717a4261c6c3363b98719945036cb4f\",\"dweb:/ipfs/QmfAJ2mH6yk7RTjXJGCqFZfgNtN4G63FFAthccszD4M6pi\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamond.sol\":{\"keccak256\":\"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6\",\"dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol\":{\"keccak256\":\"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf\",\"dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D\"]},\"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol\":{\"keccak256\":\"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb\",\"dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty\"]},\"pkg/contracts/src/diamonds/interfaces/IERC165.sol\":{\"keccak256\":\"0x7541f7408d0f74162bc4664d5e012427f2ceaab2abadca0353269ef15ee03d8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8e7a34b3ea39f4c0dfa6f5ace5d9415e4d0c90cb3f4264e6946b808f2d4011c\",\"dweb:/ipfs/QmWdcRF4krMMb1ua3hmV8avdHKYa4XXt1iw7sxx1ntsEJa\"]},\"pkg/contracts/src/diamonds/libraries/LibDiamond.sol\":{\"keccak256\":\"0x01675a91456b875c07bc26e3715dd8be8471e405db41ff77b89109922a8d187f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://69a8844c1a0993d94b0d2f468323e93f04e2bba8a1f7012318b96e5b2a892344\",\"dweb:/ipfs/QmYMr41yUDJDFH19qieAqzPyFDApUyQu5wtajnHMfmKGzB\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"cutsCommunity","outputs":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"struct IDiamond.FacetCut[]","name":"_cuts","type":"tuple[]","components":[{"internalType":"address","name":"facetAddress","type":"address"},{"internalType":"enum IDiamond.FacetCutAction","name":"action","type":"uint8"},{"internalType":"bytes4[]","name":"functionSelectors","type":"bytes4[]"}]},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":"RegistryFactoryFacet"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/BaseDiamond.sol":{"keccak256":"0xfa4aa595fad506af3f7f1f1a8706cf052f31a66de4a5da856864dc41e22abd40","urls":["bzz-raw://ff36a0b4d2001ad27a235eb8a980e7db12a37e1c6e149a92c131de955b1ba02f","dweb:/ipfs/QmNiBVSmfFmuUPLiuTRYShz6K6zKbHiCDnfgxpo1TqLhXC"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol":{"keccak256":"0x3f5ced030e374705f9b421ad075197772a79f468841510f876e1ddf2d281b1da","urls":["bzz-raw://d524eb2ccd9668b98af426fc0b716e8f1b2622018c1b850d2d141b4ff1473943","dweb:/ipfs/Qmb8Q5azfj413XGjRpChY8zwyTJR4mLrZY5siUrDC1ytxX"],"license":"MIT"},"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol":{"keccak256":"0xf407d8d13beeae0f71270673636aab6f7366188c227e148063219eb871aaba4f","urls":["bzz-raw://74176d7d9836bb724611d4b1574ad683874a5e08615f2e00b7ad345d2104eab3","dweb:/ipfs/QmUdg53mFzjJPcw5yFGYdXvC1BLTXFfiiFrqqdAwrNYzcp"],"license":"MIT"},"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":{"keccak256":"0x2834801c6de5f7548d319c81a4cf8b0e9be465234fabdf2f22992e1163fa8b0c","urls":["bzz-raw://9bd9ea0a9fa87f4bb0201a4a5a25cdc11717a4261c6c3363b98719945036cb4f","dweb:/ipfs/QmfAJ2mH6yk7RTjXJGCqFZfgNtN4G63FFAthccszD4M6pi"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/interfaces/IDiamond.sol":{"keccak256":"0xc6a91de66660231f2a95905e910d90a23fe6aea3ad761dcca7b44188a6da3b98","urls":["bzz-raw://0f7ff793dd247605e566b39de8a2be6ba203654226ea8361dbc841f75414cef6","dweb:/ipfs/QmNUUiAGvpHvtHDY6MyKju2zopYNMzegUKR92RkZUkpLd3"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol":{"keccak256":"0x0712a562f059dc0f139f108ef25ded748609b94b8bfc551dd54a26efd8485b9e","urls":["bzz-raw://42d0834107facef42d9446bc681dcca1d0518596d0cac525c39d69b61ec553cf","dweb:/ipfs/QmdbPqH4n3SFHsGD6sCTMrWEnf1kFxDWFHpPUKxTbN6i9D"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol":{"keccak256":"0x5ad70156a0665ecca87a01de835bce544dc56ca6bf125ab06aed4e28f6cb7972","urls":["bzz-raw://6e9f18dbba3f49e0c1285fd72a5e3317c6f2283bc5461f4a2b79d552e4f35ddb","dweb:/ipfs/QmTKZgjNy9VRgjdyyEXCJbouspkzSc6CFo27acp1qDFaty"],"license":"MIT"},"pkg/contracts/src/diamonds/interfaces/IERC165.sol":{"keccak256":"0x7541f7408d0f74162bc4664d5e012427f2ceaab2abadca0353269ef15ee03d8b","urls":["bzz-raw://a8e7a34b3ea39f4c0dfa6f5ace5d9415e4d0c90cb3f4264e6946b808f2d4011c","dweb:/ipfs/QmWdcRF4krMMb1ua3hmV8avdHKYa4XXt1iw7sxx1ntsEJa"],"license":"MIT"},"pkg/contracts/src/diamonds/libraries/LibDiamond.sol":{"keccak256":"0x01675a91456b875c07bc26e3715dd8be8471e405db41ff77b89109922a8d187f","urls":["bzz-raw://69a8844c1a0993d94b0d2f468323e93f04e2bba8a1f7012318b96e5b2a892344","dweb:/ipfs/QmYMr41yUDJDFH19qieAqzPyFDApUyQu5wtajnHMfmKGzB"],"license":"MIT"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"},{"astId":74337,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"cutsCommunity","offset":0,"slot":"157","type":"t_array(t_struct(FacetCut)74544_storage)dyn_storage"},{"astId":74528,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"158","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_bytes4)dyn_storage":{"encoding":"dynamic_array","label":"bytes4[]","numberOfBytes":"32","base":"t_bytes4"},"t_array(t_struct(FacetCut)74544_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct IDiamond.FacetCut[]","numberOfBytes":"32","base":"t_struct(FacetCut)74544_storage"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_enum(FacetCutAction)74535":{"encoding":"inplace","label":"enum IDiamond.FacetCutAction","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_struct(FacetCut)74544_storage":{"encoding":"inplace","label":"struct IDiamond.FacetCut","numberOfBytes":"64","members":[{"astId":74537,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"facetAddress","offset":0,"slot":"0","type":"t_address"},{"astId":74540,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"action","offset":20,"slot":"0","type":"t_enum(FacetCutAction)74535"},{"astId":74543,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"functionSelectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol","id":74530,"exportedSymbols":{"BaseDiamond":[73482],"Clone":[3002],"CommunityInfo":[74331],"DiamondCutFacet":[73731],"DiamondLoupeFacet":[74169],"ERC1967Proxy":[55021],"IDiamond":[74555],"IDiamondCut":[74574],"LibDiamond":[75442],"ProxyOwnableUpgrader":[70199],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403],"RegistryFactoryFacet":[74529],"RegistryFactoryV0_0":[72778]},"nodeType":"SourceUnit","src":"42:3280:116","nodes":[{"id":74301,"nodeType":"PragmaDirective","src":"42:24:116","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74304,"nodeType":"ImportDirective","src":"68:136:116","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":74302,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74303,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"108:37:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74306,"nodeType":"ImportDirective","src":"205:88:116","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":74305,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"213:21:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74308,"nodeType":"ImportDirective","src":"294:67:116","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":74307,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"302:20:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74310,"nodeType":"ImportDirective","src":"362:84:116","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":74309,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"370:12:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74312,"nodeType":"ImportDirective","src":"447:65:116","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":74311,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"455:5:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74314,"nodeType":"ImportDirective","src":"513:81:116","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"@src/RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":72779,"symbolAliases":[{"foreign":{"id":74313,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72778,"src":"521:19:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74316,"nodeType":"ImportDirective","src":"595:63:116","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamond.sol","file":"@src/diamonds/interfaces/IDiamond.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":74556,"symbolAliases":[{"foreign":{"id":74315,"name":"IDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74555,"src":"603:8:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74318,"nodeType":"ImportDirective","src":"659:69:116","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol","file":"@src/diamonds/interfaces/IDiamondCut.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":74575,"symbolAliases":[{"foreign":{"id":74317,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74574,"src":"667:11:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74320,"nodeType":"ImportDirective","src":"729:73:116","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/facets/DiamondCutFacet.sol","file":"@src/diamonds/facets/DiamondCutFacet.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":73732,"symbolAliases":[{"foreign":{"id":74319,"name":"DiamondCutFacet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73731,"src":"737:15:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74322,"nodeType":"ImportDirective","src":"803:77:116","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/facets/DiamondLoupeFacet.sol","file":"@src/diamonds/facets/DiamondLoupeFacet.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":74170,"symbolAliases":[{"foreign":{"id":74321,"name":"DiamondLoupeFacet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74169,"src":"811:17:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74324,"nodeType":"ImportDirective","src":"881:66:116","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"@src/diamonds/libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":75443,"symbolAliases":[{"foreign":{"id":74323,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75442,"src":"889:10:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74326,"nodeType":"ImportDirective","src":"949:58:116","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"@src/diamonds/BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":74530,"sourceUnit":73483,"symbolAliases":[{"foreign":{"id":74325,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73482,"src":"957:11:116","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74331,"nodeType":"StructDefinition","src":"1010:57:116","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":74328,"mutability":"mutable","name":"fee","nameLocation":"1045:3:116","nodeType":"VariableDeclaration","scope":74331,"src":"1037:11:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74327,"name":"uint256","nodeType":"ElementaryTypeName","src":"1037:7:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74330,"mutability":"mutable","name":"valid","nameLocation":"1059:5:116","nodeType":"VariableDeclaration","scope":74331,"src":"1054:10:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74329,"name":"bool","nodeType":"ElementaryTypeName","src":"1054:4:116","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"1017:13:116","scope":74530,"visibility":"public"},{"id":74529,"nodeType":"ContractDefinition","src":"1069:2252:116","nodes":[{"id":74337,"nodeType":"VariableDeclaration","src":"1131:43:116","nodes":[],"constant":false,"functionSelector":"90a74e2e","mutability":"mutable","name":"cutsCommunity","nameLocation":"1161:13:116","scope":74529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut[]"},"typeName":{"baseType":{"id":74335,"nodeType":"UserDefinedTypeName","pathNode":{"id":74334,"name":"IDiamondCut.FacetCut","nameLocations":["1131:11:116","1143:8:116"],"nodeType":"IdentifierPath","referencedDeclaration":74544,"src":"1131:20:116"},"referencedDeclaration":74544,"src":"1131:20:116","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74544_storage_ptr","typeString":"struct IDiamond.FacetCut"}},"id":74336,"nodeType":"ArrayTypeName","src":"1131:22:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage_ptr","typeString":"struct IDiamond.FacetCut[]"}},"visibility":"public"},{"id":74415,"nodeType":"FunctionDefinition","src":"1181:872:116","nodes":[],"body":{"id":74414,"nodeType":"Block","src":"1440:613:116","nodes":[],"statements":[{"expression":{"arguments":[{"id":74358,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74339,"src":"1468:6:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74357,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52877,"src":"1450:17:116","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74359,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1450:25:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74360,"nodeType":"ExpressionStatement","src":"1450:25:116"},{"expression":{"arguments":[{"id":74362,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74341,"src":"1504:26:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74361,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"1485:18:116","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74363,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1485:46:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74364,"nodeType":"ExpressionStatement","src":"1485:46:116"},{"expression":{"arguments":[{"id":74366,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74349,"src":"1560:24:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74365,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"1541:18:116","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74367,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1541:44:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74368,"nodeType":"ExpressionStatement","src":"1541:44:116"},{"expression":{"id":74371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74369,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"1595:25:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74370,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74341,"src":"1623:26:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1595:54:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74372,"nodeType":"ExpressionStatement","src":"1595:54:116"},{"expression":{"id":74375,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74373,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"1659:16:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74374,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74347,"src":"1678:17:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1659:36:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74376,"nodeType":"ExpressionStatement","src":"1659:36:116"},{"expression":{"id":74379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74377,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"1705:23:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74378,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74349,"src":"1731:24:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1705:50:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74380,"nodeType":"ExpressionStatement","src":"1705:50:116"},{"body":{"id":74412,"nodeType":"Block","src":"1811:235:116","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"baseExpression":{"id":74397,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74345,"src":"1894:5:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74399,"indexExpression":{"id":74398,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74382,"src":"1900:1:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1894:8:116","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74544_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1903:12:116","memberName":"facetAddress","nodeType":"MemberAccess","referencedDeclaration":74537,"src":"1894:21:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":74401,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74345,"src":"1941:5:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74403,"indexExpression":{"id":74402,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74382,"src":"1947:1:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1941:8:116","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74544_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74404,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1950:6:116","memberName":"action","nodeType":"MemberAccess","referencedDeclaration":74540,"src":"1941:15:116","typeDescriptions":{"typeIdentifier":"t_enum$_FacetCutAction_$74535","typeString":"enum IDiamond.FacetCutAction"}},{"expression":{"baseExpression":{"id":74405,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74345,"src":"1993:5:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74407,"indexExpression":{"id":74406,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74382,"src":"1999:1:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1993:8:116","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74544_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata"}},"id":74408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2002:17:116","memberName":"functionSelectors","nodeType":"MemberAccess","referencedDeclaration":74543,"src":"1993:26:116","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes4_$dyn_calldata_ptr","typeString":"bytes4[] calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_FacetCutAction_$74535","typeString":"enum IDiamond.FacetCutAction"},{"typeIdentifier":"t_array$_t_bytes4_$dyn_calldata_ptr","typeString":"bytes4[] calldata"}],"expression":{"id":74395,"name":"IDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74555,"src":"1844:8:116","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IDiamond_$74555_$","typeString":"type(contract IDiamond)"}},"id":74396,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1853:8:116","memberName":"FacetCut","nodeType":"MemberAccess","referencedDeclaration":74544,"src":"1844:17:116","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_FacetCut_$74544_storage_ptr_$","typeString":"type(struct IDiamond.FacetCut storage pointer)"}},"id":74409,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1880:12:116","1933:6:116","1974:17:116"],"names":["facetAddress","action","functionSelectors"],"nodeType":"FunctionCall","src":"1844:190:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74544_memory_ptr","typeString":"struct IDiamond.FacetCut memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_FacetCut_$74544_memory_ptr","typeString":"struct IDiamond.FacetCut memory"}],"expression":{"id":74392,"name":"cutsCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74337,"src":"1825:13:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"}},"id":74394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1839:4:116","memberName":"push","nodeType":"MemberAccess","src":"1825:18:116","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage_ptr_$_t_struct$_FacetCut_$74544_storage_$returns$__$attached_to$_t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage_ptr_$","typeString":"function (struct IDiamond.FacetCut storage ref[] storage pointer,struct IDiamond.FacetCut storage ref)"}},"id":74410,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1825:210:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74411,"nodeType":"ExpressionStatement","src":"1825:210:116"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":74388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":74385,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74382,"src":"1788:1:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":74386,"name":"_cuts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74345,"src":"1792:5:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut calldata[] calldata"}},"id":74387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1798:6:116","memberName":"length","nodeType":"MemberAccess","src":"1792:12:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1788:16:116","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74413,"initializationExpression":{"assignments":[74382],"declarations":[{"constant":false,"id":74382,"mutability":"mutable","name":"i","nameLocation":"1781:1:116","nodeType":"VariableDeclaration","scope":74413,"src":"1776:6:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74381,"name":"uint","nodeType":"ElementaryTypeName","src":"1776:4:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":74384,"initialValue":{"hexValue":"30","id":74383,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1785:1:116","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"1776:10:116"},"loopExpression":{"expression":{"id":74390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"1806:3:116","subExpression":{"id":74389,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74382,"src":"1806:1:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74391,"nodeType":"ExpressionStatement","src":"1806:3:116"},"nodeType":"ForStatement","src":"1771:275:116"}]},"functionSelector":"4f1f4c0c","implemented":true,"kind":"function","modifiers":[{"id":74352,"kind":"modifierInvocation","modifierName":{"id":74351,"name":"onlyOwner","nameLocations":["1413:9:116"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"1413:9:116"},"nodeType":"ModifierInvocation","src":"1413:9:116"},{"arguments":[{"hexValue":"32","id":74354,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1437:1:116","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":74355,"kind":"modifierInvocation","modifierName":{"id":74353,"name":"reinitializer","nameLocations":["1423:13:116"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"1423:13:116"},"nodeType":"ModifierInvocation","src":"1423:16:116"}],"name":"initializeV2","nameLocation":"1190:12:116","parameters":{"id":74350,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74339,"mutability":"mutable","name":"_owner","nameLocation":"1228:6:116","nodeType":"VariableDeclaration","scope":74415,"src":"1220:14:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74338,"name":"address","nodeType":"ElementaryTypeName","src":"1220:7:116","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74341,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"1252:26:116","nodeType":"VariableDeclaration","scope":74415,"src":"1244:34:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74340,"name":"address","nodeType":"ElementaryTypeName","src":"1244:7:116","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74345,"mutability":"mutable","name":"_cuts","nameLocation":"1317:5:116","nodeType":"VariableDeclaration","scope":74415,"src":"1288:34:116","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IDiamond.FacetCut[]"},"typeName":{"baseType":{"id":74343,"nodeType":"UserDefinedTypeName","pathNode":{"id":74342,"name":"IDiamond.FacetCut","nameLocations":["1288:8:116","1297:8:116"],"nodeType":"IdentifierPath","referencedDeclaration":74544,"src":"1288:17:116"},"referencedDeclaration":74544,"src":"1288:17:116","typeDescriptions":{"typeIdentifier":"t_struct$_FacetCut_$74544_storage_ptr","typeString":"struct IDiamond.FacetCut"}},"id":74344,"nodeType":"ArrayTypeName","src":"1288:19:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage_ptr","typeString":"struct IDiamond.FacetCut[]"}},"visibility":"internal"},{"constant":false,"id":74347,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"1340:17:116","nodeType":"VariableDeclaration","scope":74415,"src":"1332:25:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74346,"name":"address","nodeType":"ElementaryTypeName","src":"1332:7:116","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74349,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"1375:24:116","nodeType":"VariableDeclaration","scope":74415,"src":"1367:32:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74348,"name":"address","nodeType":"ElementaryTypeName","src":"1367:7:116","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1202:203:116"},"returnParameters":{"id":74356,"nodeType":"ParameterList","parameters":[],"src":"1440:0:116"},"scope":74529,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74515,"nodeType":"FunctionDefinition","src":"2059:1124:116","nodes":[],"body":{"id":74514,"nodeType":"Block","src":"2238:945:116","nodes":[],"statements":[{"expression":{"id":74429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74424,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74418,"src":"2248:6:116","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74426,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2255:6:116","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"2248:13:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2264:7:116","subExpression":{"id":74427,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"2264:5:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2248:23:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74430,"nodeType":"ExpressionStatement","src":"2248:23:116"},{"expression":{"id":74438,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74431,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74418,"src":"2281:6:116","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74433,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2288:16:116","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"2281:23:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":74436,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2315:4:116","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74529","typeString":"contract RegistryFactoryFacet"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74529","typeString":"contract RegistryFactoryFacet"}],"id":74435,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2307:7:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74434,"name":"address","nodeType":"ElementaryTypeName","src":"2307:7:116","typeDescriptions":{}}},"id":74437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2307:13:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2281:39:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74439,"nodeType":"ExpressionStatement","src":"2281:39:116"},{"assignments":[74442],"declarations":[{"constant":false,"id":74442,"mutability":"mutable","name":"proxy","nameLocation":"2345:5:116","nodeType":"VariableDeclaration","scope":74514,"src":"2332:18:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":74441,"nodeType":"UserDefinedTypeName","pathNode":{"id":74440,"name":"ERC1967Proxy","nameLocations":["2332:12:116"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"2332:12:116"},"referencedDeclaration":55021,"src":"2332:12:116","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":74468,"initialValue":{"arguments":[{"arguments":[{"id":74448,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"2391:25:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74447,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2383:7:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74446,"name":"address","nodeType":"ElementaryTypeName","src":"2383:7:116","typeDescriptions":{}}},"id":74449,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2383:34:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":74452,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73482,"src":"2454:11:116","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_BaseDiamond_$73482_$","typeString":"type(contract BaseDiamond)"}},"id":74453,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2466:18:116","memberName":"initializeOwnerCut","nodeType":"MemberAccess","referencedDeclaration":73337,"src":"2454:30:116","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_array$_t_struct$_FacetCut_$74544_memory_ptr_$dyn_memory_ptr_$_t_address_$_t_bytes_memory_ptr_$returns$__$","typeString":"function BaseDiamond.initializeOwnerCut(address,struct IDiamond.FacetCut memory[] memory,address,bytes memory)"}},"id":74454,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2485:8:116","memberName":"selector","nodeType":"MemberAccess","src":"2454:39:116","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74455,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"2495:5:116","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74456,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2495:7:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74457,"name":"cutsCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74337,"src":"2504:13:116","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"}},{"arguments":[{"hexValue":"30","id":74460,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2527:1:116","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":74459,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2519:7:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74458,"name":"address","nodeType":"ElementaryTypeName","src":"2519:7:116","typeDescriptions":{}}},"id":74461,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2519:10:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"30","id":74464,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2541:1:116","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":74463,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"2531:9:116","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":74462,"name":"bytes","nodeType":"ElementaryTypeName","src":"2535:5:116","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":74465,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2531:12:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_FacetCut_$74544_storage_$dyn_storage","typeString":"struct IDiamond.FacetCut storage ref[] storage ref"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":74450,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2431:3:116","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":74451,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2435:18:116","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"2431:22:116","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":74466,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2431:113:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":74445,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"2353:16:116","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":74444,"nodeType":"UserDefinedTypeName","pathNode":{"id":74443,"name":"ERC1967Proxy","nameLocations":["2357:12:116"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"2357:12:116"},"referencedDeclaration":55021,"src":"2357:12:116","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":74467,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2353:201:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"2332:222:116"},{"assignments":[74471],"declarations":[{"constant":false,"id":74471,"mutability":"mutable","name":"registryCommunity","nameLocation":"2832:17:116","nodeType":"VariableDeclaration","scope":74514,"src":"2810:39:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":74470,"nodeType":"UserDefinedTypeName","pathNode":{"id":74469,"name":"RegistryCommunityV0_0","nameLocations":["2810:21:116"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"2810:21:116"},"referencedDeclaration":72174,"src":"2810:21:116","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":74481,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":74477,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74442,"src":"2890:5:116","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":74476,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2882:7:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74475,"name":"address","nodeType":"ElementaryTypeName","src":"2882:7:116","typeDescriptions":{}}},"id":74478,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2882:14:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74474,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2874:8:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":74473,"name":"address","nodeType":"ElementaryTypeName","src":"2874:8:116","stateMutability":"payable","typeDescriptions":{}}},"id":74479,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2874:23:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":74472,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"2852:21:116","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74480,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2852:46:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"2810:88:116"},{"expression":{"arguments":[{"id":74485,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74418,"src":"2938:6:116","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":74486,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"2946:16:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74487,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"2964:23:116","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74488,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"2989:5:116","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74489,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2989:7:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74482,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74471,"src":"2909:17:116","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"id":74484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2927:10:116","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"2909:28:116","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address) external"}},"id":74490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2909:88:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74491,"nodeType":"ExpressionStatement","src":"2909:88:116"},{"expression":{"id":74500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74492,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"3018:15:116","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74497,"indexExpression":{"arguments":[{"id":74495,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74471,"src":"3042:17:116","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74494,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3034:7:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74493,"name":"address","nodeType":"ElementaryTypeName","src":"3034:7:116","typeDescriptions":{}}},"id":74496,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3034:26:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3018:43:116","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":74498,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3062:5:116","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"3018:49:116","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":74499,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3070:4:116","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3018:56:116","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74501,"nodeType":"ExpressionStatement","src":"3018:56:116"},{"eventCall":{"arguments":[{"arguments":[{"id":74505,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74471,"src":"3114:17:116","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74504,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3106:7:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74503,"name":"address","nodeType":"ElementaryTypeName","src":"3106:7:116","typeDescriptions":{}}},"id":74506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3106:26:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74502,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"3089:16:116","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3089:44:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74508,"nodeType":"EmitStatement","src":"3084:49:116"},{"expression":{"arguments":[{"id":74511,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74471,"src":"3158:17:116","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":74510,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3150:7:116","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74509,"name":"address","nodeType":"ElementaryTypeName","src":"3150:7:116","typeDescriptions":{}}},"id":74512,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3150:26:116","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":74423,"id":74513,"nodeType":"Return","src":"3143:33:116"}]},"baseFunctions":[72656],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"2068:14:116","overrides":{"id":74420,"nodeType":"OverrideSpecifier","overrides":[],"src":"2159:8:116"},"parameters":{"id":74419,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74418,"mutability":"mutable","name":"params","nameLocation":"2128:6:116","nodeType":"VariableDeclaration","scope":74515,"src":"2083:51:116","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":74417,"nodeType":"UserDefinedTypeName","pathNode":{"id":74416,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["2083:37:116"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"2083:37:116"},"referencedDeclaration":70264,"src":"2083:37:116","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"2082:53:116"},"returnParameters":{"id":74423,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74422,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"2209:23:116","nodeType":"VariableDeclaration","scope":74515,"src":"2201:31:116","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74421,"name":"address","nodeType":"ElementaryTypeName","src":"2201:7:116","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2200:33:116"},"scope":74529,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74524,"nodeType":"FunctionDefinition","src":"3193:93:116","nodes":[],"body":{"id":74523,"nodeType":"Block","src":"3257:29:116","nodes":[],"statements":[{"expression":{"hexValue":"302e31","id":74521,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3274:5:116","typeDescriptions":{"typeIdentifier":"t_stringliteral_8cd160c72d102a6747abd189ac21d4a1f802e3fcc1bb8fc78cc4d558df0c7c21","typeString":"literal_string \"0.1\""},"value":"0.1"},"functionReturnParameters":74520,"id":74522,"nodeType":"Return","src":"3267:12:116"}]},"baseFunctions":[72773],"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"3202:7:116","overrides":{"id":74517,"nodeType":"OverrideSpecifier","overrides":[],"src":"3224:8:116"},"parameters":{"id":74516,"nodeType":"ParameterList","parameters":[],"src":"3209:2:116"},"returnParameters":{"id":74520,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74519,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74524,"src":"3242:13:116","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":74518,"name":"string","nodeType":"ElementaryTypeName","src":"3242:6:116","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3241:15:116"},"scope":74529,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":74528,"nodeType":"VariableDeclaration","src":"3293:25:116","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"3313:5:116","scope":74529,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74525,"name":"uint256","nodeType":"ElementaryTypeName","src":"3293:7:116","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74527,"length":{"hexValue":"3530","id":74526,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3301:2:116","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"3293:11:116","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74332,"name":"RegistryFactoryV0_0","nameLocations":["1102:19:116"],"nodeType":"IdentifierPath","referencedDeclaration":72778,"src":"1102:19:116"},"id":74333,"nodeType":"InheritanceSpecifier","src":"1102:19:116"}],"canonicalName":"RegistryFactoryFacet","contractDependencies":[55021],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74529,72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryFacet","nameLocation":"1078:20:116","scope":74530,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":116} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json b/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json index 7fe1388e..52b92b59 100644 --- a/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json +++ b/pkg/contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161202c61004c6000396000818161072101528181610764015281816107f50152818161083801526108bd015261202c6000f3fe608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001328565b60405180910390f35b3480156200018057600080fd5b50620001986200019236600462001364565b620004c3565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c636600462001384565b62000529565b005b348015620001db57600080fd5b50620001cc620001ed36600462001364565b620006eb565b3480156200020057600080fd5b50620001cc6200021236600462001364565b62000717565b620001cc62000229366004620014be565b620007eb565b3480156200023c57600080fd5b5062000198620008b0565b3480156200025457600080fd5b50620001cc6200026636600462001539565b62000961565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad36600462001364565b620009d2565b348015620002c057600080fd5b50620001cc620009fe565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c36600462001364565b62000a16565b3480156200031f57600080fd5b506200015b62000a72565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc6200038136600462001364565b62000b0f565b3480156200039457600080fd5b50620001cc620003a636600462001573565b62000b3b565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed3660046200163a565b62000b97565b3480156200040057600080fd5b50620001cc6200041236600462001364565b62000cd8565b3480156200042557600080fd5b50620001cc6200043736600462001364565b62000d50565b3480156200044a57600080fd5b506200047d6200045c36600462001364565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200016a9190620017e9565b6001600160a01b03811660009081526066602052604081206001015460ff166200050d578160405163f5a6943d60e01b815260040162000504919062001328565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200054a5750600054600160ff909116105b806200056f57506200055c3062000dc1565b1580156200056f575060005460ff166001145b620005d45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840162000504565b6000805460ff191660011790558015620005f8576000805461ff0019166101001790555b620006038662000cd8565b6000606555620006138562000dd0565b6200061e8462000dd0565b620006298262000dd0565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fd7833981519152906200069490879062001328565b60405180910390a18015620006e3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b620006f562000df8565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620007625760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200079662000e5b565b6001600160a01b031614620007bf5760405162461bcd60e51b8152600401620005049062001839565b620007ca8162000e78565b60408051600080825260208201909252620007e89183919062000eca565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008365760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200086a62000e5b565b6001600160a01b031614620008935760405162461bcd60e51b8152600401620005049062001839565b6200089e8262000e78565b620008ac8282600162000eca565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200094d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000504565b5060008051602062001f9083398151915290565b6200096b62000df8565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009dc62000df8565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a0862000df8565b62000a14600062001047565b565b62000a2062000df8565b62000a2b8162000dd0565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fd78339815191529062000a6790839062001328565b60405180910390a150565b60008062000a886033546001600160a01b031690565b9050806001600160a01b03163b60000362000aa257919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000aff575060408051601f3d908101601f1916820190925262000afc9181019062001874565b60015b62000b0957919050565b92915050565b62000b1962000df8565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b4562000df8565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009c6565b606580546000918262000baa8362001894565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000beb62000a72565b60405160240162000c009493929190620018dd565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c3f906200130d565b62000c4c92919062001a25565b604051809103906000f08015801562000c69573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cc990839062001328565b60405180910390a19392505050565b600054610100900460ff1662000d455760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000504565b620007e88162001047565b62000d5a62000df8565b6001600160a01b03811662000d455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000504565b6001600160a01b03163b151590565b6001600160a01b038116620007e8576040516303988b8160e61b815260040160405180910390fd5b3362000e0362000a72565b6001600160a01b03161462000a145760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000504565b60008051602062001f90833981519152546001600160a01b031690565b3362000e8362000a72565b6001600160a01b031614620007e8573362000e9d62000a72565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000504565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f055762000f008362001099565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f62575060408051601f3d908101601f1916820190925262000f5f9181019062001a4b565b60015b62000fc75760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000504565b60008051602062001f908339815191528114620010395760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000504565b5062000f0083838362001138565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010a48162000dc1565b620011085760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000504565b60008051602062001f9083398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011438362001169565b600082511180620011515750805b1562000f0057620011638383620011ab565b50505050565b620011748162001099565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011d3838360405180606001604052806027815260200162001fb060279139620011da565b9392505050565b6060600080856001600160a01b031685604051620011f9919062001a65565b600060405180830381855af49150503d806000811462001236576040519150601f19603f3d011682016040523d82523d6000602084013e6200123b565b606091505b50915091506200124e8683838762001258565b9695505050505050565b60608315620012cc578251600003620012c457620012768562000dc1565b620012c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000504565b5081620012d8565b620012d88383620012e0565b949350505050565b815115620012f15781518083602001fd5b8060405162461bcd60e51b8152600401620005049190620017e9565b6104ec8062001a8483390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007e857600080fd5b80356200135f816200133c565b919050565b6000602082840312156200137757600080fd5b8135620011d3816200133c565b600080600080600060a086880312156200139d57600080fd5b8535620013aa816200133c565b94506020860135620013bc816200133c565b93506040860135620013ce816200133c565b92506060860135620013e0816200133c565b91506080860135620013f2816200133c565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200143c576200143c62001400565b60405290565b60006001600160401b03808411156200145f576200145f62001400565b604051601f8501601f19908116603f011681019082821181831017156200148a576200148a62001400565b81604052809350858152868686011115620014a457600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014d257600080fd5b8235620014df816200133c565b915060208301356001600160401b03811115620014fb57600080fd5b8301601f810185136200150d57600080fd5b6200151e8582356020840162001442565b9150509250929050565b803580151581146200135f57600080fd5b600080604083850312156200154d57600080fd5b82356200155a816200133c565b91506200156a6020840162001528565b90509250929050565b600080604083850312156200158757600080fd5b823562001594816200133c565b946020939093013593505050565b600082601f830112620015b457600080fd5b620011d38383356020850162001442565b600060408284031215620015d857600080fd5b604080519081016001600160401b038082118383101715620015fe57620015fe62001400565b816040528293508435835260208501359150808211156200161e57600080fd5b506200162d85828601620015a2565b6020830152505092915050565b6000602082840312156200164d57600080fd5b81356001600160401b03808211156200166557600080fd5b9083019061018082860312156200167b57600080fd5b6200168562001416565b620016908362001352565b8152620016a06020840162001352565b6020820152604083013560408201526060830135606082015260808301356080820152620016d160a0840162001352565b60a0820152620016e460c0840162001352565b60c082015260e083013582811115620016fc57600080fd5b6200170a87828601620015c5565b60e0830152506101006200172081850162001352565b9082015261012083810135838111156200173957600080fd5b6200174788828701620015a2565b8284015250506101406200175d81850162001528565b9082015261016083810135838111156200177657600080fd5b6200178488828701620015a2565b918301919091525095945050505050565b60005b83811015620017b257818101518382015260200162001798565b50506000910152565b60008151808452620017d581602086016020860162001795565b601f01601f19169290920160200192915050565b602081526000620011d36020830184620017bb565b6020808252602c9082015260008051602062001f7083398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7083398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200188757600080fd5b8151620011d3816200133c565b600060018201620018b557634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012d86040850182620017bb565b60808152620018f16080820186516200131b565b600060208601516200190760a08401826200131b565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001941818601846200131b565b60c0890151925061014062001959818701856200131b565b60e08a0151935061018061016081818901526200197b610200890187620018bc565b948c015194955062001990888301866200131b565b838c01519450607f19935083888703016101a0890152620019b28686620017bb565b9550828c01519450620019ca6101c089018615159052565b808c0151945050505080858403016101e086015250620019eb8282620017bb565b92505050620019fe60208301866200131b565b62001a0d60408301856200131b565b62001a1c60608301846200131b565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012d890830184620017bb565b60006020828403121562001a5e57600080fd5b5051919050565b6000825162001a7981846020870162001795565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220ef15dda8d1e49aa9e0f78bb0ecd7ebe4ad67e14310c023e52931fedda718055564736f6c63430008130033","sourceMap":"529:4656:106:-:0;;;1088:4:64;1045:48;;529:4656:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001328565b60405180910390f35b3480156200018057600080fd5b50620001986200019236600462001364565b620004c3565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c636600462001384565b62000529565b005b348015620001db57600080fd5b50620001cc620001ed36600462001364565b620006eb565b3480156200020057600080fd5b50620001cc6200021236600462001364565b62000717565b620001cc62000229366004620014be565b620007eb565b3480156200023c57600080fd5b5062000198620008b0565b3480156200025457600080fd5b50620001cc6200026636600462001539565b62000961565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad36600462001364565b620009d2565b348015620002c057600080fd5b50620001cc620009fe565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c36600462001364565b62000a16565b3480156200031f57600080fd5b506200015b62000a72565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc6200038136600462001364565b62000b0f565b3480156200039457600080fd5b50620001cc620003a636600462001573565b62000b3b565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed3660046200163a565b62000b97565b3480156200040057600080fd5b50620001cc6200041236600462001364565b62000cd8565b3480156200042557600080fd5b50620001cc6200043736600462001364565b62000d50565b3480156200044a57600080fd5b506200047d6200045c36600462001364565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200016a9190620017e9565b6001600160a01b03811660009081526066602052604081206001015460ff166200050d578160405163f5a6943d60e01b815260040162000504919062001328565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200054a5750600054600160ff909116105b806200056f57506200055c3062000dc1565b1580156200056f575060005460ff166001145b620005d45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840162000504565b6000805460ff191660011790558015620005f8576000805461ff0019166101001790555b620006038662000cd8565b6000606555620006138562000dd0565b6200061e8462000dd0565b620006298262000dd0565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fd7833981519152906200069490879062001328565b60405180910390a18015620006e3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b620006f562000df8565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620007625760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200079662000e5b565b6001600160a01b031614620007bf5760405162461bcd60e51b8152600401620005049062001839565b620007ca8162000e78565b60408051600080825260208201909252620007e89183919062000eca565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008365760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200086a62000e5b565b6001600160a01b031614620008935760405162461bcd60e51b8152600401620005049062001839565b6200089e8262000e78565b620008ac8282600162000eca565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200094d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000504565b5060008051602062001f9083398151915290565b6200096b62000df8565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009dc62000df8565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a0862000df8565b62000a14600062001047565b565b62000a2062000df8565b62000a2b8162000dd0565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fd78339815191529062000a6790839062001328565b60405180910390a150565b60008062000a886033546001600160a01b031690565b9050806001600160a01b03163b60000362000aa257919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000aff575060408051601f3d908101601f1916820190925262000afc9181019062001874565b60015b62000b0957919050565b92915050565b62000b1962000df8565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b4562000df8565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009c6565b606580546000918262000baa8362001894565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000beb62000a72565b60405160240162000c009493929190620018dd565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c3f906200130d565b62000c4c92919062001a25565b604051809103906000f08015801562000c69573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cc990839062001328565b60405180910390a19392505050565b600054610100900460ff1662000d455760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000504565b620007e88162001047565b62000d5a62000df8565b6001600160a01b03811662000d455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000504565b6001600160a01b03163b151590565b6001600160a01b038116620007e8576040516303988b8160e61b815260040160405180910390fd5b3362000e0362000a72565b6001600160a01b03161462000a145760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000504565b60008051602062001f90833981519152546001600160a01b031690565b3362000e8362000a72565b6001600160a01b031614620007e8573362000e9d62000a72565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000504565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f055762000f008362001099565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f62575060408051601f3d908101601f1916820190925262000f5f9181019062001a4b565b60015b62000fc75760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000504565b60008051602062001f908339815191528114620010395760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000504565b5062000f0083838362001138565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010a48162000dc1565b620011085760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000504565b60008051602062001f9083398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011438362001169565b600082511180620011515750805b1562000f0057620011638383620011ab565b50505050565b620011748162001099565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011d3838360405180606001604052806027815260200162001fb060279139620011da565b9392505050565b6060600080856001600160a01b031685604051620011f9919062001a65565b600060405180830381855af49150503d806000811462001236576040519150601f19603f3d011682016040523d82523d6000602084013e6200123b565b606091505b50915091506200124e8683838762001258565b9695505050505050565b60608315620012cc578251600003620012c457620012768562000dc1565b620012c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000504565b5081620012d8565b620012d88383620012e0565b949350505050565b815115620012f15781518083602001fd5b8060405162461bcd60e51b8152600401620005049190620017e9565b6104ec8062001a8483390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007e857600080fd5b80356200135f816200133c565b919050565b6000602082840312156200137757600080fd5b8135620011d3816200133c565b600080600080600060a086880312156200139d57600080fd5b8535620013aa816200133c565b94506020860135620013bc816200133c565b93506040860135620013ce816200133c565b92506060860135620013e0816200133c565b91506080860135620013f2816200133c565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200143c576200143c62001400565b60405290565b60006001600160401b03808411156200145f576200145f62001400565b604051601f8501601f19908116603f011681019082821181831017156200148a576200148a62001400565b81604052809350858152868686011115620014a457600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014d257600080fd5b8235620014df816200133c565b915060208301356001600160401b03811115620014fb57600080fd5b8301601f810185136200150d57600080fd5b6200151e8582356020840162001442565b9150509250929050565b803580151581146200135f57600080fd5b600080604083850312156200154d57600080fd5b82356200155a816200133c565b91506200156a6020840162001528565b90509250929050565b600080604083850312156200158757600080fd5b823562001594816200133c565b946020939093013593505050565b600082601f830112620015b457600080fd5b620011d38383356020850162001442565b600060408284031215620015d857600080fd5b604080519081016001600160401b038082118383101715620015fe57620015fe62001400565b816040528293508435835260208501359150808211156200161e57600080fd5b506200162d85828601620015a2565b6020830152505092915050565b6000602082840312156200164d57600080fd5b81356001600160401b03808211156200166557600080fd5b9083019061018082860312156200167b57600080fd5b6200168562001416565b620016908362001352565b8152620016a06020840162001352565b6020820152604083013560408201526060830135606082015260808301356080820152620016d160a0840162001352565b60a0820152620016e460c0840162001352565b60c082015260e083013582811115620016fc57600080fd5b6200170a87828601620015c5565b60e0830152506101006200172081850162001352565b9082015261012083810135838111156200173957600080fd5b6200174788828701620015a2565b8284015250506101406200175d81850162001528565b9082015261016083810135838111156200177657600080fd5b6200178488828701620015a2565b918301919091525095945050505050565b60005b83811015620017b257818101518382015260200162001798565b50506000910152565b60008151808452620017d581602086016020860162001795565b601f01601f19169290920160200192915050565b602081526000620011d36020830184620017bb565b6020808252602c9082015260008051602062001f7083398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7083398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200188757600080fd5b8151620011d3816200133c565b600060018201620018b557634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012d86040850182620017bb565b60808152620018f16080820186516200131b565b600060208601516200190760a08401826200131b565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001941818601846200131b565b60c0890151925061014062001959818701856200131b565b60e08a0151935061018061016081818901526200197b610200890187620018bc565b948c015194955062001990888301866200131b565b838c01519450607f19935083888703016101a0890152620019b28686620017bb565b9550828c01519450620019ca6101c089018615159052565b808c0151945050505080858403016101e086015250620019eb8282620017bb565b92505050620019fe60208301866200131b565b62001a0d60408301856200131b565b62001a1c60608301846200131b565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012d890830184620017bb565b60006020828403121562001a5e57600080fd5b5051919050565b6000825162001a7981846020870162001795565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220ef15dda8d1e49aa9e0f78bb0ecd7ebe4ad67e14310c023e52931fedda718055564736f6c63430008130033","sourceMap":"529:4656:106:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:131;;;992:2;977:18;4804:249:106;858:177:131;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;1858:136;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;3048:813;;;;;;;;;;-1:-1:-1;3048:813:106;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;7207:14:131;;7200:22;7182:41;;7170:2;7155:18;4654:144:106;7042:187:131;5060:92:106;;;;;;;;;;-1:-1:-1;5133:12:106;;;;;;;;;;;-1:-1:-1;;;5133:12:106;;;;5060:92;;;;5133:12;5060:92;:::i;4804:249::-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;8192:2:131;3325:201:47;;;8174:21:131;8231:2;8211:18;;;8204:30;8270:34;8250:18;;;8243:62;-1:-1:-1;;;8321:18:131;;;8314:44;8375:19;;3325:201:47;7990:410:131;3325:201:47;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:131;;3721:14:47;;8545:2:131;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:131;2064:92:64;;;9614:21:131;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:131;;;9754:54;9825:19;;2064:92:64;9430:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;10023:51:131;;;10090:18;;;10083:50;4599:42:106::1;::::0;9996:18:131;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;1858:136::-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;:::-;;;;;;;;3867:222:::0;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;10574:51:131;;;10641:18;;10634:34;;;4384:43:106::1;::::0;10547:18:131;4384:43:106::1;10400:274:131::0;3048:813:106;3236:5;:7;;3173:31;;;3236:7;;;:::i;:::-;;;;-1:-1:-1;3220:13:106;;;:23;3287:4;3253:23;;;:39;3362:25;;3476:16;;3494:23;;-1:-1:-1;;;;;;;3362:25:106;;;;-1:-1:-1;;;3425:41:106;3220:6;;3476:16;;;;3494:23;3519:7;:5;:7::i;:::-;3402:125;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3402:125:106;;;;;;;;;;;;;;-1:-1:-1;;;;;3402:125:106;-1:-1:-1;;;;;;3402:125:106;;;;;;;;;;3324:213;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3696:43:106;;3548:39;3696:43;;;:15;:43;;;;;;;3748:4;3696:49;;;:56;;-1:-1:-1;;3696:56:106;;;;;;3767:44;3303:234;;-1:-1:-1;3303:234:106;;3767:44;;;;3303:234;;3767:44;:::i;:::-;;;;;;;;3836:17;3048:813;-1:-1:-1;;;3048:813:106:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13738:2:131;5366:69:47;;;13720:21:131;13777:2;13757:18;;;13750:30;13816:34;13796:18;;;13789:62;-1:-1:-1;;;13867:18:131;;;13860:41;13918:19;;5366:69:47;13536:407:131;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14150:2:131;2415:73:45::1;::::0;::::1;14132:21:131::0;14189:2;14169:18;;;14162:30;14228:34;14208:18;;;14201:62;-1:-1:-1;;;14279:18:131;;;14272:36;14325:19;;2415:73:45::1;13948:402:131::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14557:2:131;1675:68:45;;;14539:21:131;;;14576:18;;;14569:30;14635:34;14615:18;;;14608:62;14687:18;;1675:68:45;14355:356:131;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;14946:15:131;;;1252:35:103;;;14928:34:131;14998:15;;14978:18;;;14971:43;14863:18;;1252:35:103;14716:304:131;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15416:2:131;3262:56:60;;;15398:21:131;15455:2;15435:18;;;15428:30;15494:34;15474:18;;;15467:62;-1:-1:-1;;;15545:18:131;;;15538:44;15599:19;;3262:56:60;15214:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;15831:2:131;3140:82:60;;;15813:21:131;15870:2;15850:18;;;15843:30;15909:34;15889:18;;;15882:62;-1:-1:-1;;;15960:18:131;;;15953:39;16009:19;;3140:82:60;15629:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16241:2:131;1479:95:60;;;16223:21:131;16280:2;16260:18;;;16253:30;16319:34;16299:18;;;16292:62;-1:-1:-1;;;16370:18:131;;;16363:43;16423:19;;1479:95:60;16039:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;16947:2:131;8113:60:76;;;16929:21:131;16986:2;16966:18;;;16959:30;17025:31;17005:18;;;16998:59;17074:18;;8113:60:76;16745:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:131:-;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:131;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:131;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:131;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:131;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:131;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:131;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:131;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:131;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:131;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:131;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:131;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:131;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:131;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:131:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:131;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:131;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:131;5298:1643;-1:-1:-1;;;;;5298:1643:131:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:131;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:131;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:131:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:131;8864:18;;8857:62;-1:-1:-1;;;8950:2:131;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:131;9277:18;;9270:62;-1:-1:-1;;;9363:2:131;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10144:251::-;10214:6;10267:2;10255:9;10246:7;10242:23;10238:32;10235:52;;;10283:1;10280;10273:12;10235:52;10315:9;10309:16;10334:31;10359:5;10334:31;:::i;10679:232::-;10718:3;10739:17;;;10736:140;;10798:10;10793:3;10789:20;10786:1;10779:31;10833:4;10830:1;10823:15;10861:4;10858:1;10851:15;10736:140;-1:-1:-1;10903:1:131;10892:13;;10679:232::o;10916:252::-;11003:5;10997:12;10992:3;10985:25;10967:3;11056:4;11049:5;11045:16;11039:23;11094:4;11087;11082:3;11078:14;11071:28;11115:47;11156:4;11151:3;11147:14;11133:12;11115:47;:::i;11173:2038::-;11498:3;11487:9;11480:22;11511:54;11560:3;11549:9;11545:19;11536:6;11530:13;11511:54;:::i;:::-;11461:4;11612;11604:6;11600:17;11594:24;11627:53;11675:3;11664:9;11660:19;11646:12;11627:53;:::i;:::-;;11735:4;11727:6;11723:17;11717:24;11711:3;11700:9;11696:19;11689:53;11797:4;11789:6;11785:17;11779:24;11773:3;11762:9;11758:19;11751:53;11841:3;11833:6;11829:16;11823:23;11865:3;11904:2;11899;11888:9;11884:18;11877:30;11956:3;11948:6;11944:16;11938:23;11916:45;;11980:3;11992:54;12042:2;12031:9;12027:18;12011:14;11992:54;:::i;:::-;12095:3;12087:6;12083:16;12077:23;12055:45;;12119:3;12131:54;12181:2;12170:9;12166:18;12150:14;12131:54;:::i;:::-;12234:3;12226:6;12222:16;12216:23;12194:45;;12258:6;12283:3;12322:2;12317;12306:9;12302:18;12295:30;12348:63;12406:3;12395:9;12391:19;12375:14;12348:63;:::i;:::-;12448:15;;;12442:22;12334:77;;-1:-1:-1;12473:54:131;12508:18;;;12442:22;12473:54;:::i;:::-;12576:2;12568:6;12564:15;12558:22;12536:44;;12603:3;12599:8;12589:18;;12672:2;12660:9;12652:6;12648:22;12644:31;12638:3;12627:9;12623:19;12616:60;12699:41;12733:6;12717:14;12699:41;:::i;:::-;12685:55;;12789:2;12781:6;12777:15;12771:22;12749:44;;12802:52;12849:3;12838:9;12834:19;12818:14;7016:13;7009:21;6997:34;;6946:91;12802:52;12903:2;12895:6;12891:15;12885:22;12863:44;;;;;12972:2;12960:9;12952:6;12948:22;12944:31;12938:3;12927:9;12923:19;12916:60;;12993:41;13027:6;13011:14;12993:41;:::i;:::-;12985:49;;;;13043:48;13085:4;13074:9;13070:20;13062:6;13043:48;:::i;:::-;13100;13142:4;13131:9;13127:20;13119:6;13100:48;:::i;:::-;13157;13199:4;13188:9;13184:20;13176:6;13157:48;:::i;:::-;11173:2038;;;;;;;:::o;13216:315::-;-1:-1:-1;;;;;13391:32:131;;13373:51;;13460:2;13455;13440:18;;13433:30;;;-1:-1:-1;;13480:45:131;;13506:18;;13498:6;13480:45;:::i;15025:184::-;15095:6;15148:2;15136:9;15127:7;15123:23;15119:32;15116:52;;;15164:1;15161;15154:12;15116:52;-1:-1:-1;15187:16:131;;15025:184;-1:-1:-1;15025:184:131:o;16453:287::-;16582:3;16620:6;16614:13;16636:66;16695:6;16690:3;16683:4;16675:6;16671:17;16636:66;:::i;:::-;16718:16;;;;;16453:287;-1:-1:-1;;16453:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1825,"length":32},{"start":1892,"length":32},{"start":2037,"length":32},{"start":2104,"length":32},{"start":2237,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":\"RegistryFactoryV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":"RegistryFactoryV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","id":72779,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[72419],"ERC1967Proxy":[55021],"ProxyOwnableUpgrader":[70199],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryFactoryV0_0":[72778]},"nodeType":"SourceUnit","src":"42:5144:106","nodes":[{"id":72405,"nodeType":"PragmaDirective","src":"42:24:106","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72408,"nodeType":"ImportDirective","src":"68:134:106","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72406,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72407,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"108:37:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72410,"nodeType":"ImportDirective","src":"203:65:106","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":72409,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"211:20:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72412,"nodeType":"ImportDirective","src":"269:84:106","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":72411,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"277:12:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72414,"nodeType":"ImportDirective","src":"354:65:106","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":72413,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"362:5:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72419,"nodeType":"StructDefinition","src":"421:57:106","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":72416,"mutability":"mutable","name":"fee","nameLocation":"456:3:106","nodeType":"VariableDeclaration","scope":72419,"src":"448:11:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72415,"name":"uint256","nodeType":"ElementaryTypeName","src":"448:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72418,"mutability":"mutable","name":"valid","nameLocation":"470:5:106","nodeType":"VariableDeclaration","scope":72419,"src":"465:10:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72417,"name":"bool","nodeType":"ElementaryTypeName","src":"465:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"428:13:106","scope":72779,"visibility":"public"},{"id":72778,"nodeType":"ContractDefinition","src":"529:4656:106","nodes":[{"id":72424,"nodeType":"VariableDeclaration","src":"636:20:106","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"651:5:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72423,"name":"uint256","nodeType":"ElementaryTypeName","src":"636:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":72429,"nodeType":"VariableDeclaration","src":"663:49:106","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"697:15:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":72428,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":72425,"name":"address","nodeType":"ElementaryTypeName","src":"671:7:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"663:33:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":72427,"nodeType":"UserDefinedTypeName","pathNode":{"id":72426,"name":"CommunityInfo","nameLocations":["682:13:106"],"nodeType":"IdentifierPath","referencedDeclaration":72419,"src":"682:13:106"},"referencedDeclaration":72419,"src":"682:13:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":72431,"nodeType":"VariableDeclaration","src":"718:33:106","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"733:18:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72430,"name":"address","nodeType":"ElementaryTypeName","src":"718:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72433,"nodeType":"VariableDeclaration","src":"757:40:106","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"772:25:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72432,"name":"address","nodeType":"ElementaryTypeName","src":"757:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72435,"nodeType":"VariableDeclaration","src":"803:31:106","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"818:16:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72434,"name":"address","nodeType":"ElementaryTypeName","src":"803:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72437,"nodeType":"VariableDeclaration","src":"840:38:106","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"855:23:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72436,"name":"address","nodeType":"ElementaryTypeName","src":"840:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72441,"nodeType":"EventDefinition","src":"1051:46:106","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1057:14:106","parameters":{"id":72440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72439,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1080:15:106","nodeType":"VariableDeclaration","scope":72441,"src":"1072:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72438,"name":"address","nodeType":"ElementaryTypeName","src":"1072:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1071:25:106"}},{"id":72447,"nodeType":"EventDefinition","src":"1102:66:106","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1108:14:106","parameters":{"id":72446,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72443,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1131:10:106","nodeType":"VariableDeclaration","scope":72447,"src":"1123:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72442,"name":"address","nodeType":"ElementaryTypeName","src":"1123:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72445,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1151:15:106","nodeType":"VariableDeclaration","scope":72447,"src":"1143:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72444,"name":"uint256","nodeType":"ElementaryTypeName","src":"1143:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1122:45:106"}},{"id":72451,"nodeType":"EventDefinition","src":"1173:51:106","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1179:16:106","parameters":{"id":72450,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72449,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1204:18:106","nodeType":"VariableDeclaration","scope":72451,"src":"1196:26:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72448,"name":"address","nodeType":"ElementaryTypeName","src":"1196:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1195:28:106"}},{"id":72457,"nodeType":"EventDefinition","src":"1229:62:106","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1235:20:106","parameters":{"id":72456,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72453,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1264:10:106","nodeType":"VariableDeclaration","scope":72457,"src":"1256:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72452,"name":"address","nodeType":"ElementaryTypeName","src":"1256:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72455,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1281:8:106","nodeType":"VariableDeclaration","scope":72457,"src":"1276:13:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72454,"name":"bool","nodeType":"ElementaryTypeName","src":"1276:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1255:35:106"}},{"id":72461,"nodeType":"ErrorDefinition","src":"1463:43:106","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1469:16:106","parameters":{"id":72460,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72459,"mutability":"mutable","name":"_community","nameLocation":"1494:10:106","nodeType":"VariableDeclaration","scope":72461,"src":"1486:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72458,"name":"address","nodeType":"ElementaryTypeName","src":"1486:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1485:20:106"}},{"id":72463,"nodeType":"ErrorDefinition","src":"1511:28:106","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1517:19:106","parameters":{"id":72462,"nodeType":"ParameterList","parameters":[],"src":"1536:2:106"}},{"id":72479,"nodeType":"FunctionDefinition","src":"1711:141:106","nodes":[],"body":{"id":72478,"nodeType":"Block","src":"1779:73:106","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72468,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72465,"src":"1793:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72471,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1813:1:106","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72470,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1805:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72469,"name":"address","nodeType":"ElementaryTypeName","src":"1805:7:106","typeDescriptions":{}}},"id":72472,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1805:10:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1793:22:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72477,"nodeType":"IfStatement","src":"1789:56:106","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72474,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72463,"src":"1824:19:106","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1824:21:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72476,"nodeType":"RevertStatement","src":"1817:28:106"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1720:18:106","parameters":{"id":72466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72465,"mutability":"mutable","name":"_address","nameLocation":"1747:8:106","nodeType":"VariableDeclaration","scope":72479,"src":"1739:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72464,"name":"address","nodeType":"ElementaryTypeName","src":"1739:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1738:18:106"},"returnParameters":{"id":72467,"nodeType":"ParameterList","parameters":[],"src":"1779:0:106"},"scope":72778,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":72491,"nodeType":"FunctionDefinition","src":"1858:136:106","nodes":[],"body":{"id":72490,"nodeType":"Block","src":"1941:53:106","nodes":[],"statements":[{"expression":{"id":72488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72486,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"1951:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72487,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72481,"src":"1979:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1951:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72489,"nodeType":"ExpressionStatement","src":"1951:36:106"}]},"functionSelector":"5decae02","implemented":true,"kind":"function","modifiers":[{"id":72484,"kind":"modifierInvocation","modifierName":{"id":72483,"name":"onlyOwner","nameLocations":["1931:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"1931:9:106"},"nodeType":"ModifierInvocation","src":"1931:9:106"}],"name":"setRegistryCommunityTemplate","nameLocation":"1867:28:106","parameters":{"id":72482,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72481,"mutability":"mutable","name":"template","nameLocation":"1904:8:106","nodeType":"VariableDeclaration","scope":72491,"src":"1896:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72480,"name":"address","nodeType":"ElementaryTypeName","src":"1896:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1895:18:106"},"returnParameters":{"id":72485,"nodeType":"ParameterList","parameters":[],"src":"1941:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72503,"nodeType":"FunctionDefinition","src":"2000:118:106","nodes":[],"body":{"id":72502,"nodeType":"Block","src":"2074:44:106","nodes":[],"statements":[{"expression":{"id":72500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72498,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"2084:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72499,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"2103:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2084:27:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72501,"nodeType":"ExpressionStatement","src":"2084:27:106"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":72496,"kind":"modifierInvocation","modifierName":{"id":72495,"name":"onlyOwner","nameLocations":["2064:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2064:9:106"},"nodeType":"ModifierInvocation","src":"2064:9:106"}],"name":"setStrategyTemplate","nameLocation":"2009:19:106","parameters":{"id":72494,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72493,"mutability":"mutable","name":"template","nameLocation":"2037:8:106","nodeType":"VariableDeclaration","scope":72503,"src":"2029:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72492,"name":"address","nodeType":"ElementaryTypeName","src":"2029:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2028:18:106"},"returnParameters":{"id":72497,"nodeType":"ParameterList","parameters":[],"src":"2074:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72515,"nodeType":"FunctionDefinition","src":"2124:132:106","nodes":[],"body":{"id":72514,"nodeType":"Block","src":"2205:51:106","nodes":[],"statements":[{"expression":{"id":72512,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72510,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"2215:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72511,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72505,"src":"2241:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2215:34:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72513,"nodeType":"ExpressionStatement","src":"2215:34:106"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":72508,"kind":"modifierInvocation","modifierName":{"id":72507,"name":"onlyOwner","nameLocations":["2195:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2195:9:106"},"nodeType":"ModifierInvocation","src":"2195:9:106"}],"name":"setCollateralVaultTemplate","nameLocation":"2133:26:106","parameters":{"id":72506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72505,"mutability":"mutable","name":"template","nameLocation":"2168:8:106","nodeType":"VariableDeclaration","scope":72515,"src":"2160:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72504,"name":"address","nodeType":"ElementaryTypeName","src":"2160:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2159:18:106"},"returnParameters":{"id":72509,"nodeType":"ParameterList","parameters":[],"src":"2205:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72573,"nodeType":"FunctionDefinition","src":"2262:780:106","nodes":[],"body":{"id":72572,"nodeType":"Block","src":"2489:553:106","nodes":[],"statements":[{"expression":{"arguments":[{"id":72533,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72517,"src":"2516:6:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72530,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2499:5:106","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryV0_0_$72778_$","typeString":"type(contract super RegistryFactoryV0_0)"}},"id":72532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2505:10:106","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70134,"src":"2499:16:106","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72534,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2499:24:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72535,"nodeType":"ExpressionStatement","src":"2499:24:106"},{"expression":{"id":72538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72536,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"2533:5:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":72537,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2541:1:106","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2533:9:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72539,"nodeType":"ExpressionStatement","src":"2533:9:106"},{"expression":{"arguments":[{"id":72541,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2571:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72540,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2552:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2552:39:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72543,"nodeType":"ExpressionStatement","src":"2552:39:106"},{"expression":{"arguments":[{"id":72545,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72521,"src":"2620:26:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72544,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2601:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2601:46:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72547,"nodeType":"ExpressionStatement","src":"2601:46:106"},{"expression":{"arguments":[{"id":72549,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72525,"src":"2676:24:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72548,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2657:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72550,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2657:44:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72551,"nodeType":"ExpressionStatement","src":"2657:44:106"},{"expression":{"id":72554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72552,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"2711:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72553,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2732:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2711:40:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72555,"nodeType":"ExpressionStatement","src":"2711:40:106"},{"expression":{"id":72558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72556,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"2761:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72557,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72521,"src":"2789:26:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2761:54:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72559,"nodeType":"ExpressionStatement","src":"2761:54:106"},{"expression":{"id":72562,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72560,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"2825:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72561,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72523,"src":"2844:17:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2825:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72563,"nodeType":"ExpressionStatement","src":"2825:36:106"},{"expression":{"id":72566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72564,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"2871:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72565,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72525,"src":"2897:24:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2871:50:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72567,"nodeType":"ExpressionStatement","src":"2871:50:106"},{"eventCall":{"arguments":[{"id":72569,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2951:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72568,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72441,"src":"2936:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2936:35:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72571,"nodeType":"EmitStatement","src":"2931:40:106"}]},"functionSelector":"1459457a","implemented":true,"kind":"function","modifiers":[{"id":72528,"kind":"modifierInvocation","modifierName":{"id":72527,"name":"initializer","nameLocations":["2477:11:106"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"2477:11:106"},"nodeType":"ModifierInvocation","src":"2477:11:106"}],"name":"initialize","nameLocation":"2271:10:106","parameters":{"id":72526,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72517,"mutability":"mutable","name":"_owner","nameLocation":"2299:6:106","nodeType":"VariableDeclaration","scope":72573,"src":"2291:14:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72516,"name":"address","nodeType":"ElementaryTypeName","src":"2291:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72519,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"2323:19:106","nodeType":"VariableDeclaration","scope":72573,"src":"2315:27:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72518,"name":"address","nodeType":"ElementaryTypeName","src":"2315:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72521,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"2360:26:106","nodeType":"VariableDeclaration","scope":72573,"src":"2352:34:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72520,"name":"address","nodeType":"ElementaryTypeName","src":"2352:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72523,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"2404:17:106","nodeType":"VariableDeclaration","scope":72573,"src":"2396:25:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72522,"name":"address","nodeType":"ElementaryTypeName","src":"2396:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72525,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"2439:24:106","nodeType":"VariableDeclaration","scope":72573,"src":"2431:32:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72524,"name":"address","nodeType":"ElementaryTypeName","src":"2431:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2281:188:106"},"returnParameters":{"id":72529,"nodeType":"ParameterList","parameters":[],"src":"2489:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":72656,"nodeType":"FunctionDefinition","src":"3048:813:106","nodes":[],"body":{"id":72655,"nodeType":"Block","src":"3210:651:106","nodes":[],"statements":[{"expression":{"id":72586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72581,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3220:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72583,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3227:6:106","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"3220:13:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72585,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3236:7:106","subExpression":{"id":72584,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"3236:5:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3220:23:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72587,"nodeType":"ExpressionStatement","src":"3220:23:106"},{"expression":{"id":72595,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72588,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3253:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72590,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3260:16:106","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"3253:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72593,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3287:4:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$72778","typeString":"contract RegistryFactoryV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$72778","typeString":"contract RegistryFactoryV0_0"}],"id":72592,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3279:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72591,"name":"address","nodeType":"ElementaryTypeName","src":"3279:7:106","typeDescriptions":{}}},"id":72594,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3279:13:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3253:39:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72596,"nodeType":"ExpressionStatement","src":"3253:39:106"},{"assignments":[72599],"declarations":[{"constant":false,"id":72599,"mutability":"mutable","name":"proxy","nameLocation":"3316:5:106","nodeType":"VariableDeclaration","scope":72655,"src":"3303:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":72598,"nodeType":"UserDefinedTypeName","pathNode":{"id":72597,"name":"ERC1967Proxy","nameLocations":["3303:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3303:12:106"},"referencedDeclaration":55021,"src":"3303:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":72619,"initialValue":{"arguments":[{"arguments":[{"id":72605,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"3362:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72604,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3354:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72603,"name":"address","nodeType":"ElementaryTypeName","src":"3354:7:106","typeDescriptions":{}}},"id":72606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3354:34:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72609,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"3425:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72610,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3447:10:106","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"3425:32:106","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":72611,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3458:8:106","memberName":"selector","nodeType":"MemberAccess","src":"3425:41:106","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":72612,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3468:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":72613,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"3476:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72614,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"3494:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72615,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"3519:5:106","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3519:7:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72607,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3402:3:106","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72608,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3406:18:106","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3402:22:106","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3402:125:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72602,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"3324:16:106","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72601,"nodeType":"UserDefinedTypeName","pathNode":{"id":72600,"name":"ERC1967Proxy","nameLocations":["3328:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3328:12:106"},"referencedDeclaration":55021,"src":"3328:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3324:213:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"3303:234:106"},{"assignments":[72622],"declarations":[{"constant":false,"id":72622,"mutability":"mutable","name":"registryCommunity","nameLocation":"3570:17:106","nodeType":"VariableDeclaration","scope":72655,"src":"3548:39:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":72621,"nodeType":"UserDefinedTypeName","pathNode":{"id":72620,"name":"RegistryCommunityV0_0","nameLocations":["3548:21:106"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"3548:21:106"},"referencedDeclaration":72174,"src":"3548:21:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":72632,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72628,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72599,"src":"3628:5:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72627,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3620:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72626,"name":"address","nodeType":"ElementaryTypeName","src":"3620:7:106","typeDescriptions":{}}},"id":72629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3620:14:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3612:8:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":72624,"name":"address","nodeType":"ElementaryTypeName","src":"3612:8:106","stateMutability":"payable","typeDescriptions":{}}},"id":72630,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3612:23:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72623,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"3590:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3590:46:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"3548:88:106"},{"expression":{"id":72641,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72633,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"3696:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72638,"indexExpression":{"arguments":[{"id":72636,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3720:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72635,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3712:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72634,"name":"address","nodeType":"ElementaryTypeName","src":"3712:7:106","typeDescriptions":{}}},"id":72637,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3712:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3696:43:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72639,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3740:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"3696:49:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72640,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3748:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3696:56:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72642,"nodeType":"ExpressionStatement","src":"3696:56:106"},{"eventCall":{"arguments":[{"arguments":[{"id":72646,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3792:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72645,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3784:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72644,"name":"address","nodeType":"ElementaryTypeName","src":"3784:7:106","typeDescriptions":{}}},"id":72647,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3784:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72643,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"3767:16:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72648,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3767:44:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72649,"nodeType":"EmitStatement","src":"3762:49:106"},{"expression":{"arguments":[{"id":72652,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3836:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72651,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3828:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72650,"name":"address","nodeType":"ElementaryTypeName","src":"3828:7:106","typeDescriptions":{}}},"id":72653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3828:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72580,"id":72654,"nodeType":"Return","src":"3821:33:106"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"3057:14:106","parameters":{"id":72577,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72576,"mutability":"mutable","name":"params","nameLocation":"3117:6:106","nodeType":"VariableDeclaration","scope":72656,"src":"3072:51:106","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":72575,"nodeType":"UserDefinedTypeName","pathNode":{"id":72574,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["3072:37:106"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"3072:37:106"},"referencedDeclaration":70264,"src":"3072:37:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"3071:53:106"},"returnParameters":{"id":72580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72579,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"3181:23:106","nodeType":"VariableDeclaration","scope":72656,"src":"3173:31:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72578,"name":"address","nodeType":"ElementaryTypeName","src":"3173:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3172:33:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72676,"nodeType":"FunctionDefinition","src":"3867:222:106","nodes":[],"body":{"id":72675,"nodeType":"Block","src":"3945:144:106","nodes":[],"statements":[{"expression":{"arguments":[{"id":72664,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"3974:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72663,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"3955:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3955:35:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72666,"nodeType":"ExpressionStatement","src":"3955:35:106"},{"expression":{"id":72669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72667,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"4000:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72668,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"4021:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4000:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72670,"nodeType":"ExpressionStatement","src":"4000:36:106"},{"eventCall":{"arguments":[{"id":72672,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"4066:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72671,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72441,"src":"4051:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4051:31:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72674,"nodeType":"EmitStatement","src":"4046:36:106"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":72661,"kind":"modifierInvocation","modifierName":{"id":72660,"name":"onlyOwner","nameLocations":["3935:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"3935:9:106"},"nodeType":"ModifierInvocation","src":"3935:9:106"}],"name":"setReceiverAddress","nameLocation":"3876:18:106","parameters":{"id":72659,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72658,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"3903:15:106","nodeType":"VariableDeclaration","scope":72676,"src":"3895:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72657,"name":"address","nodeType":"ElementaryTypeName","src":"3895:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3894:25:106"},"returnParameters":{"id":72662,"nodeType":"ParameterList","parameters":[],"src":"3945:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72684,"nodeType":"FunctionDefinition","src":"4095:115:106","nodes":[],"body":{"id":72683,"nodeType":"Block","src":"4168:42:106","nodes":[],"statements":[{"expression":{"id":72681,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"4185:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72680,"id":72682,"nodeType":"Return","src":"4178:25:106"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"4104:21:106","parameters":{"id":72677,"nodeType":"ParameterList","parameters":[],"src":"4125:2:106"},"returnParameters":{"id":72680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72679,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72684,"src":"4159:7:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72678,"name":"address","nodeType":"ElementaryTypeName","src":"4159:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4158:9:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72706,"nodeType":"FunctionDefinition","src":"4216:218:106","nodes":[],"body":{"id":72705,"nodeType":"Block","src":"4310:124:106","nodes":[],"statements":[{"expression":{"id":72698,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72693,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4320:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72695,"indexExpression":{"id":72694,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72686,"src":"4336:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4320:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72696,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4348:3:106","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72416,"src":"4320:31:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72697,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72688,"src":"4354:15:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4320:49:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72699,"nodeType":"ExpressionStatement","src":"4320:49:106"},{"eventCall":{"arguments":[{"id":72701,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72686,"src":"4399:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72702,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72688,"src":"4411:15:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72700,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72447,"src":"4384:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72703,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4384:43:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72704,"nodeType":"EmitStatement","src":"4379:48:106"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":72691,"kind":"modifierInvocation","modifierName":{"id":72690,"name":"onlyOwner","nameLocations":["4300:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4300:9:106"},"nodeType":"ModifierInvocation","src":"4300:9:106"}],"name":"setProtocolFee","nameLocation":"4225:14:106","parameters":{"id":72689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72686,"mutability":"mutable","name":"_community","nameLocation":"4248:10:106","nodeType":"VariableDeclaration","scope":72706,"src":"4240:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72685,"name":"address","nodeType":"ElementaryTypeName","src":"4240:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72688,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"4268:15:106","nodeType":"VariableDeclaration","scope":72706,"src":"4260:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72687,"name":"uint256","nodeType":"ElementaryTypeName","src":"4260:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4239:45:106"},"returnParameters":{"id":72692,"nodeType":"ParameterList","parameters":[],"src":"4310:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72728,"nodeType":"FunctionDefinition","src":"4440:208:106","nodes":[],"body":{"id":72727,"nodeType":"Block","src":"4530:118:106","nodes":[],"statements":[{"expression":{"id":72720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72715,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4540:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72717,"indexExpression":{"id":72716,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72708,"src":"4556:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4540:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4568:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4540:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72719,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72710,"src":"4576:8:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4540:44:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72721,"nodeType":"ExpressionStatement","src":"4540:44:106"},{"eventCall":{"arguments":[{"id":72723,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72708,"src":"4620:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72724,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72710,"src":"4632:8:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":72722,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72457,"src":"4599:20:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":72725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4599:42:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72726,"nodeType":"EmitStatement","src":"4594:47:106"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":72713,"kind":"modifierInvocation","modifierName":{"id":72712,"name":"onlyOwner","nameLocations":["4520:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4520:9:106"},"nodeType":"ModifierInvocation","src":"4520:9:106"}],"name":"setCommunityValidity","nameLocation":"4449:20:106","parameters":{"id":72711,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72708,"mutability":"mutable","name":"_community","nameLocation":"4478:10:106","nodeType":"VariableDeclaration","scope":72728,"src":"4470:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72707,"name":"address","nodeType":"ElementaryTypeName","src":"4470:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72710,"mutability":"mutable","name":"_isValid","nameLocation":"4495:8:106","nodeType":"VariableDeclaration","scope":72728,"src":"4490:13:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72709,"name":"bool","nodeType":"ElementaryTypeName","src":"4490:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4469:35:106"},"returnParameters":{"id":72714,"nodeType":"ParameterList","parameters":[],"src":"4530:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72741,"nodeType":"FunctionDefinition","src":"4654:144:106","nodes":[],"body":{"id":72740,"nodeType":"Block","src":"4741:57:106","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":72735,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4758:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72737,"indexExpression":{"id":72736,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"4774:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4758:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72738,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4786:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4758:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72734,"id":72739,"nodeType":"Return","src":"4751:40:106"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"4663:20:106","parameters":{"id":72731,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72730,"mutability":"mutable","name":"_community","nameLocation":"4692:10:106","nodeType":"VariableDeclaration","scope":72741,"src":"4684:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72729,"name":"address","nodeType":"ElementaryTypeName","src":"4684:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4683:20:106"},"returnParameters":{"id":72734,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72733,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72741,"src":"4735:4:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72732,"name":"bool","nodeType":"ElementaryTypeName","src":"4735:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4734:6:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72765,"nodeType":"FunctionDefinition","src":"4804:249:106","nodes":[],"body":{"id":72764,"nodeType":"Block","src":"4888:165:106","nodes":[],"statements":[{"condition":{"id":72752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"4902:34:106","subExpression":{"expression":{"baseExpression":{"id":72748,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4903:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72750,"indexExpression":{"id":72749,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"4919:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4903:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72751,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4931:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4903:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72758,"nodeType":"IfStatement","src":"4898:100:106","trueBody":{"id":72757,"nodeType":"Block","src":"4938:60:106","statements":[{"errorCall":{"arguments":[{"id":72754,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"4976:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72753,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72461,"src":"4959:16:106","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72755,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4959:28:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72756,"nodeType":"RevertStatement","src":"4952:35:106"}]}},{"expression":{"expression":{"baseExpression":{"id":72759,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"5015:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72761,"indexExpression":{"id":72760,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"5031:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5015:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72762,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5043:3:106","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72416,"src":"5015:31:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72747,"id":72763,"nodeType":"Return","src":"5008:38:106"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"4813:14:106","parameters":{"id":72744,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72743,"mutability":"mutable","name":"_community","nameLocation":"4836:10:106","nodeType":"VariableDeclaration","scope":72765,"src":"4828:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72742,"name":"address","nodeType":"ElementaryTypeName","src":"4828:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4827:20:106"},"returnParameters":{"id":72747,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72746,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72765,"src":"4879:7:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72745,"name":"uint256","nodeType":"ElementaryTypeName","src":"4879:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4878:9:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72773,"nodeType":"FunctionDefinition","src":"5060:92:106","nodes":[],"body":{"id":72772,"nodeType":"Block","src":"5123:29:106","nodes":[],"statements":[{"expression":{"hexValue":"302e30","id":72770,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5140:5:106","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"functionReturnParameters":72769,"id":72771,"nodeType":"Return","src":"5133:12:106"}]},"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"5069:7:106","parameters":{"id":72766,"nodeType":"ParameterList","parameters":[],"src":"5076:2:106"},"returnParameters":{"id":72769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72768,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72773,"src":"5108:13:106","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":72767,"name":"string","nodeType":"ElementaryTypeName","src":"5108:6:106","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5107:15:106"},"scope":72778,"stateMutability":"pure","virtual":true,"visibility":"public"},{"id":72777,"nodeType":"VariableDeclaration","src":"5157:25:106","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5177:5:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":72774,"name":"uint256","nodeType":"ElementaryTypeName","src":"5157:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72776,"length":{"hexValue":"3530","id":72775,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5165:2:106","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5157:11:106","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":72421,"name":"ProxyOwnableUpgrader","nameLocations":["561:20:106"],"nodeType":"IdentifierPath","referencedDeclaration":70199,"src":"561:20:106"},"id":72422,"nodeType":"InheritanceSpecifier","src":"561:20:106"}],"canonicalName":"RegistryFactoryV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72420,"nodeType":"StructuredDocumentation","src":"480:49:106","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_0","nameLocation":"538:19:106","scope":72779,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":106} \ No newline at end of file +{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161202c61004c6000396000818161072101528181610764015281816107f50152818161083801526108bd015261202c6000f3fe608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001328565b60405180910390f35b3480156200018057600080fd5b50620001986200019236600462001364565b620004c3565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c636600462001384565b62000529565b005b348015620001db57600080fd5b50620001cc620001ed36600462001364565b620006eb565b3480156200020057600080fd5b50620001cc6200021236600462001364565b62000717565b620001cc62000229366004620014be565b620007eb565b3480156200023c57600080fd5b5062000198620008b0565b3480156200025457600080fd5b50620001cc6200026636600462001539565b62000961565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad36600462001364565b620009d2565b348015620002c057600080fd5b50620001cc620009fe565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c36600462001364565b62000a16565b3480156200031f57600080fd5b506200015b62000a72565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc6200038136600462001364565b62000b0f565b3480156200039457600080fd5b50620001cc620003a636600462001573565b62000b3b565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed3660046200163a565b62000b97565b3480156200040057600080fd5b50620001cc6200041236600462001364565b62000cd8565b3480156200042557600080fd5b50620001cc6200043736600462001364565b62000d50565b3480156200044a57600080fd5b506200047d6200045c36600462001364565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200016a9190620017e9565b6001600160a01b03811660009081526066602052604081206001015460ff166200050d578160405163f5a6943d60e01b815260040162000504919062001328565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200054a5750600054600160ff909116105b806200056f57506200055c3062000dc1565b1580156200056f575060005460ff166001145b620005d45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840162000504565b6000805460ff191660011790558015620005f8576000805461ff0019166101001790555b620006038662000cd8565b6000606555620006138562000dd0565b6200061e8462000dd0565b620006298262000dd0565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fd7833981519152906200069490879062001328565b60405180910390a18015620006e3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b620006f562000df8565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620007625760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200079662000e5b565b6001600160a01b031614620007bf5760405162461bcd60e51b8152600401620005049062001839565b620007ca8162000e78565b60408051600080825260208201909252620007e89183919062000eca565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008365760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200086a62000e5b565b6001600160a01b031614620008935760405162461bcd60e51b8152600401620005049062001839565b6200089e8262000e78565b620008ac8282600162000eca565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200094d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000504565b5060008051602062001f9083398151915290565b6200096b62000df8565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009dc62000df8565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a0862000df8565b62000a14600062001047565b565b62000a2062000df8565b62000a2b8162000dd0565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fd78339815191529062000a6790839062001328565b60405180910390a150565b60008062000a886033546001600160a01b031690565b9050806001600160a01b03163b60000362000aa257919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000aff575060408051601f3d908101601f1916820190925262000afc9181019062001874565b60015b62000b0957919050565b92915050565b62000b1962000df8565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b4562000df8565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009c6565b606580546000918262000baa8362001894565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000beb62000a72565b60405160240162000c009493929190620018dd565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c3f906200130d565b62000c4c92919062001a25565b604051809103906000f08015801562000c69573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cc990839062001328565b60405180910390a19392505050565b600054610100900460ff1662000d455760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000504565b620007e88162001047565b62000d5a62000df8565b6001600160a01b03811662000d455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000504565b6001600160a01b03163b151590565b6001600160a01b038116620007e8576040516303988b8160e61b815260040160405180910390fd5b3362000e0362000a72565b6001600160a01b03161462000a145760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000504565b60008051602062001f90833981519152546001600160a01b031690565b3362000e8362000a72565b6001600160a01b031614620007e8573362000e9d62000a72565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000504565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f055762000f008362001099565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f62575060408051601f3d908101601f1916820190925262000f5f9181019062001a4b565b60015b62000fc75760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000504565b60008051602062001f908339815191528114620010395760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000504565b5062000f0083838362001138565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010a48162000dc1565b620011085760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000504565b60008051602062001f9083398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011438362001169565b600082511180620011515750805b1562000f0057620011638383620011ab565b50505050565b620011748162001099565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011d3838360405180606001604052806027815260200162001fb060279139620011da565b9392505050565b6060600080856001600160a01b031685604051620011f9919062001a65565b600060405180830381855af49150503d806000811462001236576040519150601f19603f3d011682016040523d82523d6000602084013e6200123b565b606091505b50915091506200124e8683838762001258565b9695505050505050565b60608315620012cc578251600003620012c457620012768562000dc1565b620012c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000504565b5081620012d8565b620012d88383620012e0565b949350505050565b815115620012f15781518083602001fd5b8060405162461bcd60e51b8152600401620005049190620017e9565b6104ec8062001a8483390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007e857600080fd5b80356200135f816200133c565b919050565b6000602082840312156200137757600080fd5b8135620011d3816200133c565b600080600080600060a086880312156200139d57600080fd5b8535620013aa816200133c565b94506020860135620013bc816200133c565b93506040860135620013ce816200133c565b92506060860135620013e0816200133c565b91506080860135620013f2816200133c565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200143c576200143c62001400565b60405290565b60006001600160401b03808411156200145f576200145f62001400565b604051601f8501601f19908116603f011681019082821181831017156200148a576200148a62001400565b81604052809350858152868686011115620014a457600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014d257600080fd5b8235620014df816200133c565b915060208301356001600160401b03811115620014fb57600080fd5b8301601f810185136200150d57600080fd5b6200151e8582356020840162001442565b9150509250929050565b803580151581146200135f57600080fd5b600080604083850312156200154d57600080fd5b82356200155a816200133c565b91506200156a6020840162001528565b90509250929050565b600080604083850312156200158757600080fd5b823562001594816200133c565b946020939093013593505050565b600082601f830112620015b457600080fd5b620011d38383356020850162001442565b600060408284031215620015d857600080fd5b604080519081016001600160401b038082118383101715620015fe57620015fe62001400565b816040528293508435835260208501359150808211156200161e57600080fd5b506200162d85828601620015a2565b6020830152505092915050565b6000602082840312156200164d57600080fd5b81356001600160401b03808211156200166557600080fd5b9083019061018082860312156200167b57600080fd5b6200168562001416565b620016908362001352565b8152620016a06020840162001352565b6020820152604083013560408201526060830135606082015260808301356080820152620016d160a0840162001352565b60a0820152620016e460c0840162001352565b60c082015260e083013582811115620016fc57600080fd5b6200170a87828601620015c5565b60e0830152506101006200172081850162001352565b9082015261012083810135838111156200173957600080fd5b6200174788828701620015a2565b8284015250506101406200175d81850162001528565b9082015261016083810135838111156200177657600080fd5b6200178488828701620015a2565b918301919091525095945050505050565b60005b83811015620017b257818101518382015260200162001798565b50506000910152565b60008151808452620017d581602086016020860162001795565b601f01601f19169290920160200192915050565b602081526000620011d36020830184620017bb565b6020808252602c9082015260008051602062001f7083398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7083398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200188757600080fd5b8151620011d3816200133c565b600060018201620018b557634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012d86040850182620017bb565b60808152620018f16080820186516200131b565b600060208601516200190760a08401826200131b565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001941818601846200131b565b60c0890151925061014062001959818701856200131b565b60e08a0151935061018061016081818901526200197b610200890187620018bc565b948c015194955062001990888301866200131b565b838c01519450607f19935083888703016101a0890152620019b28686620017bb565b9550828c01519450620019ca6101c089018615159052565b808c0151945050505080858403016101e086015250620019eb8282620017bb565b92505050620019fe60208301866200131b565b62001a0d60408301856200131b565b62001a1c60608301846200131b565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012d890830184620017bb565b60006020828403121562001a5e57600080fd5b5051919050565b6000825162001a7981846020870162001795565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220e617906128b20d0efea38a1c4155ba01868b476c4cbaf14555050de2ea7e33cd64736f6c63430008130033","sourceMap":"529:4656:106:-:0;;;1088:4:64;1045:48;;529:4656:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001345760003560e01c806302c1d0b114620001395780630a992e0c14620001735780631459457a14620001a75780631b71f0e414620001ce5780633659cfe614620001f35780634f1ef286146200021857806352d1902d146200022f5780635a2c8ace14620002475780635c94e4d2146200026c5780635decae02146200028e578063715018a614620002b357806377122d5614620002cb5780638279c7db14620002ed5780638da5cb5b1462000312578063987435be146200032a578063affed0e0146200034a578063b0d3713a1462000362578063b5b3ca2c1462000387578063b8bed90114620003ac578063beb331a314620003ce578063c4d66de814620003f3578063f2fde38b1462000418578063f5016b5e146200043d578063ffa1ad74146200048e575b600080fd5b3480156200014657600080fd5b506068546200015b906001600160a01b031681565b6040516200016a919062001328565b60405180910390f35b3480156200018057600080fd5b50620001986200019236600462001364565b620004c3565b6040519081526020016200016a565b348015620001b457600080fd5b50620001cc620001c636600462001384565b62000529565b005b348015620001db57600080fd5b50620001cc620001ed36600462001364565b620006eb565b3480156200020057600080fd5b50620001cc6200021236600462001364565b62000717565b620001cc62000229366004620014be565b620007eb565b3480156200023c57600080fd5b5062000198620008b0565b3480156200025457600080fd5b50620001cc6200026636600462001539565b62000961565b3480156200027957600080fd5b506069546200015b906001600160a01b031681565b3480156200029b57600080fd5b50620001cc620002ad36600462001364565b620009d2565b348015620002c057600080fd5b50620001cc620009fe565b348015620002d857600080fd5b50606a546200015b906001600160a01b031681565b348015620002fa57600080fd5b50620001cc6200030c36600462001364565b62000a16565b3480156200031f57600080fd5b506200015b62000a72565b3480156200033757600080fd5b506067546001600160a01b03166200015b565b3480156200035757600080fd5b506200019860655481565b3480156200036f57600080fd5b50620001cc6200038136600462001364565b62000b0f565b3480156200039457600080fd5b50620001cc620003a636600462001573565b62000b3b565b348015620003b957600080fd5b506067546200015b906001600160a01b031681565b348015620003db57600080fd5b506200015b620003ed3660046200163a565b62000b97565b3480156200040057600080fd5b50620001cc6200041236600462001364565b62000cd8565b3480156200042557600080fd5b50620001cc6200043736600462001364565b62000d50565b3480156200044a57600080fd5b506200047d6200045c36600462001364565b6001600160a01b031660009081526066602052604090206001015460ff1690565b60405190151581526020016200016a565b3480156200049b57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200016a9190620017e9565b6001600160a01b03811660009081526066602052604081206001015460ff166200050d578160405163f5a6943d60e01b815260040162000504919062001328565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200054a5750600054600160ff909116105b806200056f57506200055c3062000dc1565b1580156200056f575060005460ff166001145b620005d45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840162000504565b6000805460ff191660011790558015620005f8576000805461ff0019166101001790555b620006038662000cd8565b6000606555620006138562000dd0565b6200061e8462000dd0565b620006298262000dd0565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a80549285169290911691909117905560405160008051602062001fd7833981519152906200069490879062001328565b60405180910390a18015620006e3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050565b620006f562000df8565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620007625760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200079662000e5b565b6001600160a01b031614620007bf5760405162461bcd60e51b8152600401620005049062001839565b620007ca8162000e78565b60408051600080825260208201909252620007e89183919062000eca565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008365760405162461bcd60e51b81526004016200050490620017fe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200086a62000e5b565b6001600160a01b031614620008935760405162461bcd60e51b8152600401620005049062001839565b6200089e8262000e78565b620008ac8282600162000eca565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200094d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000504565b5060008051602062001f9083398151915290565b6200096b62000df8565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b620009dc62000df8565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a0862000df8565b62000a14600062001047565b565b62000a2062000df8565b62000a2b8162000dd0565b606780546001600160a01b0319166001600160a01b03831617905560405160008051602062001fd78339815191529062000a6790839062001328565b60405180910390a150565b60008062000a886033546001600160a01b031690565b9050806001600160a01b03163b60000362000aa257919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000aff575060408051601f3d908101601f1916820190925262000afc9181019062001874565b60015b62000b0957919050565b92915050565b62000b1962000df8565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b4562000df8565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c9101620009c6565b606580546000918262000baa8362001894565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000beb62000a72565b60405160240162000c009493929190620018dd565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c3f906200130d565b62000c4c92919062001a25565b604051809103906000f08015801562000c69573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000cc990839062001328565b60405180910390a19392505050565b600054610100900460ff1662000d455760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000504565b620007e88162001047565b62000d5a62000df8565b6001600160a01b03811662000d455760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000504565b6001600160a01b03163b151590565b6001600160a01b038116620007e8576040516303988b8160e61b815260040160405180910390fd5b3362000e0362000a72565b6001600160a01b03161462000a145760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000504565b60008051602062001f90833981519152546001600160a01b031690565b3362000e8362000a72565b6001600160a01b031614620007e8573362000e9d62000a72565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000504565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f055762000f008362001099565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000f62575060408051601f3d908101601f1916820190925262000f5f9181019062001a4b565b60015b62000fc75760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000504565b60008051602062001f908339815191528114620010395760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000504565b5062000f0083838362001138565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010a48162000dc1565b620011085760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000504565b60008051602062001f9083398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620011438362001169565b600082511180620011515750805b1562000f0057620011638383620011ab565b50505050565b620011748162001099565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620011d3838360405180606001604052806027815260200162001fb060279139620011da565b9392505050565b6060600080856001600160a01b031685604051620011f9919062001a65565b600060405180830381855af49150503d806000811462001236576040519150601f19603f3d011682016040523d82523d6000602084013e6200123b565b606091505b50915091506200124e8683838762001258565b9695505050505050565b60608315620012cc578251600003620012c457620012768562000dc1565b620012c45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000504565b5081620012d8565b620012d88383620012e0565b949350505050565b815115620012f15781518083602001fd5b8060405162461bcd60e51b8152600401620005049190620017e9565b6104ec8062001a8483390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007e857600080fd5b80356200135f816200133c565b919050565b6000602082840312156200137757600080fd5b8135620011d3816200133c565b600080600080600060a086880312156200139d57600080fd5b8535620013aa816200133c565b94506020860135620013bc816200133c565b93506040860135620013ce816200133c565b92506060860135620013e0816200133c565b91506080860135620013f2816200133c565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b03811182821017156200143c576200143c62001400565b60405290565b60006001600160401b03808411156200145f576200145f62001400565b604051601f8501601f19908116603f011681019082821181831017156200148a576200148a62001400565b81604052809350858152868686011115620014a457600080fd5b858560208301376000602087830101525050509392505050565b60008060408385031215620014d257600080fd5b8235620014df816200133c565b915060208301356001600160401b03811115620014fb57600080fd5b8301601f810185136200150d57600080fd5b6200151e8582356020840162001442565b9150509250929050565b803580151581146200135f57600080fd5b600080604083850312156200154d57600080fd5b82356200155a816200133c565b91506200156a6020840162001528565b90509250929050565b600080604083850312156200158757600080fd5b823562001594816200133c565b946020939093013593505050565b600082601f830112620015b457600080fd5b620011d38383356020850162001442565b600060408284031215620015d857600080fd5b604080519081016001600160401b038082118383101715620015fe57620015fe62001400565b816040528293508435835260208501359150808211156200161e57600080fd5b506200162d85828601620015a2565b6020830152505092915050565b6000602082840312156200164d57600080fd5b81356001600160401b03808211156200166557600080fd5b9083019061018082860312156200167b57600080fd5b6200168562001416565b620016908362001352565b8152620016a06020840162001352565b6020820152604083013560408201526060830135606082015260808301356080820152620016d160a0840162001352565b60a0820152620016e460c0840162001352565b60c082015260e083013582811115620016fc57600080fd5b6200170a87828601620015c5565b60e0830152506101006200172081850162001352565b9082015261012083810135838111156200173957600080fd5b6200174788828701620015a2565b8284015250506101406200175d81850162001528565b9082015261016083810135838111156200177657600080fd5b6200178488828701620015a2565b918301919091525095945050505050565b60005b83811015620017b257818101518382015260200162001798565b50506000910152565b60008151808452620017d581602086016020860162001795565b601f01601f19169290920160200192915050565b602081526000620011d36020830184620017bb565b6020808252602c9082015260008051602062001f7083398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602062001f7083398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200188757600080fd5b8151620011d3816200133c565b600060018201620018b557634e487b7160e01b600052601160045260246000fd5b5060010190565b805182526000602082015160406020850152620012d86040850182620017bb565b60808152620018f16080820186516200131b565b600060208601516200190760a08401826200131b565b50604086015160c0830152606086015160e08301526080860151610100818185015260a0880151915061012062001941818601846200131b565b60c0890151925061014062001959818701856200131b565b60e08a0151935061018061016081818901526200197b610200890187620018bc565b948c015194955062001990888301866200131b565b838c01519450607f19935083888703016101a0890152620019b28686620017bb565b9550828c01519450620019ca6101c089018615159052565b808c0151945050505080858403016101e086015250620019eb8282620017bb565b92505050620019fe60208301866200131b565b62001a0d60408301856200131b565b62001a1c60608301846200131b565b95945050505050565b6001600160a01b0383168152604060208201819052600090620012d890830184620017bb565b60006020828403121562001a5e57600080fd5b5051919050565b6000825162001a7981846020870162001795565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220e617906128b20d0efea38a1c4155ba01868b476c4cbaf14555050de2ea7e33cd64736f6c63430008130033","sourceMap":"529:4656:106:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:136;;;992:2;977:18;4804:249:106;858:177:136;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;1858:136;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;3048:813;;;;;;;;;;-1:-1:-1;3048:813:106;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;7207:14:136;;7200:22;7182:41;;7170:2;7155:18;4654:144:106;7042:187:136;5060:92:106;;;;;;;;;;-1:-1:-1;5133:12:106;;;;;;;;;;;-1:-1:-1;;;5133:12:106;;;;5060:92;;;;5133:12;5060:92;:::i;4804:249::-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;8192:2:136;3325:201:47;;;8174:21:136;8231:2;8211:18;;;8204:30;8270:34;8250:18;;;8243:62;-1:-1:-1;;;8321:18:136;;;8314:44;8375:19;;3325:201:47;7990:410:136;3325:201:47;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:136;;3721:14:47;;8545:2:136;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:136;2064:92:64;;;9614:21:136;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:136;;;9754:54;9825:19;;2064:92:64;9430:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;10023:51:136;;;10090:18;;;10083:50;4599:42:106::1;::::0;9996:18:136;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;1858:136::-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;:::-;;;;;;;;3867:222:::0;:::o;525:604:103:-;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;10574:51:136;;;10641:18;;10634:34;;;4384:43:106::1;::::0;10547:18:136;4384:43:106::1;10400:274:136::0;3048:813:106;3236:5;:7;;3173:31;;;3236:7;;;:::i;:::-;;;;-1:-1:-1;3220:13:106;;;:23;3287:4;3253:23;;;:39;3362:25;;3476:16;;3494:23;;-1:-1:-1;;;;;;;3362:25:106;;;;-1:-1:-1;;;3425:41:106;3220:6;;3476:16;;;;3494:23;3519:7;:5;:7::i;:::-;3402:125;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3402:125:106;;;;;;;;;;;;;;-1:-1:-1;;;;;3402:125:106;-1:-1:-1;;;;;;3402:125:106;;;;;;;;;;3324:213;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3696:43:106;;3548:39;3696:43;;;:15;:43;;;;;;;3748:4;3696:49;;;:56;;-1:-1:-1;;3696:56:106;;;;;;3767:44;3303:234;;-1:-1:-1;3303:234:106;;3767:44;;;;3303:234;;3767:44;:::i;:::-;;;;;;;;3836:17;3048:813;-1:-1:-1;;;3048:813:106:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13738:2:136;5366:69:47;;;13720:21:136;13777:2;13757:18;;;13750:30;13816:34;13796:18;;;13789:62;-1:-1:-1;;;13867:18:136;;;13860:41;13918:19;;5366:69:47;13536:407:136;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14150:2:136;2415:73:45::1;::::0;::::1;14132:21:136::0;14189:2;14169:18;;;14162:30;14228:34;14208:18;;;14201:62;-1:-1:-1;;;14279:18:136;;;14272:36;14325:19;;2415:73:45::1;13948:402:136::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14557:2:136;1675:68:45;;;14539:21:136;;;14576:18;;;14569:30;14635:34;14615:18;;;14608:62;14687:18;;1675:68:45;14355:356:136;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;14946:15:136;;;1252:35:103;;;14928:34:136;14998:15;;14978:18;;;14971:43;14863:18;;1252:35:103;14716:304:136;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15416:2:136;3262:56:60;;;15398:21:136;15455:2;15435:18;;;15428:30;15494:34;15474:18;;;15467:62;-1:-1:-1;;;15545:18:136;;;15538:44;15599:19;;3262:56:60;15214:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;15831:2:136;3140:82:60;;;15813:21:136;15870:2;15850:18;;;15843:30;15909:34;15889:18;;;15882:62;-1:-1:-1;;;15960:18:136;;;15953:39;16009:19;;3140:82:60;15629:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16241:2:136;1479:95:60;;;16223:21:136;16280:2;16260:18;;;16253:30;16319:34;16299:18;;;16292:62;-1:-1:-1;;;16370:18:136;;;16363:43;16423:19;;1479:95:60;16039:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;16947:2:136;8113:60:76;;;16929:21:136;16986:2;16966:18;;;16959:30;17025:31;17005:18;;;16998:59;17074:18;;8113:60:76;16745:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:136:-;-1:-1:-1;;;;;80:31:136;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:136;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:136;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:136;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:136;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:136;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:136;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:136;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:136;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:136;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:136;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:136;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:136;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:136;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:136:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:136;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:136;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:136;5298:1643;-1:-1:-1;;;;;5298:1643:136:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:136;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:136;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:136:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:136;8864:18;;8857:62;-1:-1:-1;;;8950:2:136;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:136;9277:18;;9270:62;-1:-1:-1;;;9363:2:136;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10144:251::-;10214:6;10267:2;10255:9;10246:7;10242:23;10238:32;10235:52;;;10283:1;10280;10273:12;10235:52;10315:9;10309:16;10334:31;10359:5;10334:31;:::i;10679:232::-;10718:3;10739:17;;;10736:140;;10798:10;10793:3;10789:20;10786:1;10779:31;10833:4;10830:1;10823:15;10861:4;10858:1;10851:15;10736:140;-1:-1:-1;10903:1:136;10892:13;;10679:232::o;10916:252::-;11003:5;10997:12;10992:3;10985:25;10967:3;11056:4;11049:5;11045:16;11039:23;11094:4;11087;11082:3;11078:14;11071:28;11115:47;11156:4;11151:3;11147:14;11133:12;11115:47;:::i;11173:2038::-;11498:3;11487:9;11480:22;11511:54;11560:3;11549:9;11545:19;11536:6;11530:13;11511:54;:::i;:::-;11461:4;11612;11604:6;11600:17;11594:24;11627:53;11675:3;11664:9;11660:19;11646:12;11627:53;:::i;:::-;;11735:4;11727:6;11723:17;11717:24;11711:3;11700:9;11696:19;11689:53;11797:4;11789:6;11785:17;11779:24;11773:3;11762:9;11758:19;11751:53;11841:3;11833:6;11829:16;11823:23;11865:3;11904:2;11899;11888:9;11884:18;11877:30;11956:3;11948:6;11944:16;11938:23;11916:45;;11980:3;11992:54;12042:2;12031:9;12027:18;12011:14;11992:54;:::i;:::-;12095:3;12087:6;12083:16;12077:23;12055:45;;12119:3;12131:54;12181:2;12170:9;12166:18;12150:14;12131:54;:::i;:::-;12234:3;12226:6;12222:16;12216:23;12194:45;;12258:6;12283:3;12322:2;12317;12306:9;12302:18;12295:30;12348:63;12406:3;12395:9;12391:19;12375:14;12348:63;:::i;:::-;12448:15;;;12442:22;12334:77;;-1:-1:-1;12473:54:136;12508:18;;;12442:22;12473:54;:::i;:::-;12576:2;12568:6;12564:15;12558:22;12536:44;;12603:3;12599:8;12589:18;;12672:2;12660:9;12652:6;12648:22;12644:31;12638:3;12627:9;12623:19;12616:60;12699:41;12733:6;12717:14;12699:41;:::i;:::-;12685:55;;12789:2;12781:6;12777:15;12771:22;12749:44;;12802:52;12849:3;12838:9;12834:19;12818:14;7016:13;7009:21;6997:34;;6946:91;12802:52;12903:2;12895:6;12891:15;12885:22;12863:44;;;;;12972:2;12960:9;12952:6;12948:22;12944:31;12938:3;12927:9;12923:19;12916:60;;12993:41;13027:6;13011:14;12993:41;:::i;:::-;12985:49;;;;13043:48;13085:4;13074:9;13070:20;13062:6;13043:48;:::i;:::-;13100;13142:4;13131:9;13127:20;13119:6;13100:48;:::i;:::-;13157;13199:4;13188:9;13184:20;13176:6;13157:48;:::i;:::-;11173:2038;;;;;;;:::o;13216:315::-;-1:-1:-1;;;;;13391:32:136;;13373:51;;13460:2;13455;13440:18;;13433:30;;;-1:-1:-1;;13480:45:136;;13506:18;;13498:6;13480:45;:::i;15025:184::-;15095:6;15148:2;15136:9;15127:7;15123:23;15119:32;15116:52;;;15164:1;15161;15154:12;15116:52;-1:-1:-1;15187:16:136;;15025:184;-1:-1:-1;15025:184:136:o;16453:287::-;16582:3;16620:6;16614:13;16636:66;16695:6;16690:3;16683:4;16675:6;16671:17;16636:66;:::i;:::-;16718:16;;;;;16453:287;-1:-1:-1;;16453:287:136:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1825,"length":32},{"start":1892,"length":32},{"start":2037,"length":32},{"start":2104,"length":32},{"start":2237,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":\"RegistryFactoryV0_0\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":"RegistryFactoryV0_0"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","id":72779,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[72419],"ERC1967Proxy":[55021],"ProxyOwnableUpgrader":[70199],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryFactoryV0_0":[72778]},"nodeType":"SourceUnit","src":"42:5144:106","nodes":[{"id":72405,"nodeType":"PragmaDirective","src":"42:24:106","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72408,"nodeType":"ImportDirective","src":"68:134:106","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72406,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"81:21:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72407,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"108:37:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72410,"nodeType":"ImportDirective","src":"203:65:106","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":70200,"symbolAliases":[{"foreign":{"id":72409,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70199,"src":"211:20:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72412,"nodeType":"ImportDirective","src":"269:84:106","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":55022,"symbolAliases":[{"foreign":{"id":72411,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"277:12:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72414,"nodeType":"ImportDirective","src":"354:65:106","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":72779,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":72413,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"362:5:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72419,"nodeType":"StructDefinition","src":"421:57:106","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":72416,"mutability":"mutable","name":"fee","nameLocation":"456:3:106","nodeType":"VariableDeclaration","scope":72419,"src":"448:11:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72415,"name":"uint256","nodeType":"ElementaryTypeName","src":"448:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72418,"mutability":"mutable","name":"valid","nameLocation":"470:5:106","nodeType":"VariableDeclaration","scope":72419,"src":"465:10:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72417,"name":"bool","nodeType":"ElementaryTypeName","src":"465:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"428:13:106","scope":72779,"visibility":"public"},{"id":72778,"nodeType":"ContractDefinition","src":"529:4656:106","nodes":[{"id":72424,"nodeType":"VariableDeclaration","src":"636:20:106","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"651:5:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72423,"name":"uint256","nodeType":"ElementaryTypeName","src":"636:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":72429,"nodeType":"VariableDeclaration","src":"663:49:106","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"697:15:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":72428,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":72425,"name":"address","nodeType":"ElementaryTypeName","src":"671:7:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"663:33:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":72427,"nodeType":"UserDefinedTypeName","pathNode":{"id":72426,"name":"CommunityInfo","nameLocations":["682:13:106"],"nodeType":"IdentifierPath","referencedDeclaration":72419,"src":"682:13:106"},"referencedDeclaration":72419,"src":"682:13:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":72431,"nodeType":"VariableDeclaration","src":"718:33:106","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"733:18:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72430,"name":"address","nodeType":"ElementaryTypeName","src":"718:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72433,"nodeType":"VariableDeclaration","src":"757:40:106","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"772:25:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72432,"name":"address","nodeType":"ElementaryTypeName","src":"757:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72435,"nodeType":"VariableDeclaration","src":"803:31:106","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"818:16:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72434,"name":"address","nodeType":"ElementaryTypeName","src":"803:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72437,"nodeType":"VariableDeclaration","src":"840:38:106","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"855:23:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72436,"name":"address","nodeType":"ElementaryTypeName","src":"840:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":72441,"nodeType":"EventDefinition","src":"1051:46:106","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1057:14:106","parameters":{"id":72440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72439,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1080:15:106","nodeType":"VariableDeclaration","scope":72441,"src":"1072:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72438,"name":"address","nodeType":"ElementaryTypeName","src":"1072:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1071:25:106"}},{"id":72447,"nodeType":"EventDefinition","src":"1102:66:106","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1108:14:106","parameters":{"id":72446,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72443,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1131:10:106","nodeType":"VariableDeclaration","scope":72447,"src":"1123:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72442,"name":"address","nodeType":"ElementaryTypeName","src":"1123:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72445,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1151:15:106","nodeType":"VariableDeclaration","scope":72447,"src":"1143:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72444,"name":"uint256","nodeType":"ElementaryTypeName","src":"1143:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1122:45:106"}},{"id":72451,"nodeType":"EventDefinition","src":"1173:51:106","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1179:16:106","parameters":{"id":72450,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72449,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1204:18:106","nodeType":"VariableDeclaration","scope":72451,"src":"1196:26:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72448,"name":"address","nodeType":"ElementaryTypeName","src":"1196:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1195:28:106"}},{"id":72457,"nodeType":"EventDefinition","src":"1229:62:106","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1235:20:106","parameters":{"id":72456,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72453,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1264:10:106","nodeType":"VariableDeclaration","scope":72457,"src":"1256:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72452,"name":"address","nodeType":"ElementaryTypeName","src":"1256:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72455,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1281:8:106","nodeType":"VariableDeclaration","scope":72457,"src":"1276:13:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72454,"name":"bool","nodeType":"ElementaryTypeName","src":"1276:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1255:35:106"}},{"id":72461,"nodeType":"ErrorDefinition","src":"1463:43:106","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1469:16:106","parameters":{"id":72460,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72459,"mutability":"mutable","name":"_community","nameLocation":"1494:10:106","nodeType":"VariableDeclaration","scope":72461,"src":"1486:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72458,"name":"address","nodeType":"ElementaryTypeName","src":"1486:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1485:20:106"}},{"id":72463,"nodeType":"ErrorDefinition","src":"1511:28:106","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1517:19:106","parameters":{"id":72462,"nodeType":"ParameterList","parameters":[],"src":"1536:2:106"}},{"id":72479,"nodeType":"FunctionDefinition","src":"1711:141:106","nodes":[],"body":{"id":72478,"nodeType":"Block","src":"1779:73:106","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72468,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72465,"src":"1793:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72471,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1813:1:106","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":72470,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1805:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72469,"name":"address","nodeType":"ElementaryTypeName","src":"1805:7:106","typeDescriptions":{}}},"id":72472,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1805:10:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1793:22:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72477,"nodeType":"IfStatement","src":"1789:56:106","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72474,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72463,"src":"1824:19:106","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1824:21:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72476,"nodeType":"RevertStatement","src":"1817:28:106"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1720:18:106","parameters":{"id":72466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72465,"mutability":"mutable","name":"_address","nameLocation":"1747:8:106","nodeType":"VariableDeclaration","scope":72479,"src":"1739:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72464,"name":"address","nodeType":"ElementaryTypeName","src":"1739:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1738:18:106"},"returnParameters":{"id":72467,"nodeType":"ParameterList","parameters":[],"src":"1779:0:106"},"scope":72778,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":72491,"nodeType":"FunctionDefinition","src":"1858:136:106","nodes":[],"body":{"id":72490,"nodeType":"Block","src":"1941:53:106","nodes":[],"statements":[{"expression":{"id":72488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72486,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"1951:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72487,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72481,"src":"1979:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1951:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72489,"nodeType":"ExpressionStatement","src":"1951:36:106"}]},"functionSelector":"5decae02","implemented":true,"kind":"function","modifiers":[{"id":72484,"kind":"modifierInvocation","modifierName":{"id":72483,"name":"onlyOwner","nameLocations":["1931:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"1931:9:106"},"nodeType":"ModifierInvocation","src":"1931:9:106"}],"name":"setRegistryCommunityTemplate","nameLocation":"1867:28:106","parameters":{"id":72482,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72481,"mutability":"mutable","name":"template","nameLocation":"1904:8:106","nodeType":"VariableDeclaration","scope":72491,"src":"1896:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72480,"name":"address","nodeType":"ElementaryTypeName","src":"1896:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1895:18:106"},"returnParameters":{"id":72485,"nodeType":"ParameterList","parameters":[],"src":"1941:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72503,"nodeType":"FunctionDefinition","src":"2000:118:106","nodes":[],"body":{"id":72502,"nodeType":"Block","src":"2074:44:106","nodes":[],"statements":[{"expression":{"id":72500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72498,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"2084:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72499,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"2103:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2084:27:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72501,"nodeType":"ExpressionStatement","src":"2084:27:106"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":72496,"kind":"modifierInvocation","modifierName":{"id":72495,"name":"onlyOwner","nameLocations":["2064:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2064:9:106"},"nodeType":"ModifierInvocation","src":"2064:9:106"}],"name":"setStrategyTemplate","nameLocation":"2009:19:106","parameters":{"id":72494,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72493,"mutability":"mutable","name":"template","nameLocation":"2037:8:106","nodeType":"VariableDeclaration","scope":72503,"src":"2029:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72492,"name":"address","nodeType":"ElementaryTypeName","src":"2029:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2028:18:106"},"returnParameters":{"id":72497,"nodeType":"ParameterList","parameters":[],"src":"2074:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72515,"nodeType":"FunctionDefinition","src":"2124:132:106","nodes":[],"body":{"id":72514,"nodeType":"Block","src":"2205:51:106","nodes":[],"statements":[{"expression":{"id":72512,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72510,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"2215:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72511,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72505,"src":"2241:8:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2215:34:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72513,"nodeType":"ExpressionStatement","src":"2215:34:106"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":72508,"kind":"modifierInvocation","modifierName":{"id":72507,"name":"onlyOwner","nameLocations":["2195:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"2195:9:106"},"nodeType":"ModifierInvocation","src":"2195:9:106"}],"name":"setCollateralVaultTemplate","nameLocation":"2133:26:106","parameters":{"id":72506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72505,"mutability":"mutable","name":"template","nameLocation":"2168:8:106","nodeType":"VariableDeclaration","scope":72515,"src":"2160:16:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72504,"name":"address","nodeType":"ElementaryTypeName","src":"2160:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2159:18:106"},"returnParameters":{"id":72509,"nodeType":"ParameterList","parameters":[],"src":"2205:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":72573,"nodeType":"FunctionDefinition","src":"2262:780:106","nodes":[],"body":{"id":72572,"nodeType":"Block","src":"2489:553:106","nodes":[],"statements":[{"expression":{"arguments":[{"id":72533,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72517,"src":"2516:6:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72530,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2499:5:106","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryV0_0_$72778_$","typeString":"type(contract super RegistryFactoryV0_0)"}},"id":72532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2505:10:106","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70134,"src":"2499:16:106","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72534,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2499:24:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72535,"nodeType":"ExpressionStatement","src":"2499:24:106"},{"expression":{"id":72538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72536,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"2533:5:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":72537,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2541:1:106","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2533:9:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72539,"nodeType":"ExpressionStatement","src":"2533:9:106"},{"expression":{"arguments":[{"id":72541,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2571:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72540,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2552:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2552:39:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72543,"nodeType":"ExpressionStatement","src":"2552:39:106"},{"expression":{"arguments":[{"id":72545,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72521,"src":"2620:26:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72544,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2601:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2601:46:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72547,"nodeType":"ExpressionStatement","src":"2601:46:106"},{"expression":{"arguments":[{"id":72549,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72525,"src":"2676:24:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72548,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"2657:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72550,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2657:44:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72551,"nodeType":"ExpressionStatement","src":"2657:44:106"},{"expression":{"id":72554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72552,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"2711:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72553,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2732:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2711:40:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72555,"nodeType":"ExpressionStatement","src":"2711:40:106"},{"expression":{"id":72558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72556,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"2761:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72557,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72521,"src":"2789:26:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2761:54:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72559,"nodeType":"ExpressionStatement","src":"2761:54:106"},{"expression":{"id":72562,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72560,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"2825:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72561,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72523,"src":"2844:17:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2825:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72563,"nodeType":"ExpressionStatement","src":"2825:36:106"},{"expression":{"id":72566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72564,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"2871:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72565,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72525,"src":"2897:24:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2871:50:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72567,"nodeType":"ExpressionStatement","src":"2871:50:106"},{"eventCall":{"arguments":[{"id":72569,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72519,"src":"2951:19:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72568,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72441,"src":"2936:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2936:35:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72571,"nodeType":"EmitStatement","src":"2931:40:106"}]},"functionSelector":"1459457a","implemented":true,"kind":"function","modifiers":[{"id":72528,"kind":"modifierInvocation","modifierName":{"id":72527,"name":"initializer","nameLocations":["2477:11:106"],"nodeType":"IdentifierPath","referencedDeclaration":53054,"src":"2477:11:106"},"nodeType":"ModifierInvocation","src":"2477:11:106"}],"name":"initialize","nameLocation":"2271:10:106","parameters":{"id":72526,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72517,"mutability":"mutable","name":"_owner","nameLocation":"2299:6:106","nodeType":"VariableDeclaration","scope":72573,"src":"2291:14:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72516,"name":"address","nodeType":"ElementaryTypeName","src":"2291:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72519,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"2323:19:106","nodeType":"VariableDeclaration","scope":72573,"src":"2315:27:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72518,"name":"address","nodeType":"ElementaryTypeName","src":"2315:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72521,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"2360:26:106","nodeType":"VariableDeclaration","scope":72573,"src":"2352:34:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72520,"name":"address","nodeType":"ElementaryTypeName","src":"2352:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72523,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"2404:17:106","nodeType":"VariableDeclaration","scope":72573,"src":"2396:25:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72522,"name":"address","nodeType":"ElementaryTypeName","src":"2396:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72525,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"2439:24:106","nodeType":"VariableDeclaration","scope":72573,"src":"2431:32:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72524,"name":"address","nodeType":"ElementaryTypeName","src":"2431:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2281:188:106"},"returnParameters":{"id":72529,"nodeType":"ParameterList","parameters":[],"src":"2489:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":72656,"nodeType":"FunctionDefinition","src":"3048:813:106","nodes":[],"body":{"id":72655,"nodeType":"Block","src":"3210:651:106","nodes":[],"statements":[{"expression":{"id":72586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72581,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3220:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72583,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3227:6:106","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"3220:13:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72585,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3236:7:106","subExpression":{"id":72584,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"3236:5:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3220:23:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72587,"nodeType":"ExpressionStatement","src":"3220:23:106"},{"expression":{"id":72595,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72588,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3253:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72590,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3260:16:106","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"3253:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72593,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3287:4:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$72778","typeString":"contract RegistryFactoryV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$72778","typeString":"contract RegistryFactoryV0_0"}],"id":72592,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3279:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72591,"name":"address","nodeType":"ElementaryTypeName","src":"3279:7:106","typeDescriptions":{}}},"id":72594,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3279:13:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3253:39:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72596,"nodeType":"ExpressionStatement","src":"3253:39:106"},{"assignments":[72599],"declarations":[{"constant":false,"id":72599,"mutability":"mutable","name":"proxy","nameLocation":"3316:5:106","nodeType":"VariableDeclaration","scope":72655,"src":"3303:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":72598,"nodeType":"UserDefinedTypeName","pathNode":{"id":72597,"name":"ERC1967Proxy","nameLocations":["3303:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3303:12:106"},"referencedDeclaration":55021,"src":"3303:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":72619,"initialValue":{"arguments":[{"arguments":[{"id":72605,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"3362:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72604,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3354:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72603,"name":"address","nodeType":"ElementaryTypeName","src":"3354:7:106","typeDescriptions":{}}},"id":72606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3354:34:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72609,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"3425:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72610,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3447:10:106","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"3425:32:106","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":72611,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3458:8:106","memberName":"selector","nodeType":"MemberAccess","src":"3425:41:106","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":72612,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72576,"src":"3468:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":72613,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"3476:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72614,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"3494:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72615,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"3519:5:106","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3519:7:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72607,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3402:3:106","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72608,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3406:18:106","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3402:22:106","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3402:125:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72602,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"3324:16:106","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72601,"nodeType":"UserDefinedTypeName","pathNode":{"id":72600,"name":"ERC1967Proxy","nameLocations":["3328:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"3328:12:106"},"referencedDeclaration":55021,"src":"3328:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3324:213:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"3303:234:106"},{"assignments":[72622],"declarations":[{"constant":false,"id":72622,"mutability":"mutable","name":"registryCommunity","nameLocation":"3570:17:106","nodeType":"VariableDeclaration","scope":72655,"src":"3548:39:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":72621,"nodeType":"UserDefinedTypeName","pathNode":{"id":72620,"name":"RegistryCommunityV0_0","nameLocations":["3548:21:106"],"nodeType":"IdentifierPath","referencedDeclaration":72174,"src":"3548:21:106"},"referencedDeclaration":72174,"src":"3548:21:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":72632,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72628,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72599,"src":"3628:5:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72627,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3620:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72626,"name":"address","nodeType":"ElementaryTypeName","src":"3620:7:106","typeDescriptions":{}}},"id":72629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3620:14:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3612:8:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":72624,"name":"address","nodeType":"ElementaryTypeName","src":"3612:8:106","stateMutability":"payable","typeDescriptions":{}}},"id":72630,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3612:23:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72623,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"3590:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3590:46:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"3548:88:106"},{"expression":{"id":72641,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72633,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"3696:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72638,"indexExpression":{"arguments":[{"id":72636,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3720:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72635,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3712:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72634,"name":"address","nodeType":"ElementaryTypeName","src":"3712:7:106","typeDescriptions":{}}},"id":72637,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3712:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3696:43:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72639,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3740:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"3696:49:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72640,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3748:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3696:56:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72642,"nodeType":"ExpressionStatement","src":"3696:56:106"},{"eventCall":{"arguments":[{"arguments":[{"id":72646,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3792:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72645,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3784:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72644,"name":"address","nodeType":"ElementaryTypeName","src":"3784:7:106","typeDescriptions":{}}},"id":72647,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3784:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72643,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"3767:16:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72648,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3767:44:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72649,"nodeType":"EmitStatement","src":"3762:49:106"},{"expression":{"arguments":[{"id":72652,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72622,"src":"3836:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$72174","typeString":"contract RegistryCommunityV0_0"}],"id":72651,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3828:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72650,"name":"address","nodeType":"ElementaryTypeName","src":"3828:7:106","typeDescriptions":{}}},"id":72653,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3828:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72580,"id":72654,"nodeType":"Return","src":"3821:33:106"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"3057:14:106","parameters":{"id":72577,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72576,"mutability":"mutable","name":"params","nameLocation":"3117:6:106","nodeType":"VariableDeclaration","scope":72656,"src":"3072:51:106","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":72575,"nodeType":"UserDefinedTypeName","pathNode":{"id":72574,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["3072:37:106"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"3072:37:106"},"referencedDeclaration":70264,"src":"3072:37:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"3071:53:106"},"returnParameters":{"id":72580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72579,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"3181:23:106","nodeType":"VariableDeclaration","scope":72656,"src":"3173:31:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72578,"name":"address","nodeType":"ElementaryTypeName","src":"3173:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3172:33:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72676,"nodeType":"FunctionDefinition","src":"3867:222:106","nodes":[],"body":{"id":72675,"nodeType":"Block","src":"3945:144:106","nodes":[],"statements":[{"expression":{"arguments":[{"id":72664,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"3974:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72663,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72479,"src":"3955:18:106","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3955:35:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72666,"nodeType":"ExpressionStatement","src":"3955:35:106"},{"expression":{"id":72669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72667,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"4000:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72668,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"4021:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4000:36:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72670,"nodeType":"ExpressionStatement","src":"4000:36:106"},{"eventCall":{"arguments":[{"id":72672,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72658,"src":"4066:15:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72671,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72441,"src":"4051:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4051:31:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72674,"nodeType":"EmitStatement","src":"4046:36:106"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":72661,"kind":"modifierInvocation","modifierName":{"id":72660,"name":"onlyOwner","nameLocations":["3935:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"3935:9:106"},"nodeType":"ModifierInvocation","src":"3935:9:106"}],"name":"setReceiverAddress","nameLocation":"3876:18:106","parameters":{"id":72659,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72658,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"3903:15:106","nodeType":"VariableDeclaration","scope":72676,"src":"3895:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72657,"name":"address","nodeType":"ElementaryTypeName","src":"3895:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3894:25:106"},"returnParameters":{"id":72662,"nodeType":"ParameterList","parameters":[],"src":"3945:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72684,"nodeType":"FunctionDefinition","src":"4095:115:106","nodes":[],"body":{"id":72683,"nodeType":"Block","src":"4168:42:106","nodes":[],"statements":[{"expression":{"id":72681,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"4185:18:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72680,"id":72682,"nodeType":"Return","src":"4178:25:106"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"4104:21:106","parameters":{"id":72677,"nodeType":"ParameterList","parameters":[],"src":"4125:2:106"},"returnParameters":{"id":72680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72679,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72684,"src":"4159:7:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72678,"name":"address","nodeType":"ElementaryTypeName","src":"4159:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4158:9:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72706,"nodeType":"FunctionDefinition","src":"4216:218:106","nodes":[],"body":{"id":72705,"nodeType":"Block","src":"4310:124:106","nodes":[],"statements":[{"expression":{"id":72698,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72693,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4320:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72695,"indexExpression":{"id":72694,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72686,"src":"4336:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4320:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72696,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4348:3:106","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72416,"src":"4320:31:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72697,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72688,"src":"4354:15:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4320:49:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72699,"nodeType":"ExpressionStatement","src":"4320:49:106"},{"eventCall":{"arguments":[{"id":72701,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72686,"src":"4399:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72702,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72688,"src":"4411:15:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72700,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72447,"src":"4384:14:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72703,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4384:43:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72704,"nodeType":"EmitStatement","src":"4379:48:106"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":72691,"kind":"modifierInvocation","modifierName":{"id":72690,"name":"onlyOwner","nameLocations":["4300:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4300:9:106"},"nodeType":"ModifierInvocation","src":"4300:9:106"}],"name":"setProtocolFee","nameLocation":"4225:14:106","parameters":{"id":72689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72686,"mutability":"mutable","name":"_community","nameLocation":"4248:10:106","nodeType":"VariableDeclaration","scope":72706,"src":"4240:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72685,"name":"address","nodeType":"ElementaryTypeName","src":"4240:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72688,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"4268:15:106","nodeType":"VariableDeclaration","scope":72706,"src":"4260:23:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72687,"name":"uint256","nodeType":"ElementaryTypeName","src":"4260:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4239:45:106"},"returnParameters":{"id":72692,"nodeType":"ParameterList","parameters":[],"src":"4310:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72728,"nodeType":"FunctionDefinition","src":"4440:208:106","nodes":[],"body":{"id":72727,"nodeType":"Block","src":"4530:118:106","nodes":[],"statements":[{"expression":{"id":72720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72715,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4540:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72717,"indexExpression":{"id":72716,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72708,"src":"4556:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4540:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4568:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4540:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72719,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72710,"src":"4576:8:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4540:44:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72721,"nodeType":"ExpressionStatement","src":"4540:44:106"},{"eventCall":{"arguments":[{"id":72723,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72708,"src":"4620:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72724,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72710,"src":"4632:8:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":72722,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72457,"src":"4599:20:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":72725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4599:42:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72726,"nodeType":"EmitStatement","src":"4594:47:106"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":72713,"kind":"modifierInvocation","modifierName":{"id":72712,"name":"onlyOwner","nameLocations":["4520:9:106"],"nodeType":"IdentifierPath","referencedDeclaration":52817,"src":"4520:9:106"},"nodeType":"ModifierInvocation","src":"4520:9:106"}],"name":"setCommunityValidity","nameLocation":"4449:20:106","parameters":{"id":72711,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72708,"mutability":"mutable","name":"_community","nameLocation":"4478:10:106","nodeType":"VariableDeclaration","scope":72728,"src":"4470:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72707,"name":"address","nodeType":"ElementaryTypeName","src":"4470:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72710,"mutability":"mutable","name":"_isValid","nameLocation":"4495:8:106","nodeType":"VariableDeclaration","scope":72728,"src":"4490:13:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72709,"name":"bool","nodeType":"ElementaryTypeName","src":"4490:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4469:35:106"},"returnParameters":{"id":72714,"nodeType":"ParameterList","parameters":[],"src":"4530:0:106"},"scope":72778,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72741,"nodeType":"FunctionDefinition","src":"4654:144:106","nodes":[],"body":{"id":72740,"nodeType":"Block","src":"4741:57:106","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":72735,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4758:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72737,"indexExpression":{"id":72736,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72730,"src":"4774:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4758:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72738,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4786:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4758:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72734,"id":72739,"nodeType":"Return","src":"4751:40:106"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"4663:20:106","parameters":{"id":72731,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72730,"mutability":"mutable","name":"_community","nameLocation":"4692:10:106","nodeType":"VariableDeclaration","scope":72741,"src":"4684:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72729,"name":"address","nodeType":"ElementaryTypeName","src":"4684:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4683:20:106"},"returnParameters":{"id":72734,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72733,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72741,"src":"4735:4:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72732,"name":"bool","nodeType":"ElementaryTypeName","src":"4735:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4734:6:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72765,"nodeType":"FunctionDefinition","src":"4804:249:106","nodes":[],"body":{"id":72764,"nodeType":"Block","src":"4888:165:106","nodes":[],"statements":[{"condition":{"id":72752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"4902:34:106","subExpression":{"expression":{"baseExpression":{"id":72748,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"4903:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72750,"indexExpression":{"id":72749,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"4919:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4903:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72751,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4931:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"4903:33:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72758,"nodeType":"IfStatement","src":"4898:100:106","trueBody":{"id":72757,"nodeType":"Block","src":"4938:60:106","statements":[{"errorCall":{"arguments":[{"id":72754,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"4976:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72753,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72461,"src":"4959:16:106","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":72755,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4959:28:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72756,"nodeType":"RevertStatement","src":"4952:35:106"}]}},{"expression":{"expression":{"baseExpression":{"id":72759,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"5015:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72761,"indexExpression":{"id":72760,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72743,"src":"5031:10:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5015:27:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72762,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5043:3:106","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":72416,"src":"5015:31:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72747,"id":72763,"nodeType":"Return","src":"5008:38:106"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"4813:14:106","parameters":{"id":72744,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72743,"mutability":"mutable","name":"_community","nameLocation":"4836:10:106","nodeType":"VariableDeclaration","scope":72765,"src":"4828:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72742,"name":"address","nodeType":"ElementaryTypeName","src":"4828:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4827:20:106"},"returnParameters":{"id":72747,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72746,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72765,"src":"4879:7:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72745,"name":"uint256","nodeType":"ElementaryTypeName","src":"4879:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4878:9:106"},"scope":72778,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":72773,"nodeType":"FunctionDefinition","src":"5060:92:106","nodes":[],"body":{"id":72772,"nodeType":"Block","src":"5123:29:106","nodes":[],"statements":[{"expression":{"hexValue":"302e30","id":72770,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5140:5:106","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"functionReturnParameters":72769,"id":72771,"nodeType":"Return","src":"5133:12:106"}]},"functionSelector":"ffa1ad74","implemented":true,"kind":"function","modifiers":[],"name":"VERSION","nameLocation":"5069:7:106","parameters":{"id":72766,"nodeType":"ParameterList","parameters":[],"src":"5076:2:106"},"returnParameters":{"id":72769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72768,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72773,"src":"5108:13:106","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":72767,"name":"string","nodeType":"ElementaryTypeName","src":"5108:6:106","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5107:15:106"},"scope":72778,"stateMutability":"pure","virtual":true,"visibility":"public"},{"id":72777,"nodeType":"VariableDeclaration","src":"5157:25:106","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5177:5:106","scope":72778,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":72774,"name":"uint256","nodeType":"ElementaryTypeName","src":"5157:7:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72776,"length":{"hexValue":"3530","id":72775,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5165:2:106","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5157:11:106","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":72421,"name":"ProxyOwnableUpgrader","nameLocations":["561:20:106"],"nodeType":"IdentifierPath","referencedDeclaration":70199,"src":"561:20:106"},"id":72422,"nodeType":"InheritanceSpecifier","src":"561:20:106"}],"canonicalName":"RegistryFactoryV0_0","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72420,"nodeType":"StructuredDocumentation","src":"480:49:106","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_0","nameLocation":"538:19:106","scope":72779,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":106} \ No newline at end of file diff --git a/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json b/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json index 3fa43576..893868f7 100644 --- a/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json +++ b/pkg/contracts/out/RegistryFactoryV0_1.sol/RegistryFactoryV0_1.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516120e061004c600039600081816106ee01528181610731015281816107c201528181610805015261088a01526120e06000f3fe608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b6040516200017691906200136e565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013aa565b620004e7565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013ca565b6200054d565b005b348015620001e757600080fd5b50620001d8620001f9366004620013aa565b620006b8565b3480156200020c57600080fd5b50620001d86200021e366004620013aa565b620006e4565b620001d86200023536600462001504565b620007b8565b3480156200024857600080fd5b50620001a46200087d565b3480156200026057600080fd5b50620001d8620002723660046200157f565b6200092e565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d86200099f565b348015620002bf57600080fd5b50620001d8620002d1366004620013aa565b62000a23565b348015620002e457600080fd5b50620001d862000a4f565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013aa565b62000a67565b3480156200034357600080fd5b506200016762000ab8565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013aa565b62000b55565b348015620003b857600080fd5b50620001d8620003ca366004620015b9565b62000b81565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b50620001676200041136600462001680565b62000bdd565b3480156200042457600080fd5b50620001d862000436366004620013aa565b62000d1e565b3480156200044957600080fd5b50620001d86200045b366004620013aa565b62000d96565b3480156200046e57600080fd5b50620004a162000480366004620013aa565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200017691906200182f565b6001600160a01b03811660009081526066602052604081206001015460ff1662000531578160405163f5a6943d60e01b81526004016200052891906200136e565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056e5750600054600160ff909116105b80620005935750620005803062000e07565b15801562000593575060005460ff166001145b620005b25760405162461bcd60e51b8152600401620005289062001844565b6000805460ff191660011790558015620005d6576000805461ff0019166101001790555b620005e18662000d1e565b6000606555620005f18562000e16565b620005fc8462000e16565b620006078262000e16565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200208b83398151915290620006729087906200136e565b60405180910390a18015620006b0576000805461ff001916905560405160018152600080516020620020448339815191529060200160405180910390a15b505050505050565b620006c262000e3e565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200072f5760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076362000ea1565b6001600160a01b0316146200078c5760405162461bcd60e51b81526004016200052890620018cd565b620007978162000ebe565b60408051600080825260208201909252620007b59183919062000f10565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ea1565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052890620018cd565b6200086b8262000ebe565b620008798282600162000f10565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200091a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000528565b506000805160206200202483398151915290565b6200093862000e3e565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009c2575060005460ff8083169116105b620009e15760405162461bcd60e51b8152600401620005289062001844565b6000805461ffff191660ff83169081176101001761ff00191690915560405190815260008051602062002044833981519152906020015b60405180910390a150565b62000a2d62000e3e565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a5962000e3e565b62000a6560006200108d565b565b62000a7162000e3e565b62000a7c8162000e16565b606780546001600160a01b0319166001600160a01b0383161790556040516000805160206200208b8339815191529062000a189083906200136e565b60008062000ace6033546001600160a01b031690565b9050806001600160a01b03163b60000362000ae857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b45575060408051601f3d908101601f1916820190925262000b429181019062001908565b60015b62000b4f57919050565b92915050565b62000b5f62000e3e565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b8b62000e3e565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000993565b606580546000918262000bf08362001928565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3162000ab8565b60405160240162000c46949392919062001971565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c859062001353565b62000c9292919062001ab9565b604051809103906000f08015801562000caf573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d0f9083906200136e565b60405180910390a19392505050565b600054610100900460ff1662000d8b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000528565b620007b5816200108d565b62000da062000e3e565b6001600160a01b03811662000d8b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000528565b6001600160a01b03163b151590565b6001600160a01b038116620007b5576040516303988b8160e61b815260040160405180910390fd5b3362000e4962000ab8565b6001600160a01b03161462000a655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000528565b60008051602062002024833981519152546001600160a01b031690565b3362000ec962000ab8565b6001600160a01b031614620007b5573362000ee362000ab8565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000528565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f4b5762000f4683620010df565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fa8575060408051601f3d908101601f1916820190925262000fa59181019062001adf565b60015b6200100d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000528565b6000805160206200202483398151915281146200107f5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000528565b5062000f468383836200117e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010ea8162000e07565b6200114e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000528565b6000805160206200202483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200118983620011af565b600082511180620011975750805b1562000f4657620011a98383620011f1565b50505050565b620011ba81620010df565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620012198383604051806060016040528060278152602001620020646027913962001220565b9392505050565b6060600080856001600160a01b0316856040516200123f919062001af9565b600060405180830381855af49150503d80600081146200127c576040519150601f19603f3d011682016040523d82523d6000602084013e62001281565b606091505b509150915062001294868383876200129e565b9695505050505050565b60608315620013125782516000036200130a57620012bc8562000e07565b6200130a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000528565b50816200131e565b6200131e838362001326565b949350505050565b815115620013375781518083602001fd5b8060405162461bcd60e51b81526004016200052891906200182f565b6104ec8062001b1883390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007b557600080fd5b8035620013a58162001382565b919050565b600060208284031215620013bd57600080fd5b8135620012198162001382565b600080600080600060a08688031215620013e357600080fd5b8535620013f08162001382565b94506020860135620014028162001382565b93506040860135620014148162001382565b92506060860135620014268162001382565b91506080860135620014388162001382565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b038111828210171562001482576200148262001446565b60405290565b60006001600160401b0380841115620014a557620014a562001446565b604051601f8501601f19908116603f01168101908282118183101715620014d057620014d062001446565b81604052809350858152868686011115620014ea57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200151857600080fd5b8235620015258162001382565b915060208301356001600160401b038111156200154157600080fd5b8301601f810185136200155357600080fd5b620015648582356020840162001488565b9150509250929050565b80358015158114620013a557600080fd5b600080604083850312156200159357600080fd5b8235620015a08162001382565b9150620015b0602084016200156e565b90509250929050565b60008060408385031215620015cd57600080fd5b8235620015da8162001382565b946020939093013593505050565b600082601f830112620015fa57600080fd5b620012198383356020850162001488565b6000604082840312156200161e57600080fd5b604080519081016001600160401b03808211838310171562001644576200164462001446565b816040528293508435835260208501359150808211156200166457600080fd5b506200167385828601620015e8565b6020830152505092915050565b6000602082840312156200169357600080fd5b81356001600160401b0380821115620016ab57600080fd5b908301906101808286031215620016c157600080fd5b620016cb6200145c565b620016d68362001398565b8152620016e66020840162001398565b60208201526040830135604082015260608301356060820152608083013560808201526200171760a0840162001398565b60a08201526200172a60c0840162001398565b60c082015260e0830135828111156200174257600080fd5b62001750878286016200160b565b60e0830152506101006200176681850162001398565b9082015261012083810135838111156200177f57600080fd5b6200178d88828701620015e8565b828401525050610140620017a38185016200156e565b908201526101608381013583811115620017bc57600080fd5b620017ca88828701620015e8565b918301919091525095945050505050565b60005b83811015620017f8578181015183820152602001620017de565b50506000910152565b600081518084526200181b816020860160208601620017db565b601f01601f19169290920160200192915050565b60208152600062001219602083018462001801565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200191b57600080fd5b8151620012198162001382565b6000600182016200194957634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200131e604085018262001801565b608081526200198560808201865162001361565b600060208601516200199b60a084018262001361565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019d58186018462001361565b60c08901519250610140620019ed8187018562001361565b60e08a01519350610180610160818189015262001a0f61020089018762001950565b948c015194955062001a248883018662001361565b838c01519450607f19935083888703016101a089015262001a46868662001801565b9550828c0151945062001a5e6101c089018615159052565b808c0151945050505080858403016101e08601525062001a7f828262001801565b9250505062001a92602083018662001361565b62001aa1604083018562001361565b62001ab0606083018462001361565b95945050505050565b6001600160a01b03831681526040602082018190526000906200131e9083018462001801565b60006020828403121562001af257600080fd5b5051919050565b6000825162001b0d818460208701620017db565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220670003da5980805d3802d4f1fb5a407c00340bae505994972a1d13db87a8c96c64736f6c63430008130033","sourceMap":"433:976:107:-:0;;;1088:4:64;1045:48;;433:976:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b6040516200017691906200136e565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013aa565b620004e7565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013ca565b6200054d565b005b348015620001e757600080fd5b50620001d8620001f9366004620013aa565b620006b8565b3480156200020c57600080fd5b50620001d86200021e366004620013aa565b620006e4565b620001d86200023536600462001504565b620007b8565b3480156200024857600080fd5b50620001a46200087d565b3480156200026057600080fd5b50620001d8620002723660046200157f565b6200092e565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d86200099f565b348015620002bf57600080fd5b50620001d8620002d1366004620013aa565b62000a23565b348015620002e457600080fd5b50620001d862000a4f565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013aa565b62000a67565b3480156200034357600080fd5b506200016762000ab8565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013aa565b62000b55565b348015620003b857600080fd5b50620001d8620003ca366004620015b9565b62000b81565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b50620001676200041136600462001680565b62000bdd565b3480156200042457600080fd5b50620001d862000436366004620013aa565b62000d1e565b3480156200044957600080fd5b50620001d86200045b366004620013aa565b62000d96565b3480156200046e57600080fd5b50620004a162000480366004620013aa565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200017691906200182f565b6001600160a01b03811660009081526066602052604081206001015460ff1662000531578160405163f5a6943d60e01b81526004016200052891906200136e565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056e5750600054600160ff909116105b80620005935750620005803062000e07565b15801562000593575060005460ff166001145b620005b25760405162461bcd60e51b8152600401620005289062001844565b6000805460ff191660011790558015620005d6576000805461ff0019166101001790555b620005e18662000d1e565b6000606555620005f18562000e16565b620005fc8462000e16565b620006078262000e16565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200208b83398151915290620006729087906200136e565b60405180910390a18015620006b0576000805461ff001916905560405160018152600080516020620020448339815191529060200160405180910390a15b505050505050565b620006c262000e3e565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200072f5760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076362000ea1565b6001600160a01b0316146200078c5760405162461bcd60e51b81526004016200052890620018cd565b620007978162000ebe565b60408051600080825260208201909252620007b59183919062000f10565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ea1565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052890620018cd565b6200086b8262000ebe565b620008798282600162000f10565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200091a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000528565b506000805160206200202483398151915290565b6200093862000e3e565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009c2575060005460ff8083169116105b620009e15760405162461bcd60e51b8152600401620005289062001844565b6000805461ffff191660ff83169081176101001761ff00191690915560405190815260008051602062002044833981519152906020015b60405180910390a150565b62000a2d62000e3e565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a5962000e3e565b62000a6560006200108d565b565b62000a7162000e3e565b62000a7c8162000e16565b606780546001600160a01b0319166001600160a01b0383161790556040516000805160206200208b8339815191529062000a189083906200136e565b60008062000ace6033546001600160a01b031690565b9050806001600160a01b03163b60000362000ae857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b45575060408051601f3d908101601f1916820190925262000b429181019062001908565b60015b62000b4f57919050565b92915050565b62000b5f62000e3e565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b8b62000e3e565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000993565b606580546000918262000bf08362001928565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3162000ab8565b60405160240162000c46949392919062001971565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c859062001353565b62000c9292919062001ab9565b604051809103906000f08015801562000caf573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d0f9083906200136e565b60405180910390a19392505050565b600054610100900460ff1662000d8b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000528565b620007b5816200108d565b62000da062000e3e565b6001600160a01b03811662000d8b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000528565b6001600160a01b03163b151590565b6001600160a01b038116620007b5576040516303988b8160e61b815260040160405180910390fd5b3362000e4962000ab8565b6001600160a01b03161462000a655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000528565b60008051602062002024833981519152546001600160a01b031690565b3362000ec962000ab8565b6001600160a01b031614620007b5573362000ee362000ab8565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000528565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f4b5762000f4683620010df565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fa8575060408051601f3d908101601f1916820190925262000fa59181019062001adf565b60015b6200100d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000528565b6000805160206200202483398151915281146200107f5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000528565b5062000f468383836200117e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010ea8162000e07565b6200114e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000528565b6000805160206200202483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200118983620011af565b600082511180620011975750805b1562000f4657620011a98383620011f1565b50505050565b620011ba81620010df565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620012198383604051806060016040528060278152602001620020646027913962001220565b9392505050565b6060600080856001600160a01b0316856040516200123f919062001af9565b600060405180830381855af49150503d80600081146200127c576040519150601f19603f3d011682016040523d82523d6000602084013e62001281565b606091505b509150915062001294868383876200129e565b9695505050505050565b60608315620013125782516000036200130a57620012bc8562000e07565b6200130a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000528565b50816200131e565b6200131e838362001326565b949350505050565b815115620013375781518083602001fd5b8060405162461bcd60e51b81526004016200052891906200182f565b6104ec8062001b1883390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007b557600080fd5b8035620013a58162001382565b919050565b600060208284031215620013bd57600080fd5b8135620012198162001382565b600080600080600060a08688031215620013e357600080fd5b8535620013f08162001382565b94506020860135620014028162001382565b93506040860135620014148162001382565b92506060860135620014268162001382565b91506080860135620014388162001382565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b038111828210171562001482576200148262001446565b60405290565b60006001600160401b0380841115620014a557620014a562001446565b604051601f8501601f19908116603f01168101908282118183101715620014d057620014d062001446565b81604052809350858152868686011115620014ea57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200151857600080fd5b8235620015258162001382565b915060208301356001600160401b038111156200154157600080fd5b8301601f810185136200155357600080fd5b620015648582356020840162001488565b9150509250929050565b80358015158114620013a557600080fd5b600080604083850312156200159357600080fd5b8235620015a08162001382565b9150620015b0602084016200156e565b90509250929050565b60008060408385031215620015cd57600080fd5b8235620015da8162001382565b946020939093013593505050565b600082601f830112620015fa57600080fd5b620012198383356020850162001488565b6000604082840312156200161e57600080fd5b604080519081016001600160401b03808211838310171562001644576200164462001446565b816040528293508435835260208501359150808211156200166457600080fd5b506200167385828601620015e8565b6020830152505092915050565b6000602082840312156200169357600080fd5b81356001600160401b0380821115620016ab57600080fd5b908301906101808286031215620016c157600080fd5b620016cb6200145c565b620016d68362001398565b8152620016e66020840162001398565b60208201526040830135604082015260608301356060820152608083013560808201526200171760a0840162001398565b60a08201526200172a60c0840162001398565b60c082015260e0830135828111156200174257600080fd5b62001750878286016200160b565b60e0830152506101006200176681850162001398565b9082015261012083810135838111156200177f57600080fd5b6200178d88828701620015e8565b828401525050610140620017a38185016200156e565b908201526101608381013583811115620017bc57600080fd5b620017ca88828701620015e8565b918301919091525095945050505050565b60005b83811015620017f8578181015183820152602001620017de565b50506000910152565b600081518084526200181b816020860160208601620017db565b601f01601f19169290920160200192915050565b60208152600062001219602083018462001801565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200191b57600080fd5b8151620012198162001382565b6000600182016200194957634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200131e604085018262001801565b608081526200198560808201865162001361565b600060208601516200199b60a084018262001361565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019d58186018462001361565b60c08901519250610140620019ed8187018562001361565b60e08a01519350610180610160818189015262001a0f61020089018762001950565b948c015194955062001a248883018662001361565b838c01519450607f19935083888703016101a089015262001a46868662001801565b9550828c0151945062001a5e6101c089018615159052565b808c0151945050505080858403016101e08601525062001a7f828262001801565b9250505062001a92602083018662001361565b62001aa1604083018562001361565b62001ab0606083018462001361565b95945050505050565b6001600160a01b03831681526040602082018190526000906200131e9083018462001801565b60006020828403121562001af257600080fd5b5051919050565b6000825162001b0d818460208701620017db565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220670003da5980805d3802d4f1fb5a407c00340bae505994972a1d13db87a8c96c64736f6c63430008130033","sourceMap":"433:976:107:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40:106;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:131;;;992:2;977:18;4804:249:106;858:177:131;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;491:50:107;;;;;;;;;;;;;:::i;1858:136:106:-;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;547:860:107;;;;;;;;;;-1:-1:-1;547:860:107;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;7207:14:131;;7200:22;7182:41;;7170:2;7155:18;4654:144:106;7042:187:131;5060:92:106;;;;;;;;;;-1:-1:-1;5133:12:106;;;;;;;;;;;-1:-1:-1;;;5133:12:106;;;;5060:92;;;;5133:12;5060:92;:::i;4804:249::-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:131;;-1:-1:-1;;;;;;;;;;;3721:14:47;8545:2:131;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:131;2064:92:64;;;9614:21:131;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:131;;;9754:54;9825:19;;2064:92:64;9430:420:131;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;10023:51:131;;;10090:18;;;10083:50;4599:42:106::1;::::0;9996:18:131;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;491:50:107:-;4882:13:47;;536:1:107;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;;;4982:22;5014:20;-1:-1:-1;;5055:21:47;;;;5091:20;;8557:36:131;;;-1:-1:-1;;;;;;;;;;;5091:20:47;8545:2:131;8530:18;5091:20:47;;;;;;;;491:50:107;:::o;1858:136:106:-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;525:604:103:-:0;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;10763:51:131;;;10830:18;;10823:34;;;4384:43:106::1;::::0;10736:18:131;4384:43:106::1;10589:274:131::0;547:860:107;752:5;:7;;689:31;;;752:7;;;:::i;:::-;;;;-1:-1:-1;736:13:107;;;:23;803:4;769:23;;;:39;878:25;;1009:16;;1027:23;;-1:-1:-1;;;;;;;878:25:107;;;;-1:-1:-1;;;958:41:107;736:6;;1009:16;;;;1027:23;1052:7;:5;:7::i;:::-;918:155;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;918:155:107;;;;;;;;;;;;;;-1:-1:-1;;;;;918:155:107;-1:-1:-1;;;;;;918:155:107;;;;;;;;;;840:243;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1242:43:107;;1094:39;1242:43;;;:15;:43;;;;;;;1294:4;1242:49;;;:56;;-1:-1:-1;;1242:56:107;;;;;;1313:44;819:264;;-1:-1:-1;819:264:107;;1313:44;;;;819:264;;1313:44;:::i;:::-;;;;;;;;1382:17;547:860;-1:-1:-1;;;547:860:107:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13927:2:131;5366:69:47;;;13909:21:131;13966:2;13946:18;;;13939:30;14005:34;13985:18;;;13978:62;-1:-1:-1;;;14056:18:131;;;14049:41;14107:19;;5366:69:47;13725:407:131;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14339:2:131;2415:73:45::1;::::0;::::1;14321:21:131::0;14378:2;14358:18;;;14351:30;14417:34;14397:18;;;14390:62;-1:-1:-1;;;14468:18:131;;;14461:36;14514:19;;2415:73:45::1;14137:402:131::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14746:2:131;1675:68:45;;;14728:21:131;;;14765:18;;;14758:30;14824:34;14804:18;;;14797:62;14876:18;;1675:68:45;14544:356:131;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;15135:15:131;;;1252:35:103;;;15117:34:131;15187:15;;15167:18;;;15160:43;15052:18;;1252:35:103;14905:304:131;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15605:2:131;3262:56:60;;;15587:21:131;15644:2;15624:18;;;15617:30;15683:34;15663:18;;;15656:62;-1:-1:-1;;;15734:18:131;;;15727:44;15788:19;;3262:56:60;15403:410:131;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;16020:2:131;3140:82:60;;;16002:21:131;16059:2;16039:18;;;16032:30;16098:34;16078:18;;;16071:62;-1:-1:-1;;;16149:18:131;;;16142:39;16198:19;;3140:82:60;15818:405:131;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16430:2:131;1479:95:60;;;16412:21:131;16469:2;16449:18;;;16442:30;16508:34;16488:18;;;16481:62;-1:-1:-1;;;16559:18:131;;;16552:43;16612:19;;1479:95:60;16228:409:131;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;17136:2:131;8113:60:76;;;17118:21:131;17175:2;17155:18;;;17148:30;17214:31;17194:18;;;17187:59;17263:18;;8113:60:76;16934:353:131;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:131:-;-1:-1:-1;;;;;80:31:131;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:131;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:131;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:131;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:131;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:131;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:131;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:131;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:131;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:131;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:131;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:131;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:131;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:131;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:131:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:131;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:131;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:131;5298:1643;-1:-1:-1;;;;;5298:1643:131:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:131;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:131;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:131:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;7990:410::-;8192:2;8174:21;;;8231:2;8211:18;;;8204:30;8270:34;8265:2;8250:18;;8243:62;-1:-1:-1;;;8336:2:131;8321:18;;8314:44;8390:3;8375:19;;7990:410::o;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:131;8864:18;;8857:62;-1:-1:-1;;;8950:2:131;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:131;9277:18;;9270:62;-1:-1:-1;;;9363:2:131;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10333:251::-;10403:6;10456:2;10444:9;10435:7;10431:23;10427:32;10424:52;;;10472:1;10469;10462:12;10424:52;10504:9;10498:16;10523:31;10548:5;10523:31;:::i;10868:232::-;10907:3;10928:17;;;10925:140;;10987:10;10982:3;10978:20;10975:1;10968:31;11022:4;11019:1;11012:15;11050:4;11047:1;11040:15;10925:140;-1:-1:-1;11092:1:131;11081:13;;10868:232::o;11105:252::-;11192:5;11186:12;11181:3;11174:25;11156:3;11245:4;11238:5;11234:16;11228:23;11283:4;11276;11271:3;11267:14;11260:28;11304:47;11345:4;11340:3;11336:14;11322:12;11304:47;:::i;11362:2038::-;11687:3;11676:9;11669:22;11700:54;11749:3;11738:9;11734:19;11725:6;11719:13;11700:54;:::i;:::-;11650:4;11801;11793:6;11789:17;11783:24;11816:53;11864:3;11853:9;11849:19;11835:12;11816:53;:::i;:::-;;11924:4;11916:6;11912:17;11906:24;11900:3;11889:9;11885:19;11878:53;11986:4;11978:6;11974:17;11968:24;11962:3;11951:9;11947:19;11940:53;12030:3;12022:6;12018:16;12012:23;12054:3;12093:2;12088;12077:9;12073:18;12066:30;12145:3;12137:6;12133:16;12127:23;12105:45;;12169:3;12181:54;12231:2;12220:9;12216:18;12200:14;12181:54;:::i;:::-;12284:3;12276:6;12272:16;12266:23;12244:45;;12308:3;12320:54;12370:2;12359:9;12355:18;12339:14;12320:54;:::i;:::-;12423:3;12415:6;12411:16;12405:23;12383:45;;12447:6;12472:3;12511:2;12506;12495:9;12491:18;12484:30;12537:63;12595:3;12584:9;12580:19;12564:14;12537:63;:::i;:::-;12637:15;;;12631:22;12523:77;;-1:-1:-1;12662:54:131;12697:18;;;12631:22;12662:54;:::i;:::-;12765:2;12757:6;12753:15;12747:22;12725:44;;12792:3;12788:8;12778:18;;12861:2;12849:9;12841:6;12837:22;12833:31;12827:3;12816:9;12812:19;12805:60;12888:41;12922:6;12906:14;12888:41;:::i;:::-;12874:55;;12978:2;12970:6;12966:15;12960:22;12938:44;;12991:52;13038:3;13027:9;13023:19;13007:14;7016:13;7009:21;6997:34;;6946:91;12991:52;13092:2;13084:6;13080:15;13074:22;13052:44;;;;;13161:2;13149:9;13141:6;13137:22;13133:31;13127:3;13116:9;13112:19;13105:60;;13182:41;13216:6;13200:14;13182:41;:::i;:::-;13174:49;;;;13232:48;13274:4;13263:9;13259:20;13251:6;13232:48;:::i;:::-;13289;13331:4;13320:9;13316:20;13308:6;13289:48;:::i;:::-;13346;13388:4;13377:9;13373:20;13365:6;13346:48;:::i;:::-;11362:2038;;;;;;;:::o;13405:315::-;-1:-1:-1;;;;;13580:32:131;;13562:51;;13649:2;13644;13629:18;;13622:30;;;-1:-1:-1;;13669:45:131;;13695:18;;13687:6;13669:45;:::i;15214:184::-;15284:6;15337:2;15325:9;15316:7;15312:23;15308:32;15305:52;;;15353:1;15350;15343:12;15305:52;-1:-1:-1;15376:16:131;;15214:184;-1:-1:-1;15214:184:131:o;16642:287::-;16771:3;16809:6;16803:13;16825:66;16884:6;16879:3;16872:4;16864:6;16860:17;16825:66;:::i;:::-;16907:16;;;;;16642:287;-1:-1:-1;;16642:287:131:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1774,"length":32},{"start":1841,"length":32},{"start":1986,"length":32},{"start":2053,"length":32},{"start":2186,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2()":"5cd8a76b","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":\"RegistryFactoryV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":{\"keccak256\":\"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383\",\"dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":"RegistryFactoryV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":{"keccak256":"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c","urls":["bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383","dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol","id":72884,"exportedSymbols":{"ERC1967Proxy":[55021],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403],"RegistryFactoryV0_0":[72778],"RegistryFactoryV0_1":[72883]},"nodeType":"SourceUnit","src":"42:1368:107","nodes":[{"id":72780,"nodeType":"PragmaDirective","src":"42:24:107","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72783,"nodeType":"ImportDirective","src":"68:93:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"../RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72779,"symbolAliases":[{"foreign":{"id":72781,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72778,"src":"76:19:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72782,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"97:12:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72786,"nodeType":"ImportDirective","src":"162:134:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72784,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"175:37:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72785,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"218:21:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72788,"nodeType":"ImportDirective","src":"297:85:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":72787,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"305:21:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72883,"nodeType":"ContractDefinition","src":"433:976:107","nodes":[{"id":72798,"nodeType":"FunctionDefinition","src":"491:50:107","nodes":[],"body":{"id":72797,"nodeType":"Block","src":"539:2:107","nodes":[],"statements":[]},"functionSelector":"5cd8a76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":72794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"536:1:107","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":72795,"kind":"modifierInvocation","modifierName":{"id":72793,"name":"reinitializer","nameLocations":["522:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"522:13:107"},"nodeType":"ModifierInvocation","src":"522:16:107"}],"name":"initializeV2","nameLocation":"500:12:107","parameters":{"id":72792,"nodeType":"ParameterList","parameters":[],"src":"512:2:107"},"returnParameters":{"id":72796,"nodeType":"ParameterList","parameters":[],"src":"539:0:107"},"scope":72883,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":72882,"nodeType":"FunctionDefinition","src":"547:860:107","nodes":[],"body":{"id":72881,"nodeType":"Block","src":"726:681:107","nodes":[],"statements":[{"expression":{"id":72812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72807,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"736:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"743:6:107","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"736:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"752:7:107","subExpression":{"id":72810,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"752:5:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"736:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72813,"nodeType":"ExpressionStatement","src":"736:23:107"},{"expression":{"id":72821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72814,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"769:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72816,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"776:16:107","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"769:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72819,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"803:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$72883","typeString":"contract RegistryFactoryV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$72883","typeString":"contract RegistryFactoryV0_1"}],"id":72818,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"795:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72817,"name":"address","nodeType":"ElementaryTypeName","src":"795:7:107","typeDescriptions":{}}},"id":72820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"795:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"769:39:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72822,"nodeType":"ExpressionStatement","src":"769:39:107"},{"assignments":[72825],"declarations":[{"constant":false,"id":72825,"mutability":"mutable","name":"proxy","nameLocation":"832:5:107","nodeType":"VariableDeclaration","scope":72881,"src":"819:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":72824,"nodeType":"UserDefinedTypeName","pathNode":{"id":72823,"name":"ERC1967Proxy","nameLocations":["819:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"819:12:107"},"referencedDeclaration":55021,"src":"819:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":72845,"initialValue":{"arguments":[{"arguments":[{"id":72831,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"878:25:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"870:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72829,"name":"address","nodeType":"ElementaryTypeName","src":"870:7:107","typeDescriptions":{}}},"id":72832,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"870:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72835,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"958:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72836,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"980:10:107","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"958:32:107","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":72837,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"991:8:107","memberName":"selector","nodeType":"MemberAccess","src":"958:41:107","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":72838,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"1001:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":72839,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"1009:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72840,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"1027:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72841,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"1052:5:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1052:7:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72833,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"918:3:107","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72834,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"922:18:107","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"918:22:107","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72843,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"918:155:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"840:16:107","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72827,"nodeType":"UserDefinedTypeName","pathNode":{"id":72826,"name":"ERC1967Proxy","nameLocations":["844:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"844:12:107"},"referencedDeclaration":55021,"src":"844:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72844,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"840:243:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"819:264:107"},{"assignments":[72848],"declarations":[{"constant":false,"id":72848,"mutability":"mutable","name":"registryCommunity","nameLocation":"1116:17:107","nodeType":"VariableDeclaration","scope":72881,"src":"1094:39:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":72847,"nodeType":"UserDefinedTypeName","pathNode":{"id":72846,"name":"RegistryCommunityV0_1","nameLocations":["1094:21:107"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"1094:21:107"},"referencedDeclaration":72403,"src":"1094:21:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"id":72858,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72854,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72825,"src":"1174:5:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72853,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72852,"name":"address","nodeType":"ElementaryTypeName","src":"1166:7:107","typeDescriptions":{}}},"id":72855,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1166:14:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72851,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1158:8:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":72850,"name":"address","nodeType":"ElementaryTypeName","src":"1158:8:107","stateMutability":"payable","typeDescriptions":{}}},"id":72856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1158:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72849,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"1136:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":72857,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:46:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"nodeType":"VariableDeclarationStatement","src":"1094:88:107"},{"expression":{"id":72867,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72859,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"1242:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72864,"indexExpression":{"arguments":[{"id":72862,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1266:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72861,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1258:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72860,"name":"address","nodeType":"ElementaryTypeName","src":"1258:7:107","typeDescriptions":{}}},"id":72863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1258:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1242:43:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72865,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1286:5:107","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"1242:49:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72866,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1294:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"1242:56:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72868,"nodeType":"ExpressionStatement","src":"1242:56:107"},{"eventCall":{"arguments":[{"arguments":[{"id":72872,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1338:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1330:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72870,"name":"address","nodeType":"ElementaryTypeName","src":"1330:7:107","typeDescriptions":{}}},"id":72873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1330:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72869,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"1313:16:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1313:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72875,"nodeType":"EmitStatement","src":"1308:49:107"},{"expression":{"arguments":[{"id":72878,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1382:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72877,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1374:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72876,"name":"address","nodeType":"ElementaryTypeName","src":"1374:7:107","typeDescriptions":{}}},"id":72879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1374:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72806,"id":72880,"nodeType":"Return","src":"1367:33:107"}]},"baseFunctions":[72656],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"556:14:107","overrides":{"id":72803,"nodeType":"OverrideSpecifier","overrides":[],"src":"663:8:107"},"parameters":{"id":72802,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72801,"mutability":"mutable","name":"params","nameLocation":"616:6:107","nodeType":"VariableDeclaration","scope":72882,"src":"571:51:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":72800,"nodeType":"UserDefinedTypeName","pathNode":{"id":72799,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["571:37:107"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"571:37:107"},"referencedDeclaration":70264,"src":"571:37:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"570:53:107"},"returnParameters":{"id":72806,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72805,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"697:23:107","nodeType":"VariableDeclaration","scope":72882,"src":"689:31:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72804,"name":"address","nodeType":"ElementaryTypeName","src":"689:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"688:33:107"},"scope":72883,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":72790,"name":"RegistryFactoryV0_0","nameLocations":["465:19:107"],"nodeType":"IdentifierPath","referencedDeclaration":72778,"src":"465:19:107"},"id":72791,"nodeType":"InheritanceSpecifier","src":"465:19:107"}],"canonicalName":"RegistryFactoryV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72789,"nodeType":"StructuredDocumentation","src":"384:49:107","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72883,72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_1","nameLocation":"442:19:107","scope":72884,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":107} \ No newline at end of file +{"abi":[{"type":"function","name":"VERSION","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"pure"},{"type":"function","name":"collateralVaultTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"createRegistry","inputs":[{"name":"params","type":"tuple","internalType":"struct RegistryCommunityInitializeParamsV0_0","components":[{"name":"_allo","type":"address","internalType":"address"},{"name":"_gardenToken","type":"address","internalType":"contract IERC20"},{"name":"_registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"_communityFee","type":"uint256","internalType":"uint256"},{"name":"_nonce","type":"uint256","internalType":"uint256"},{"name":"_registryFactory","type":"address","internalType":"address"},{"name":"_feeReceiver","type":"address","internalType":"address"},{"name":"_metadata","type":"tuple","internalType":"struct Metadata","components":[{"name":"protocol","type":"uint256","internalType":"uint256"},{"name":"pointer","type":"string","internalType":"string"}]},{"name":"_councilSafe","type":"address","internalType":"address payable"},{"name":"_communityName","type":"string","internalType":"string"},{"name":"_isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"outputs":[{"name":"_createdRegistryAddress","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"gardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"getGardensFeeReceiver","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"initialize","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_gardensFeeReceiver","type":"address","internalType":"address"},{"name":"_registryCommunityTemplate","type":"address","internalType":"address"},{"name":"_strategyTemplate","type":"address","internalType":"address"},{"name":"_collateralVaultTemplate","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"initialOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initializeV2","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proxiableUUID","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"registryCommunityTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCollateralVaultTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setCommunityValidity","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_isValid","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setProtocolFee","inputs":[{"name":"_community","type":"address","internalType":"address"},{"name":"_newProtocolFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setReceiverAddress","inputs":[{"name":"_newFeeReceiver","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setRegistryCommunityTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setStrategyTemplate","inputs":[{"name":"template","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategyTemplate","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeTo","inputs":[{"name":"newImplementation","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeToAndCall","inputs":[{"name":"newImplementation","type":"address","internalType":"address"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"payable"},{"type":"event","name":"AdminChanged","inputs":[{"name":"previousAdmin","type":"address","indexed":false,"internalType":"address"},{"name":"newAdmin","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityCreated","inputs":[{"name":"_registryCommunity","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CommunityValiditySet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_isValid","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"FeeReceiverSet","inputs":[{"name":"_newFeeReceiver","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"previousOwner","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ProtocolFeeSet","inputs":[{"name":"_community","type":"address","indexed":false,"internalType":"address"},{"name":"_newProtocolFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"CommunityInvalid","inputs":[{"name":"_community","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516120e061004c600039600081816106ee01528181610731015281816107c201528181610805015261088a01526120e06000f3fe608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b6040516200017691906200136e565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013aa565b620004e7565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013ca565b6200054d565b005b348015620001e757600080fd5b50620001d8620001f9366004620013aa565b620006b8565b3480156200020c57600080fd5b50620001d86200021e366004620013aa565b620006e4565b620001d86200023536600462001504565b620007b8565b3480156200024857600080fd5b50620001a46200087d565b3480156200026057600080fd5b50620001d8620002723660046200157f565b6200092e565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d86200099f565b348015620002bf57600080fd5b50620001d8620002d1366004620013aa565b62000a23565b348015620002e457600080fd5b50620001d862000a4f565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013aa565b62000a67565b3480156200034357600080fd5b506200016762000ab8565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013aa565b62000b55565b348015620003b857600080fd5b50620001d8620003ca366004620015b9565b62000b81565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b50620001676200041136600462001680565b62000bdd565b3480156200042457600080fd5b50620001d862000436366004620013aa565b62000d1e565b3480156200044957600080fd5b50620001d86200045b366004620013aa565b62000d96565b3480156200046e57600080fd5b50620004a162000480366004620013aa565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200017691906200182f565b6001600160a01b03811660009081526066602052604081206001015460ff1662000531578160405163f5a6943d60e01b81526004016200052891906200136e565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056e5750600054600160ff909116105b80620005935750620005803062000e07565b15801562000593575060005460ff166001145b620005b25760405162461bcd60e51b8152600401620005289062001844565b6000805460ff191660011790558015620005d6576000805461ff0019166101001790555b620005e18662000d1e565b6000606555620005f18562000e16565b620005fc8462000e16565b620006078262000e16565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200208b83398151915290620006729087906200136e565b60405180910390a18015620006b0576000805461ff001916905560405160018152600080516020620020448339815191529060200160405180910390a15b505050505050565b620006c262000e3e565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200072f5760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076362000ea1565b6001600160a01b0316146200078c5760405162461bcd60e51b81526004016200052890620018cd565b620007978162000ebe565b60408051600080825260208201909252620007b59183919062000f10565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ea1565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052890620018cd565b6200086b8262000ebe565b620008798282600162000f10565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200091a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000528565b506000805160206200202483398151915290565b6200093862000e3e565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009c2575060005460ff8083169116105b620009e15760405162461bcd60e51b8152600401620005289062001844565b6000805461ffff191660ff83169081176101001761ff00191690915560405190815260008051602062002044833981519152906020015b60405180910390a150565b62000a2d62000e3e565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a5962000e3e565b62000a6560006200108d565b565b62000a7162000e3e565b62000a7c8162000e16565b606780546001600160a01b0319166001600160a01b0383161790556040516000805160206200208b8339815191529062000a189083906200136e565b60008062000ace6033546001600160a01b031690565b9050806001600160a01b03163b60000362000ae857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b45575060408051601f3d908101601f1916820190925262000b429181019062001908565b60015b62000b4f57919050565b92915050565b62000b5f62000e3e565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b8b62000e3e565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000993565b606580546000918262000bf08362001928565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3162000ab8565b60405160240162000c46949392919062001971565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c859062001353565b62000c9292919062001ab9565b604051809103906000f08015801562000caf573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d0f9083906200136e565b60405180910390a19392505050565b600054610100900460ff1662000d8b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000528565b620007b5816200108d565b62000da062000e3e565b6001600160a01b03811662000d8b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000528565b6001600160a01b03163b151590565b6001600160a01b038116620007b5576040516303988b8160e61b815260040160405180910390fd5b3362000e4962000ab8565b6001600160a01b03161462000a655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000528565b60008051602062002024833981519152546001600160a01b031690565b3362000ec962000ab8565b6001600160a01b031614620007b5573362000ee362000ab8565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000528565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f4b5762000f4683620010df565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fa8575060408051601f3d908101601f1916820190925262000fa59181019062001adf565b60015b6200100d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000528565b6000805160206200202483398151915281146200107f5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000528565b5062000f468383836200117e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010ea8162000e07565b6200114e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000528565b6000805160206200202483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200118983620011af565b600082511180620011975750805b1562000f4657620011a98383620011f1565b50505050565b620011ba81620010df565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620012198383604051806060016040528060278152602001620020646027913962001220565b9392505050565b6060600080856001600160a01b0316856040516200123f919062001af9565b600060405180830381855af49150503d80600081146200127c576040519150601f19603f3d011682016040523d82523d6000602084013e62001281565b606091505b509150915062001294868383876200129e565b9695505050505050565b60608315620013125782516000036200130a57620012bc8562000e07565b6200130a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000528565b50816200131e565b6200131e838362001326565b949350505050565b815115620013375781518083602001fd5b8060405162461bcd60e51b81526004016200052891906200182f565b6104ec8062001b1883390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007b557600080fd5b8035620013a58162001382565b919050565b600060208284031215620013bd57600080fd5b8135620012198162001382565b600080600080600060a08688031215620013e357600080fd5b8535620013f08162001382565b94506020860135620014028162001382565b93506040860135620014148162001382565b92506060860135620014268162001382565b91506080860135620014388162001382565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b038111828210171562001482576200148262001446565b60405290565b60006001600160401b0380841115620014a557620014a562001446565b604051601f8501601f19908116603f01168101908282118183101715620014d057620014d062001446565b81604052809350858152868686011115620014ea57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200151857600080fd5b8235620015258162001382565b915060208301356001600160401b038111156200154157600080fd5b8301601f810185136200155357600080fd5b620015648582356020840162001488565b9150509250929050565b80358015158114620013a557600080fd5b600080604083850312156200159357600080fd5b8235620015a08162001382565b9150620015b0602084016200156e565b90509250929050565b60008060408385031215620015cd57600080fd5b8235620015da8162001382565b946020939093013593505050565b600082601f830112620015fa57600080fd5b620012198383356020850162001488565b6000604082840312156200161e57600080fd5b604080519081016001600160401b03808211838310171562001644576200164462001446565b816040528293508435835260208501359150808211156200166457600080fd5b506200167385828601620015e8565b6020830152505092915050565b6000602082840312156200169357600080fd5b81356001600160401b0380821115620016ab57600080fd5b908301906101808286031215620016c157600080fd5b620016cb6200145c565b620016d68362001398565b8152620016e66020840162001398565b60208201526040830135604082015260608301356060820152608083013560808201526200171760a0840162001398565b60a08201526200172a60c0840162001398565b60c082015260e0830135828111156200174257600080fd5b62001750878286016200160b565b60e0830152506101006200176681850162001398565b9082015261012083810135838111156200177f57600080fd5b6200178d88828701620015e8565b828401525050610140620017a38185016200156e565b908201526101608381013583811115620017bc57600080fd5b620017ca88828701620015e8565b918301919091525095945050505050565b60005b83811015620017f8578181015183820152602001620017de565b50506000910152565b600081518084526200181b816020860160208601620017db565b601f01601f19169290920160200192915050565b60208152600062001219602083018462001801565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200191b57600080fd5b8151620012198162001382565b6000600182016200194957634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200131e604085018262001801565b608081526200198560808201865162001361565b600060208601516200199b60a084018262001361565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019d58186018462001361565b60c08901519250610140620019ed8187018562001361565b60e08a01519350610180610160818189015262001a0f61020089018762001950565b948c015194955062001a248883018662001361565b838c01519450607f19935083888703016101a089015262001a46868662001801565b9550828c0151945062001a5e6101c089018615159052565b808c0151945050505080858403016101e08601525062001a7f828262001801565b9250505062001a92602083018662001361565b62001aa1604083018562001361565b62001ab0606083018462001361565b95945050505050565b6001600160a01b03831681526040602082018190526000906200131e9083018462001801565b60006020828403121562001af257600080fd5b5051919050565b6000825162001b0d818460208701620017db565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220b6e8653e23fcddf27ad63c02f33c4deaddc25da8e4308dbc17ca9cbfb4a9a73a64736f6c63430008130033","sourceMap":"433:976:107:-:0;;;1088:4:64;1045:48;;433:976:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620001405760003560e01c806302c1d0b114620001455780630a992e0c146200017f5780631459457a14620001b35780631b71f0e414620001da5780633659cfe614620001ff5780634f1ef286146200022457806352d1902d146200023b5780635a2c8ace14620002535780635c94e4d214620002785780635cd8a76b146200029a5780635decae0214620002b2578063715018a614620002d757806377122d5614620002ef5780638279c7db14620003115780638da5cb5b1462000336578063987435be146200034e578063affed0e0146200036e578063b0d3713a1462000386578063b5b3ca2c14620003ab578063b8bed90114620003d0578063beb331a314620003f2578063c4d66de81462000417578063f2fde38b146200043c578063f5016b5e1462000461578063ffa1ad7414620004b2575b600080fd5b3480156200015257600080fd5b5060685462000167906001600160a01b031681565b6040516200017691906200136e565b60405180910390f35b3480156200018c57600080fd5b50620001a46200019e366004620013aa565b620004e7565b60405190815260200162000176565b348015620001c057600080fd5b50620001d8620001d2366004620013ca565b6200054d565b005b348015620001e757600080fd5b50620001d8620001f9366004620013aa565b620006b8565b3480156200020c57600080fd5b50620001d86200021e366004620013aa565b620006e4565b620001d86200023536600462001504565b620007b8565b3480156200024857600080fd5b50620001a46200087d565b3480156200026057600080fd5b50620001d8620002723660046200157f565b6200092e565b3480156200028557600080fd5b5060695462000167906001600160a01b031681565b348015620002a757600080fd5b50620001d86200099f565b348015620002bf57600080fd5b50620001d8620002d1366004620013aa565b62000a23565b348015620002e457600080fd5b50620001d862000a4f565b348015620002fc57600080fd5b50606a5462000167906001600160a01b031681565b3480156200031e57600080fd5b50620001d862000330366004620013aa565b62000a67565b3480156200034357600080fd5b506200016762000ab8565b3480156200035b57600080fd5b506067546001600160a01b031662000167565b3480156200037b57600080fd5b50620001a460655481565b3480156200039357600080fd5b50620001d8620003a5366004620013aa565b62000b55565b348015620003b857600080fd5b50620001d8620003ca366004620015b9565b62000b81565b348015620003dd57600080fd5b5060675462000167906001600160a01b031681565b348015620003ff57600080fd5b50620001676200041136600462001680565b62000bdd565b3480156200042457600080fd5b50620001d862000436366004620013aa565b62000d1e565b3480156200044957600080fd5b50620001d86200045b366004620013aa565b62000d96565b3480156200046e57600080fd5b50620004a162000480366004620013aa565b6001600160a01b031660009081526066602052604090206001015460ff1690565b604051901515815260200162000176565b348015620004bf57600080fd5b5060408051808201825260038152620302e360ec1b602082015290516200017691906200182f565b6001600160a01b03811660009081526066602052604081206001015460ff1662000531578160405163f5a6943d60e01b81526004016200052891906200136e565b60405180910390fd5b506001600160a01b031660009081526066602052604090205490565b600054610100900460ff16158080156200056e5750600054600160ff909116105b80620005935750620005803062000e07565b15801562000593575060005460ff166001145b620005b25760405162461bcd60e51b8152600401620005289062001844565b6000805460ff191660011790558015620005d6576000805461ff0019166101001790555b620005e18662000d1e565b6000606555620005f18562000e16565b620005fc8462000e16565b620006078262000e16565b606780546001600160a01b038088166001600160a01b0319928316179092556068805487841690831617905560698054868416908316179055606a8054928516929091169190911790556040516000805160206200208b83398151915290620006729087906200136e565b60405180910390a18015620006b0576000805461ff001916905560405160018152600080516020620020448339815191529060200160405180910390a15b505050505050565b620006c262000e3e565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036200072f5760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200076362000ea1565b6001600160a01b0316146200078c5760405162461bcd60e51b81526004016200052890620018cd565b620007978162000ebe565b60408051600080825260208201909252620007b59183919062000f10565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003620008035760405162461bcd60e51b8152600401620005289062001892565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166200083762000ea1565b6001600160a01b031614620008605760405162461bcd60e51b81526004016200052890620018cd565b6200086b8262000ebe565b620008798282600162000f10565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146200091a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b606482015260840162000528565b506000805160206200202483398151915290565b6200093862000e3e565b6001600160a01b038216600081815260666020908152604091829020600101805460ff19168515159081179091558251938452908301527fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f6291015b60405180910390a15050565b600054600290610100900460ff16158015620009c2575060005460ff8083169116105b620009e15760405162461bcd60e51b8152600401620005289062001844565b6000805461ffff191660ff83169081176101001761ff00191690915560405190815260008051602062002044833981519152906020015b60405180910390a150565b62000a2d62000e3e565b606880546001600160a01b0319166001600160a01b0392909216919091179055565b62000a5962000e3e565b62000a6560006200108d565b565b62000a7162000e3e565b62000a7c8162000e16565b606780546001600160a01b0319166001600160a01b0383161790556040516000805160206200208b8339815191529062000a189083906200136e565b60008062000ace6033546001600160a01b031690565b9050806001600160a01b03163b60000362000ae857919050565b806001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000b45575060408051601f3d908101601f1916820190925262000b429181019062001908565b60015b62000b4f57919050565b92915050565b62000b5f62000e3e565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b62000b8b62000e3e565b6001600160a01b038216600081815260666020908152604091829020849055815192835282018390527fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c910162000993565b606580546000918262000bf08362001928565b9091555060808301523060a0830152606854606954606a546000926001600160a01b0390811692633419635560e01b928792918216911662000c3162000ab8565b60405160240162000c46949392919062001971565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162000c859062001353565b62000c9292919062001ab9565b604051809103906000f08015801562000caf573d6000803e3d6000fd5b506001600160a01b038116600090815260666020526040908190206001908101805460ff191690911790555190915081907fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc299062000d0f9083906200136e565b60405180910390a19392505050565b600054610100900460ff1662000d8b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b606482015260840162000528565b620007b5816200108d565b62000da062000e3e565b6001600160a01b03811662000d8b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840162000528565b6001600160a01b03163b151590565b6001600160a01b038116620007b5576040516303988b8160e61b815260040160405180910390fd5b3362000e4962000ab8565b6001600160a01b03161462000a655760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640162000528565b60008051602062002024833981519152546001600160a01b031690565b3362000ec962000ab8565b6001600160a01b031614620007b5573362000ee362000ab8565b60405163163678e960e01b81526001600160a01b0392831660048201529116602482015260440162000528565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562000f4b5762000f4683620010df565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562000fa8575060408051601f3d908101601f1916820190925262000fa59181019062001adf565b60015b6200100d5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b606482015260840162000528565b6000805160206200202483398151915281146200107f5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840162000528565b5062000f468383836200117e565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620010ea8162000e07565b6200114e5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840162000528565b6000805160206200202483398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6200118983620011af565b600082511180620011975750805b1562000f4657620011a98383620011f1565b50505050565b620011ba81620010df565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060620012198383604051806060016040528060278152602001620020646027913962001220565b9392505050565b6060600080856001600160a01b0316856040516200123f919062001af9565b600060405180830381855af49150503d80600081146200127c576040519150601f19603f3d011682016040523d82523d6000602084013e62001281565b606091505b509150915062001294868383876200129e565b9695505050505050565b60608315620013125782516000036200130a57620012bc8562000e07565b6200130a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640162000528565b50816200131e565b6200131e838362001326565b949350505050565b815115620013375781518083602001fd5b8060405162461bcd60e51b81526004016200052891906200182f565b6104ec8062001b1883390190565b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b6001600160a01b0381168114620007b557600080fd5b8035620013a58162001382565b919050565b600060208284031215620013bd57600080fd5b8135620012198162001382565b600080600080600060a08688031215620013e357600080fd5b8535620013f08162001382565b94506020860135620014028162001382565b93506040860135620014148162001382565b92506060860135620014268162001382565b91506080860135620014388162001382565b809150509295509295909350565b634e487b7160e01b600052604160045260246000fd5b60405161018081016001600160401b038111828210171562001482576200148262001446565b60405290565b60006001600160401b0380841115620014a557620014a562001446565b604051601f8501601f19908116603f01168101908282118183101715620014d057620014d062001446565b81604052809350858152868686011115620014ea57600080fd5b858560208301376000602087830101525050509392505050565b600080604083850312156200151857600080fd5b8235620015258162001382565b915060208301356001600160401b038111156200154157600080fd5b8301601f810185136200155357600080fd5b620015648582356020840162001488565b9150509250929050565b80358015158114620013a557600080fd5b600080604083850312156200159357600080fd5b8235620015a08162001382565b9150620015b0602084016200156e565b90509250929050565b60008060408385031215620015cd57600080fd5b8235620015da8162001382565b946020939093013593505050565b600082601f830112620015fa57600080fd5b620012198383356020850162001488565b6000604082840312156200161e57600080fd5b604080519081016001600160401b03808211838310171562001644576200164462001446565b816040528293508435835260208501359150808211156200166457600080fd5b506200167385828601620015e8565b6020830152505092915050565b6000602082840312156200169357600080fd5b81356001600160401b0380821115620016ab57600080fd5b908301906101808286031215620016c157600080fd5b620016cb6200145c565b620016d68362001398565b8152620016e66020840162001398565b60208201526040830135604082015260608301356060820152608083013560808201526200171760a0840162001398565b60a08201526200172a60c0840162001398565b60c082015260e0830135828111156200174257600080fd5b62001750878286016200160b565b60e0830152506101006200176681850162001398565b9082015261012083810135838111156200177f57600080fd5b6200178d88828701620015e8565b828401525050610140620017a38185016200156e565b908201526101608381013583811115620017bc57600080fd5b620017ca88828701620015e8565b918301919091525095945050505050565b60005b83811015620017f8578181015183820152602001620017de565b50506000910152565b600081518084526200181b816020860160208601620017db565b601f01601f19169290920160200192915050565b60208152600062001219602083018462001801565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200200483398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6000602082840312156200191b57600080fd5b8151620012198162001382565b6000600182016200194957634e487b7160e01b600052601160045260246000fd5b5060010190565b8051825260006020820151604060208501526200131e604085018262001801565b608081526200198560808201865162001361565b600060208601516200199b60a084018262001361565b50604086015160c0830152606086015160e08301526080860151610100818185015260a08801519150610120620019d58186018462001361565b60c08901519250610140620019ed8187018562001361565b60e08a01519350610180610160818189015262001a0f61020089018762001950565b948c015194955062001a248883018662001361565b838c01519450607f19935083888703016101a089015262001a46868662001801565b9550828c0151945062001a5e6101c089018615159052565b808c0151945050505080858403016101e08601525062001a7f828262001801565b9250505062001a92602083018662001361565b62001aa1604083018562001361565b62001ab0606083018462001361565b95945050505050565b6001600160a01b03831681526040602082018190526000906200131e9083018462001801565b60006020828403121562001af257600080fd5b5051919050565b6000825162001b0d818460208701620017db565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212204fe6c3c3dccfaea0fd10fdd343631403db3c1555c6576ad816deaaa45c9f926764736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656446756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9da2646970667358221220b6e8653e23fcddf27ad63c02f33c4deaddc25da8e4308dbc17ca9cbfb4a9a73a64736f6c63430008130033","sourceMap":"433:976:107:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;757:40:106;;;;;;;;;;-1:-1:-1;757:40:106;;;;-1:-1:-1;;;;;757:40:106;;;;;;;;;;:::i;:::-;;;;;;;;4804:249;;;;;;;;;;-1:-1:-1;4804:249:106;;;;;:::i;:::-;;:::i;:::-;;;1004:25:136;;;992:2;977:18;4804:249:106;858:177:136;2262:780:106;;;;;;;;;;-1:-1:-1;2262:780:106;;;;;:::i;:::-;;:::i;:::-;;2000:118;;;;;;;;;;-1:-1:-1;2000:118:106;;;;;:::i;:::-;;:::i;3143:195:64:-;;;;;;;;;;-1:-1:-1;3143:195:64;;;;;:::i;:::-;;:::i;3657:220::-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;4440:208:106:-;;;;;;;;;;-1:-1:-1;4440:208:106;;;;;:::i;:::-;;:::i;803:31::-;;;;;;;;;;-1:-1:-1;803:31:106;;;;-1:-1:-1;;;;;803:31:106;;;491:50:107;;;;;;;;;;;;;:::i;1858:136:106:-;;;;;;;;;;-1:-1:-1;1858:136:106;;;;;:::i;:::-;;:::i;2085:101:45:-;;;;;;;;;;;;;:::i;840:38:106:-;;;;;;;;;;-1:-1:-1;840:38:106;;;;-1:-1:-1;;;;;840:38:106;;;3867:222;;;;;;;;;;-1:-1:-1;3867:222:106;;;;;:::i;:::-;;:::i;525:604:103:-;;;;;;;;;;;;;:::i;4095:115:106:-;;;;;;;;;;-1:-1:-1;4185:18:106;;-1:-1:-1;;;;;4185:18:106;4095:115;;636:20;;;;;;;;;;;;;;;;2124:132;;;;;;;;;;-1:-1:-1;2124:132:106;;;;;:::i;:::-;;:::i;4216:218::-;;;;;;;;;;-1:-1:-1;4216:218:106;;;;;:::i;:::-;;:::i;718:33::-;;;;;;;;;;-1:-1:-1;718:33:106;;;;-1:-1:-1;;;;;718:33:106;;;547:860:107;;;;;;;;;;-1:-1:-1;547:860:107;;;;;:::i;:::-;;:::i;404:115:103:-;;;;;;;;;;-1:-1:-1;404:115:103;;;;;:::i;:::-;;:::i;2335:198:45:-;;;;;;;;;;-1:-1:-1;2335:198:45;;;;;:::i;:::-;;:::i;4654:144:106:-;;;;;;;;;;-1:-1:-1;4654:144:106;;;;;:::i;:::-;-1:-1:-1;;;;;4758:27:106;4735:4;4758:27;;;:15;:27;;;;;:33;;;;;;4654:144;;;;7207:14:136;;7200:22;7182:41;;7170:2;7155:18;4654:144:106;7042:187:136;5060:92:106;;;;;;;;;;-1:-1:-1;5133:12:106;;;;;;;;;;;-1:-1:-1;;;5133:12:106;;;;5060:92;;;;5133:12;5060:92;:::i;4804:249::-;-1:-1:-1;;;;;4903:27:106;;4879:7;4903:27;;;:15;:27;;;;;:33;;;;;4898:100;;4976:10;4959:28;;-1:-1:-1;;;4959:28:106;;;;;;;;:::i;:::-;;;;;;;;4898:100;-1:-1:-1;;;;;;5015:27:106;;;;;:15;:27;;;;;:31;;4804:249::o;2262:780::-;3279:19:47;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:47;;3380:1;3365:12;;;;:16;3347:34;3346:108;;;;3388:44;3426:4;3388:29;:44::i;:::-;3387:45;:66;;;;-1:-1:-1;3436:12:47;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:47;;;;;;;:::i;:::-;3536:12;:16;;-1:-1:-1;;3536:16:47;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:47;;;;;3562:65;2499:24:106::1;2516:6;2499:16;:24::i;:::-;2541:1;2533:5;:9:::0;2552:39:::1;2571:19:::0;2552:18:::1;:39::i;:::-;2601:46;2620:26;2601:18;:46::i;:::-;2657:44;2676:24;2657:18;:44::i;:::-;2711:18;:40:::0;;-1:-1:-1;;;;;2711:40:106;;::::1;-1:-1:-1::0;;;;;;2711:40:106;;::::1;;::::0;;;2761:25:::1;:54:::0;;;;::::1;::::0;;::::1;;::::0;;2825:16:::1;:36:::0;;;;::::1;::::0;;::::1;;::::0;;2871:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;2936:35:::1;::::0;-1:-1:-1;;;;;;;;;;;2936:35:106;::::1;::::0;2732:19;;2936:35:::1;:::i;:::-;;;;;;;;3651:14:47::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:47;;;3721:14;;-1:-1:-1;8557:36:136;;-1:-1:-1;;;;;;;;;;;3721:14:47;8545:2:136;8530:18;3721:14:47;;;;;;;3647:99;3269:483;2262:780:106;;;;;:::o;2000:118::-;1355:13:45;:11;:13::i;:::-;2084:16:106::1;:27:::0;;-1:-1:-1;;;;;;2084:27:106::1;-1:-1:-1::0;;;;;2084:27:106;;;::::1;::::0;;;::::1;::::0;;2000:118::o;3143:195:64:-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3224:36:::1;3242:17;3224;:36::i;:::-;3311:12;::::0;;3321:1:::1;3311:12:::0;;;::::1;::::0;::::1;::::0;;;3270:61:::1;::::0;3292:17;;3311:12;3270:21:::1;:61::i;:::-;3143:195:::0;:::o;3657:220::-;-1:-1:-1;;;;;1654:6:64;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:64;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:64;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:64;;1719:87;;;;-1:-1:-1;;;1719:87:64;;;;;;;:::i;:::-;3772:36:::1;3790:17;3772;:36::i;:::-;3818:52;3840:17;3859:4;3865;3818:21;:52::i;:::-;3657:220:::0;;:::o;2762:131::-;2840:7;2080:4;-1:-1:-1;;;;;2089:6:64;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:64;;9632:2:136;2064:92:64;;;9614:21:136;9671:2;9651:18;;;9644:30;9710:34;9690:18;;;9683:62;-1:-1:-1;;;9761:18:136;;;9754:54;9825:19;;2064:92:64;9430:420:136;2064:92:64;-1:-1:-1;;;;;;;;;;;;2762:131:64;:::o;4440:208:106:-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4540:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:33:::1;;:44:::0;;-1:-1:-1;;4540:44:106::1;::::0;::::1;;::::0;;::::1;::::0;;;4599:42;;10023:51:136;;;10090:18;;;10083:50;4599:42:106::1;::::0;9996:18:136;4599:42:106::1;;;;;;;;4440:208:::0;;:::o;491:50:107:-;4882:13:47;;536:1:107;;4882:13:47;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:47;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:47;;;;;;;:::i;:::-;4982:12;:22;;-1:-1:-1;;5014:20:47;4982:22;;;5014:20;;;4982:22;5014:20;-1:-1:-1;;5055:21:47;;;;5091:20;;8557:36:136;;;-1:-1:-1;;;;;;;;;;;5091:20:47;8545:2:136;8530:18;5091:20:47;;;;;;;;491:50:107;:::o;1858:136:106:-;1355:13:45;:11;:13::i;:::-;1951:25:106::1;:36:::0;;-1:-1:-1;;;;;;1951:36:106::1;-1:-1:-1::0;;;;;1951:36:106;;;::::1;::::0;;;::::1;::::0;;1858:136::o;2085:101:45:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;3867:222:106:-;1355:13:45;:11;:13::i;:::-;3955:35:106::1;3974:15;3955:18;:35::i;:::-;4000:18;:36:::0;;-1:-1:-1;;;;;;4000:36:106::1;-1:-1:-1::0;;;;;4000:36:106;::::1;;::::0;;4051:31:::1;::::0;-1:-1:-1;;;;;;;;;;;4051:31:106;::::1;::::0;4000:36;;4051:31:::1;:::i;525:604:103:-:0;572:7;591:20;614:26;1534:6:45;;-1:-1:-1;;;;;1534:6:45;;1462:85;614:26:103;591:49;;715:12;-1:-1:-1;;;;;707:33:103;;744:1;707:38;703:420;;829:12;525:604;-1:-1:-1;525:604:103:o;703:420::-;895:12;-1:-1:-1;;;;;876:38:103;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;876:40:103;;;;;;;;-1:-1:-1;;876:40:103;;;;;;;;;;;;:::i;:::-;;;872:241;;1086:12;525:604;-1:-1:-1;525:604:103:o;872:241::-;967:6;525:604;-1:-1:-1;;525:604:103:o;2124:132:106:-;1355:13:45;:11;:13::i;:::-;2215:23:106::1;:34:::0;;-1:-1:-1;;;;;;2215:34:106::1;-1:-1:-1::0;;;;;2215:34:106;;;::::1;::::0;;;::::1;::::0;;2124:132::o;4216:218::-;1355:13:45;:11;:13::i;:::-;-1:-1:-1;;;;;4320:27:106;::::1;;::::0;;;:15:::1;:27;::::0;;;;;;;;:49;;;4384:43;;10763:51:136;;;10830:18;;10823:34;;;4384:43:106::1;::::0;10736:18:136;4384:43:106::1;10589:274:136::0;547:860:107;752:5;:7;;689:31;;;752:7;;;:::i;:::-;;;;-1:-1:-1;736:13:107;;;:23;803:4;769:23;;;:39;878:25;;1009:16;;1027:23;;-1:-1:-1;;;;;;;878:25:107;;;;-1:-1:-1;;;958:41:107;736:6;;1009:16;;;;1027:23;1052:7;:5;:7::i;:::-;918:155;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;918:155:107;;;;;;;;;;;;;;-1:-1:-1;;;;;918:155:107;-1:-1:-1;;;;;;918:155:107;;;;;;;;;;840:243;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1242:43:107;;1094:39;1242:43;;;:15;:43;;;;;;;1294:4;1242:49;;;:56;;-1:-1:-1;;1242:56:107;;;;;;1313:44;819:264;;-1:-1:-1;819:264:107;;1313:44;;;;819:264;;1313:44;:::i;:::-;;;;;;;;1382:17;547:860;-1:-1:-1;;;547:860:107:o;404:115:103:-;5374:13:47;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:47;;13927:2:136;5366:69:47;;;13909:21:136;13966:2;13946:18;;;13939:30;14005:34;13985:18;;;13978:62;-1:-1:-1;;;14056:18:136;;;14049:41;14107:19;;5366:69:47;13725:407:136;5366:69:47;480:32:103::1;499:12;480:18;:32::i;2335:198:45:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:45;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:45;;14339:2:136;2415:73:45::1;::::0;::::1;14321:21:136::0;14378:2;14358:18;;;14351:30;14417:34;14397:18;;;14390:62;-1:-1:-1;;;14468:18:136;;;14461:36;14514:19;;2415:73:45::1;14137:402:136::0;1423:320:50;-1:-1:-1;;;;;1713:19:50;;:23;;;1423:320::o;1711:141:106:-;-1:-1:-1;;;;;1793:22:106;;1789:56;;1824:21;;-1:-1:-1;;;1824:21:106;;;;;;;;;;;1620:130:45;965:10:51;1683:7:45;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:45;;1675:68;;;;-1:-1:-1;;;1675:68:45;;14746:2:136;1675:68:45;;;14728:21:136;;;14765:18;;;14758:30;14824:34;14804:18;;;14797:62;14876:18;;1675:68:45;14544:356:136;1175:140:60;-1:-1:-1;;;;;;;;;;;1254:54:60;-1:-1:-1;;;;;1254:54:60;;1175:140::o;1135:169:103:-;1219:10;1208:7;:5;:7::i;:::-;-1:-1:-1;;;;;1208:21:103;;1204:94;;1267:10;1279:7;:5;:7::i;:::-;1252:35;;-1:-1:-1;;;1252:35:103;;-1:-1:-1;;;;;15135:15:136;;;1252:35:103;;;15117:34:136;15187:15;;15167:18;;;15160:43;15052:18;;1252:35:103;14905:304:136;2494:922:60;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;:::-;2494:922;;;:::o;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:60;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:60;;;;;;;;-1:-1:-1;;3046:52:60;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:60;;15605:2:136;3262:56:60;;;15587:21:136;15644:2;15624:18;;;15617:30;15683:34;15663:18;;;15656:62;-1:-1:-1;;;15734:18:136;;;15727:44;15788:19;;3262:56:60;15403:410:136;3042:291:60;-1:-1:-1;;;;;;;;;;;3148:28:60;;3140:82;;;;-1:-1:-1;;;3140:82:60;;16020:2:136;3140:82:60;;;16002:21:136;16059:2;16039:18;;;16032:30;16098:34;16078:18;;;16071:62;-1:-1:-1;;;16149:18:136;;;16142:39;16198:19;;3140:82:60;15818:405:136;3140:82:60;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;2687:187:45:-;2779:6;;;-1:-1:-1;;;;;2795:17:45;;;-1:-1:-1;;;;;;2795:17:45;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:60:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:60;;16430:2:136;1479:95:60;;;16412:21:136;16469:2;16449:18;;;16442:30;16508:34;16488:18;;;16481:62;-1:-1:-1;;;16559:18:136;;;16552:43;16612:19;;1479:95:60;16228:409:136;1479:95:60;-1:-1:-1;;;;;;;;;;;1584:74:60;;-1:-1:-1;;;;;;1584:74:60;-1:-1:-1;;;;;1584:74:60;;;;;;;;;;1406:259::o;2057:265::-;2165:29;2176:17;2165:10;:29::i;:::-;2222:1;2208:4;:11;:15;:28;;;;2227:9;2208:28;2204:112;;;2252:53;2281:17;2300:4;2252:28;:53::i;:::-;;2057:265;;;:::o;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:60;;;;;;;;1771:152;:::o;6674:198:76:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:76:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:76;7285:4;7265:25;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7223:67;;;;7307:69;7334:6;7342:7;7351:10;7363:12;7307:26;:69::i;:::-;7300:76;7058:325;-1:-1:-1;;;;;;7058:325:76:o;7671:628::-;7851:12;7879:7;7875:418;;;7906:10;:17;7927:1;7906:22;7902:286;;8121:18;8132:6;8121:10;:18::i;:::-;8113:60;;;;-1:-1:-1;;;8113:60:76;;17136:2:136;8113:60:76;;;17118:21:136;17175:2;17155:18;;;17148:30;17214:31;17194:18;;;17187:59;17263:18;;8113:60:76;16934:353:136;8113:60:76;-1:-1:-1;8208:10:76;8201:17;;7875:418;8249:33;8257:10;8269:12;8249:7;:33::i;:::-;7671:628;;;;;;:::o;8821:540::-;8980:17;;:21;8976:379;;9208:10;9202:17;9264:15;9251:10;9247:2;9243:19;9236:44;8976:379;9331:12;9324:20;;-1:-1:-1;;;9324:20:76;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;:::o;14:104:136:-;-1:-1:-1;;;;;80:31:136;68:44;;14:104::o;123:203::-;-1:-1:-1;;;;;287:32:136;;;;269:51;;257:2;242:18;;123:203::o;331:131::-;-1:-1:-1;;;;;406:31:136;;396:42;;386:70;;452:1;449;442:12;467:134;535:20;;564:31;535:20;564:31;:::i;:::-;467:134;;;:::o;606:247::-;665:6;718:2;706:9;697:7;693:23;689:32;686:52;;;734:1;731;724:12;686:52;773:9;760:23;792:31;817:5;792:31;:::i;1040:813::-;1135:6;1143;1151;1159;1167;1220:3;1208:9;1199:7;1195:23;1191:33;1188:53;;;1237:1;1234;1227:12;1188:53;1276:9;1263:23;1295:31;1320:5;1295:31;:::i;:::-;1345:5;-1:-1:-1;1402:2:136;1387:18;;1374:32;1415:33;1374:32;1415:33;:::i;:::-;1467:7;-1:-1:-1;1526:2:136;1511:18;;1498:32;1539:33;1498:32;1539:33;:::i;:::-;1591:7;-1:-1:-1;1650:2:136;1635:18;;1622:32;1663:33;1622:32;1663:33;:::i;:::-;1715:7;-1:-1:-1;1774:3:136;1759:19;;1746:33;1788;1746;1788;:::i;:::-;1840:7;1830:17;;;1040:813;;;;;;;;:::o;1858:127::-;1919:10;1914:3;1910:20;1907:1;1900:31;1950:4;1947:1;1940:15;1974:4;1971:1;1964:15;1990:250;2057:2;2051:9;2099:6;2087:19;;-1:-1:-1;;;;;2121:34:136;;2157:22;;;2118:62;2115:88;;;2183:18;;:::i;:::-;2219:2;2212:22;1990:250;:::o;2245:631::-;2309:5;-1:-1:-1;;;;;2369:14:136;;;2366:40;;;2386:18;;:::i;:::-;2461:2;2455:9;2429:2;2515:15;;-1:-1:-1;;2511:24:136;;;2537:2;2507:33;2503:42;2491:55;;;2561:18;;;2581:22;;;2558:46;2555:72;;;2607:18;;:::i;:::-;2647:10;2643:2;2636:22;2676:6;2667:15;;2706:6;2698;2691:22;2746:3;2737:6;2732:3;2728:16;2725:25;2722:45;;;2763:1;2760;2753:12;2722:45;2813:6;2808:3;2801:4;2793:6;2789:17;2776:44;2868:1;2861:4;2852:6;2844;2840:19;2836:30;2829:41;;;;2245:631;;;;;:::o;2881:584::-;2958:6;2966;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;3074:9;3061:23;3093:31;3118:5;3093:31;:::i;:::-;3143:5;-1:-1:-1;3199:2:136;3184:18;;3171:32;-1:-1:-1;;;;;3215:30:136;;3212:50;;;3258:1;3255;3248:12;3212:50;3281:22;;3334:4;3326:13;;3322:27;-1:-1:-1;3312:55:136;;3363:1;3360;3353:12;3312:55;3386:73;3451:7;3446:2;3433:16;3428:2;3424;3420:11;3386:73;:::i;:::-;3376:83;;;2881:584;;;;;:::o;3652:160::-;3717:20;;3773:13;;3766:21;3756:32;;3746:60;;3802:1;3799;3792:12;3817:315;3882:6;3890;3943:2;3931:9;3922:7;3918:23;3914:32;3911:52;;;3959:1;3956;3949:12;3911:52;3998:9;3985:23;4017:31;4042:5;4017:31;:::i;:::-;4067:5;-1:-1:-1;4091:35:136;4122:2;4107:18;;4091:35;:::i;:::-;4081:45;;3817:315;;;;;:::o;4137:::-;4205:6;4213;4266:2;4254:9;4245:7;4241:23;4237:32;4234:52;;;4282:1;4279;4272:12;4234:52;4321:9;4308:23;4340:31;4365:5;4340:31;:::i;:::-;4390:5;4442:2;4427:18;;;;4414:32;;-1:-1:-1;;;4137:315:136:o;4457:221::-;4500:5;4553:3;4546:4;4538:6;4534:17;4530:27;4520:55;;4571:1;4568;4561:12;4520:55;4593:79;4668:3;4659:6;4646:20;4639:4;4631:6;4627:17;4593:79;:::i;4683:610::-;4738:5;4786:4;4774:9;4769:3;4765:19;4761:30;4758:50;;;4804:1;4801;4794:12;4758:50;4837:4;4831:11;;;4869:17;;-1:-1:-1;;;;;4938:18:136;;;4958:22;;;4935:46;4932:72;;;4984:18;;:::i;:::-;5026:10;5020:4;5013:24;5055:6;5046:15;;5098:9;5085:23;5077:6;5070:39;5160:2;5149:9;5145:18;5132:32;5118:46;;5187:2;5179:6;5176:14;5173:34;;;5203:1;5200;5193:12;5173:34;;5240:46;5282:3;5273:6;5262:9;5258:22;5240:46;:::i;:::-;5235:2;5227:6;5223:15;5216:71;;;4683:610;;;;:::o;5298:1643::-;5413:6;5466:2;5454:9;5445:7;5441:23;5437:32;5434:52;;;5482:1;5479;5472:12;5434:52;5509:23;;-1:-1:-1;;;;;5581:14:136;;;5578:34;;;5608:1;5605;5598:12;5578:34;5631:22;;;;5687:6;5669:16;;;5665:29;5662:49;;;5707:1;5704;5697:12;5662:49;5733:17;;:::i;:::-;5773:22;5792:2;5773:22;:::i;:::-;5766:5;5759:37;5828:31;5855:2;5851;5847:11;5828:31;:::i;:::-;5823:2;5816:5;5812:14;5805:55;5913:2;5909;5905:11;5892:25;5887:2;5880:5;5876:14;5869:49;5971:2;5967;5963:11;5950:25;5945:2;5938:5;5934:14;5927:49;6030:3;6026:2;6022:12;6009:26;6003:3;5996:5;5992:15;5985:51;6069:32;6096:3;6092:2;6088:12;6069:32;:::i;:::-;6063:3;6056:5;6052:15;6045:57;6135:32;6162:3;6158:2;6154:12;6135:32;:::i;:::-;6129:3;6122:5;6118:15;6111:57;6214:3;6210:2;6206:12;6193:26;6244:2;6234:8;6231:16;6228:36;;;6260:1;6257;6250:12;6228:36;6297:54;6343:7;6332:8;6328:2;6324:17;6297:54;:::i;:::-;6291:3;6284:5;6280:15;6273:79;;6371:3;6406:31;6433:2;6429;6425:11;6406:31;:::i;:::-;6390:14;;;6383:55;6457:3;6498:11;;;6485:25;6522:16;;;6519:36;;;6551:1;6548;6541:12;6519:36;6587:45;6624:7;6613:8;6609:2;6605:17;6587:45;:::i;:::-;6582:2;6575:5;6571:14;6564:69;;;6652:3;6687:28;6711:2;6707;6703:11;6687:28;:::i;:::-;6671:14;;;6664:52;6735:3;6776:11;;;6763:25;6800:16;;;6797:36;;;6829:1;6826;6819:12;6797:36;6865:45;6902:7;6891:8;6887:2;6883:17;6865:45;:::i;:::-;6849:14;;;6842:69;;;;-1:-1:-1;6853:5:136;5298:1643;-1:-1:-1;;;;;5298:1643:136:o;7234:250::-;7319:1;7329:113;7343:6;7340:1;7337:13;7329:113;;;7419:11;;;7413:18;7400:11;;;7393:39;7365:2;7358:10;7329:113;;;-1:-1:-1;;7476:1:136;7458:16;;7451:27;7234:250::o;7489:271::-;7531:3;7569:5;7563:12;7596:6;7591:3;7584:19;7612:76;7681:6;7674:4;7669:3;7665:14;7658:4;7651:5;7647:16;7612:76;:::i;:::-;7742:2;7721:15;-1:-1:-1;;7717:29:136;7708:39;;;;7749:4;7704:50;;7489:271;-1:-1:-1;;7489:271:136:o;7765:220::-;7914:2;7903:9;7896:21;7877:4;7934:45;7975:2;7964:9;7960:18;7952:6;7934:45;:::i;7990:410::-;8192:2;8174:21;;;8231:2;8211:18;;;8204:30;8270:34;8265:2;8250:18;;8243:62;-1:-1:-1;;;8336:2:136;8321:18;;8314:44;8390:3;8375:19;;7990:410::o;8604:408::-;8806:2;8788:21;;;8845:2;8825:18;;;8818:30;-1:-1:-1;;;;;;;;;;;8879:2:136;8864:18;;8857:62;-1:-1:-1;;;8950:2:136;8935:18;;8928:42;9002:3;8987:19;;8604:408::o;9017:::-;9219:2;9201:21;;;9258:2;9238:18;;;9231:30;-1:-1:-1;;;;;;;;;;;9292:2:136;9277:18;;9270:62;-1:-1:-1;;;9363:2:136;9348:18;;9341:42;9415:3;9400:19;;9017:408::o;10333:251::-;10403:6;10456:2;10444:9;10435:7;10431:23;10427:32;10424:52;;;10472:1;10469;10462:12;10424:52;10504:9;10498:16;10523:31;10548:5;10523:31;:::i;10868:232::-;10907:3;10928:17;;;10925:140;;10987:10;10982:3;10978:20;10975:1;10968:31;11022:4;11019:1;11012:15;11050:4;11047:1;11040:15;10925:140;-1:-1:-1;11092:1:136;11081:13;;10868:232::o;11105:252::-;11192:5;11186:12;11181:3;11174:25;11156:3;11245:4;11238:5;11234:16;11228:23;11283:4;11276;11271:3;11267:14;11260:28;11304:47;11345:4;11340:3;11336:14;11322:12;11304:47;:::i;11362:2038::-;11687:3;11676:9;11669:22;11700:54;11749:3;11738:9;11734:19;11725:6;11719:13;11700:54;:::i;:::-;11650:4;11801;11793:6;11789:17;11783:24;11816:53;11864:3;11853:9;11849:19;11835:12;11816:53;:::i;:::-;;11924:4;11916:6;11912:17;11906:24;11900:3;11889:9;11885:19;11878:53;11986:4;11978:6;11974:17;11968:24;11962:3;11951:9;11947:19;11940:53;12030:3;12022:6;12018:16;12012:23;12054:3;12093:2;12088;12077:9;12073:18;12066:30;12145:3;12137:6;12133:16;12127:23;12105:45;;12169:3;12181:54;12231:2;12220:9;12216:18;12200:14;12181:54;:::i;:::-;12284:3;12276:6;12272:16;12266:23;12244:45;;12308:3;12320:54;12370:2;12359:9;12355:18;12339:14;12320:54;:::i;:::-;12423:3;12415:6;12411:16;12405:23;12383:45;;12447:6;12472:3;12511:2;12506;12495:9;12491:18;12484:30;12537:63;12595:3;12584:9;12580:19;12564:14;12537:63;:::i;:::-;12637:15;;;12631:22;12523:77;;-1:-1:-1;12662:54:136;12697:18;;;12631:22;12662:54;:::i;:::-;12765:2;12757:6;12753:15;12747:22;12725:44;;12792:3;12788:8;12778:18;;12861:2;12849:9;12841:6;12837:22;12833:31;12827:3;12816:9;12812:19;12805:60;12888:41;12922:6;12906:14;12888:41;:::i;:::-;12874:55;;12978:2;12970:6;12966:15;12960:22;12938:44;;12991:52;13038:3;13027:9;13023:19;13007:14;7016:13;7009:21;6997:34;;6946:91;12991:52;13092:2;13084:6;13080:15;13074:22;13052:44;;;;;13161:2;13149:9;13141:6;13137:22;13133:31;13127:3;13116:9;13112:19;13105:60;;13182:41;13216:6;13200:14;13182:41;:::i;:::-;13174:49;;;;13232:48;13274:4;13263:9;13259:20;13251:6;13232:48;:::i;:::-;13289;13331:4;13320:9;13316:20;13308:6;13289:48;:::i;:::-;13346;13388:4;13377:9;13373:20;13365:6;13346:48;:::i;:::-;11362:2038;;;;;;;:::o;13405:315::-;-1:-1:-1;;;;;13580:32:136;;13562:51;;13649:2;13644;13629:18;;13622:30;;;-1:-1:-1;;13669:45:136;;13695:18;;13687:6;13669:45;:::i;15214:184::-;15284:6;15337:2;15325:9;15316:7;15312:23;15308:32;15305:52;;;15353:1;15350;15343:12;15305:52;-1:-1:-1;15376:16:136;;15214:184;-1:-1:-1;15214:184:136:o;16642:287::-;16771:3;16809:6;16803:13;16825:66;16884:6;16879:3;16872:4;16864:6;16860:17;16825:66;:::i;:::-;16907:16;;;;;16642:287;-1:-1:-1;;16642:287:136:o","linkReferences":{},"immutableReferences":{"55572":[{"start":1774,"length":32},{"start":1841,"length":32},{"start":1986,"length":32},{"start":2053,"length":32},{"start":2186,"length":32}]}},"methodIdentifiers":{"VERSION()":"ffa1ad74","collateralVaultTemplate()":"77122d56","createRegistry((address,address,uint256,uint256,uint256,address,address,(uint256,string),address,string,bool,string))":"beb331a3","gardensFeeReceiver()":"b8bed901","getCommunityValidity(address)":"f5016b5e","getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c","initialize(address)":"c4d66de8","initialize(address,address,address,address,address)":"1459457a","initializeV2()":"5cd8a76b","nonce()":"affed0e0","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","registryCommunityTemplate()":"02c1d0b1","renounceOwnership()":"715018a6","setCollateralVaultTemplate(address)":"b0d3713a","setCommunityValidity(address,bool)":"5a2c8ace","setProtocolFee(address,uint256)":"b5b3ca2c","setReceiverAddress(address)":"8279c7db","setRegistryCommunityTemplate(address)":"5decae02","setStrategyTemplate(address)":"1b71f0e4","strategyTemplate()":"5c94e4d2","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"CommunityInvalid\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"previousAdmin\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"newAdmin\",\"type\":\"address\"}],\"name\":\"AdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_registryCommunity\",\"type\":\"address\"}],\"name\":\"CommunityCreated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"CommunityValiditySet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"ProtocolFeeSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"VERSION\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"collateralVaultTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"_allo\",\"type\":\"address\"},{\"internalType\":\"contract IERC20\",\"name\":\"_gardenToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_communityFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_registryFactory\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"},{\"components\":[{\"internalType\":\"uint256\",\"name\":\"protocol\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"pointer\",\"type\":\"string\"}],\"internalType\":\"struct Metadata\",\"name\":\"_metadata\",\"type\":\"tuple\"},{\"internalType\":\"address payable\",\"name\":\"_councilSafe\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct RegistryCommunityInitializeParamsV0_0\",\"name\":\"params\",\"type\":\"tuple\"}],\"name\":\"createRegistry\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_createdRegistryAddress\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"gardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getCommunityValidity\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getGardensFeeReceiver\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"}],\"name\":\"getProtocolFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_gardensFeeReceiver\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_registryCommunityTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategyTemplate\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_collateralVaultTemplate\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initializeV2\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registryCommunityTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setCollateralVaultTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"_isValid\",\"type\":\"bool\"}],\"name\":\"setCommunityValidity\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_community\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newProtocolFee\",\"type\":\"uint256\"}],\"name\":\"setProtocolFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newFeeReceiver\",\"type\":\"address\"}],\"name\":\"setReceiverAddress\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setRegistryCommunityTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"template\",\"type\":\"address\"}],\"name\":\"setStrategyTemplate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"strategyTemplate\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"}],\"name\":\"upgradeTo\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"upgradeToAndCall\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"RegistryFactoryV0_0\",\"events\":{\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"Upgraded(address)\":{\"details\":\"Emitted when the implementation is upgraded.\"}},\"kind\":\"dev\",\"methods\":{\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"proxiableUUID()\":{\"details\":\"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"},\"upgradeTo(address)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"},\"upgradeToAndCall(address,bytes)\":{\"custom:oz-upgrades-unsafe-allow-reachable\":\"delegatecall\",\"details\":\"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":\"RegistryFactoryV0_1\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":{\"keccak256\":\"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7\",\"dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/interfaces/IStrategy.sol\":{\"keccak256\":\"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487\",\"dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH\"]},\"lib/allo-v2/contracts/core/libraries/Clone.sol\":{\"keccak256\":\"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067\",\"dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/contracts/strategies/BaseStrategy.sol\":{\"keccak256\":\"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974\",\"dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol\":{\"keccak256\":\"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c\",\"dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol\":{\"keccak256\":\"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964\",\"dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol\":{\"keccak256\":\"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f\",\"dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol\":{\"keccak256\":\"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263\",\"dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE\"]},\"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol\":{\"keccak256\":\"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688\",\"dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol\":{\"keccak256\":\"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5\",\"dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn\"]},\"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol\":{\"keccak256\":\"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472\",\"dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN\"]},\"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol\":{\"keccak256\":\"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354\",\"dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed\",\"dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS\"]},\"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":{\"keccak256\":\"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15\",\"dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":{\"keccak256\":\"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd\",\"dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":{\"keccak256\":\"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4\",\"dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"lib/openzeppelin-contracts/contracts/utils/Strings.sol\":{\"keccak256\":\"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f\",\"dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol\":{\"keccak256\":\"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd\",\"dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]},\"lib/openzeppelin-contracts/contracts/utils/math/Math.sol\":{\"keccak256\":\"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c\",\"dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS\"]},\"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol\":{\"keccak256\":\"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7\",\"dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6\"]},\"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol\":{\"keccak256\":\"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223\",\"urls\":[\"bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669\",\"dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar\"]},\"lib/openzeppelin-foundry-upgrades/src/Defender.sol\":{\"keccak256\":\"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23\",\"dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL\"]},\"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol\":{\"keccak256\":\"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e\",\"dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq\"]},\"lib/openzeppelin-foundry-upgrades/src/Options.sol\":{\"keccak256\":\"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9\",\"dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol\":{\"keccak256\":\"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c\",\"dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol\":{\"keccak256\":\"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e\",\"dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol\":{\"keccak256\":\"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540\",\"dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol\":{\"keccak256\":\"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd\",\"dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol\":{\"keccak256\":\"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91\",\"dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol\":{\"keccak256\":\"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f\",\"dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv\"]},\"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol\":{\"keccak256\":\"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03\",\"dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293\",\"dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39\",\"dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol\":{\"keccak256\":\"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40\",\"dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb\",\"dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9\",\"dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613\",\"dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol\":{\"keccak256\":\"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0\",\"dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826\",\"dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":{\"keccak256\":\"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383\",\"dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]},\"pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]},\"pkg/contracts/src/interfaces/ISafe.sol\":{\"keccak256\":\"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70\",\"dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"type":"error","name":"CommunityInvalid"},{"inputs":[{"internalType":"address","name":"previousAdmin","type":"address","indexed":false},{"internalType":"address","name":"newAdmin","type":"address","indexed":false}],"type":"event","name":"AdminChanged","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"_registryCommunity","type":"address","indexed":false}],"type":"event","name":"CommunityCreated","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"bool","name":"_isValid","type":"bool","indexed":false}],"type":"event","name":"CommunityValiditySet","anonymous":false},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverSet","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"previousOwner","type":"address","indexed":true},{"internalType":"address","name":"newOwner","type":"address","indexed":true}],"type":"event","name":"OwnershipTransferred","anonymous":false},{"inputs":[{"internalType":"address","name":"_community","type":"address","indexed":false},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256","indexed":false}],"type":"event","name":"ProtocolFeeSet","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[],"stateMutability":"pure","type":"function","name":"VERSION","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"collateralVaultTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"struct RegistryCommunityInitializeParamsV0_0","name":"params","type":"tuple","components":[{"internalType":"address","name":"_allo","type":"address"},{"internalType":"contract IERC20","name":"_gardenToken","type":"address"},{"internalType":"uint256","name":"_registerStakeAmount","type":"uint256"},{"internalType":"uint256","name":"_communityFee","type":"uint256"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"address","name":"_registryFactory","type":"address"},{"internalType":"address","name":"_feeReceiver","type":"address"},{"internalType":"struct Metadata","name":"_metadata","type":"tuple","components":[{"internalType":"uint256","name":"protocol","type":"uint256"},{"internalType":"string","name":"pointer","type":"string"}]},{"internalType":"address payable","name":"_councilSafe","type":"address"},{"internalType":"string","name":"_communityName","type":"string"},{"internalType":"bool","name":"_isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"createRegistry","outputs":[{"internalType":"address","name":"_createdRegistryAddress","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"gardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getCommunityValidity","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"getGardensFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_community","type":"address"}],"stateMutability":"view","type":"function","name":"getProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_gardensFeeReceiver","type":"address"},{"internalType":"address","name":"_registryCommunityTemplate","type":"address"},{"internalType":"address","name":"_strategyTemplate","type":"address"},{"internalType":"address","name":"_collateralVaultTemplate","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initializeV2"},{"inputs":[],"stateMutability":"view","type":"function","name":"nonce","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registryCommunityTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setCollateralVaultTemplate"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"bool","name":"_isValid","type":"bool"}],"stateMutability":"nonpayable","type":"function","name":"setCommunityValidity"},{"inputs":[{"internalType":"address","name":"_community","type":"address"},{"internalType":"uint256","name":"_newProtocolFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setProtocolFee"},{"inputs":[{"internalType":"address","name":"_newFeeReceiver","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setReceiverAddress"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setRegistryCommunityTemplate"},{"inputs":[{"internalType":"address","name":"template","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"setStrategyTemplate"},{"inputs":[],"stateMutability":"view","type":"function","name":"strategyTemplate","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transferOwnership"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"upgradeTo"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"function","name":"upgradeToAndCall"}],"devdoc":{"kind":"dev","methods":{"owner()":{"details":"Returns the address of the current owner."},"proxiableUUID()":{"details":"Implementation of the ERC1822 {proxiableUUID} function. This returns the storage slot used by the implementation. It is used to validate the implementation's compatibility when performing an upgrade. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy. This is guaranteed by the `notDelegated` modifier."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."},"upgradeTo(address)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."},"upgradeToAndCall(address,bytes)":{"custom:oz-upgrades-unsafe-allow-reachable":"delegatecall","details":"Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call encoded in `data`. Calls {_authorizeUpgrade}. Emits an {Upgraded} event."}},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":"RegistryFactoryV0_1"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/interfaces/IAllo.sol":{"keccak256":"0x752bbf7be2275b2d0e6323063775fc5afe3c360a2dae9b879452a42e8b2280ce","urls":["bzz-raw://a41b95501d44b11718ec5df990595335d44bd6bba883e4879bdce35261ee93a7","dweb:/ipfs/QmcRbrYjcibhDqsKJZM3HLceB4Kdd4tKDXqDaaVzbTkza1"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/interfaces/IStrategy.sol":{"keccak256":"0xebd143a6729d7fe650ffd83a2dc1941e19ce9285526e5cb4d6c32adba3f3cf23","urls":["bzz-raw://994ed7ab48860e92ffd369e6741149760a725c5ddf4fc55e33c31f408bd25487","dweb:/ipfs/QmV6bzxJQo5T13Kynv7mqGJQSbNyZ4ZJfTEjWUymxmpfpH"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Clone.sol":{"keccak256":"0xc348b24b7d8a98c4faa5f2aa37ce9264a74f81dbdef1a9bae2eaa125585c3c7e","urls":["bzz-raw://1335b3ec59ec7e3d12ea7c90b3aa56f4c26e0d44d342f54412933be9d4f16067","dweb:/ipfs/QmXNFo2wCyq9cpvfgbdHvBUQecThFSEoUnMuZNS6WinDrr"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/strategies/BaseStrategy.sol":{"keccak256":"0x3f1382dc6c35d50545e327e7ed6016f2bd752357d446bd698014073f0b812873","urls":["bzz-raw://99500abcd617fa43f6dde49e2c7802821ceaf54a65a8055cbbf2695ecd107974","dweb:/ipfs/QmUktZkWuu3GCMEijY1fqt7NMy7BzpTvEtcmpB1fuoa7zt"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol":{"keccak256":"0x359a1ab89b46b9aba7bcad3fb651924baf4893d15153049b9976b0fc9be1358e","urls":["bzz-raw://e89863421b4014b96a4b62be76eb3b9f0a8afe9684664a6f389124c0964bfe5c","dweb:/ipfs/Qmbk7xr1irpDuU1WdxXgxELBXxs61rHhCgod7heVcvFx16"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/ClonesUpgradeable.sol":{"keccak256":"0x3d98edeb5d5be8410fca707b73dabe7544d1dd11e35b73dd907c473fe43cc3ae","urls":["bzz-raw://1a3fa9fc3aec149b8ad0dd8895277ab11e9244e9d2b7adc8404b22de974fc964","dweb:/ipfs/QmRggzxs1WjuvGJSAKb2Nw5r7P3VDMefCWKTbkNPKRkv2j"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol":{"keccak256":"0x2025ccf05f6f1f2fd4e078e552836f525a1864e3854ed555047cd732320ab29b","urls":["bzz-raw://d27f4b23c2dee42394aebaf42bf238285230f472dfd3282a39c3f000ec28214f","dweb:/ipfs/QmQa3DnvccwdWJeWrjgXPnFMTWbzWQWR39hVqC7eEwo2PC"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol":{"keccak256":"0x3cbef5ebc24b415252e2f8c0c9254555d30d9f085603b4b80d9b5ed20ab87e90","urls":["bzz-raw://e8fa670c3bdce78e642cc6ae11c4cb38b133499cdce5e1990a9979d424703263","dweb:/ipfs/QmVxeCUk4jL2pXQyhsoNJwyU874wRufS2WvGe8TgPKPqhE"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol":{"keccak256":"0x1d4afe6cb24200cc4545eed814ecf5847277dfe5d613a1707aad5fceecebcfff","urls":["bzz-raw://383fb7b8181016ac5ccf07bc9cdb7c1b5045ea36e2cc4df52bcbf20396fc7688","dweb:/ipfs/QmYJ7Cg4WmE3rR8KGQxjUCXFfTH6TcwZ2Z1f6tPrq7jHFr"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol":{"keccak256":"0xa2b22da3032e50b55f95ec1d13336102d675f341167aa76db571ef7f8bb7975d","urls":["bzz-raw://96b6d77a20bebd4eb06b801d3d020c7e82be13bd535cb0d0a6b7181c51dab5d5","dweb:/ipfs/QmPUR9Cv9jNFdQX6PtBfaBW1ZCnKwiu65R2VD5kbdanDyn"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/Proxy.sol":{"keccak256":"0xc130fe33f1b2132158531a87734153293f6d07bc263ff4ac90e85da9c82c0e27","urls":["bzz-raw://8831721b6f4cc26534d190f9f1631c3f59c9ff38efdd911f85e0882b8e360472","dweb:/ipfs/QmQZnLErZNStirSQ13ZNWQgvEYUtGE5tXYwn4QUPaVUfPN"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol":{"keccak256":"0xd50a3421ac379ccb1be435fa646d66a65c986b4924f0849839f08692f39dde61","urls":["bzz-raw://ada1e030c0231db8d143b44ce92b4d1158eedb087880cad6d8cc7bd7ebe7b354","dweb:/ipfs/QmWZ2NHZweRpz1U9GF6R1h65ri76dnX7fNxLBeM2t5N5Ce"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x3d6069be9b4c01fb81840fb9c2c4dc58dd6a6a4aafaa2c6837de8699574d84c6","urls":["bzz-raw://720d6bb56ea0c4ef781c0bd65c5bd0541f5a46100163b2587170f97658d2deed","dweb:/ipfs/QmTS2biLVPrv8CeeXCaKmkFxonMiRvc1LxiYBRYDAJHQUS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":{"keccak256":"0xa56ca923f70c1748830700250b19c61b70db9a683516dc5e216694a50445d99c","urls":["bzz-raw://cac938788bc4be12101e59d45588b4e059579f4e61062e1cda8d6b06c0191b15","dweb:/ipfs/QmV2JKCyjTVH3rkWNrfdJRhAT7tZ3usAN2XcnD4h53Mvih"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":{"keccak256":"0x8de418a5503946cabe331f35fe242d3201a73f67f77aaeb7110acb1f30423aca","urls":["bzz-raw://5a376d3dda2cb70536c0a45c208b29b34ac560c4cb4f513a42079f96ba47d2dd","dweb:/ipfs/QmZQg6gn1sUpM8wHzwNvSnihumUCAhxD119MpXeKp8B9s8"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":{"keccak256":"0x909d608c2db6eb165ca178c81289a07ed2e118e444d0025b2a85c97d0b44a4fa","urls":["bzz-raw://656cda26512ddd7373c2d5551c8fae759fc30f05b10f0fc2e738e9274199dbd4","dweb:/ipfs/QmTSArSzQRFbQmHgq7U1PZXnsDFhvDZhKVu9CzMG4yo6Lx"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/Strings.sol":{"keccak256":"0x3088eb2868e8d13d89d16670b5f8612c4ab9ff8956272837d8e90106c59c14a0","urls":["bzz-raw://b81d9ff6559ea5c47fc573e17ece6d9ba5d6839e213e6ebc3b4c5c8fe4199d7f","dweb:/ipfs/QmPCW1bFisUzJkyjroY3yipwfism9RRCigCcK1hbXtVM8n"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol":{"keccak256":"0x5a08ad61f4e82b8a3323562661a86fb10b10190848073fdc13d4ac43710ffba5","urls":["bzz-raw://6f7bb74cf88fd88daa34e118bc6e363381d05044f34f391d39a10c0c9dac3ebd","dweb:/ipfs/QmNbQ3v8v4zuDtg7VeLAbdhAm3tCzUodNoDZZ8ekmCHWZX"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/Math.sol":{"keccak256":"0xe4455ac1eb7fc497bb7402579e7b4d64d928b846fce7d2b6fde06d366f21c2b3","urls":["bzz-raw://cc8841b3cd48ad125e2f46323c8bad3aa0e88e399ec62acb9e57efa7e7c8058c","dweb:/ipfs/QmSqE4mXHA2BXW58deDbXE8MTcsL5JSKNDbm23sVQxRLPS"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol":{"keccak256":"0xf92515413956f529d95977adc9b0567d583c6203fc31ab1c23824c35187e3ddc","urls":["bzz-raw://c50fcc459e49a9858b6d8ad5f911295cb7c9ab57567845a250bf0153f84a95c7","dweb:/ipfs/QmcEW85JRzvDkQggxiBBLVAasXWdkhEysqypj9EaB6H2g6"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/src/strings.sol":{"keccak256":"0x42cad11a7033f2fe05dd68611d2304407a620ac985b91edf29d5868cfe196223","urls":["bzz-raw://3cbc2333234e1f00eab5e57c4bcaf5115661e5e066a17c70af587a0a96f24669","dweb:/ipfs/QmPHvStqcvZL46LW5N2ExTwAaqNhRCcmAX66aR6oE1WDar"],"license":null},"lib/openzeppelin-foundry-upgrades/src/Defender.sol":{"keccak256":"0x2114e4d70d53b36e8cec54ba11ff78d9f38a466ec3504c76c7f26101a7cff37f","urls":["bzz-raw://58f4d9bc58646e7631b263cdb8ef260e6818e9f716036d81d1c18218c9557a23","dweb:/ipfs/QmS18L4R4gPtay9eQBcR28DnwmBkGSWsiCFwm2tXc3BkHL"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol":{"keccak256":"0x8436719f73c76efadaa16cd719d088f698ea3591595dfdf2c15fd66f3e203197","urls":["bzz-raw://ac8d0e55defe124adcc3845348602d6528b00b7dc5f7abf9e1b245d0cea9b55e","dweb:/ipfs/QmaPBoG89Bd2btJZW5kjXx7zXo6KhAdeTuMq5xo431M8xq"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/Options.sol":{"keccak256":"0xa5414683d6b219b28e75ecaab3d00a305dfaf4d970389a88992275c8072ce8ac","urls":["bzz-raw://b1dbfd566ba318f2b740159c28e4511c84c9d76fcc293ae17c9b1a87b3ea16c9","dweb:/ipfs/QmcyxPoeBdzA9iHEgd76xKhaQ8HKfpV4owdSv6127MmveT"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Core.sol":{"keccak256":"0x37073df20d2b5fbb0a873e6b2dd76c23e23455d1c2d2ba57d2f0998201a4251d","urls":["bzz-raw://79d507647ea48d93371341684cf4199d55ed799db9d3489bc016f53990d2ff7c","dweb:/ipfs/QmQWgXiYcPcwNcrkTHb72WtHd4xPcXfRUMfBrhkDHgr2ut"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/DefenderDeploy.sol":{"keccak256":"0x868ffdaf5d185fee103fc4581385392b47c209a5cfd2aec01f0307dbc0101d73","urls":["bzz-raw://76e51bf69a4d0b5d1d9cfa7efa442bdcf9d713966563432ef8fdd00ec959a25e","dweb:/ipfs/QmTHkdvMnqmEvus7zbmHhPkWk3fM9SW2Jq8gnyBLwVJtxG"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Utils.sol":{"keccak256":"0x4de002af810f6a5fe26a6381e0ead3331735bd0059434a22df75e17c177b5f87","urls":["bzz-raw://af32ff07f606e530a53030db141a75af144cfe065a6543939d412018c6159540","dweb:/ipfs/QmbfTB92Zd8VQHW61g9dx1CvGgSL5SCoZDLrvJfnR7Ctio"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/Versions.sol":{"keccak256":"0xf1a1441c18a296853509e9b1d18be794ed3de836caea49d6948b5e9ac566e8c6","urls":["bzz-raw://6f3463514235bd875ecacf45f95cac64aa650dd38d05c15fe1f4203b6b5733bd","dweb:/ipfs/Qmcbhmw9NPkG8MqiVsQ4qUupeQFCRgyBDKuoUwohwa8EP3"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IProxyAdmin.sol":{"keccak256":"0xf5e514595089f8959da130507086e7388602a71ce60575d141e7d892dfbddbfc","urls":["bzz-raw://9b41366e2823ccc8cb42304496d761b3df80946d17384634a61afd7139495c91","dweb:/ipfs/QmZE2nRMxax1NPj63ifemKdScGJzKNWi7BCGudjFLsUz1y"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableBeacon.sol":{"keccak256":"0xa8d7bffdd26eb763e459650c83f247b54af79800c2df52ad05878f238fc1c2f8","urls":["bzz-raw://8ed47f1e53e5eb7d48fed60a414755641fca8fa0e713fd503b2597227da78a2f","dweb:/ipfs/QmQr8A5wddHdhQNauFShXxRkPcuVVpVsYpq846WhmFC8Tv"],"license":"MIT"},"lib/openzeppelin-foundry-upgrades/src/internal/interfaces/IUpgradeableProxy.sol":{"keccak256":"0x781b564b90bba0c0e8e12fb66b1c910f42d369db469f2e88592b4cff29de99a5","urls":["bzz-raw://45fcab02a43fde934445b88e905aba3f58a70b75dd6ee6eb86a3d593424aeb03","dweb:/ipfs/QmXmhAgrctaYUDLoTRgUjwD4deoXu1E2QT1kftVGcVa56j"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x541e01ec844f90dd0f7348dd0a5b111ab2214004882639f25945b8b09cb683d2","urls":["bzz-raw://a8cd30efe0db12044ea0cd184c14a44feaaeb12c39b124d5fba060ef3ff20293","dweb:/ipfs/Qme26Jr1tVVP5k3gqPvP7ZLTZPvQzLXkvgzustv7QAzDo5"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xc3aed28a3fec8dcc2e95c8569aa2c4323897a1685c63746822956fe995eddf28","urls":["bzz-raw://c4126fea7a0d30c76aab94605930ed01c7e53df2f4a7bba4773c097904d5eb39","dweb:/ipfs/QmNsDu9G5JKCXdTs1HmEyVcR3S4DhuiZRt2bEPVNYGckgw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_1.sol":{"keccak256":"0x7ac113b4d9b37166aa2453c1bdbb04db3aa4a2e8445b947b36034a59ea2d7290","urls":["bzz-raw://74a5dfd911f0579d4c2cf49669e0b1e06c88f3764cca83cf95579c4db671de40","dweb:/ipfs/QmQm2LGi4KLV7yPY3sMbD44n7crAuGQwp6fJ8a8C5WQBYa"],"license":"AGPL-3.0-only"},"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"},"pkg/contracts/src/ISybilScorer.sol":{"keccak256":"0x0e25fbb8497ac3c969d80c9032362d45e56c0a45dc9ba3dff6a8a704571f38ea","urls":["bzz-raw://0dff90ebae6e7131a5300fcaf525bc2ab0ae90fcd13f277d7b7b6939eeb8b7eb","dweb:/ipfs/QmYGkYqpUVrBWoNY6f3CtwrrVQFWSvnJfpu68t95f6AkBY"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xe75af89b2eff95c66d105d9368484a620ab0d441670fe41678b809dabcd6ffe8","urls":["bzz-raw://ba200208998e8f646bbe9b1f4f1f2a2f1450163e5abd0d64ea6b9be50875f9b9","dweb:/ipfs/QmeaF3YUmxPRmgKef3F5WX6AZWagNu4ex7CXcyDH8sStHN"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0xf0edf405dda2853a145937f5f39ab92919a2b9a5c713ce2b11691725333ff66e","urls":["bzz-raw://735699a542e04ce51a923876c5e6202b59fd30758e86a11f1a120f2108366613","dweb:/ipfs/QmWPPboA1JWNuZvhrWsAgPjUFyqo8C3sP6foVa2pg19Pzw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol":{"keccak256":"0x30e941996ee5d85123b7287e4c56fb642644624fcd7bd54ec5cc6d9c35929659","urls":["bzz-raw://d05002caba8d60e778bd4e27da3f3e93e8ecc33814902e8bad2b3d1eb65027b0","dweb:/ipfs/QmZYjLmM48816YfFPXNxf3XwjJ3DLQ58mSPP8hRDBAnNtQ"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x244ec3d7cc1d60aadcf6f30286f22f4e30a1cb97052dde1388f63d4c64f5889f","urls":["bzz-raw://da5accfd12dd32896c70f36af18833017f9a5235f2a8bf4dee89e7e1fa344826","dweb:/ipfs/QmSJJdhaHcKa27JY1EapxcR3s6XSBpJ7YvXDPzzqpCtukE"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":{"keccak256":"0xdb79ed87c90e629ba88f13022047f2590782276705e858406986acd67c76288c","urls":["bzz-raw://be55fb3715adc1f2c681d236fa0e3ea1ea5c1ccf931a9e29ea9ff2bf3a59f383","dweb:/ipfs/QmbFSkxwzwUWxJRDNiDdnWx54VRSXBS4UAkchQ89NkZktG"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/FAllo.sol":{"keccak256":"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437","urls":["bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458","dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ISafe.sol":{"keccak256":"0xfb4c6e6da4a698252365f12c1accc716b948c9cb9e63c2f7699caa9363786a7a","urls":["bzz-raw://93657dcc916bea9a2a4f1a48c7be5b957c84251ef7347237945219e1f8600e70","dweb:/ipfs/QmcKsf5hvEXEYi2ytKm6J6Pq1534nwjBWrFPmdDwssEqKq"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":52990,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52993,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":53695,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52782,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52902,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":72424,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":72429,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)"},{"astId":72431,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":72433,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":72435,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":72437,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":72777,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"107","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_uint256)49_storage":{"encoding":"inplace","label":"uint256[49]","numberOfBytes":"1568","base":"t_uint256"},"t_array(t_uint256)50_storage":{"encoding":"inplace","label":"uint256[50]","numberOfBytes":"1600","base":"t_uint256"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_mapping(t_address,t_struct(CommunityInfo)72419_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)72419_storage"},"t_struct(CommunityInfo)72419_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":72416,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":72418,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"valid","offset":0,"slot":"1","type":"t_bool"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol","id":72884,"exportedSymbols":{"ERC1967Proxy":[55021],"RegistryCommunityInitializeParamsV0_0":[70264],"RegistryCommunityV0_0":[72174],"RegistryCommunityV0_1":[72403],"RegistryFactoryV0_0":[72778],"RegistryFactoryV0_1":[72883]},"nodeType":"SourceUnit","src":"42:1368:107","nodes":[{"id":72780,"nodeType":"PragmaDirective","src":"42:24:107","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":72783,"nodeType":"ImportDirective","src":"68:93:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"../RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72779,"symbolAliases":[{"foreign":{"id":72781,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72778,"src":"76:19:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72782,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55021,"src":"97:12:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72786,"nodeType":"ImportDirective","src":"162:134:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72175,"symbolAliases":[{"foreign":{"id":72784,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70264,"src":"175:37:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":72785,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"218:21:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72788,"nodeType":"ImportDirective","src":"297:85:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_1.sol","file":"../RegistryCommunity/RegistryCommunityV0_1.sol","nameLocation":"-1:-1:-1","scope":72884,"sourceUnit":72404,"symbolAliases":[{"foreign":{"id":72787,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"305:21:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":72883,"nodeType":"ContractDefinition","src":"433:976:107","nodes":[{"id":72798,"nodeType":"FunctionDefinition","src":"491:50:107","nodes":[],"body":{"id":72797,"nodeType":"Block","src":"539:2:107","nodes":[],"statements":[]},"functionSelector":"5cd8a76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":72794,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"536:1:107","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":72795,"kind":"modifierInvocation","modifierName":{"id":72793,"name":"reinitializer","nameLocations":["522:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":53087,"src":"522:13:107"},"nodeType":"ModifierInvocation","src":"522:16:107"}],"name":"initializeV2","nameLocation":"500:12:107","parameters":{"id":72792,"nodeType":"ParameterList","parameters":[],"src":"512:2:107"},"returnParameters":{"id":72796,"nodeType":"ParameterList","parameters":[],"src":"539:0:107"},"scope":72883,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":72882,"nodeType":"FunctionDefinition","src":"547:860:107","nodes":[],"body":{"id":72881,"nodeType":"Block","src":"726:681:107","nodes":[],"statements":[{"expression":{"id":72812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72807,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"736:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"743:6:107","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":70248,"src":"736:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"752:7:107","subExpression":{"id":72810,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72424,"src":"752:5:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"736:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72813,"nodeType":"ExpressionStatement","src":"736:23:107"},{"expression":{"id":72821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":72814,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"769:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72816,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"776:16:107","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":70250,"src":"769:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72819,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"803:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$72883","typeString":"contract RegistryFactoryV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$72883","typeString":"contract RegistryFactoryV0_1"}],"id":72818,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"795:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72817,"name":"address","nodeType":"ElementaryTypeName","src":"795:7:107","typeDescriptions":{}}},"id":72820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"795:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"769:39:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72822,"nodeType":"ExpressionStatement","src":"769:39:107"},{"assignments":[72825],"declarations":[{"constant":false,"id":72825,"mutability":"mutable","name":"proxy","nameLocation":"832:5:107","nodeType":"VariableDeclaration","scope":72881,"src":"819:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"},"typeName":{"id":72824,"nodeType":"UserDefinedTypeName","pathNode":{"id":72823,"name":"ERC1967Proxy","nameLocations":["819:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"819:12:107"},"referencedDeclaration":55021,"src":"819:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":72845,"initialValue":{"arguments":[{"arguments":[{"id":72831,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"878:25:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"870:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72829,"name":"address","nodeType":"ElementaryTypeName","src":"870:7:107","typeDescriptions":{}}},"id":72832,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"870:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72835,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72174,"src":"958:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$72174_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":72836,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"980:10:107","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70959,"src":"958:32:107","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":72837,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"991:8:107","memberName":"selector","nodeType":"MemberAccess","src":"958:41:107","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":72838,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72801,"src":"1001:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":72839,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72435,"src":"1009:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72840,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72437,"src":"1027:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72841,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70177],"referencedDeclaration":70177,"src":"1052:5:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1052:7:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72833,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"918:3:107","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72834,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"922:18:107","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"918:22:107","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72843,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"918:155:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"840:16:107","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$55021_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72827,"nodeType":"UserDefinedTypeName","pathNode":{"id":72826,"name":"ERC1967Proxy","nameLocations":["844:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":55021,"src":"844:12:107"},"referencedDeclaration":55021,"src":"844:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}},"id":72844,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"840:243:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"819:264:107"},{"assignments":[72848],"declarations":[{"constant":false,"id":72848,"mutability":"mutable","name":"registryCommunity","nameLocation":"1116:17:107","nodeType":"VariableDeclaration","scope":72881,"src":"1094:39:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"},"typeName":{"id":72847,"nodeType":"UserDefinedTypeName","pathNode":{"id":72846,"name":"RegistryCommunityV0_1","nameLocations":["1094:21:107"],"nodeType":"IdentifierPath","referencedDeclaration":72403,"src":"1094:21:107"},"referencedDeclaration":72403,"src":"1094:21:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"visibility":"internal"}],"id":72858,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72854,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72825,"src":"1174:5:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$55021","typeString":"contract ERC1967Proxy"}],"id":72853,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72852,"name":"address","nodeType":"ElementaryTypeName","src":"1166:7:107","typeDescriptions":{}}},"id":72855,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1166:14:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72851,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1158:8:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":72850,"name":"address","nodeType":"ElementaryTypeName","src":"1158:8:107","stateMutability":"payable","typeDescriptions":{}}},"id":72856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1158:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72849,"name":"RegistryCommunityV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72403,"src":"1136:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_1_$72403_$","typeString":"type(contract RegistryCommunityV0_1)"}},"id":72857,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:46:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}},"nodeType":"VariableDeclarationStatement","src":"1094:88:107"},{"expression":{"id":72867,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72859,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72429,"src":"1242:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$72419_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":72864,"indexExpression":{"arguments":[{"id":72862,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1266:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72861,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1258:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72860,"name":"address","nodeType":"ElementaryTypeName","src":"1258:7:107","typeDescriptions":{}}},"id":72863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1258:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1242:43:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$72419_storage","typeString":"struct CommunityInfo storage ref"}},"id":72865,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1286:5:107","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":72418,"src":"1242:49:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72866,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1294:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"1242:56:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72868,"nodeType":"ExpressionStatement","src":"1242:56:107"},{"eventCall":{"arguments":[{"arguments":[{"id":72872,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1338:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72871,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1330:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72870,"name":"address","nodeType":"ElementaryTypeName","src":"1330:7:107","typeDescriptions":{}}},"id":72873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1330:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72869,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72451,"src":"1313:16:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1313:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72875,"nodeType":"EmitStatement","src":"1308:49:107"},{"expression":{"arguments":[{"id":72878,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"1382:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_1_$72403","typeString":"contract RegistryCommunityV0_1"}],"id":72877,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1374:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72876,"name":"address","nodeType":"ElementaryTypeName","src":"1374:7:107","typeDescriptions":{}}},"id":72879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1374:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":72806,"id":72880,"nodeType":"Return","src":"1367:33:107"}]},"baseFunctions":[72656],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"556:14:107","overrides":{"id":72803,"nodeType":"OverrideSpecifier","overrides":[],"src":"663:8:107"},"parameters":{"id":72802,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72801,"mutability":"mutable","name":"params","nameLocation":"616:6:107","nodeType":"VariableDeclaration","scope":72882,"src":"571:51:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":72800,"nodeType":"UserDefinedTypeName","pathNode":{"id":72799,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["571:37:107"],"nodeType":"IdentifierPath","referencedDeclaration":70264,"src":"571:37:107"},"referencedDeclaration":70264,"src":"571:37:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$70264_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"570:53:107"},"returnParameters":{"id":72806,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72805,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"697:23:107","nodeType":"VariableDeclaration","scope":72882,"src":"689:31:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72804,"name":"address","nodeType":"ElementaryTypeName","src":"689:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"688:33:107"},"scope":72883,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":72790,"name":"RegistryFactoryV0_0","nameLocations":["465:19:107"],"nodeType":"IdentifierPath","referencedDeclaration":72778,"src":"465:19:107"},"id":72791,"nodeType":"InheritanceSpecifier","src":"465:19:107"}],"canonicalName":"RegistryFactoryV0_1","contractDependencies":[55021],"contractKind":"contract","documentation":{"id":72789,"nodeType":"StructuredDocumentation","src":"384:49:107","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[72883,72778,70199,55672,55325,54974,54984,52903,53696,53152],"name":"RegistryFactoryV0_1","nameLocation":"442:19:107","scope":72884,"usedErrors":[70122,72461,72463]}],"license":"AGPL-3.0-only"},"id":107} \ No newline at end of file diff --git a/pkg/contracts/out/RegistrySetup.sol/RegistrySetup.json b/pkg/contracts/out/RegistrySetup.sol/RegistrySetup.json index 9ef5196c..588d7c46 100644 --- a/pkg/contracts/out/RegistrySetup.sol/RegistrySetup.json +++ b/pkg/contracts/out/RegistrySetup.sol/RegistrySetup.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"excludeArtifacts","inputs":[],"outputs":[{"name":"excludedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"excludeContracts","inputs":[],"outputs":[{"name":"excludedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"excludeSenders","inputs":[],"outputs":[{"name":"excludedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"failed","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract Registry"}],"stateMutability":"view"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"targetArtifactSelectors","inputs":[],"outputs":[{"name":"targetedArtifactSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetArtifacts","inputs":[],"outputs":[{"name":"targetedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"targetContracts","inputs":[],"outputs":[{"name":"targetedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"targetInterfaces","inputs":[],"outputs":[{"name":"targetedInterfaces_","type":"tuple[]","internalType":"struct StdInvariant.FuzzInterface[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"artifacts","type":"string[]","internalType":"string[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSelectors","inputs":[],"outputs":[{"name":"targetedSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSenders","inputs":[],"outputs":[{"name":"targetedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"event","name":"log","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_address","inputs":[{"name":"","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_bytes","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_bytes32","inputs":[{"name":"","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_int","inputs":[{"name":"","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_address","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_named_bytes","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_named_bytes32","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_named_decimal_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_decimal_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_string","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_named_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_string","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_uint","inputs":[{"name":"","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"logs","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x6080604052600c8054600160ff199182168117909255601e8054909116909117905534801561002d57600080fd5b506114aa8061003d6000396000f3fe608060405234801561001057600080fd5b50600436106101ed5760003560e01c8062b1fad7146101f2578063030e4006146102175780630688b1351461021f5780630f166ad414610227578063174eedde1461022d5780631b96dce6146102345780631e7bcb2e1461023c5780631ed7831c146102445780632ade3880146102595780633e5e3c231461026e5780633f7286f4146102765780634bf4ba211461027e578063587c1243146102865780635aff59991461028e57806366d003ac1461029657806366d9a9a01461029e5780636a38dd0a146102b357806370a32944146102bb57806374d9284e1461022d578063759c9a86146102c357806379e62d0d146102cb5780637b103999146102d35780637b2edf32146102e95780637cbe79ed146102f1578063829e423f1461022d57806385226c81146102f95780638c7408c41461022d5780638e0d1a501461030e5780638e3c249314610316578063916a17c61461031e578063a407c67a14610326578063aa3744bd1461032e578063b5508aa914610336578063ba414fa61461033e578063d1e82b5814610356578063d1f2cd881461035e578063d5bee9f514610366578063da4bf0871461036e578063dac4eb1614610376578063e20c9f711461037e578063ef0d790f14610386578063fa7626d41461038e575b600080fd5b6101fa61039b565b6040516001600160a01b0390911681526020015b60405180910390f35b6101fa6103d0565b6101fa610406565b306101fa565b60006101fa565b6101fa610433565b6101fa610464565b61024c610497565b60405161020e9190611121565b6102616104f9565b60405161020e91906111be565b61024c61063b565b61024c61069b565b61024c6106fb565b6101fa61071e565b6101fa610751565b6101fa610784565b6102a66107b0565b60405161020e919061127e565b6101fa610896565b61024c6108c6565b6101fa61095e565b61024c61098d565b601e5461010090046001600160a01b03166101fa565b6101fa6109f5565b6101fa610a28565b610301610a55565b60405161020e9190611331565b6101fa610b25565b6101fa610b52565b6102a6610b85565b61024c610c6b565b6101fa610cd3565b610301610d00565b610346610dd0565b604051901515815260200161020e565b6101fa610e74565b6101fa610ea7565b6101fa610ed8565b6101fa610f06565b6101fa610f36565b61024c610f67565b6101fa610fc7565b601e546103469060ff1681565b60006103cb6040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610ff9565b905090565b60006103cb60405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610ff9565b60006103cb6040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610ff9565b606060168054806020026020016040519081016040528092919081815260200182805480156104ef57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116104d1575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b8282101561063257600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b8282101561061b57838290600052602060002001805461058e90611393565b80601f01602080910402602001604051908101604052809291908181526020018280546105ba90611393565b80156106075780601f106105dc57610100808354040283529160200191610607565b820191906000526020600020905b8154815290600101906020018083116105ea57829003601f168201915b50505050508152602001906001019061056f565b50505050815250508152602001906001019061051d565b50505050905090565b606060188054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b606060178054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006103cb6040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610ff9565b60006103cb6040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610ff9565b60006103cb604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610ff9565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561087e57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108405790505b505050505081525050815260200190600101906107d4565b60006103cb6040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506108f3610464565b81600081518110610906576109066113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e6109f5565b81600181518110610941576109416113cd565b6001600160a01b0390921660209283029190910190910152919050565b60006103cb6040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506109ba61039b565b816000815181106109cd576109cd6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610896565b60006103cb6040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610ff9565b60006103cb6040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610ff9565b6060601a805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610a9890611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac490611393565b8015610b115780601f10610ae657610100808354040283529160200191610b11565b820191906000526020600020905b815481529060010190602001808311610af457829003601f168201915b505050505081526020019060010190610a79565b60006103cb6040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610ff9565b60006103cb6040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610ff9565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610c5357602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610c155790505b50505050508152505081526020019060010190610ba9565b60408051600280825260608083018452926000929190602083019080368337019050509050610c9861071e565b81600081518110610cab57610cab6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610b52565b60006103cb6040518060400160405280600a815260200169726563697069656e743160b01b815250610ff9565b60606019805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610d4390611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610d6f90611393565b8015610dbc5780601f10610d9157610100808354040283529160200191610dbc565b820191906000526020600020905b815481529060010190602001808311610d9f57829003601f168201915b505050505081526020019060010190610d24565b60085460009060ff1615610de8575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610e49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e6d91906113e3565b1415905090565b60006103cb6040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610ff9565b60006103cb6040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610ff9565b60006103cb6040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610ff9565b606060158054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b60006103cb60405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b60006110048261100b565b5092915050565b6000808260405160200161101f91906113fc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa15801561108a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ae9190611418565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c718906110ea9085908790600401611448565b600060405180830381600087803b15801561110457600080fd5b505af1158015611118573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111625783516001600160a01b03168352928401929184019160010161113d565b50909695505050505050565b60005b83811015611189578181015183820152602001611171565b50506000910152565b600081518084526111aa81602086016020860161116e565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561126e57603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b8181101561125857605f19898503018352611246848651611192565b948e01949350918d019160010161122a565b505050978a0197945050918801916001016111e5565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b8481101561132257898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b8083101561130d5783516001600160e01b0319168252928b019260019290920191908b01906112e3565b50978a019795505050918701916001016112a6565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561138657603f19888603018452611374858351611192565b94509285019290850190600101611358565b5092979650505050505050565b600181811c908216806113a757607f821691505b6020821081036113c757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156113f557600080fd5b5051919050565b6000825161140e81846020870161116e565b9190910192915050565b60006020828403121561142a57600080fd5b81516001600160a01b038116811461144157600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061146c90830184611192565b94935050505056fea264697066735822122040d22253040efe2a0d2bf655364df43098aae24ca80ab740024044bda498355964736f6c63430008130033","sourceMap":"393:304:17:-:0;;;3126:44:22;;;3166:4;-1:-1:-1;;3126:44:22;;;;;;;;1016:26:32;;;;;;;;;;;393:304:17;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106101ed5760003560e01c8062b1fad7146101f2578063030e4006146102175780630688b1351461021f5780630f166ad414610227578063174eedde1461022d5780631b96dce6146102345780631e7bcb2e1461023c5780631ed7831c146102445780632ade3880146102595780633e5e3c231461026e5780633f7286f4146102765780634bf4ba211461027e578063587c1243146102865780635aff59991461028e57806366d003ac1461029657806366d9a9a01461029e5780636a38dd0a146102b357806370a32944146102bb57806374d9284e1461022d578063759c9a86146102c357806379e62d0d146102cb5780637b103999146102d35780637b2edf32146102e95780637cbe79ed146102f1578063829e423f1461022d57806385226c81146102f95780638c7408c41461022d5780638e0d1a501461030e5780638e3c249314610316578063916a17c61461031e578063a407c67a14610326578063aa3744bd1461032e578063b5508aa914610336578063ba414fa61461033e578063d1e82b5814610356578063d1f2cd881461035e578063d5bee9f514610366578063da4bf0871461036e578063dac4eb1614610376578063e20c9f711461037e578063ef0d790f14610386578063fa7626d41461038e575b600080fd5b6101fa61039b565b6040516001600160a01b0390911681526020015b60405180910390f35b6101fa6103d0565b6101fa610406565b306101fa565b60006101fa565b6101fa610433565b6101fa610464565b61024c610497565b60405161020e9190611121565b6102616104f9565b60405161020e91906111be565b61024c61063b565b61024c61069b565b61024c6106fb565b6101fa61071e565b6101fa610751565b6101fa610784565b6102a66107b0565b60405161020e919061127e565b6101fa610896565b61024c6108c6565b6101fa61095e565b61024c61098d565b601e5461010090046001600160a01b03166101fa565b6101fa6109f5565b6101fa610a28565b610301610a55565b60405161020e9190611331565b6101fa610b25565b6101fa610b52565b6102a6610b85565b61024c610c6b565b6101fa610cd3565b610301610d00565b610346610dd0565b604051901515815260200161020e565b6101fa610e74565b6101fa610ea7565b6101fa610ed8565b6101fa610f06565b6101fa610f36565b61024c610f67565b6101fa610fc7565b601e546103469060ff1681565b60006103cb6040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610ff9565b905090565b60006103cb60405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610ff9565b60006103cb6040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610ff9565b606060168054806020026020016040519081016040528092919081815260200182805480156104ef57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116104d1575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b8282101561063257600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b8282101561061b57838290600052602060002001805461058e90611393565b80601f01602080910402602001604051908101604052809291908181526020018280546105ba90611393565b80156106075780601f106105dc57610100808354040283529160200191610607565b820191906000526020600020905b8154815290600101906020018083116105ea57829003601f168201915b50505050508152602001906001019061056f565b50505050815250508152602001906001019061051d565b50505050905090565b606060188054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b606060178054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006103cb6040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610ff9565b60006103cb6040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610ff9565b60006103cb604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610ff9565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561087e57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108405790505b505050505081525050815260200190600101906107d4565b60006103cb6040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506108f3610464565b81600081518110610906576109066113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e6109f5565b81600181518110610941576109416113cd565b6001600160a01b0390921660209283029190910190910152919050565b60006103cb6040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506109ba61039b565b816000815181106109cd576109cd6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610896565b60006103cb6040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610ff9565b60006103cb6040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610ff9565b6060601a805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610a9890611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac490611393565b8015610b115780601f10610ae657610100808354040283529160200191610b11565b820191906000526020600020905b815481529060010190602001808311610af457829003601f168201915b505050505081526020019060010190610a79565b60006103cb6040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610ff9565b60006103cb6040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610ff9565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610c5357602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610c155790505b50505050508152505081526020019060010190610ba9565b60408051600280825260608083018452926000929190602083019080368337019050509050610c9861071e565b81600081518110610cab57610cab6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610b52565b60006103cb6040518060400160405280600a815260200169726563697069656e743160b01b815250610ff9565b60606019805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610d4390611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610d6f90611393565b8015610dbc5780601f10610d9157610100808354040283529160200191610dbc565b820191906000526020600020905b815481529060010190602001808311610d9f57829003601f168201915b505050505081526020019060010190610d24565b60085460009060ff1615610de8575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610e49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e6d91906113e3565b1415905090565b60006103cb6040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610ff9565b60006103cb6040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610ff9565b60006103cb6040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610ff9565b606060158054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b60006103cb60405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b60006110048261100b565b5092915050565b6000808260405160200161101f91906113fc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa15801561108a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ae9190611418565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c718906110ea9085908790600401611448565b600060405180830381600087803b15801561110457600080fd5b505af1158015611118573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111625783516001600160a01b03168352928401929184019160010161113d565b50909695505050505050565b60005b83811015611189578181015183820152602001611171565b50506000910152565b600081518084526111aa81602086016020860161116e565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561126e57603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b8181101561125857605f19898503018352611246848651611192565b948e01949350918d019160010161122a565b505050978a0197945050918801916001016111e5565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b8481101561132257898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b8083101561130d5783516001600160e01b0319168252928b019260019290920191908b01906112e3565b50978a019795505050918701916001016112a6565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561138657603f19888603018452611374858351611192565b94509285019290850190600101611358565b5092979650505050505050565b600181811c908216806113a757607f821691505b6020821081036113c757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156113f557600080fd5b5051919050565b6000825161140e81846020870161116e565b9190910192915050565b60006020828403121561142a57600080fd5b81516001600160a01b038116811461144157600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061146c90830184611192565b94935050505056fea264697066735822122040d22253040efe2a0d2bf655364df43098aae24ca80ab740024044bda498355964736f6c63430008130033","sourceMap":"393:304:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;178:32:142;;;160:51;;148:2;133:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;3126:109;;;:::i;2554:113::-;;;:::i;2452:134:25:-;;;:::i;:::-;;;;;;;:::i;3360:151::-;;;:::i;:::-;;;;;;;:::i;3221:133::-;;;:::i;2922:141::-;;;:::i;1331:118:15:-;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;2738:178:25:-;;;:::i;:::-;;;;;;;:::i;1876:107:15:-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;610:85:17:-;678:10;;;;;-1:-1:-1;;;;;678:10:17;610:85;;2673:113:15;;;:::i;439:101::-;;;:::i;2592:140:25:-;;;:::i;:::-;;;;;;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;3069:146:25:-;;;:::i;3604:241:15:-;;;:::i;3938:101::-;;;:::i;2157:141:25:-;;;:::i;1243:204:21:-;;;:::i;:::-;;;5937:14:142;;5930:22;5912:41;;5900:2;5885:18;1243:204:21;5772:187:142;1644:113:15;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;2304:142:25:-;;;:::i;3241:119:15:-;;;:::i;1016:26:32:-;;;;;;;;;1763:107:15;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;2452:134:25:-;2499:33;2563:16;2544:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2544:35:25;;;;;;;;;;;;;;;;;;;;;;;2452:134;:::o;3360:151::-;3409:42;3485:19;3463:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3463:41:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3360:151;:::o;3221:133::-;3267:33;3331:16;3312:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3312:35:25;;;;;;;;;;;;;;;;;;;;;;3221:133;:::o;2922:141::-;2970:35;3038:18;3017:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3017:39:25;;;;;;;;;;;;;;;;;;;;;;2922:141;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;2738:178:25:-;2794:48;2883:26;2854:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1876:107:15;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;2592:140:25:-;2640:34;2707:18;2686:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1537:101:15;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3069:146:25:-;3117:40;3190:18;3169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3604:241:15;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;2157:141:25:-;2206:34;2273:18;2252:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1243:204:21;1302:7;;1282:4;;1302:7;;1298:143;;;-1:-1:-1;1332:7:21;;;;;1243:204::o;1298:143::-;1377:39;;-1:-1:-1;;;1377:39:21;;:7;:39;;;7011:51:142;;;-1:-1:-1;;;7078:18:142;;;7071:34;1428:1:21;;1377:7;;6984:18:142;;1377:39:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:53;;1370:60;;1243:204;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;2304:142:25:-;2353:35;2421:18;2400:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2400:39:25;;;;;;;;;;;;;;;;;;;;;;2304:142;:::o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;20158:242::-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;7745:25:142;;;20293:33:23;-1:-1:-1;20344:7:23;;;;7718:18:142;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;222:658:142:-;393:2;445:21;;;515:13;;418:18;;;537:22;;;364:4;;393:2;616:15;;;;590:2;575:18;;;364:4;659:195;673:6;670:1;667:13;659:195;;;738:13;;-1:-1:-1;;;;;734:39:142;722:52;;829:15;;;;794:12;;;;770:1;688:9;659:195;;;-1:-1:-1;871:3:142;;222:658;-1:-1:-1;;;;;;222:658:142:o;885:250::-;970:1;980:113;994:6;991:1;988:13;980:113;;;1070:11;;;1064:18;1051:11;;;1044:39;1016:2;1009:10;980:113;;;-1:-1:-1;;1127:1:142;1109:16;;1102:27;885:250::o;1140:271::-;1182:3;1220:5;1214:12;1247:6;1242:3;1235:19;1263:76;1332:6;1325:4;1320:3;1316:14;1309:4;1302:5;1298:16;1263:76;:::i;:::-;1393:2;1372:15;-1:-1:-1;;1368:29:142;1359:39;;;;1400:4;1355:50;;1140:271;-1:-1:-1;;1140:271:142:o;1416:1744::-;1651:2;1703:21;;;1773:13;;1676:18;;;1795:22;;;1622:4;;1651:2;1836;;1854:18;;;;1891:1;1934:15;;;1919:31;;1915:40;;1978:15;;;1622:4;;2042:1089;2058:6;2053:3;2050:15;2042:1089;;;-1:-1:-1;;2127:22:142;;;2123:36;2111:49;;2183:13;;2270:9;;-1:-1:-1;;;;;2266:35:142;2251:51;;2341:11;;2335:18;2373:15;;;2366:27;;;2454:19;;2223:15;;;2486:24;;;2667:21;;;;2533:2;2615:17;;;2603:30;;2599:39;;;2557:15;;;;2712:1;2726:296;2742:8;2737:3;2734:17;2726:296;;;2848:2;2844:7;2835:6;2827;2823:19;2819:33;2812:5;2805:48;2880:42;2915:6;2904:8;2898:15;2880:42;:::i;:::-;2951:17;;;;2870:52;-1:-1:-1;2994:14:142;;;;2770:1;2761:11;2726:296;;;-1:-1:-1;;;3109:12:142;;;;3045:6;-1:-1:-1;;3074:15:142;;;;2084:1;2075:11;2042:1089;;;-1:-1:-1;3148:6:142;;1416:1744;-1:-1:-1;;;;;;;;;;1416:1744:142:o;3165:1569::-;3369:4;3398:2;3438;3427:9;3423:18;3468:2;3457:9;3450:21;3491:6;3526;3520:13;3557:6;3549;3542:22;3583:2;3573:12;;3616:2;3605:9;3601:18;3594:25;;3678:2;3668:6;3665:1;3661:14;3650:9;3646:30;3642:39;3716:2;3708:6;3704:15;3737:1;3758;3768:937;3784:6;3779:3;3776:15;3768:937;;;3853:22;;;-1:-1:-1;;3849:36:142;3837:49;;3909:13;;3996:9;;-1:-1:-1;;;;;3992:35:142;3977:51;;4067:11;;4061:18;4099:15;;;4092:27;;;4180:19;;3949:15;;;4212:24;;;4302:21;;;;4347:1;;4270:2;4258:15;;;4361:236;4377:8;4372:3;4369:17;4361:236;;;4458:15;;-1:-1:-1;;;;;;4454:42:142;4440:57;;4566:17;;;;4405:1;4396:11;;;;;4523:14;;;;4361:236;;;-1:-1:-1;4683:12:142;;;;4620:5;-1:-1:-1;;;4648:15:142;;;;3810:1;3801:11;3768:937;;;-1:-1:-1;4722:6:142;;3165:1569;-1:-1:-1;;;;;;;;;3165:1569:142:o;4964:803::-;5126:4;5155:2;5195;5184:9;5180:18;5225:2;5214:9;5207:21;5248:6;5283;5277:13;5314:6;5306;5299:22;5352:2;5341:9;5337:18;5330:25;;5414:2;5404:6;5401:1;5397:14;5386:9;5382:30;5378:39;5364:53;;5452:2;5444:6;5440:15;5473:1;5483:255;5497:6;5494:1;5491:13;5483:255;;;5590:2;5586:7;5574:9;5566:6;5562:22;5558:36;5553:3;5546:49;5618:40;5651:6;5642;5636:13;5618:40;:::i;:::-;5608:50;-1:-1:-1;5716:12:142;;;;5681:15;;;;5519:1;5512:9;5483:255;;;-1:-1:-1;5755:6:142;;4964:803;-1:-1:-1;;;;;;;4964:803:142:o;6188:380::-;6267:1;6263:12;;;;6310;;;6331:61;;6385:4;6377:6;6373:17;6363:27;;6331:61;6438:2;6430:6;6427:14;6407:18;6404:38;6401:161;;6484:10;6479:3;6475:20;6472:1;6465:31;6519:4;6516:1;6509:15;6547:4;6544:1;6537:15;6401:161;;6188:380;;;:::o;6705:127::-;6766:10;6761:3;6757:20;6754:1;6747:31;6797:4;6794:1;6787:15;6821:4;6818:1;6811:15;7116:184;7186:6;7239:2;7227:9;7218:7;7214:23;7210:32;7207:52;;;7255:1;7252;7245:12;7207:52;-1:-1:-1;7278:16:142;;7116:184;-1:-1:-1;7116:184:142:o;7305:289::-;7436:3;7474:6;7468:13;7490:66;7549:6;7544:3;7537:4;7529:6;7525:17;7490:66;:::i;:::-;7572:16;;;;;7305:289;-1:-1:-1;;7305:289:142:o;7781:290::-;7851:6;7904:2;7892:9;7883:7;7879:23;7875:32;7872:52;;;7920:1;7917;7910:12;7872:52;7946:16;;-1:-1:-1;;;;;7991:31:142;;7981:42;;7971:70;;8037:1;8034;8027:12;7971:70;8060:5;7781:290;-1:-1:-1;;;7781:290:142:o;8076:317::-;-1:-1:-1;;;;;8253:32:142;;8235:51;;8322:2;8317;8302:18;;8295:30;;;-1:-1:-1;;8342:45:142;;8368:18;;8360:6;8342:45;:::i;:::-;8334:53;8076:317;-1:-1:-1;;;;8076:317:142:o","linkReferences":{}},"methodIdentifiers":{"IS_TEST()":"fa7626d4","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","excludeArtifacts()":"b5508aa9","excludeContracts()":"e20c9f71","excludeSenders()":"1ed7831c","failed()":"ba414fa6","local()":"0f166ad4","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry()":"7b103999","registry_owner()":"dac4eb16","targetArtifactSelectors()":"66d9a9a0","targetArtifacts()":"85226c81","targetContracts()":"3f7286f4","targetInterfaces()":"2ade3880","targetSelectors()":"916a17c6","targetSenders()":"3e5e3c23"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"excludedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract Registry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifactSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedArtifactSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"targetedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetInterfaces\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"artifacts\",\"type\":\"string[]\"}],\"internalType\":\"struct StdInvariant.FuzzInterface[]\",\"name\":\"targetedInterfaces_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"RegistrySetup\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"This contract is used to setup an empty Registry contract for testing purposes.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":\"RegistrySetup\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Anchor.sol\":{\"keccak256\":\"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139\",\"dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H\"]},\"lib/allo-v2/contracts/core/Registry.sol\":{\"keccak256\":\"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283\",\"dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":{\"keccak256\":\"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb\",\"dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c\",\"dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b\",\"dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdInvariant.sol\":{\"keccak256\":\"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d\",\"dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54\",\"dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/StdStyle.sol\":{\"keccak256\":\"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8\",\"dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK\"]},\"lib/forge-std/src/StdToml.sol\":{\"keccak256\":\"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d\",\"dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61\",\"dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e\",\"dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/forge-std/src/interfaces/IERC165.sol\":{\"keccak256\":\"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc\",\"dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT\"]},\"lib/forge-std/src/interfaces/IERC20.sol\":{\"keccak256\":\"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7\",\"dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9\"]},\"lib/forge-std/src/interfaces/IERC721.sol\":{\"keccak256\":\"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f\",\"dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm\"]},\"lib/forge-std/src/interfaces/IMulticall3.sol\":{\"keccak256\":\"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0\",\"dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2\"]},\"lib/forge-std/src/mocks/MockERC20.sol\":{\"keccak256\":\"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f\",\"dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw\"]},\"lib/forge-std/src/mocks/MockERC721.sol\":{\"keccak256\":\"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b\",\"dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN\"]},\"lib/forge-std/src/safeconsole.sol\":{\"keccak256\":\"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae\",\"dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol\":{\"keccak256\":\"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519\",\"dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol\":{\"keccak256\":\"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d\",\"dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol\":{\"keccak256\":\"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c\",\"dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log","anonymous":false},{"inputs":[{"internalType":"address","name":"","type":"address","indexed":false}],"type":"event","name":"log_address","anonymous":false},{"inputs":[{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"log_bytes","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32","indexed":false}],"type":"event","name":"log_bytes32","anonymous":false},{"inputs":[{"internalType":"int256","name":"","type":"int256","indexed":false}],"type":"event","name":"log_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address","name":"val","type":"address","indexed":false}],"type":"event","name":"log_named_address","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes","name":"val","type":"bytes","indexed":false}],"type":"event","name":"log_named_bytes","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes32","name":"val","type":"bytes32","indexed":false}],"type":"event","name":"log_named_bytes32","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false}],"type":"event","name":"log_named_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"string","name":"val","type":"string","indexed":false}],"type":"event","name":"log_named_string","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false}],"type":"event","name":"log_named_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log_string","anonymous":false},{"inputs":[{"internalType":"uint256","name":"","type":"uint256","indexed":false}],"type":"event","name":"log_uint","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"logs","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_TEST","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeArtifacts","outputs":[{"internalType":"string[]","name":"excludedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeContracts","outputs":[{"internalType":"address[]","name":"excludedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeSenders","outputs":[{"internalType":"address[]","name":"excludedSenders_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"failed","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract Registry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifactSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedArtifactSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifacts","outputs":[{"internalType":"string[]","name":"targetedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetContracts","outputs":[{"internalType":"address[]","name":"targetedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetInterfaces","outputs":[{"internalType":"struct StdInvariant.FuzzInterface[]","name":"targetedInterfaces_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"string[]","name":"artifacts","type":"string[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSenders","outputs":[{"internalType":"address[]","name":"targetedSenders_","type":"address[]"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":"RegistrySetup"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Anchor.sol":{"keccak256":"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd","urls":["bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139","dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/Registry.sol":{"keccak256":"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998","urls":["bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283","dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":{"keccak256":"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b","urls":["bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb","dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j"],"license":"AGPL-3.0-only"},"lib/forge-std/src/Base.sol":{"keccak256":"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c","urls":["bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224","dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"],"license":"MIT"},"lib/forge-std/src/StdAssertions.sol":{"keccak256":"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361","urls":["bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c","dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k"],"license":"MIT"},"lib/forge-std/src/StdChains.sol":{"keccak256":"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef","urls":["bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b","dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj"],"license":"MIT"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdError.sol":{"keccak256":"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77","urls":["bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6","dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"],"license":"MIT"},"lib/forge-std/src/StdInvariant.sol":{"keccak256":"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6","urls":["bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d","dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz"],"license":"MIT"},"lib/forge-std/src/StdJson.sol":{"keccak256":"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d","urls":["bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54","dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp"],"license":"MIT"},"lib/forge-std/src/StdMath.sol":{"keccak256":"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2","urls":["bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92","dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/StdStyle.sol":{"keccak256":"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d","urls":["bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8","dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK"],"license":"MIT"},"lib/forge-std/src/StdToml.sol":{"keccak256":"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab","urls":["bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d","dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy"],"license":"MIT"},"lib/forge-std/src/StdUtils.sol":{"keccak256":"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0","urls":["bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61","dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX"],"license":"MIT"},"lib/forge-std/src/Test.sol":{"keccak256":"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe","urls":["bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e","dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC165.sol":{"keccak256":"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600","urls":["bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc","dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC20.sol":{"keccak256":"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947","urls":["bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7","dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC721.sol":{"keccak256":"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15","urls":["bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f","dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm"],"license":"MIT"},"lib/forge-std/src/interfaces/IMulticall3.sol":{"keccak256":"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a","urls":["bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0","dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC20.sol":{"keccak256":"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b","urls":["bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f","dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC721.sol":{"keccak256":"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9","urls":["bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b","dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN"],"license":"MIT"},"lib/forge-std/src/safeconsole.sol":{"keccak256":"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381","urls":["bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae","dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"keccak256":"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b","urls":["bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec","dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"keccak256":"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3","urls":["bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519","dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"keccak256":"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb","urls":["bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d","dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"keccak256":"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da","urls":["bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708","dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol":{"keccak256":"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5","urls":["bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c","dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":5830,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"stdstore","offset":0,"slot":"0","type":"t_struct(StdStorage)13196_storage"},{"astId":5987,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_failed","offset":0,"slot":"8","type":"t_bool"},{"astId":8488,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"stdChainsInitialized","offset":1,"slot":"8","type":"t_bool"},{"astId":8509,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"chains","offset":0,"slot":"9","type":"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)"},{"astId":8513,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"defaultRpcUrls","offset":0,"slot":"10","type":"t_mapping(t_string_memory_ptr,t_string_storage)"},{"astId":8517,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"idToAlias","offset":0,"slot":"11","type":"t_mapping(t_uint256,t_string_storage)"},{"astId":8520,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"fallbackToDefaultRpcUrls","offset":0,"slot":"12","type":"t_bool"},{"astId":9278,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"gasMeteringOff","offset":1,"slot":"12","type":"t_bool"},{"astId":11315,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"stdstore","offset":0,"slot":"13","type":"t_struct(StdStorage)13196_storage"},{"astId":12183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_excludedContracts","offset":0,"slot":"21","type":"t_array(t_address)dyn_storage"},{"astId":12186,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_excludedSenders","offset":0,"slot":"22","type":"t_array(t_address)dyn_storage"},{"astId":12189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedContracts","offset":0,"slot":"23","type":"t_array(t_address)dyn_storage"},{"astId":12192,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedSenders","offset":0,"slot":"24","type":"t_array(t_address)dyn_storage"},{"astId":12195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_excludedArtifacts","offset":0,"slot":"25","type":"t_array(t_string_storage)dyn_storage"},{"astId":12198,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedArtifacts","offset":0,"slot":"26","type":"t_array(t_string_storage)dyn_storage"},{"astId":12202,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedArtifactSelectors","offset":0,"slot":"27","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12206,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedSelectors","offset":0,"slot":"28","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12210,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedInterfaces","offset":0,"slot":"29","type":"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage"},{"astId":17795,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"IS_TEST","offset":0,"slot":"30","type":"t_bool"},{"astId":5104,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_registry_","offset":1,"slot":"30","type":"t_contract(Registry)2295"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_array(t_bytes4)dyn_storage":{"encoding":"dynamic_array","label":"bytes4[]","numberOfBytes":"32","base":"t_bytes4"},"t_array(t_string_storage)dyn_storage":{"encoding":"dynamic_array","label":"string[]","numberOfBytes":"32","base":"t_string_storage"},"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzInterface[]","numberOfBytes":"32","base":"t_struct(FuzzInterface)12180_storage"},"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzSelector[]","numberOfBytes":"32","base":"t_struct(FuzzSelector)12174_storage"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_contract(Registry)2295":{"encoding":"inplace","label":"contract Registry","numberOfBytes":"20"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_mapping(t_string_memory_ptr,t_string_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => string)","numberOfBytes":"32","value":"t_string_storage"},"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => struct StdChains.Chain)","numberOfBytes":"32","value":"t_struct(Chain)8504_storage"},"t_mapping(t_uint256,t_string_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => string)","numberOfBytes":"32","value":"t_string_storage"},"t_string_memory_ptr":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Chain)8504_storage":{"encoding":"inplace","label":"struct StdChains.Chain","numberOfBytes":"128","members":[{"astId":8497,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":8499,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"chainId","offset":0,"slot":"1","type":"t_uint256"},{"astId":8501,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"chainAlias","offset":0,"slot":"2","type":"t_string_storage"},{"astId":8503,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"rpcUrl","offset":0,"slot":"3","type":"t_string_storage"}]},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(FuzzInterface)12180_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzInterface","numberOfBytes":"64","members":[{"astId":12176,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12179,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"artifacts","offset":0,"slot":"1","type":"t_array(t_string_storage)dyn_storage"}]},"t_struct(FuzzSelector)12174_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzSelector","numberOfBytes":"64","members":[{"astId":12170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12173,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"selectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol","id":5297,"exportedSymbols":{"Accounts":[5026],"Metadata":[3098],"Registry":[2295],"RegistrySetup":[5132],"RegistrySetupFull":[5296],"StdAssertions":[8464],"StdChains":[9246],"StdCheats":[12099],"StdInvariant":[12424],"StdStorage":[13196],"StdStyle":[16366],"StdUtils":[17744],"Test":[17796],"TestBase":[5834],"Vm":[21446],"console":[29510],"console2":[37635],"safeconsole":[52360],"stdError":[12165],"stdJson":[13016],"stdMath":[13158],"stdStorage":[15155],"stdToml":[16958]},"nodeType":"SourceUnit","src":"42:2823:17","nodes":[{"id":5089,"nodeType":"PragmaDirective","src":"42:24:17","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":5090,"nodeType":"ImportDirective","src":"68:28:17","nodes":[],"absolutePath":"lib/forge-std/src/Test.sol","file":"forge-std/Test.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":17797,"symbolAliases":[],"unitAlias":""},{"id":5092,"nodeType":"ImportDirective","src":"98:62:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Registry.sol","file":"../../../contracts/core/Registry.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":2296,"symbolAliases":[{"foreign":{"id":5091,"name":"Registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2295,"src":"106:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5094,"nodeType":"ImportDirective","src":"161:72:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../../../contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":5093,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"169:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5096,"nodeType":"ImportDirective","src":"234:40:17","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"./Accounts.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":5095,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"242:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5132,"nodeType":"ContractDefinition","src":"393:304:17","nodes":[{"id":5104,"nodeType":"VariableDeclaration","src":"440:28:17","nodes":[],"constant":false,"mutability":"mutable","name":"_registry_","nameLocation":"458:10:17","scope":5132,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5103,"nodeType":"UserDefinedTypeName","pathNode":{"id":5102,"name":"Registry","nameLocations":["440:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"440:8:17"},"referencedDeclaration":2295,"src":"440:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"},{"id":5122,"nodeType":"FunctionDefinition","src":"475:129:17","nodes":[],"body":{"id":5121,"nodeType":"Block","src":"511:93:17","nodes":[],"statements":[{"expression":{"id":5112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5107,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"521:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"id":5110,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"534:12:17","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_Registry_$2295_$","typeString":"function () returns (contract Registry)"},"typeName":{"id":5109,"nodeType":"UserDefinedTypeName","pathNode":{"id":5108,"name":"Registry","nameLocations":["538:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"538:8:17"},"referencedDeclaration":2295,"src":"538:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}},"id":5111,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"534:14:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"src":"521:27:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5113,"nodeType":"ExpressionStatement","src":"521:27:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5117,"name":"registry_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4675,"src":"580:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"580:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5114,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"558:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"569:10:17","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":1578,"src":"558:21:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"558:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5120,"nodeType":"ExpressionStatement","src":"558:39:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetup","nameLocation":"484:15:17","parameters":{"id":5105,"nodeType":"ParameterList","parameters":[],"src":"499:2:17"},"returnParameters":{"id":5106,"nodeType":"ParameterList","parameters":[],"src":"511:0:17"},"scope":5132,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5131,"nodeType":"FunctionDefinition","src":"610:85:17","nodes":[],"body":{"id":5130,"nodeType":"Block","src":"661:34:17","nodes":[],"statements":[{"expression":{"id":5128,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"678:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"functionReturnParameters":5127,"id":5129,"nodeType":"Return","src":"671:17:17"}]},"functionSelector":"7b103999","implemented":true,"kind":"function","modifiers":[],"name":"registry","nameLocation":"619:8:17","parameters":{"id":5123,"nodeType":"ParameterList","parameters":[],"src":"627:2:17"},"returnParameters":{"id":5127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5126,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5131,"src":"651:8:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5125,"nodeType":"UserDefinedTypeName","pathNode":{"id":5124,"name":"Registry","nameLocations":["651:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"651:8:17"},"referencedDeclaration":2295,"src":"651:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"}],"src":"650:10:17"},"scope":5132,"stateMutability":"view","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5098,"name":"Test","nameLocations":["419:4:17"],"nodeType":"IdentifierPath","referencedDeclaration":17796,"src":"419:4:17"},"id":5099,"nodeType":"InheritanceSpecifier","src":"419:4:17"},{"baseName":{"id":5100,"name":"Accounts","nameLocations":["425:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"425:8:17"},"id":5101,"nodeType":"InheritanceSpecifier","src":"425:8:17"}],"canonicalName":"RegistrySetup","contractDependencies":[],"contractKind":"contract","documentation":{"id":5097,"nodeType":"StructuredDocumentation","src":"276:117:17","text":"@title RegistrySetup\n @notice This contract is used to setup an empty Registry contract for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetup","nameLocation":"402:13:17","scope":5297,"usedErrors":[]},{"id":5296,"nodeType":"ContractDefinition","src":"833:2031:17","nodes":[{"id":5137,"nodeType":"VariableDeclaration","src":"883:32:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId_","nameLocation":"900:15:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5136,"name":"bytes32","nodeType":"ElementaryTypeName","src":"883:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5139,"nodeType":"VariableDeclaration","src":"921:36:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileAnchor_","nameLocation":"938:19:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5138,"name":"address","nodeType":"ElementaryTypeName","src":"921:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5141,"nodeType":"VariableDeclaration","src":"964:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Id_","nameLocation":"981:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5140,"name":"bytes32","nodeType":"ElementaryTypeName","src":"964:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5143,"nodeType":"VariableDeclaration","src":"999:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Anchor_","nameLocation":"1016:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5142,"name":"address","nodeType":"ElementaryTypeName","src":"999:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5145,"nodeType":"VariableDeclaration","src":"1039:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Id_","nameLocation":"1056:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5144,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1039:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5147,"nodeType":"VariableDeclaration","src":"1074:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Anchor_","nameLocation":"1091:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5146,"name":"address","nodeType":"ElementaryTypeName","src":"1074:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5247,"nodeType":"FunctionDefinition","src":"1114:930:17","nodes":[],"body":{"id":5246,"nodeType":"Block","src":"1154:890:17","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":5150,"name":"__RegistrySetup","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5122,"src":"1164:15:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":5151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1164:17:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5152,"nodeType":"ExpressionStatement","src":"1164:17:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5156,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1201:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1201:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5153,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1192:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1195:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1192:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1192:22:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5159,"nodeType":"ExpressionStatement","src":"1192:22:17"},{"expression":{"id":5174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5160,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1224:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5163,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1280:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"506f6f6c2050726f66696c652031","id":5164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1283:16:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":5166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1321:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":5167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1333:14:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":5165,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1301:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5168,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1311:8:17","1324:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1301:48:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5169,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1351:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5170,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1351:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5171,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4817,"src":"1365:13:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5172,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:15:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5161,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1242:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1253:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1242:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1242:148:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1224:166:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5175,"nodeType":"ExpressionStatement","src":"1224:166:17"},{"expression":{"id":5182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5176,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"1400:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5179,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1448:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5177,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1422:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5178,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1433:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1422:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5180,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1422:42:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5181,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1465:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1422:49:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1400:71:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5183,"nodeType":"ExpressionStatement","src":"1400:71:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5187,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1491:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1491:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5184,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1482:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1485:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1482:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1482:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5190,"nodeType":"ExpressionStatement","src":"1482:26:17"},{"expression":{"id":5205,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5191,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1518:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5194,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1571:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652031","id":5195,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1574:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},"value":"Profile 1"},{"arguments":[{"hexValue":"31","id":5197,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1607:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6531","id":5198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1619:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""},"value":"Profile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""}],"id":5196,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1587:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1597:8:17","1610:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1587:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5200,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1633:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1633:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5202,"name":"profile1_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4891,"src":"1651:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1651:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5192,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1533:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5193,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1544:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1533:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1533:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1518:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5206,"nodeType":"ExpressionStatement","src":"1518:161:17"},{"expression":{"id":5213,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5207,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"1689:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5210,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1734:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5208,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1708:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1719:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1708:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1708:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1748:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1708:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1689:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5214,"nodeType":"ExpressionStatement","src":"1689:65:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5218,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1774:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1774:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5215,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1765:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1768:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1765:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1765:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5221,"nodeType":"ExpressionStatement","src":"1765:26:17"},{"expression":{"id":5236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5222,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"1801:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1854:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652032","id":5226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1857:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},"value":"Profile 2"},{"arguments":[{"hexValue":"31","id":5228,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1890:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6532","id":5229,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1902:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""},"value":"Profile2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""}],"id":5227,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1870:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5230,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1880:8:17","1893:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1870:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5231,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1916:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1916:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5233,"name":"profile2_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4965,"src":"1934:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1934:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5223,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1816:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1827:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1816:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5235,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1816:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1801:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5237,"nodeType":"ExpressionStatement","src":"1801:161:17"},{"expression":{"id":5244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5238,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"1972:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5241,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2017:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5239,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1991:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2002:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1991:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1991:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2031:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1991:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1972:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5245,"nodeType":"ExpressionStatement","src":"1972:65:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetupFull","nameLocation":"1123:19:17","parameters":{"id":5148,"nodeType":"ParameterList","parameters":[],"src":"1142:2:17"},"returnParameters":{"id":5149,"nodeType":"ParameterList","parameters":[],"src":"1154:0:17"},"scope":5296,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5255,"nodeType":"FunctionDefinition","src":"2050:103:17","nodes":[],"body":{"id":5254,"nodeType":"Block","src":"2114:39:17","nodes":[],"statements":[{"expression":{"id":5252,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"2131:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5251,"id":5253,"nodeType":"Return","src":"2124:22:17"}]},"functionSelector":"fd325c60","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id","nameLocation":"2059:14:17","parameters":{"id":5248,"nodeType":"ParameterList","parameters":[],"src":"2073:2:17"},"returnParameters":{"id":5251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5250,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5255,"src":"2105:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5249,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2105:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2104:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5263,"nodeType":"FunctionDefinition","src":"2159:111:17","nodes":[],"body":{"id":5262,"nodeType":"Block","src":"2227:43:17","nodes":[],"statements":[{"expression":{"id":5260,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"2244:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5259,"id":5261,"nodeType":"Return","src":"2237:26:17"}]},"functionSelector":"176effb3","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_anchor","nameLocation":"2168:18:17","parameters":{"id":5256,"nodeType":"ParameterList","parameters":[],"src":"2186:2:17"},"returnParameters":{"id":5259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5258,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5263,"src":"2218:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5257,"name":"address","nodeType":"ElementaryTypeName","src":"2218:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2217:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5271,"nodeType":"FunctionDefinition","src":"2276:97:17","nodes":[],"body":{"id":5270,"nodeType":"Block","src":"2337:36:17","nodes":[],"statements":[{"expression":{"id":5268,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"2354:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5267,"id":5269,"nodeType":"Return","src":"2347:19:17"}]},"functionSelector":"39f56f7f","implemented":true,"kind":"function","modifiers":[],"name":"profile1_id","nameLocation":"2285:11:17","parameters":{"id":5264,"nodeType":"ParameterList","parameters":[],"src":"2296:2:17"},"returnParameters":{"id":5267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5266,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5271,"src":"2328:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5265,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2328:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2327:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5279,"nodeType":"FunctionDefinition","src":"2461:105:17","nodes":[],"body":{"id":5278,"nodeType":"Block","src":"2526:40:17","nodes":[],"statements":[{"expression":{"id":5276,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"2543:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5275,"id":5277,"nodeType":"Return","src":"2536:23:17"}]},"functionSelector":"c5d7d73b","implemented":true,"kind":"function","modifiers":[],"name":"profile1_anchor","nameLocation":"2470:15:17","parameters":{"id":5272,"nodeType":"ParameterList","parameters":[],"src":"2485:2:17"},"returnParameters":{"id":5275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5274,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5279,"src":"2517:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5273,"name":"address","nodeType":"ElementaryTypeName","src":"2517:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2516:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5287,"nodeType":"FunctionDefinition","src":"2572:97:17","nodes":[],"body":{"id":5286,"nodeType":"Block","src":"2633:36:17","nodes":[],"statements":[{"expression":{"id":5284,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2650:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5283,"id":5285,"nodeType":"Return","src":"2643:19:17"}]},"functionSelector":"18540361","implemented":true,"kind":"function","modifiers":[],"name":"profile2_id","nameLocation":"2581:11:17","parameters":{"id":5280,"nodeType":"ParameterList","parameters":[],"src":"2592:2:17"},"returnParameters":{"id":5283,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5282,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5287,"src":"2624:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5281,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2624:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2623:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5295,"nodeType":"FunctionDefinition","src":"2757:105:17","nodes":[],"body":{"id":5294,"nodeType":"Block","src":"2822:40:17","nodes":[],"statements":[{"expression":{"id":5292,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"2839:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5291,"id":5293,"nodeType":"Return","src":"2832:23:17"}]},"functionSelector":"3554642a","implemented":true,"kind":"function","modifiers":[],"name":"profile2_anchor","nameLocation":"2766:15:17","parameters":{"id":5288,"nodeType":"ParameterList","parameters":[],"src":"2781:2:17"},"returnParameters":{"id":5291,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5290,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5295,"src":"2813:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5289,"name":"address","nodeType":"ElementaryTypeName","src":"2813:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2812:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5134,"name":"RegistrySetup","nameLocations":["863:13:17"],"nodeType":"IdentifierPath","referencedDeclaration":5132,"src":"863:13:17"},"id":5135,"nodeType":"InheritanceSpecifier","src":"863:13:17"}],"canonicalName":"RegistrySetupFull","contractDependencies":[],"contractKind":"contract","documentation":{"id":5133,"nodeType":"StructuredDocumentation","src":"699:134:17","text":"@title RegistrySetupFull\n @notice This contract is used to setup a Registry contract with two identities for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5296,5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetupFull","nameLocation":"842:17:17","scope":5297,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":17} \ No newline at end of file +{"abi":[{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"excludeArtifacts","inputs":[],"outputs":[{"name":"excludedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"excludeContracts","inputs":[],"outputs":[{"name":"excludedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"excludeSenders","inputs":[],"outputs":[{"name":"excludedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"failed","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract Registry"}],"stateMutability":"view"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"targetArtifactSelectors","inputs":[],"outputs":[{"name":"targetedArtifactSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetArtifacts","inputs":[],"outputs":[{"name":"targetedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"targetContracts","inputs":[],"outputs":[{"name":"targetedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"targetInterfaces","inputs":[],"outputs":[{"name":"targetedInterfaces_","type":"tuple[]","internalType":"struct StdInvariant.FuzzInterface[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"artifacts","type":"string[]","internalType":"string[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSelectors","inputs":[],"outputs":[{"name":"targetedSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSenders","inputs":[],"outputs":[{"name":"targetedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"event","name":"log","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_address","inputs":[{"name":"","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_bytes","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_bytes32","inputs":[{"name":"","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_int","inputs":[{"name":"","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_address","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_named_bytes","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_named_bytes32","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_named_decimal_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_decimal_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_string","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_named_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_string","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_uint","inputs":[{"name":"","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"logs","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x6080604052600c8054600160ff199182168117909255601e8054909116909117905534801561002d57600080fd5b506114aa8061003d6000396000f3fe608060405234801561001057600080fd5b50600436106101ed5760003560e01c8062b1fad7146101f2578063030e4006146102175780630688b1351461021f5780630f166ad414610227578063174eedde1461022d5780631b96dce6146102345780631e7bcb2e1461023c5780631ed7831c146102445780632ade3880146102595780633e5e3c231461026e5780633f7286f4146102765780634bf4ba211461027e578063587c1243146102865780635aff59991461028e57806366d003ac1461029657806366d9a9a01461029e5780636a38dd0a146102b357806370a32944146102bb57806374d9284e1461022d578063759c9a86146102c357806379e62d0d146102cb5780637b103999146102d35780637b2edf32146102e95780637cbe79ed146102f1578063829e423f1461022d57806385226c81146102f95780638c7408c41461022d5780638e0d1a501461030e5780638e3c249314610316578063916a17c61461031e578063a407c67a14610326578063aa3744bd1461032e578063b5508aa914610336578063ba414fa61461033e578063d1e82b5814610356578063d1f2cd881461035e578063d5bee9f514610366578063da4bf0871461036e578063dac4eb1614610376578063e20c9f711461037e578063ef0d790f14610386578063fa7626d41461038e575b600080fd5b6101fa61039b565b6040516001600160a01b0390911681526020015b60405180910390f35b6101fa6103d0565b6101fa610406565b306101fa565b60006101fa565b6101fa610433565b6101fa610464565b61024c610497565b60405161020e9190611121565b6102616104f9565b60405161020e91906111be565b61024c61063b565b61024c61069b565b61024c6106fb565b6101fa61071e565b6101fa610751565b6101fa610784565b6102a66107b0565b60405161020e919061127e565b6101fa610896565b61024c6108c6565b6101fa61095e565b61024c61098d565b601e5461010090046001600160a01b03166101fa565b6101fa6109f5565b6101fa610a28565b610301610a55565b60405161020e9190611331565b6101fa610b25565b6101fa610b52565b6102a6610b85565b61024c610c6b565b6101fa610cd3565b610301610d00565b610346610dd0565b604051901515815260200161020e565b6101fa610e74565b6101fa610ea7565b6101fa610ed8565b6101fa610f06565b6101fa610f36565b61024c610f67565b6101fa610fc7565b601e546103469060ff1681565b60006103cb6040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610ff9565b905090565b60006103cb60405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610ff9565b60006103cb6040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610ff9565b606060168054806020026020016040519081016040528092919081815260200182805480156104ef57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116104d1575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b8282101561063257600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b8282101561061b57838290600052602060002001805461058e90611393565b80601f01602080910402602001604051908101604052809291908181526020018280546105ba90611393565b80156106075780601f106105dc57610100808354040283529160200191610607565b820191906000526020600020905b8154815290600101906020018083116105ea57829003601f168201915b50505050508152602001906001019061056f565b50505050815250508152602001906001019061051d565b50505050905090565b606060188054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b606060178054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006103cb6040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610ff9565b60006103cb6040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610ff9565b60006103cb604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610ff9565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561087e57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108405790505b505050505081525050815260200190600101906107d4565b60006103cb6040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506108f3610464565b81600081518110610906576109066113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e6109f5565b81600181518110610941576109416113cd565b6001600160a01b0390921660209283029190910190910152919050565b60006103cb6040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506109ba61039b565b816000815181106109cd576109cd6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610896565b60006103cb6040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610ff9565b60006103cb6040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610ff9565b6060601a805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610a9890611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac490611393565b8015610b115780601f10610ae657610100808354040283529160200191610b11565b820191906000526020600020905b815481529060010190602001808311610af457829003601f168201915b505050505081526020019060010190610a79565b60006103cb6040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610ff9565b60006103cb6040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610ff9565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610c5357602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610c155790505b50505050508152505081526020019060010190610ba9565b60408051600280825260608083018452926000929190602083019080368337019050509050610c9861071e565b81600081518110610cab57610cab6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610b52565b60006103cb6040518060400160405280600a815260200169726563697069656e743160b01b815250610ff9565b60606019805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610d4390611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610d6f90611393565b8015610dbc5780601f10610d9157610100808354040283529160200191610dbc565b820191906000526020600020905b815481529060010190602001808311610d9f57829003601f168201915b505050505081526020019060010190610d24565b60085460009060ff1615610de8575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610e49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e6d91906113e3565b1415905090565b60006103cb6040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610ff9565b60006103cb6040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610ff9565b60006103cb6040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610ff9565b606060158054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b60006103cb60405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b60006110048261100b565b5092915050565b6000808260405160200161101f91906113fc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa15801561108a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ae9190611418565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c718906110ea9085908790600401611448565b600060405180830381600087803b15801561110457600080fd5b505af1158015611118573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111625783516001600160a01b03168352928401929184019160010161113d565b50909695505050505050565b60005b83811015611189578181015183820152602001611171565b50506000910152565b600081518084526111aa81602086016020860161116e565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561126e57603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b8181101561125857605f19898503018352611246848651611192565b948e01949350918d019160010161122a565b505050978a0197945050918801916001016111e5565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b8481101561132257898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b8083101561130d5783516001600160e01b0319168252928b019260019290920191908b01906112e3565b50978a019795505050918701916001016112a6565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561138657603f19888603018452611374858351611192565b94509285019290850190600101611358565b5092979650505050505050565b600181811c908216806113a757607f821691505b6020821081036113c757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156113f557600080fd5b5051919050565b6000825161140e81846020870161116e565b9190910192915050565b60006020828403121561142a57600080fd5b81516001600160a01b038116811461144157600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061146c90830184611192565b94935050505056fea2646970667358221220478afc4f43243fe8d2f06b8e29c0559675460385d14266ba15191c7bbc9b4e0364736f6c63430008130033","sourceMap":"393:304:17:-:0;;;3126:44:22;;;3166:4;-1:-1:-1;;3126:44:22;;;;;;;;1016:26:32;;;;;;;;;;;393:304:17;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106101ed5760003560e01c8062b1fad7146101f2578063030e4006146102175780630688b1351461021f5780630f166ad414610227578063174eedde1461022d5780631b96dce6146102345780631e7bcb2e1461023c5780631ed7831c146102445780632ade3880146102595780633e5e3c231461026e5780633f7286f4146102765780634bf4ba211461027e578063587c1243146102865780635aff59991461028e57806366d003ac1461029657806366d9a9a01461029e5780636a38dd0a146102b357806370a32944146102bb57806374d9284e1461022d578063759c9a86146102c357806379e62d0d146102cb5780637b103999146102d35780637b2edf32146102e95780637cbe79ed146102f1578063829e423f1461022d57806385226c81146102f95780638c7408c41461022d5780638e0d1a501461030e5780638e3c249314610316578063916a17c61461031e578063a407c67a14610326578063aa3744bd1461032e578063b5508aa914610336578063ba414fa61461033e578063d1e82b5814610356578063d1f2cd881461035e578063d5bee9f514610366578063da4bf0871461036e578063dac4eb1614610376578063e20c9f711461037e578063ef0d790f14610386578063fa7626d41461038e575b600080fd5b6101fa61039b565b6040516001600160a01b0390911681526020015b60405180910390f35b6101fa6103d0565b6101fa610406565b306101fa565b60006101fa565b6101fa610433565b6101fa610464565b61024c610497565b60405161020e9190611121565b6102616104f9565b60405161020e91906111be565b61024c61063b565b61024c61069b565b61024c6106fb565b6101fa61071e565b6101fa610751565b6101fa610784565b6102a66107b0565b60405161020e919061127e565b6101fa610896565b61024c6108c6565b6101fa61095e565b61024c61098d565b601e5461010090046001600160a01b03166101fa565b6101fa6109f5565b6101fa610a28565b610301610a55565b60405161020e9190611331565b6101fa610b25565b6101fa610b52565b6102a6610b85565b61024c610c6b565b6101fa610cd3565b610301610d00565b610346610dd0565b604051901515815260200161020e565b6101fa610e74565b6101fa610ea7565b6101fa610ed8565b6101fa610f06565b6101fa610f36565b61024c610f67565b6101fa610fc7565b601e546103469060ff1681565b60006103cb6040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250610ff9565b905090565b60006103cb60405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250610ff9565b60006103cb6040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250610ff9565b606060168054806020026020016040519081016040528092919081815260200182805480156104ef57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116104d1575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b8282101561063257600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b8282101561061b57838290600052602060002001805461058e90611393565b80601f01602080910402602001604051908101604052809291908181526020018280546105ba90611393565b80156106075780601f106105dc57610100808354040283529160200191610607565b820191906000526020600020905b8154815290600101906020018083116105ea57829003601f168201915b50505050508152602001906001019061056f565b50505050815250508152602001906001019061051d565b50505050905090565b606060188054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b606060178054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006103cb6040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250610ff9565b60006103cb6040518060400160405280601081526020016f726563697069656e744164647265737360801b815250610ff9565b60006103cb604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250610ff9565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561087e57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108405790505b505050505081525050815260200190600101906107d4565b60006103cb6040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506108f3610464565b81600081518110610906576109066113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e6109f5565b81600181518110610941576109416113cd565b6001600160a01b0390921660209283029190910190910152919050565b60006103cb6040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250610ff9565b604080516002808252606080830184529260009291906020830190803683370190505090506109ba61039b565b816000815181106109cd576109cd6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610896565b60006103cb6040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250610ff9565b60006103cb6040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250610ff9565b6060601a805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610a9890611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610ac490611393565b8015610b115780601f10610ae657610100808354040283529160200191610b11565b820191906000526020600020905b815481529060010190602001808311610af457829003601f168201915b505050505081526020019060010190610a79565b60006103cb6040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250610ff9565b60006103cb6040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250610ff9565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106325760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610c5357602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610c155790505b50505050508152505081526020019060010190610ba9565b60408051600280825260608083018452926000929190602083019080368337019050509050610c9861071e565b81600081518110610cab57610cab6113cd565b60200260200101906001600160a01b031690816001600160a01b03168152505061092e610b52565b60006103cb6040518060400160405280600a815260200169726563697069656e743160b01b815250610ff9565b60606019805480602002602001604051908101604052809291908181526020016000905b82821015610632578382906000526020600020018054610d4390611393565b80601f0160208091040260200160405190810160405280929190818152602001828054610d6f90611393565b8015610dbc5780601f10610d9157610100808354040283529160200191610dbc565b820191906000526020600020905b815481529060010190602001808311610d9f57829003601f168201915b505050505081526020019060010190610d24565b60085460009060ff1615610de8575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610e49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e6d91906113e3565b1415905090565b60006103cb6040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250610ff9565b60006103cb6040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250610ff9565b60006103cb6040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250610ff9565b60006103cb6040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250610ff9565b60006103cb6040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250610ff9565b606060158054806020026020016040519081016040528092919081815260200182805480156104ef576020028201919060005260206000209081546001600160a01b031681526001909101906020018083116104d1575050505050905090565b60006103cb60405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b60006110048261100b565b5092915050565b6000808260405160200161101f91906113fc565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa15801561108a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ae9190611418565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c718906110ea9085908790600401611448565b600060405180830381600087803b15801561110457600080fd5b505af1158015611118573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111625783516001600160a01b03168352928401929184019160010161113d565b50909695505050505050565b60005b83811015611189578181015183820152602001611171565b50506000910152565b600081518084526111aa81602086016020860161116e565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561126e57603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b8181101561125857605f19898503018352611246848651611192565b948e01949350918d019160010161122a565b505050978a0197945050918801916001016111e5565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b8481101561132257898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b8083101561130d5783516001600160e01b0319168252928b019260019290920191908b01906112e3565b50978a019795505050918701916001016112a6565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561138657603f19888603018452611374858351611192565b94509285019290850190600101611358565b5092979650505050505050565b600181811c908216806113a757607f821691505b6020821081036113c757634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156113f557600080fd5b5051919050565b6000825161140e81846020870161116e565b9190910192915050565b60006020828403121561142a57600080fd5b81516001600160a01b038116811461144157600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061146c90830184611192565b94935050505056fea2646970667358221220478afc4f43243fe8d2f06b8e29c0559675460385d14266ba15191c7bbc9b4e0364736f6c63430008130033","sourceMap":"393:304:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;178:32:136;;;160:51;;148:2;133:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;3126:109;;;:::i;2554:113::-;;;:::i;2452:134:25:-;;;:::i;:::-;;;;;;;:::i;3360:151::-;;;:::i;:::-;;;;;;;:::i;3221:133::-;;;:::i;2922:141::-;;;:::i;1331:118:15:-;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;2738:178:25:-;;;:::i;:::-;;;;;;;:::i;1876:107:15:-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;610:85:17:-;678:10;;;;;-1:-1:-1;;;;;678:10:17;610:85;;2673:113:15;;;:::i;439:101::-;;;:::i;2592:140:25:-;;;:::i;:::-;;;;;;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;3069:146:25:-;;;:::i;3604:241:15:-;;;:::i;3938:101::-;;;:::i;2157:141:25:-;;;:::i;1243:204:21:-;;;:::i;:::-;;;5937:14:136;;5930:22;5912:41;;5900:2;5885:18;1243:204:21;5772:187:136;1644:113:15;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;2304:142:25:-;;;:::i;3241:119:15:-;;;:::i;1016:26:32:-;;;;;;;;;1763:107:15;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;2452:134:25:-;2499:33;2563:16;2544:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2544:35:25;;;;;;;;;;;;;;;;;;;;;;;2452:134;:::o;3360:151::-;3409:42;3485:19;3463:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3463:41:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3360:151;:::o;3221:133::-;3267:33;3331:16;3312:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3312:35:25;;;;;;;;;;;;;;;;;;;;;;3221:133;:::o;2922:141::-;2970:35;3038:18;3017:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3017:39:25;;;;;;;;;;;;;;;;;;;;;;2922:141;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;2738:178:25:-;2794:48;2883:26;2854:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1876:107:15;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;2592:140:25:-;2640:34;2707:18;2686:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1537:101:15;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3069:146:25:-;3117:40;3190:18;3169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3604:241:15;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;2157:141:25:-;2206:34;2273:18;2252:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1243:204:21;1302:7;;1282:4;;1302:7;;1298:143;;;-1:-1:-1;1332:7:21;;;;;1243:204::o;1298:143::-;1377:39;;-1:-1:-1;;;1377:39:21;;:7;:39;;;7011:51:136;;;-1:-1:-1;;;7078:18:136;;;7071:34;1428:1:21;;1377:7;;6984:18:136;;1377:39:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:53;;1370:60;;1243:204;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;2304:142:25:-;2353:35;2421:18;2400:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2400:39:25;;;;;;;;;;;;;;;;;;;;;;2304:142;:::o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;20158:242::-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;7745:25:136;;;20293:33:23;-1:-1:-1;20344:7:23;;;;7718:18:136;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;222:658:136:-;393:2;445:21;;;515:13;;418:18;;;537:22;;;364:4;;393:2;616:15;;;;590:2;575:18;;;364:4;659:195;673:6;670:1;667:13;659:195;;;738:13;;-1:-1:-1;;;;;734:39:136;722:52;;829:15;;;;794:12;;;;770:1;688:9;659:195;;;-1:-1:-1;871:3:136;;222:658;-1:-1:-1;;;;;;222:658:136:o;885:250::-;970:1;980:113;994:6;991:1;988:13;980:113;;;1070:11;;;1064:18;1051:11;;;1044:39;1016:2;1009:10;980:113;;;-1:-1:-1;;1127:1:136;1109:16;;1102:27;885:250::o;1140:271::-;1182:3;1220:5;1214:12;1247:6;1242:3;1235:19;1263:76;1332:6;1325:4;1320:3;1316:14;1309:4;1302:5;1298:16;1263:76;:::i;:::-;1393:2;1372:15;-1:-1:-1;;1368:29:136;1359:39;;;;1400:4;1355:50;;1140:271;-1:-1:-1;;1140:271:136:o;1416:1744::-;1651:2;1703:21;;;1773:13;;1676:18;;;1795:22;;;1622:4;;1651:2;1836;;1854:18;;;;1891:1;1934:15;;;1919:31;;1915:40;;1978:15;;;1622:4;;2042:1089;2058:6;2053:3;2050:15;2042:1089;;;-1:-1:-1;;2127:22:136;;;2123:36;2111:49;;2183:13;;2270:9;;-1:-1:-1;;;;;2266:35:136;2251:51;;2341:11;;2335:18;2373:15;;;2366:27;;;2454:19;;2223:15;;;2486:24;;;2667:21;;;;2533:2;2615:17;;;2603:30;;2599:39;;;2557:15;;;;2712:1;2726:296;2742:8;2737:3;2734:17;2726:296;;;2848:2;2844:7;2835:6;2827;2823:19;2819:33;2812:5;2805:48;2880:42;2915:6;2904:8;2898:15;2880:42;:::i;:::-;2951:17;;;;2870:52;-1:-1:-1;2994:14:136;;;;2770:1;2761:11;2726:296;;;-1:-1:-1;;;3109:12:136;;;;3045:6;-1:-1:-1;;3074:15:136;;;;2084:1;2075:11;2042:1089;;;-1:-1:-1;3148:6:136;;1416:1744;-1:-1:-1;;;;;;;;;;1416:1744:136:o;3165:1569::-;3369:4;3398:2;3438;3427:9;3423:18;3468:2;3457:9;3450:21;3491:6;3526;3520:13;3557:6;3549;3542:22;3583:2;3573:12;;3616:2;3605:9;3601:18;3594:25;;3678:2;3668:6;3665:1;3661:14;3650:9;3646:30;3642:39;3716:2;3708:6;3704:15;3737:1;3758;3768:937;3784:6;3779:3;3776:15;3768:937;;;3853:22;;;-1:-1:-1;;3849:36:136;3837:49;;3909:13;;3996:9;;-1:-1:-1;;;;;3992:35:136;3977:51;;4067:11;;4061:18;4099:15;;;4092:27;;;4180:19;;3949:15;;;4212:24;;;4302:21;;;;4347:1;;4270:2;4258:15;;;4361:236;4377:8;4372:3;4369:17;4361:236;;;4458:15;;-1:-1:-1;;;;;;4454:42:136;4440:57;;4566:17;;;;4405:1;4396:11;;;;;4523:14;;;;4361:236;;;-1:-1:-1;4683:12:136;;;;4620:5;-1:-1:-1;;;4648:15:136;;;;3810:1;3801:11;3768:937;;;-1:-1:-1;4722:6:136;;3165:1569;-1:-1:-1;;;;;;;;;3165:1569:136:o;4964:803::-;5126:4;5155:2;5195;5184:9;5180:18;5225:2;5214:9;5207:21;5248:6;5283;5277:13;5314:6;5306;5299:22;5352:2;5341:9;5337:18;5330:25;;5414:2;5404:6;5401:1;5397:14;5386:9;5382:30;5378:39;5364:53;;5452:2;5444:6;5440:15;5473:1;5483:255;5497:6;5494:1;5491:13;5483:255;;;5590:2;5586:7;5574:9;5566:6;5562:22;5558:36;5553:3;5546:49;5618:40;5651:6;5642;5636:13;5618:40;:::i;:::-;5608:50;-1:-1:-1;5716:12:136;;;;5681:15;;;;5519:1;5512:9;5483:255;;;-1:-1:-1;5755:6:136;;4964:803;-1:-1:-1;;;;;;;4964:803:136:o;6188:380::-;6267:1;6263:12;;;;6310;;;6331:61;;6385:4;6377:6;6373:17;6363:27;;6331:61;6438:2;6430:6;6427:14;6407:18;6404:38;6401:161;;6484:10;6479:3;6475:20;6472:1;6465:31;6519:4;6516:1;6509:15;6547:4;6544:1;6537:15;6401:161;;6188:380;;;:::o;6705:127::-;6766:10;6761:3;6757:20;6754:1;6747:31;6797:4;6794:1;6787:15;6821:4;6818:1;6811:15;7116:184;7186:6;7239:2;7227:9;7218:7;7214:23;7210:32;7207:52;;;7255:1;7252;7245:12;7207:52;-1:-1:-1;7278:16:136;;7116:184;-1:-1:-1;7116:184:136:o;7305:289::-;7436:3;7474:6;7468:13;7490:66;7549:6;7544:3;7537:4;7529:6;7525:17;7490:66;:::i;:::-;7572:16;;;;;7305:289;-1:-1:-1;;7305:289:136:o;7781:290::-;7851:6;7904:2;7892:9;7883:7;7879:23;7875:32;7872:52;;;7920:1;7917;7910:12;7872:52;7946:16;;-1:-1:-1;;;;;7991:31:136;;7981:42;;7971:70;;8037:1;8034;8027:12;7971:70;8060:5;7781:290;-1:-1:-1;;;7781:290:136:o;8076:317::-;-1:-1:-1;;;;;8253:32:136;;8235:51;;8322:2;8317;8302:18;;8295:30;;;-1:-1:-1;;8342:45:136;;8368:18;;8360:6;8342:45;:::i;:::-;8334:53;8076:317;-1:-1:-1;;;;8076:317:136:o","linkReferences":{}},"methodIdentifiers":{"IS_TEST()":"fa7626d4","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","excludeArtifacts()":"b5508aa9","excludeContracts()":"e20c9f71","excludeSenders()":"1ed7831c","failed()":"ba414fa6","local()":"0f166ad4","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry()":"7b103999","registry_owner()":"dac4eb16","targetArtifactSelectors()":"66d9a9a0","targetArtifacts()":"85226c81","targetContracts()":"3f7286f4","targetInterfaces()":"2ade3880","targetSelectors()":"916a17c6","targetSenders()":"3e5e3c23"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"excludedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract Registry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifactSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedArtifactSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"targetedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetInterfaces\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"artifacts\",\"type\":\"string[]\"}],\"internalType\":\"struct StdInvariant.FuzzInterface[]\",\"name\":\"targetedInterfaces_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"RegistrySetup\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"This contract is used to setup an empty Registry contract for testing purposes.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":\"RegistrySetup\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Anchor.sol\":{\"keccak256\":\"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139\",\"dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H\"]},\"lib/allo-v2/contracts/core/Registry.sol\":{\"keccak256\":\"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283\",\"dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":{\"keccak256\":\"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb\",\"dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c\",\"dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b\",\"dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdInvariant.sol\":{\"keccak256\":\"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d\",\"dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54\",\"dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/StdStyle.sol\":{\"keccak256\":\"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8\",\"dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK\"]},\"lib/forge-std/src/StdToml.sol\":{\"keccak256\":\"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d\",\"dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61\",\"dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e\",\"dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/forge-std/src/interfaces/IERC165.sol\":{\"keccak256\":\"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc\",\"dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT\"]},\"lib/forge-std/src/interfaces/IERC20.sol\":{\"keccak256\":\"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7\",\"dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9\"]},\"lib/forge-std/src/interfaces/IERC721.sol\":{\"keccak256\":\"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f\",\"dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm\"]},\"lib/forge-std/src/interfaces/IMulticall3.sol\":{\"keccak256\":\"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0\",\"dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2\"]},\"lib/forge-std/src/mocks/MockERC20.sol\":{\"keccak256\":\"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f\",\"dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw\"]},\"lib/forge-std/src/mocks/MockERC721.sol\":{\"keccak256\":\"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b\",\"dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN\"]},\"lib/forge-std/src/safeconsole.sol\":{\"keccak256\":\"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae\",\"dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol\":{\"keccak256\":\"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519\",\"dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol\":{\"keccak256\":\"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d\",\"dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol\":{\"keccak256\":\"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c\",\"dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log","anonymous":false},{"inputs":[{"internalType":"address","name":"","type":"address","indexed":false}],"type":"event","name":"log_address","anonymous":false},{"inputs":[{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"log_bytes","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32","indexed":false}],"type":"event","name":"log_bytes32","anonymous":false},{"inputs":[{"internalType":"int256","name":"","type":"int256","indexed":false}],"type":"event","name":"log_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address","name":"val","type":"address","indexed":false}],"type":"event","name":"log_named_address","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes","name":"val","type":"bytes","indexed":false}],"type":"event","name":"log_named_bytes","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes32","name":"val","type":"bytes32","indexed":false}],"type":"event","name":"log_named_bytes32","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false}],"type":"event","name":"log_named_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"string","name":"val","type":"string","indexed":false}],"type":"event","name":"log_named_string","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false}],"type":"event","name":"log_named_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log_string","anonymous":false},{"inputs":[{"internalType":"uint256","name":"","type":"uint256","indexed":false}],"type":"event","name":"log_uint","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"logs","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_TEST","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeArtifacts","outputs":[{"internalType":"string[]","name":"excludedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeContracts","outputs":[{"internalType":"address[]","name":"excludedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeSenders","outputs":[{"internalType":"address[]","name":"excludedSenders_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"failed","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract Registry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifactSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedArtifactSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifacts","outputs":[{"internalType":"string[]","name":"targetedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetContracts","outputs":[{"internalType":"address[]","name":"targetedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetInterfaces","outputs":[{"internalType":"struct StdInvariant.FuzzInterface[]","name":"targetedInterfaces_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"string[]","name":"artifacts","type":"string[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSenders","outputs":[{"internalType":"address[]","name":"targetedSenders_","type":"address[]"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":"RegistrySetup"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Anchor.sol":{"keccak256":"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd","urls":["bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139","dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/Registry.sol":{"keccak256":"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998","urls":["bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283","dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":{"keccak256":"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b","urls":["bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb","dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j"],"license":"AGPL-3.0-only"},"lib/forge-std/src/Base.sol":{"keccak256":"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c","urls":["bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224","dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"],"license":"MIT"},"lib/forge-std/src/StdAssertions.sol":{"keccak256":"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361","urls":["bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c","dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k"],"license":"MIT"},"lib/forge-std/src/StdChains.sol":{"keccak256":"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef","urls":["bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b","dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj"],"license":"MIT"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdError.sol":{"keccak256":"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77","urls":["bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6","dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"],"license":"MIT"},"lib/forge-std/src/StdInvariant.sol":{"keccak256":"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6","urls":["bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d","dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz"],"license":"MIT"},"lib/forge-std/src/StdJson.sol":{"keccak256":"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d","urls":["bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54","dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp"],"license":"MIT"},"lib/forge-std/src/StdMath.sol":{"keccak256":"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2","urls":["bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92","dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/StdStyle.sol":{"keccak256":"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d","urls":["bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8","dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK"],"license":"MIT"},"lib/forge-std/src/StdToml.sol":{"keccak256":"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab","urls":["bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d","dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy"],"license":"MIT"},"lib/forge-std/src/StdUtils.sol":{"keccak256":"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0","urls":["bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61","dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX"],"license":"MIT"},"lib/forge-std/src/Test.sol":{"keccak256":"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe","urls":["bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e","dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC165.sol":{"keccak256":"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600","urls":["bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc","dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC20.sol":{"keccak256":"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947","urls":["bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7","dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC721.sol":{"keccak256":"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15","urls":["bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f","dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm"],"license":"MIT"},"lib/forge-std/src/interfaces/IMulticall3.sol":{"keccak256":"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a","urls":["bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0","dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC20.sol":{"keccak256":"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b","urls":["bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f","dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC721.sol":{"keccak256":"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9","urls":["bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b","dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN"],"license":"MIT"},"lib/forge-std/src/safeconsole.sol":{"keccak256":"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381","urls":["bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae","dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"keccak256":"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b","urls":["bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec","dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"keccak256":"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3","urls":["bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519","dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"keccak256":"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb","urls":["bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d","dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"keccak256":"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da","urls":["bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708","dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol":{"keccak256":"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5","urls":["bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c","dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":5830,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"stdstore","offset":0,"slot":"0","type":"t_struct(StdStorage)13196_storage"},{"astId":5987,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_failed","offset":0,"slot":"8","type":"t_bool"},{"astId":8488,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"stdChainsInitialized","offset":1,"slot":"8","type":"t_bool"},{"astId":8509,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"chains","offset":0,"slot":"9","type":"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)"},{"astId":8513,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"defaultRpcUrls","offset":0,"slot":"10","type":"t_mapping(t_string_memory_ptr,t_string_storage)"},{"astId":8517,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"idToAlias","offset":0,"slot":"11","type":"t_mapping(t_uint256,t_string_storage)"},{"astId":8520,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"fallbackToDefaultRpcUrls","offset":0,"slot":"12","type":"t_bool"},{"astId":9278,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"gasMeteringOff","offset":1,"slot":"12","type":"t_bool"},{"astId":11315,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"stdstore","offset":0,"slot":"13","type":"t_struct(StdStorage)13196_storage"},{"astId":12183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_excludedContracts","offset":0,"slot":"21","type":"t_array(t_address)dyn_storage"},{"astId":12186,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_excludedSenders","offset":0,"slot":"22","type":"t_array(t_address)dyn_storage"},{"astId":12189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedContracts","offset":0,"slot":"23","type":"t_array(t_address)dyn_storage"},{"astId":12192,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedSenders","offset":0,"slot":"24","type":"t_array(t_address)dyn_storage"},{"astId":12195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_excludedArtifacts","offset":0,"slot":"25","type":"t_array(t_string_storage)dyn_storage"},{"astId":12198,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedArtifacts","offset":0,"slot":"26","type":"t_array(t_string_storage)dyn_storage"},{"astId":12202,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedArtifactSelectors","offset":0,"slot":"27","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12206,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedSelectors","offset":0,"slot":"28","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12210,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_targetedInterfaces","offset":0,"slot":"29","type":"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage"},{"astId":17795,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"IS_TEST","offset":0,"slot":"30","type":"t_bool"},{"astId":5104,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_registry_","offset":1,"slot":"30","type":"t_contract(Registry)2295"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_array(t_bytes4)dyn_storage":{"encoding":"dynamic_array","label":"bytes4[]","numberOfBytes":"32","base":"t_bytes4"},"t_array(t_string_storage)dyn_storage":{"encoding":"dynamic_array","label":"string[]","numberOfBytes":"32","base":"t_string_storage"},"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzInterface[]","numberOfBytes":"32","base":"t_struct(FuzzInterface)12180_storage"},"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzSelector[]","numberOfBytes":"32","base":"t_struct(FuzzSelector)12174_storage"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_contract(Registry)2295":{"encoding":"inplace","label":"contract Registry","numberOfBytes":"20"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_mapping(t_string_memory_ptr,t_string_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => string)","numberOfBytes":"32","value":"t_string_storage"},"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => struct StdChains.Chain)","numberOfBytes":"32","value":"t_struct(Chain)8504_storage"},"t_mapping(t_uint256,t_string_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => string)","numberOfBytes":"32","value":"t_string_storage"},"t_string_memory_ptr":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Chain)8504_storage":{"encoding":"inplace","label":"struct StdChains.Chain","numberOfBytes":"128","members":[{"astId":8497,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":8499,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"chainId","offset":0,"slot":"1","type":"t_uint256"},{"astId":8501,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"chainAlias","offset":0,"slot":"2","type":"t_string_storage"},{"astId":8503,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"rpcUrl","offset":0,"slot":"3","type":"t_string_storage"}]},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(FuzzInterface)12180_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzInterface","numberOfBytes":"64","members":[{"astId":12176,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12179,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"artifacts","offset":0,"slot":"1","type":"t_array(t_string_storage)dyn_storage"}]},"t_struct(FuzzSelector)12174_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzSelector","numberOfBytes":"64","members":[{"astId":12170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12173,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"selectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetup","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol","id":5297,"exportedSymbols":{"Accounts":[5026],"Metadata":[3098],"Registry":[2295],"RegistrySetup":[5132],"RegistrySetupFull":[5296],"StdAssertions":[8464],"StdChains":[9246],"StdCheats":[12099],"StdInvariant":[12424],"StdStorage":[13196],"StdStyle":[16366],"StdUtils":[17744],"Test":[17796],"TestBase":[5834],"Vm":[21446],"console":[29510],"console2":[37635],"safeconsole":[52360],"stdError":[12165],"stdJson":[13016],"stdMath":[13158],"stdStorage":[15155],"stdToml":[16958]},"nodeType":"SourceUnit","src":"42:2823:17","nodes":[{"id":5089,"nodeType":"PragmaDirective","src":"42:24:17","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":5090,"nodeType":"ImportDirective","src":"68:28:17","nodes":[],"absolutePath":"lib/forge-std/src/Test.sol","file":"forge-std/Test.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":17797,"symbolAliases":[],"unitAlias":""},{"id":5092,"nodeType":"ImportDirective","src":"98:62:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Registry.sol","file":"../../../contracts/core/Registry.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":2296,"symbolAliases":[{"foreign":{"id":5091,"name":"Registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2295,"src":"106:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5094,"nodeType":"ImportDirective","src":"161:72:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../../../contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":5093,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"169:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5096,"nodeType":"ImportDirective","src":"234:40:17","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"./Accounts.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":5095,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"242:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5132,"nodeType":"ContractDefinition","src":"393:304:17","nodes":[{"id":5104,"nodeType":"VariableDeclaration","src":"440:28:17","nodes":[],"constant":false,"mutability":"mutable","name":"_registry_","nameLocation":"458:10:17","scope":5132,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5103,"nodeType":"UserDefinedTypeName","pathNode":{"id":5102,"name":"Registry","nameLocations":["440:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"440:8:17"},"referencedDeclaration":2295,"src":"440:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"},{"id":5122,"nodeType":"FunctionDefinition","src":"475:129:17","nodes":[],"body":{"id":5121,"nodeType":"Block","src":"511:93:17","nodes":[],"statements":[{"expression":{"id":5112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5107,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"521:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"id":5110,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"534:12:17","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_Registry_$2295_$","typeString":"function () returns (contract Registry)"},"typeName":{"id":5109,"nodeType":"UserDefinedTypeName","pathNode":{"id":5108,"name":"Registry","nameLocations":["538:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"538:8:17"},"referencedDeclaration":2295,"src":"538:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}},"id":5111,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"534:14:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"src":"521:27:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5113,"nodeType":"ExpressionStatement","src":"521:27:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5117,"name":"registry_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4675,"src":"580:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"580:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5114,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"558:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"569:10:17","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":1578,"src":"558:21:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"558:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5120,"nodeType":"ExpressionStatement","src":"558:39:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetup","nameLocation":"484:15:17","parameters":{"id":5105,"nodeType":"ParameterList","parameters":[],"src":"499:2:17"},"returnParameters":{"id":5106,"nodeType":"ParameterList","parameters":[],"src":"511:0:17"},"scope":5132,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5131,"nodeType":"FunctionDefinition","src":"610:85:17","nodes":[],"body":{"id":5130,"nodeType":"Block","src":"661:34:17","nodes":[],"statements":[{"expression":{"id":5128,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"678:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"functionReturnParameters":5127,"id":5129,"nodeType":"Return","src":"671:17:17"}]},"functionSelector":"7b103999","implemented":true,"kind":"function","modifiers":[],"name":"registry","nameLocation":"619:8:17","parameters":{"id":5123,"nodeType":"ParameterList","parameters":[],"src":"627:2:17"},"returnParameters":{"id":5127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5126,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5131,"src":"651:8:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5125,"nodeType":"UserDefinedTypeName","pathNode":{"id":5124,"name":"Registry","nameLocations":["651:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"651:8:17"},"referencedDeclaration":2295,"src":"651:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"}],"src":"650:10:17"},"scope":5132,"stateMutability":"view","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5098,"name":"Test","nameLocations":["419:4:17"],"nodeType":"IdentifierPath","referencedDeclaration":17796,"src":"419:4:17"},"id":5099,"nodeType":"InheritanceSpecifier","src":"419:4:17"},{"baseName":{"id":5100,"name":"Accounts","nameLocations":["425:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"425:8:17"},"id":5101,"nodeType":"InheritanceSpecifier","src":"425:8:17"}],"canonicalName":"RegistrySetup","contractDependencies":[],"contractKind":"contract","documentation":{"id":5097,"nodeType":"StructuredDocumentation","src":"276:117:17","text":"@title RegistrySetup\n @notice This contract is used to setup an empty Registry contract for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetup","nameLocation":"402:13:17","scope":5297,"usedErrors":[]},{"id":5296,"nodeType":"ContractDefinition","src":"833:2031:17","nodes":[{"id":5137,"nodeType":"VariableDeclaration","src":"883:32:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId_","nameLocation":"900:15:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5136,"name":"bytes32","nodeType":"ElementaryTypeName","src":"883:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5139,"nodeType":"VariableDeclaration","src":"921:36:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileAnchor_","nameLocation":"938:19:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5138,"name":"address","nodeType":"ElementaryTypeName","src":"921:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5141,"nodeType":"VariableDeclaration","src":"964:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Id_","nameLocation":"981:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5140,"name":"bytes32","nodeType":"ElementaryTypeName","src":"964:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5143,"nodeType":"VariableDeclaration","src":"999:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Anchor_","nameLocation":"1016:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5142,"name":"address","nodeType":"ElementaryTypeName","src":"999:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5145,"nodeType":"VariableDeclaration","src":"1039:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Id_","nameLocation":"1056:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5144,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1039:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5147,"nodeType":"VariableDeclaration","src":"1074:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Anchor_","nameLocation":"1091:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5146,"name":"address","nodeType":"ElementaryTypeName","src":"1074:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5247,"nodeType":"FunctionDefinition","src":"1114:930:17","nodes":[],"body":{"id":5246,"nodeType":"Block","src":"1154:890:17","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":5150,"name":"__RegistrySetup","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5122,"src":"1164:15:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":5151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1164:17:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5152,"nodeType":"ExpressionStatement","src":"1164:17:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5156,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1201:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1201:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5153,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1192:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1195:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1192:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1192:22:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5159,"nodeType":"ExpressionStatement","src":"1192:22:17"},{"expression":{"id":5174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5160,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1224:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5163,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1280:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"506f6f6c2050726f66696c652031","id":5164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1283:16:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":5166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1321:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":5167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1333:14:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":5165,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1301:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5168,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1311:8:17","1324:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1301:48:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5169,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1351:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5170,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1351:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5171,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4817,"src":"1365:13:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5172,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:15:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5161,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1242:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1253:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1242:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1242:148:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1224:166:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5175,"nodeType":"ExpressionStatement","src":"1224:166:17"},{"expression":{"id":5182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5176,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"1400:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5179,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1448:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5177,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1422:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5178,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1433:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1422:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5180,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1422:42:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5181,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1465:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1422:49:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1400:71:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5183,"nodeType":"ExpressionStatement","src":"1400:71:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5187,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1491:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1491:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5184,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1482:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1485:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1482:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1482:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5190,"nodeType":"ExpressionStatement","src":"1482:26:17"},{"expression":{"id":5205,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5191,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1518:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5194,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1571:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652031","id":5195,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1574:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},"value":"Profile 1"},{"arguments":[{"hexValue":"31","id":5197,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1607:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6531","id":5198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1619:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""},"value":"Profile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""}],"id":5196,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1587:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1597:8:17","1610:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1587:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5200,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1633:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1633:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5202,"name":"profile1_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4891,"src":"1651:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1651:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5192,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1533:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5193,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1544:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1533:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1533:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1518:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5206,"nodeType":"ExpressionStatement","src":"1518:161:17"},{"expression":{"id":5213,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5207,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"1689:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5210,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1734:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5208,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1708:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1719:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1708:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1708:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1748:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1708:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1689:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5214,"nodeType":"ExpressionStatement","src":"1689:65:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5218,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1774:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1774:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5215,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1765:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1768:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1765:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1765:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5221,"nodeType":"ExpressionStatement","src":"1765:26:17"},{"expression":{"id":5236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5222,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"1801:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1854:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652032","id":5226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1857:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},"value":"Profile 2"},{"arguments":[{"hexValue":"31","id":5228,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1890:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6532","id":5229,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1902:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""},"value":"Profile2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""}],"id":5227,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1870:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5230,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1880:8:17","1893:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1870:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5231,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1916:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1916:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5233,"name":"profile2_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4965,"src":"1934:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1934:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5223,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1816:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1827:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1816:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5235,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1816:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1801:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5237,"nodeType":"ExpressionStatement","src":"1801:161:17"},{"expression":{"id":5244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5238,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"1972:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5241,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2017:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5239,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1991:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2002:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1991:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1991:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2031:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1991:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1972:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5245,"nodeType":"ExpressionStatement","src":"1972:65:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetupFull","nameLocation":"1123:19:17","parameters":{"id":5148,"nodeType":"ParameterList","parameters":[],"src":"1142:2:17"},"returnParameters":{"id":5149,"nodeType":"ParameterList","parameters":[],"src":"1154:0:17"},"scope":5296,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5255,"nodeType":"FunctionDefinition","src":"2050:103:17","nodes":[],"body":{"id":5254,"nodeType":"Block","src":"2114:39:17","nodes":[],"statements":[{"expression":{"id":5252,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"2131:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5251,"id":5253,"nodeType":"Return","src":"2124:22:17"}]},"functionSelector":"fd325c60","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id","nameLocation":"2059:14:17","parameters":{"id":5248,"nodeType":"ParameterList","parameters":[],"src":"2073:2:17"},"returnParameters":{"id":5251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5250,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5255,"src":"2105:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5249,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2105:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2104:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5263,"nodeType":"FunctionDefinition","src":"2159:111:17","nodes":[],"body":{"id":5262,"nodeType":"Block","src":"2227:43:17","nodes":[],"statements":[{"expression":{"id":5260,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"2244:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5259,"id":5261,"nodeType":"Return","src":"2237:26:17"}]},"functionSelector":"176effb3","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_anchor","nameLocation":"2168:18:17","parameters":{"id":5256,"nodeType":"ParameterList","parameters":[],"src":"2186:2:17"},"returnParameters":{"id":5259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5258,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5263,"src":"2218:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5257,"name":"address","nodeType":"ElementaryTypeName","src":"2218:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2217:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5271,"nodeType":"FunctionDefinition","src":"2276:97:17","nodes":[],"body":{"id":5270,"nodeType":"Block","src":"2337:36:17","nodes":[],"statements":[{"expression":{"id":5268,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"2354:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5267,"id":5269,"nodeType":"Return","src":"2347:19:17"}]},"functionSelector":"39f56f7f","implemented":true,"kind":"function","modifiers":[],"name":"profile1_id","nameLocation":"2285:11:17","parameters":{"id":5264,"nodeType":"ParameterList","parameters":[],"src":"2296:2:17"},"returnParameters":{"id":5267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5266,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5271,"src":"2328:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5265,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2328:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2327:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5279,"nodeType":"FunctionDefinition","src":"2461:105:17","nodes":[],"body":{"id":5278,"nodeType":"Block","src":"2526:40:17","nodes":[],"statements":[{"expression":{"id":5276,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"2543:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5275,"id":5277,"nodeType":"Return","src":"2536:23:17"}]},"functionSelector":"c5d7d73b","implemented":true,"kind":"function","modifiers":[],"name":"profile1_anchor","nameLocation":"2470:15:17","parameters":{"id":5272,"nodeType":"ParameterList","parameters":[],"src":"2485:2:17"},"returnParameters":{"id":5275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5274,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5279,"src":"2517:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5273,"name":"address","nodeType":"ElementaryTypeName","src":"2517:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2516:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5287,"nodeType":"FunctionDefinition","src":"2572:97:17","nodes":[],"body":{"id":5286,"nodeType":"Block","src":"2633:36:17","nodes":[],"statements":[{"expression":{"id":5284,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2650:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5283,"id":5285,"nodeType":"Return","src":"2643:19:17"}]},"functionSelector":"18540361","implemented":true,"kind":"function","modifiers":[],"name":"profile2_id","nameLocation":"2581:11:17","parameters":{"id":5280,"nodeType":"ParameterList","parameters":[],"src":"2592:2:17"},"returnParameters":{"id":5283,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5282,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5287,"src":"2624:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5281,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2624:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2623:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5295,"nodeType":"FunctionDefinition","src":"2757:105:17","nodes":[],"body":{"id":5294,"nodeType":"Block","src":"2822:40:17","nodes":[],"statements":[{"expression":{"id":5292,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"2839:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5291,"id":5293,"nodeType":"Return","src":"2832:23:17"}]},"functionSelector":"3554642a","implemented":true,"kind":"function","modifiers":[],"name":"profile2_anchor","nameLocation":"2766:15:17","parameters":{"id":5288,"nodeType":"ParameterList","parameters":[],"src":"2781:2:17"},"returnParameters":{"id":5291,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5290,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5295,"src":"2813:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5289,"name":"address","nodeType":"ElementaryTypeName","src":"2813:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2812:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5134,"name":"RegistrySetup","nameLocations":["863:13:17"],"nodeType":"IdentifierPath","referencedDeclaration":5132,"src":"863:13:17"},"id":5135,"nodeType":"InheritanceSpecifier","src":"863:13:17"}],"canonicalName":"RegistrySetupFull","contractDependencies":[],"contractKind":"contract","documentation":{"id":5133,"nodeType":"StructuredDocumentation","src":"699:134:17","text":"@title RegistrySetupFull\n @notice This contract is used to setup a Registry contract with two identities for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5296,5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetupFull","nameLocation":"842:17:17","scope":5297,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":17} \ No newline at end of file diff --git a/pkg/contracts/out/RegistrySetup.sol/RegistrySetupFull.json b/pkg/contracts/out/RegistrySetup.sol/RegistrySetupFull.json index d4096bb8..758f9afa 100644 --- a/pkg/contracts/out/RegistrySetup.sol/RegistrySetupFull.json +++ b/pkg/contracts/out/RegistrySetup.sol/RegistrySetupFull.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"excludeArtifacts","inputs":[],"outputs":[{"name":"excludedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"excludeContracts","inputs":[],"outputs":[{"name":"excludedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"excludeSenders","inputs":[],"outputs":[{"name":"excludedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"failed","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"poolProfile_anchor","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"poolProfile_id","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_anchor","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"profile1_id","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_anchor","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"profile2_id","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract Registry"}],"stateMutability":"view"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"targetArtifactSelectors","inputs":[],"outputs":[{"name":"targetedArtifactSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetArtifacts","inputs":[],"outputs":[{"name":"targetedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"targetContracts","inputs":[],"outputs":[{"name":"targetedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"targetInterfaces","inputs":[],"outputs":[{"name":"targetedInterfaces_","type":"tuple[]","internalType":"struct StdInvariant.FuzzInterface[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"artifacts","type":"string[]","internalType":"string[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSelectors","inputs":[],"outputs":[{"name":"targetedSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSenders","inputs":[],"outputs":[{"name":"targetedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"event","name":"log","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_address","inputs":[{"name":"","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_bytes","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_bytes32","inputs":[{"name":"","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_int","inputs":[{"name":"","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_address","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_named_bytes","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_named_bytes32","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_named_decimal_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_decimal_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_string","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_named_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_string","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_uint","inputs":[{"name":"","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"logs","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x6080604052600c8054600160ff199182168117909255601e8054909116909117905534801561002d57600080fd5b506115418061003d6000396000f3fe608060405234801561001057600080fd5b506004361061022f5760003560e01c8062b1fad714610234578063030e4006146102595780630688b135146102615780630f166ad414610269578063174eedde1461026f578063176effb31461027657806318540361146102875780631b96dce6146102995780631e7bcb2e146102a15780631ed7831c146102a95780632ade3880146102be5780633554642a146102d357806339f56f7f146102e45780633e5e3c23146102ec5780633f7286f4146102f45780634bf4ba21146102fc578063587c1243146103045780635aff59991461030c57806366d003ac1461031457806366d9a9a01461031c5780636a38dd0a1461033157806370a329441461033957806374d9284e1461026f578063759c9a861461034157806379e62d0d146103495780637b103999146103515780637b2edf32146103675780637cbe79ed1461036f578063829e423f1461026f57806385226c81146103775780638c7408c41461026f5780638e0d1a501461038c5780638e3c249314610394578063916a17c61461039c578063a407c67a146103a4578063aa3744bd146103ac578063b5508aa9146103b4578063ba414fa6146103bc578063c5d7d73b146103d4578063d1e82b58146103e5578063d1f2cd88146103ed578063d5bee9f5146103f5578063da4bf087146103fd578063dac4eb1614610405578063e20c9f711461040d578063ef0d790f14610415578063fa7626d41461041d578063fd325c601461042a575b600080fd5b61023c610432565b6040516001600160a01b0390911681526020015b60405180910390f35b61023c610467565b61023c61049d565b3061023c565b600061023c565b6020546001600160a01b031661023c565b6023545b604051908152602001610250565b61023c6104ca565b61023c6104fb565b6102b161052e565b60405161025091906111b8565b6102c6610590565b6040516102509190611255565b6024546001600160a01b031661023c565b60215461028b565b6102b16106d2565b6102b1610732565b6102b1610792565b61023c6107b5565b61023c6107e8565b61023c61081b565b610324610847565b6040516102509190611315565b61023c61092d565b6102b161095d565b61023c6109f5565b6102b1610a24565b601e5461010090046001600160a01b031661023c565b61023c610a8c565b61023c610abf565b61037f610aec565b60405161025091906113c8565b61023c610bbc565b61023c610be9565b610324610c1c565b6102b1610d02565b61023c610d6a565b61037f610d97565b6103c4610e67565b6040519015158152602001610250565b6022546001600160a01b031661023c565b61023c610f0b565b61023c610f3e565b61023c610f6f565b61023c610f9d565b61023c610fcd565b6102b1610ffe565b61023c61105e565b601e546103c49060ff1681565b601f5461028b565b60006104626040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250611090565b905090565b600061046260405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250611090565b60006104626040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250611090565b60006104626040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250611090565b6060601680548060200260200160405190810160405280929190818152602001828054801561058657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610568575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b828210156106c957600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b828210156106b25783829060005260206000200180546106259061142a565b80601f01602080910402602001604051908101604052809291908181526020018280546106519061142a565b801561069e5780601f106106735761010080835404028352916020019161069e565b820191906000526020600020905b81548152906001019060200180831161068157829003601f168201915b505050505081526020019060010190610606565b5050505081525050815260200190600101906105b4565b50505050905090565b60606018805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b60606017805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006104626040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250611090565b60006104626040518060400160405280601081526020016f726563697069656e744164647265737360801b815250611090565b6000610462604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250611090565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561091557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108d75790505b5050505050815250508152602001906001019061086b565b60006104626040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250611090565b6040805160028082526060808301845292600092919060208301908036833701905050905061098a6104fb565b8160008151811061099d5761099d611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610a8c565b816001815181106109d8576109d8611464565b6001600160a01b0390921660209283029190910190910152919050565b60006104626040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250611090565b60408051600280825260608083018452926000929190602083019080368337019050509050610a51610432565b81600081518110610a6457610a64611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c561092d565b60006104626040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250611090565b60006104626040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250611090565b6060601a805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610b2f9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b9061142a565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b505050505081526020019060010190610b10565b60006104626040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250611090565b60006104626040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250611090565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610cea57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610cac5790505b50505050508152505081526020019060010190610c40565b60408051600280825260608083018452926000929190602083019080368337019050509050610d2f6107b5565b81600081518110610d4257610d42611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610be9565b60006104626040518060400160405280600a815260200169726563697069656e743160b01b815250611090565b60606019805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610dda9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610e069061142a565b8015610e535780601f10610e2857610100808354040283529160200191610e53565b820191906000526020600020905b815481529060010190602001808311610e3657829003601f168201915b505050505081526020019060010190610dbb565b60085460009060ff1615610e7f575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f04919061147a565b1415905090565b60006104626040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250611090565b60006104626040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250611090565b60006104626040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250611090565b60006104626040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250611090565b60606015805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b600061046260405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b600061109b826110a2565b5092915050565b600080826040516020016110b69190611493565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015611121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061114591906114af565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061118190859087906004016114df565b600060405180830381600087803b15801561119b57600080fd5b505af11580156111af573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111f95783516001600160a01b0316835292840192918401916001016111d4565b50909695505050505050565b60005b83811015611220578181015183820152602001611208565b50506000910152565b60008151808452611241816020860160208601611205565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561130557603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b818110156112ef57605f198985030183526112dd848651611229565b948e01949350918d01916001016112c1565b505050978a01979450509188019160010161127c565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b848110156113b957898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b808310156113a45783516001600160e01b0319168252928b019260019290920191908b019061137a565b50978a0197955050509187019160010161133d565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561141d57603f1988860301845261140b858351611229565b945092850192908501906001016113ef565b5092979650505050505050565b600181811c9082168061143e57607f821691505b60208210810361145e57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561148c57600080fd5b5051919050565b600082516114a5818460208701611205565b9190910192915050565b6000602082840312156114c157600080fd5b81516001600160a01b03811681146114d857600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061150390830184611229565b94935050505056fea26469706673582212202061d35abc43d1f0815a8d62ee3e34f8df741aa0a088019f767c12b0510668df64736f6c63430008130033","sourceMap":"833:2031:17:-:0;;;3126:44:22;;;3166:4;-1:-1:-1;;3126:44:22;;;;;;;;1016:26:32;;;;;;;;;;;833:2031:17;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061022f5760003560e01c8062b1fad714610234578063030e4006146102595780630688b135146102615780630f166ad414610269578063174eedde1461026f578063176effb31461027657806318540361146102875780631b96dce6146102995780631e7bcb2e146102a15780631ed7831c146102a95780632ade3880146102be5780633554642a146102d357806339f56f7f146102e45780633e5e3c23146102ec5780633f7286f4146102f45780634bf4ba21146102fc578063587c1243146103045780635aff59991461030c57806366d003ac1461031457806366d9a9a01461031c5780636a38dd0a1461033157806370a329441461033957806374d9284e1461026f578063759c9a861461034157806379e62d0d146103495780637b103999146103515780637b2edf32146103675780637cbe79ed1461036f578063829e423f1461026f57806385226c81146103775780638c7408c41461026f5780638e0d1a501461038c5780638e3c249314610394578063916a17c61461039c578063a407c67a146103a4578063aa3744bd146103ac578063b5508aa9146103b4578063ba414fa6146103bc578063c5d7d73b146103d4578063d1e82b58146103e5578063d1f2cd88146103ed578063d5bee9f5146103f5578063da4bf087146103fd578063dac4eb1614610405578063e20c9f711461040d578063ef0d790f14610415578063fa7626d41461041d578063fd325c601461042a575b600080fd5b61023c610432565b6040516001600160a01b0390911681526020015b60405180910390f35b61023c610467565b61023c61049d565b3061023c565b600061023c565b6020546001600160a01b031661023c565b6023545b604051908152602001610250565b61023c6104ca565b61023c6104fb565b6102b161052e565b60405161025091906111b8565b6102c6610590565b6040516102509190611255565b6024546001600160a01b031661023c565b60215461028b565b6102b16106d2565b6102b1610732565b6102b1610792565b61023c6107b5565b61023c6107e8565b61023c61081b565b610324610847565b6040516102509190611315565b61023c61092d565b6102b161095d565b61023c6109f5565b6102b1610a24565b601e5461010090046001600160a01b031661023c565b61023c610a8c565b61023c610abf565b61037f610aec565b60405161025091906113c8565b61023c610bbc565b61023c610be9565b610324610c1c565b6102b1610d02565b61023c610d6a565b61037f610d97565b6103c4610e67565b6040519015158152602001610250565b6022546001600160a01b031661023c565b61023c610f0b565b61023c610f3e565b61023c610f6f565b61023c610f9d565b61023c610fcd565b6102b1610ffe565b61023c61105e565b601e546103c49060ff1681565b601f5461028b565b60006104626040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250611090565b905090565b600061046260405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250611090565b60006104626040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250611090565b60006104626040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250611090565b6060601680548060200260200160405190810160405280929190818152602001828054801561058657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610568575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b828210156106c957600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b828210156106b25783829060005260206000200180546106259061142a565b80601f01602080910402602001604051908101604052809291908181526020018280546106519061142a565b801561069e5780601f106106735761010080835404028352916020019161069e565b820191906000526020600020905b81548152906001019060200180831161068157829003601f168201915b505050505081526020019060010190610606565b5050505081525050815260200190600101906105b4565b50505050905090565b60606018805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b60606017805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006104626040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250611090565b60006104626040518060400160405280601081526020016f726563697069656e744164647265737360801b815250611090565b6000610462604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250611090565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561091557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108d75790505b5050505050815250508152602001906001019061086b565b60006104626040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250611090565b6040805160028082526060808301845292600092919060208301908036833701905050905061098a6104fb565b8160008151811061099d5761099d611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610a8c565b816001815181106109d8576109d8611464565b6001600160a01b0390921660209283029190910190910152919050565b60006104626040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250611090565b60408051600280825260608083018452926000929190602083019080368337019050509050610a51610432565b81600081518110610a6457610a64611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c561092d565b60006104626040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250611090565b60006104626040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250611090565b6060601a805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610b2f9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b9061142a565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b505050505081526020019060010190610b10565b60006104626040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250611090565b60006104626040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250611090565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610cea57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610cac5790505b50505050508152505081526020019060010190610c40565b60408051600280825260608083018452926000929190602083019080368337019050509050610d2f6107b5565b81600081518110610d4257610d42611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610be9565b60006104626040518060400160405280600a815260200169726563697069656e743160b01b815250611090565b60606019805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610dda9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610e069061142a565b8015610e535780601f10610e2857610100808354040283529160200191610e53565b820191906000526020600020905b815481529060010190602001808311610e3657829003601f168201915b505050505081526020019060010190610dbb565b60085460009060ff1615610e7f575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f04919061147a565b1415905090565b60006104626040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250611090565b60006104626040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250611090565b60006104626040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250611090565b60006104626040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250611090565b60606015805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b600061046260405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b600061109b826110a2565b5092915050565b600080826040516020016110b69190611493565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015611121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061114591906114af565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061118190859087906004016114df565b600060405180830381600087803b15801561119b57600080fd5b505af11580156111af573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111f95783516001600160a01b0316835292840192918401916001016111d4565b50909695505050505050565b60005b83811015611220578181015183820152602001611208565b50506000910152565b60008151808452611241816020860160208601611205565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561130557603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b818110156112ef57605f198985030183526112dd848651611229565b948e01949350918d01916001016112c1565b505050978a01979450509188019160010161127c565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b848110156113b957898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b808310156113a45783516001600160e01b0319168252928b019260019290920191908b019061137a565b50978a0197955050509187019160010161133d565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561141d57603f1988860301845261140b858351611229565b945092850192908501906001016113ef565b5092979650505050505050565b600181811c9082168061143e57607f821691505b60208210810361145e57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561148c57600080fd5b5051919050565b600082516114a5818460208701611205565b9190910192915050565b6000602082840312156114c157600080fd5b81516001600160a01b03811681146114d857600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061150390830184611229565b94935050505056fea26469706673582212202061d35abc43d1f0815a8d62ee3e34f8df741aa0a088019f767c12b0510668df64736f6c63430008130033","sourceMap":"833:2031:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;178:32:142;;;160:51;;148:2;133:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;2159:111:17;2244:19;;-1:-1:-1;;;;;2244:19:17;2159:111;;2572:97;2650:12;;2572:97;;;368:25:142;;;356:2;341:18;2572:97:17;222:177:142;3126:109:15;;;:::i;2554:113::-;;;:::i;2452:134:25:-;;;:::i;:::-;;;;;;;:::i;3360:151::-;;;:::i;:::-;;;;;;;:::i;2757:105:17:-;2839:16;;-1:-1:-1;;;;;2839:16:17;2757:105;;2276:97;2354:12;;2276:97;;3221:133:25;;;:::i;2922:141::-;;;:::i;1331:118:15:-;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;2738:178:25:-;;;:::i;:::-;;;;;;;:::i;1876:107:15:-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;610:85:17:-;678:10;;;;;-1:-1:-1;;;;;678:10:17;610:85;;2673:113:15;;;:::i;439:101::-;;;:::i;2592:140:25:-;;;:::i;:::-;;;;;;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;3069:146:25:-;;;:::i;3604:241:15:-;;;:::i;3938:101::-;;;:::i;2157:141:25:-;;;:::i;1243:204:21:-;;;:::i;:::-;;;6119:14:142;;6112:22;6094:41;;6082:2;6067:18;1243:204:21;5954:187:142;2461:105:17;2543:16;;-1:-1:-1;;;;;2543:16:17;2461:105;;1644:113:15;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;2304:142:25:-;;;:::i;3241:119:15:-;;;:::i;1016:26:32:-;;;;;;;;;2050:103:17;2131:15;;2050:103;;1763:107:15;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;2452:134:25:-;2499:33;2563:16;2544:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2544:35:25;;;;;;;;;;;;;;;;;;;;;;;2452:134;:::o;3360:151::-;3409:42;3485:19;3463:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3463:41:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3360:151;:::o;3221:133::-;3267:33;3331:16;3312:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3312:35:25;;;;;;;;;;;;;;;;;;;;;;3221:133;:::o;2922:141::-;2970:35;3038:18;3017:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3017:39:25;;;;;;;;;;;;;;;;;;;;;;2922:141;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;2738:178:25:-;2794:48;2883:26;2854:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1876:107:15;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;2592:140:25:-;2640:34;2707:18;2686:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1537:101:15;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3069:146:25:-;3117:40;3190:18;3169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3604:241:15;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;2157:141:25:-;2206:34;2273:18;2252:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1243:204:21;1302:7;;1282:4;;1302:7;;1298:143;;;-1:-1:-1;1332:7:21;;;;;1243:204::o;1298:143::-;1377:39;;-1:-1:-1;;;1377:39:21;;:7;:39;;;7193:51:142;;;-1:-1:-1;;;7260:18:142;;;7253:34;1428:1:21;;1377:7;;7166:18:142;;1377:39:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:53;;1370:60;;1243:204;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;2304:142:25:-;2353:35;2421:18;2400:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2400:39:25;;;;;;;;;;;;;;;;;;;;;;2304:142;:::o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;20158:242::-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;368:25:142;;;20293:33:23;-1:-1:-1;20344:7:23;;;;341:18:142;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;404:658:142:-;575:2;627:21;;;697:13;;600:18;;;719:22;;;546:4;;575:2;798:15;;;;772:2;757:18;;;546:4;841:195;855:6;852:1;849:13;841:195;;;920:13;;-1:-1:-1;;;;;916:39:142;904:52;;1011:15;;;;976:12;;;;952:1;870:9;841:195;;;-1:-1:-1;1053:3:142;;404:658;-1:-1:-1;;;;;;404:658:142:o;1067:250::-;1152:1;1162:113;1176:6;1173:1;1170:13;1162:113;;;1252:11;;;1246:18;1233:11;;;1226:39;1198:2;1191:10;1162:113;;;-1:-1:-1;;1309:1:142;1291:16;;1284:27;1067:250::o;1322:271::-;1364:3;1402:5;1396:12;1429:6;1424:3;1417:19;1445:76;1514:6;1507:4;1502:3;1498:14;1491:4;1484:5;1480:16;1445:76;:::i;:::-;1575:2;1554:15;-1:-1:-1;;1550:29:142;1541:39;;;;1582:4;1537:50;;1322:271;-1:-1:-1;;1322:271:142:o;1598:1744::-;1833:2;1885:21;;;1955:13;;1858:18;;;1977:22;;;1804:4;;1833:2;2018;;2036:18;;;;2073:1;2116:15;;;2101:31;;2097:40;;2160:15;;;1804:4;;2224:1089;2240:6;2235:3;2232:15;2224:1089;;;-1:-1:-1;;2309:22:142;;;2305:36;2293:49;;2365:13;;2452:9;;-1:-1:-1;;;;;2448:35:142;2433:51;;2523:11;;2517:18;2555:15;;;2548:27;;;2636:19;;2405:15;;;2668:24;;;2849:21;;;;2715:2;2797:17;;;2785:30;;2781:39;;;2739:15;;;;2894:1;2908:296;2924:8;2919:3;2916:17;2908:296;;;3030:2;3026:7;3017:6;3009;3005:19;3001:33;2994:5;2987:48;3062:42;3097:6;3086:8;3080:15;3062:42;:::i;:::-;3133:17;;;;3052:52;-1:-1:-1;3176:14:142;;;;2952:1;2943:11;2908:296;;;-1:-1:-1;;;3291:12:142;;;;3227:6;-1:-1:-1;;3256:15:142;;;;2266:1;2257:11;2224:1089;;;-1:-1:-1;3330:6:142;;1598:1744;-1:-1:-1;;;;;;;;;;1598:1744:142:o;3347:1569::-;3551:4;3580:2;3620;3609:9;3605:18;3650:2;3639:9;3632:21;3673:6;3708;3702:13;3739:6;3731;3724:22;3765:2;3755:12;;3798:2;3787:9;3783:18;3776:25;;3860:2;3850:6;3847:1;3843:14;3832:9;3828:30;3824:39;3898:2;3890:6;3886:15;3919:1;3940;3950:937;3966:6;3961:3;3958:15;3950:937;;;4035:22;;;-1:-1:-1;;4031:36:142;4019:49;;4091:13;;4178:9;;-1:-1:-1;;;;;4174:35:142;4159:51;;4249:11;;4243:18;4281:15;;;4274:27;;;4362:19;;4131:15;;;4394:24;;;4484:21;;;;4529:1;;4452:2;4440:15;;;4543:236;4559:8;4554:3;4551:17;4543:236;;;4640:15;;-1:-1:-1;;;;;;4636:42:142;4622:57;;4748:17;;;;4587:1;4578:11;;;;;4705:14;;;;4543:236;;;-1:-1:-1;4865:12:142;;;;4802:5;-1:-1:-1;;;4830:15:142;;;;3992:1;3983:11;3950:937;;;-1:-1:-1;4904:6:142;;3347:1569;-1:-1:-1;;;;;;;;;3347:1569:142:o;5146:803::-;5308:4;5337:2;5377;5366:9;5362:18;5407:2;5396:9;5389:21;5430:6;5465;5459:13;5496:6;5488;5481:22;5534:2;5523:9;5519:18;5512:25;;5596:2;5586:6;5583:1;5579:14;5568:9;5564:30;5560:39;5546:53;;5634:2;5626:6;5622:15;5655:1;5665:255;5679:6;5676:1;5673:13;5665:255;;;5772:2;5768:7;5756:9;5748:6;5744:22;5740:36;5735:3;5728:49;5800:40;5833:6;5824;5818:13;5800:40;:::i;:::-;5790:50;-1:-1:-1;5898:12:142;;;;5863:15;;;;5701:1;5694:9;5665:255;;;-1:-1:-1;5937:6:142;;5146:803;-1:-1:-1;;;;;;;5146:803:142:o;6370:380::-;6449:1;6445:12;;;;6492;;;6513:61;;6567:4;6559:6;6555:17;6545:27;;6513:61;6620:2;6612:6;6609:14;6589:18;6586:38;6583:161;;6666:10;6661:3;6657:20;6654:1;6647:31;6701:4;6698:1;6691:15;6729:4;6726:1;6719:15;6583:161;;6370:380;;;:::o;6887:127::-;6948:10;6943:3;6939:20;6936:1;6929:31;6979:4;6976:1;6969:15;7003:4;7000:1;6993:15;7298:184;7368:6;7421:2;7409:9;7400:7;7396:23;7392:32;7389:52;;;7437:1;7434;7427:12;7389:52;-1:-1:-1;7460:16:142;;7298:184;-1:-1:-1;7298:184:142:o;7487:289::-;7618:3;7656:6;7650:13;7672:66;7731:6;7726:3;7719:4;7711:6;7707:17;7672:66;:::i;:::-;7754:16;;;;;7487:289;-1:-1:-1;;7487:289:142:o;7963:290::-;8033:6;8086:2;8074:9;8065:7;8061:23;8057:32;8054:52;;;8102:1;8099;8092:12;8054:52;8128:16;;-1:-1:-1;;;;;8173:31:142;;8163:42;;8153:70;;8219:1;8216;8209:12;8153:70;8242:5;7963:290;-1:-1:-1;;;7963:290:142:o;8258:317::-;-1:-1:-1;;;;;8435:32:142;;8417:51;;8504:2;8499;8484:18;;8477:30;;;-1:-1:-1;;8524:45:142;;8550:18;;8542:6;8524:45;:::i;:::-;8516:53;8258:317;-1:-1:-1;;;;8258:317:142:o","linkReferences":{}},"methodIdentifiers":{"IS_TEST()":"fa7626d4","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","excludeArtifacts()":"b5508aa9","excludeContracts()":"e20c9f71","excludeSenders()":"1ed7831c","failed()":"ba414fa6","local()":"0f166ad4","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","poolProfile_anchor()":"176effb3","poolProfile_id()":"fd325c60","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_anchor()":"c5d7d73b","profile1_id()":"39f56f7f","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_anchor()":"3554642a","profile2_id()":"18540361","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry()":"7b103999","registry_owner()":"dac4eb16","targetArtifactSelectors()":"66d9a9a0","targetArtifacts()":"85226c81","targetContracts()":"3f7286f4","targetInterfaces()":"2ade3880","targetSelectors()":"916a17c6","targetSenders()":"3e5e3c23"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"excludedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"poolProfile_anchor\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"poolProfile_id\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_anchor\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_id\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_anchor\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_id\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract Registry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifactSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedArtifactSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"targetedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetInterfaces\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"artifacts\",\"type\":\"string[]\"}],\"internalType\":\"struct StdInvariant.FuzzInterface[]\",\"name\":\"targetedInterfaces_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"RegistrySetupFull\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"This contract is used to setup a Registry contract with two identities for testing purposes.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":\"RegistrySetupFull\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Anchor.sol\":{\"keccak256\":\"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139\",\"dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H\"]},\"lib/allo-v2/contracts/core/Registry.sol\":{\"keccak256\":\"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283\",\"dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":{\"keccak256\":\"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb\",\"dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c\",\"dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b\",\"dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdInvariant.sol\":{\"keccak256\":\"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d\",\"dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54\",\"dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/StdStyle.sol\":{\"keccak256\":\"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8\",\"dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK\"]},\"lib/forge-std/src/StdToml.sol\":{\"keccak256\":\"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d\",\"dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61\",\"dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e\",\"dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/forge-std/src/interfaces/IERC165.sol\":{\"keccak256\":\"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc\",\"dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT\"]},\"lib/forge-std/src/interfaces/IERC20.sol\":{\"keccak256\":\"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7\",\"dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9\"]},\"lib/forge-std/src/interfaces/IERC721.sol\":{\"keccak256\":\"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f\",\"dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm\"]},\"lib/forge-std/src/interfaces/IMulticall3.sol\":{\"keccak256\":\"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0\",\"dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2\"]},\"lib/forge-std/src/mocks/MockERC20.sol\":{\"keccak256\":\"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f\",\"dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw\"]},\"lib/forge-std/src/mocks/MockERC721.sol\":{\"keccak256\":\"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b\",\"dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN\"]},\"lib/forge-std/src/safeconsole.sol\":{\"keccak256\":\"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae\",\"dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618\",\"dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol\":{\"keccak256\":\"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519\",\"dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol\":{\"keccak256\":\"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d\",\"dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol\":{\"keccak256\":\"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c\",\"dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log","anonymous":false},{"inputs":[{"internalType":"address","name":"","type":"address","indexed":false}],"type":"event","name":"log_address","anonymous":false},{"inputs":[{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"log_bytes","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32","indexed":false}],"type":"event","name":"log_bytes32","anonymous":false},{"inputs":[{"internalType":"int256","name":"","type":"int256","indexed":false}],"type":"event","name":"log_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address","name":"val","type":"address","indexed":false}],"type":"event","name":"log_named_address","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes","name":"val","type":"bytes","indexed":false}],"type":"event","name":"log_named_bytes","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes32","name":"val","type":"bytes32","indexed":false}],"type":"event","name":"log_named_bytes32","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false}],"type":"event","name":"log_named_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"string","name":"val","type":"string","indexed":false}],"type":"event","name":"log_named_string","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false}],"type":"event","name":"log_named_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log_string","anonymous":false},{"inputs":[{"internalType":"uint256","name":"","type":"uint256","indexed":false}],"type":"event","name":"log_uint","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"logs","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_TEST","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeArtifacts","outputs":[{"internalType":"string[]","name":"excludedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeContracts","outputs":[{"internalType":"address[]","name":"excludedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeSenders","outputs":[{"internalType":"address[]","name":"excludedSenders_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"failed","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"poolProfile_anchor","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"poolProfile_id","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile1_anchor","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile1_id","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile2_anchor","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile2_id","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract Registry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifactSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedArtifactSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifacts","outputs":[{"internalType":"string[]","name":"targetedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetContracts","outputs":[{"internalType":"address[]","name":"targetedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetInterfaces","outputs":[{"internalType":"struct StdInvariant.FuzzInterface[]","name":"targetedInterfaces_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"string[]","name":"artifacts","type":"string[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSenders","outputs":[{"internalType":"address[]","name":"targetedSenders_","type":"address[]"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":"RegistrySetupFull"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Anchor.sol":{"keccak256":"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd","urls":["bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139","dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/Registry.sol":{"keccak256":"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998","urls":["bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283","dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":{"keccak256":"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b","urls":["bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb","dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j"],"license":"AGPL-3.0-only"},"lib/forge-std/src/Base.sol":{"keccak256":"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c","urls":["bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224","dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"],"license":"MIT"},"lib/forge-std/src/StdAssertions.sol":{"keccak256":"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361","urls":["bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c","dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k"],"license":"MIT"},"lib/forge-std/src/StdChains.sol":{"keccak256":"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef","urls":["bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b","dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj"],"license":"MIT"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdError.sol":{"keccak256":"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77","urls":["bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6","dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"],"license":"MIT"},"lib/forge-std/src/StdInvariant.sol":{"keccak256":"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6","urls":["bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d","dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz"],"license":"MIT"},"lib/forge-std/src/StdJson.sol":{"keccak256":"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d","urls":["bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54","dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp"],"license":"MIT"},"lib/forge-std/src/StdMath.sol":{"keccak256":"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2","urls":["bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92","dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/StdStyle.sol":{"keccak256":"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d","urls":["bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8","dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK"],"license":"MIT"},"lib/forge-std/src/StdToml.sol":{"keccak256":"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab","urls":["bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d","dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy"],"license":"MIT"},"lib/forge-std/src/StdUtils.sol":{"keccak256":"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0","urls":["bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61","dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX"],"license":"MIT"},"lib/forge-std/src/Test.sol":{"keccak256":"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe","urls":["bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e","dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC165.sol":{"keccak256":"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600","urls":["bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc","dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC20.sol":{"keccak256":"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947","urls":["bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7","dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC721.sol":{"keccak256":"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15","urls":["bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f","dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm"],"license":"MIT"},"lib/forge-std/src/interfaces/IMulticall3.sol":{"keccak256":"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a","urls":["bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0","dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC20.sol":{"keccak256":"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b","urls":["bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f","dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC721.sol":{"keccak256":"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9","urls":["bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b","dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN"],"license":"MIT"},"lib/forge-std/src/safeconsole.sol":{"keccak256":"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381","urls":["bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae","dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0xc8710577334e8d0799ae2b2a731b1924a7bddd64319da9787ddd2dc69bdd1ce5","urls":["bzz-raw://b83b7afa4d2372da3ba5402fb10860a105c35d79812c60dc61007be2afc17618","dweb:/ipfs/QmYX9xPmbNVSKXrepKiUZiG5oL3SdzFp9a4kqspxX1sEUx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"keccak256":"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b","urls":["bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec","dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"keccak256":"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3","urls":["bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519","dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"keccak256":"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb","urls":["bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d","dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"keccak256":"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da","urls":["bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708","dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol":{"keccak256":"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5","urls":["bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c","dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":5830,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"stdstore","offset":0,"slot":"0","type":"t_struct(StdStorage)13196_storage"},{"astId":5987,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_failed","offset":0,"slot":"8","type":"t_bool"},{"astId":8488,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"stdChainsInitialized","offset":1,"slot":"8","type":"t_bool"},{"astId":8509,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"chains","offset":0,"slot":"9","type":"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)"},{"astId":8513,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"defaultRpcUrls","offset":0,"slot":"10","type":"t_mapping(t_string_memory_ptr,t_string_storage)"},{"astId":8517,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"idToAlias","offset":0,"slot":"11","type":"t_mapping(t_uint256,t_string_storage)"},{"astId":8520,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"fallbackToDefaultRpcUrls","offset":0,"slot":"12","type":"t_bool"},{"astId":9278,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"gasMeteringOff","offset":1,"slot":"12","type":"t_bool"},{"astId":11315,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"stdstore","offset":0,"slot":"13","type":"t_struct(StdStorage)13196_storage"},{"astId":12183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_excludedContracts","offset":0,"slot":"21","type":"t_array(t_address)dyn_storage"},{"astId":12186,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_excludedSenders","offset":0,"slot":"22","type":"t_array(t_address)dyn_storage"},{"astId":12189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedContracts","offset":0,"slot":"23","type":"t_array(t_address)dyn_storage"},{"astId":12192,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedSenders","offset":0,"slot":"24","type":"t_array(t_address)dyn_storage"},{"astId":12195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_excludedArtifacts","offset":0,"slot":"25","type":"t_array(t_string_storage)dyn_storage"},{"astId":12198,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedArtifacts","offset":0,"slot":"26","type":"t_array(t_string_storage)dyn_storage"},{"astId":12202,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedArtifactSelectors","offset":0,"slot":"27","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12206,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedSelectors","offset":0,"slot":"28","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12210,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedInterfaces","offset":0,"slot":"29","type":"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage"},{"astId":17795,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"IS_TEST","offset":0,"slot":"30","type":"t_bool"},{"astId":5104,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_registry_","offset":1,"slot":"30","type":"t_contract(Registry)2295"},{"astId":5137,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_poolProfileId_","offset":0,"slot":"31","type":"t_bytes32"},{"astId":5139,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_poolProfileAnchor_","offset":0,"slot":"32","type":"t_address"},{"astId":5141,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile1Id_","offset":0,"slot":"33","type":"t_bytes32"},{"astId":5143,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile1Anchor_","offset":0,"slot":"34","type":"t_address"},{"astId":5145,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile2Id_","offset":0,"slot":"35","type":"t_bytes32"},{"astId":5147,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile2Anchor_","offset":0,"slot":"36","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_array(t_bytes4)dyn_storage":{"encoding":"dynamic_array","label":"bytes4[]","numberOfBytes":"32","base":"t_bytes4"},"t_array(t_string_storage)dyn_storage":{"encoding":"dynamic_array","label":"string[]","numberOfBytes":"32","base":"t_string_storage"},"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzInterface[]","numberOfBytes":"32","base":"t_struct(FuzzInterface)12180_storage"},"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzSelector[]","numberOfBytes":"32","base":"t_struct(FuzzSelector)12174_storage"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_contract(Registry)2295":{"encoding":"inplace","label":"contract Registry","numberOfBytes":"20"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_mapping(t_string_memory_ptr,t_string_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => string)","numberOfBytes":"32","value":"t_string_storage"},"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => struct StdChains.Chain)","numberOfBytes":"32","value":"t_struct(Chain)8504_storage"},"t_mapping(t_uint256,t_string_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => string)","numberOfBytes":"32","value":"t_string_storage"},"t_string_memory_ptr":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Chain)8504_storage":{"encoding":"inplace","label":"struct StdChains.Chain","numberOfBytes":"128","members":[{"astId":8497,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":8499,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"chainId","offset":0,"slot":"1","type":"t_uint256"},{"astId":8501,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"chainAlias","offset":0,"slot":"2","type":"t_string_storage"},{"astId":8503,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"rpcUrl","offset":0,"slot":"3","type":"t_string_storage"}]},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(FuzzInterface)12180_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzInterface","numberOfBytes":"64","members":[{"astId":12176,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12179,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"artifacts","offset":0,"slot":"1","type":"t_array(t_string_storage)dyn_storage"}]},"t_struct(FuzzSelector)12174_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzSelector","numberOfBytes":"64","members":[{"astId":12170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12173,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"selectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol","id":5297,"exportedSymbols":{"Accounts":[5026],"Metadata":[3098],"Registry":[2295],"RegistrySetup":[5132],"RegistrySetupFull":[5296],"StdAssertions":[8464],"StdChains":[9246],"StdCheats":[12099],"StdInvariant":[12424],"StdStorage":[13196],"StdStyle":[16366],"StdUtils":[17744],"Test":[17796],"TestBase":[5834],"Vm":[21446],"console":[29510],"console2":[37635],"safeconsole":[52360],"stdError":[12165],"stdJson":[13016],"stdMath":[13158],"stdStorage":[15155],"stdToml":[16958]},"nodeType":"SourceUnit","src":"42:2823:17","nodes":[{"id":5089,"nodeType":"PragmaDirective","src":"42:24:17","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":5090,"nodeType":"ImportDirective","src":"68:28:17","nodes":[],"absolutePath":"lib/forge-std/src/Test.sol","file":"forge-std/Test.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":17797,"symbolAliases":[],"unitAlias":""},{"id":5092,"nodeType":"ImportDirective","src":"98:62:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Registry.sol","file":"../../../contracts/core/Registry.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":2296,"symbolAliases":[{"foreign":{"id":5091,"name":"Registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2295,"src":"106:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5094,"nodeType":"ImportDirective","src":"161:72:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../../../contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":5093,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"169:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5096,"nodeType":"ImportDirective","src":"234:40:17","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"./Accounts.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":5095,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"242:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5132,"nodeType":"ContractDefinition","src":"393:304:17","nodes":[{"id":5104,"nodeType":"VariableDeclaration","src":"440:28:17","nodes":[],"constant":false,"mutability":"mutable","name":"_registry_","nameLocation":"458:10:17","scope":5132,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5103,"nodeType":"UserDefinedTypeName","pathNode":{"id":5102,"name":"Registry","nameLocations":["440:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"440:8:17"},"referencedDeclaration":2295,"src":"440:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"},{"id":5122,"nodeType":"FunctionDefinition","src":"475:129:17","nodes":[],"body":{"id":5121,"nodeType":"Block","src":"511:93:17","nodes":[],"statements":[{"expression":{"id":5112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5107,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"521:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"id":5110,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"534:12:17","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_Registry_$2295_$","typeString":"function () returns (contract Registry)"},"typeName":{"id":5109,"nodeType":"UserDefinedTypeName","pathNode":{"id":5108,"name":"Registry","nameLocations":["538:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"538:8:17"},"referencedDeclaration":2295,"src":"538:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}},"id":5111,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"534:14:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"src":"521:27:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5113,"nodeType":"ExpressionStatement","src":"521:27:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5117,"name":"registry_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4675,"src":"580:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"580:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5114,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"558:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"569:10:17","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":1578,"src":"558:21:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"558:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5120,"nodeType":"ExpressionStatement","src":"558:39:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetup","nameLocation":"484:15:17","parameters":{"id":5105,"nodeType":"ParameterList","parameters":[],"src":"499:2:17"},"returnParameters":{"id":5106,"nodeType":"ParameterList","parameters":[],"src":"511:0:17"},"scope":5132,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5131,"nodeType":"FunctionDefinition","src":"610:85:17","nodes":[],"body":{"id":5130,"nodeType":"Block","src":"661:34:17","nodes":[],"statements":[{"expression":{"id":5128,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"678:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"functionReturnParameters":5127,"id":5129,"nodeType":"Return","src":"671:17:17"}]},"functionSelector":"7b103999","implemented":true,"kind":"function","modifiers":[],"name":"registry","nameLocation":"619:8:17","parameters":{"id":5123,"nodeType":"ParameterList","parameters":[],"src":"627:2:17"},"returnParameters":{"id":5127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5126,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5131,"src":"651:8:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5125,"nodeType":"UserDefinedTypeName","pathNode":{"id":5124,"name":"Registry","nameLocations":["651:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"651:8:17"},"referencedDeclaration":2295,"src":"651:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"}],"src":"650:10:17"},"scope":5132,"stateMutability":"view","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5098,"name":"Test","nameLocations":["419:4:17"],"nodeType":"IdentifierPath","referencedDeclaration":17796,"src":"419:4:17"},"id":5099,"nodeType":"InheritanceSpecifier","src":"419:4:17"},{"baseName":{"id":5100,"name":"Accounts","nameLocations":["425:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"425:8:17"},"id":5101,"nodeType":"InheritanceSpecifier","src":"425:8:17"}],"canonicalName":"RegistrySetup","contractDependencies":[],"contractKind":"contract","documentation":{"id":5097,"nodeType":"StructuredDocumentation","src":"276:117:17","text":"@title RegistrySetup\n @notice This contract is used to setup an empty Registry contract for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetup","nameLocation":"402:13:17","scope":5297,"usedErrors":[]},{"id":5296,"nodeType":"ContractDefinition","src":"833:2031:17","nodes":[{"id":5137,"nodeType":"VariableDeclaration","src":"883:32:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId_","nameLocation":"900:15:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5136,"name":"bytes32","nodeType":"ElementaryTypeName","src":"883:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5139,"nodeType":"VariableDeclaration","src":"921:36:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileAnchor_","nameLocation":"938:19:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5138,"name":"address","nodeType":"ElementaryTypeName","src":"921:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5141,"nodeType":"VariableDeclaration","src":"964:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Id_","nameLocation":"981:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5140,"name":"bytes32","nodeType":"ElementaryTypeName","src":"964:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5143,"nodeType":"VariableDeclaration","src":"999:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Anchor_","nameLocation":"1016:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5142,"name":"address","nodeType":"ElementaryTypeName","src":"999:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5145,"nodeType":"VariableDeclaration","src":"1039:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Id_","nameLocation":"1056:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5144,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1039:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5147,"nodeType":"VariableDeclaration","src":"1074:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Anchor_","nameLocation":"1091:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5146,"name":"address","nodeType":"ElementaryTypeName","src":"1074:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5247,"nodeType":"FunctionDefinition","src":"1114:930:17","nodes":[],"body":{"id":5246,"nodeType":"Block","src":"1154:890:17","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":5150,"name":"__RegistrySetup","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5122,"src":"1164:15:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":5151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1164:17:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5152,"nodeType":"ExpressionStatement","src":"1164:17:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5156,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1201:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1201:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5153,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1192:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1195:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1192:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1192:22:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5159,"nodeType":"ExpressionStatement","src":"1192:22:17"},{"expression":{"id":5174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5160,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1224:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5163,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1280:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"506f6f6c2050726f66696c652031","id":5164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1283:16:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":5166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1321:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":5167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1333:14:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":5165,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1301:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5168,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1311:8:17","1324:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1301:48:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5169,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1351:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5170,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1351:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5171,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4817,"src":"1365:13:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5172,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:15:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5161,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1242:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1253:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1242:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1242:148:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1224:166:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5175,"nodeType":"ExpressionStatement","src":"1224:166:17"},{"expression":{"id":5182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5176,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"1400:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5179,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1448:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5177,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1422:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5178,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1433:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1422:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5180,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1422:42:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5181,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1465:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1422:49:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1400:71:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5183,"nodeType":"ExpressionStatement","src":"1400:71:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5187,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1491:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1491:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5184,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1482:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1485:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1482:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1482:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5190,"nodeType":"ExpressionStatement","src":"1482:26:17"},{"expression":{"id":5205,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5191,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1518:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5194,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1571:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652031","id":5195,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1574:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},"value":"Profile 1"},{"arguments":[{"hexValue":"31","id":5197,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1607:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6531","id":5198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1619:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""},"value":"Profile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""}],"id":5196,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1587:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1597:8:17","1610:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1587:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5200,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1633:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1633:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5202,"name":"profile1_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4891,"src":"1651:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1651:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5192,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1533:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5193,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1544:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1533:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1533:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1518:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5206,"nodeType":"ExpressionStatement","src":"1518:161:17"},{"expression":{"id":5213,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5207,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"1689:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5210,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1734:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5208,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1708:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1719:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1708:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1708:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1748:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1708:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1689:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5214,"nodeType":"ExpressionStatement","src":"1689:65:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5218,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1774:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1774:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5215,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1765:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1768:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1765:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1765:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5221,"nodeType":"ExpressionStatement","src":"1765:26:17"},{"expression":{"id":5236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5222,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"1801:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1854:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652032","id":5226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1857:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},"value":"Profile 2"},{"arguments":[{"hexValue":"31","id":5228,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1890:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6532","id":5229,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1902:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""},"value":"Profile2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""}],"id":5227,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1870:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5230,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1880:8:17","1893:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1870:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5231,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1916:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1916:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5233,"name":"profile2_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4965,"src":"1934:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1934:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5223,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1816:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1827:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1816:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5235,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1816:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1801:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5237,"nodeType":"ExpressionStatement","src":"1801:161:17"},{"expression":{"id":5244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5238,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"1972:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5241,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2017:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5239,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1991:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2002:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1991:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1991:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2031:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1991:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1972:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5245,"nodeType":"ExpressionStatement","src":"1972:65:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetupFull","nameLocation":"1123:19:17","parameters":{"id":5148,"nodeType":"ParameterList","parameters":[],"src":"1142:2:17"},"returnParameters":{"id":5149,"nodeType":"ParameterList","parameters":[],"src":"1154:0:17"},"scope":5296,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5255,"nodeType":"FunctionDefinition","src":"2050:103:17","nodes":[],"body":{"id":5254,"nodeType":"Block","src":"2114:39:17","nodes":[],"statements":[{"expression":{"id":5252,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"2131:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5251,"id":5253,"nodeType":"Return","src":"2124:22:17"}]},"functionSelector":"fd325c60","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id","nameLocation":"2059:14:17","parameters":{"id":5248,"nodeType":"ParameterList","parameters":[],"src":"2073:2:17"},"returnParameters":{"id":5251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5250,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5255,"src":"2105:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5249,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2105:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2104:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5263,"nodeType":"FunctionDefinition","src":"2159:111:17","nodes":[],"body":{"id":5262,"nodeType":"Block","src":"2227:43:17","nodes":[],"statements":[{"expression":{"id":5260,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"2244:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5259,"id":5261,"nodeType":"Return","src":"2237:26:17"}]},"functionSelector":"176effb3","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_anchor","nameLocation":"2168:18:17","parameters":{"id":5256,"nodeType":"ParameterList","parameters":[],"src":"2186:2:17"},"returnParameters":{"id":5259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5258,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5263,"src":"2218:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5257,"name":"address","nodeType":"ElementaryTypeName","src":"2218:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2217:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5271,"nodeType":"FunctionDefinition","src":"2276:97:17","nodes":[],"body":{"id":5270,"nodeType":"Block","src":"2337:36:17","nodes":[],"statements":[{"expression":{"id":5268,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"2354:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5267,"id":5269,"nodeType":"Return","src":"2347:19:17"}]},"functionSelector":"39f56f7f","implemented":true,"kind":"function","modifiers":[],"name":"profile1_id","nameLocation":"2285:11:17","parameters":{"id":5264,"nodeType":"ParameterList","parameters":[],"src":"2296:2:17"},"returnParameters":{"id":5267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5266,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5271,"src":"2328:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5265,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2328:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2327:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5279,"nodeType":"FunctionDefinition","src":"2461:105:17","nodes":[],"body":{"id":5278,"nodeType":"Block","src":"2526:40:17","nodes":[],"statements":[{"expression":{"id":5276,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"2543:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5275,"id":5277,"nodeType":"Return","src":"2536:23:17"}]},"functionSelector":"c5d7d73b","implemented":true,"kind":"function","modifiers":[],"name":"profile1_anchor","nameLocation":"2470:15:17","parameters":{"id":5272,"nodeType":"ParameterList","parameters":[],"src":"2485:2:17"},"returnParameters":{"id":5275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5274,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5279,"src":"2517:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5273,"name":"address","nodeType":"ElementaryTypeName","src":"2517:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2516:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5287,"nodeType":"FunctionDefinition","src":"2572:97:17","nodes":[],"body":{"id":5286,"nodeType":"Block","src":"2633:36:17","nodes":[],"statements":[{"expression":{"id":5284,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2650:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5283,"id":5285,"nodeType":"Return","src":"2643:19:17"}]},"functionSelector":"18540361","implemented":true,"kind":"function","modifiers":[],"name":"profile2_id","nameLocation":"2581:11:17","parameters":{"id":5280,"nodeType":"ParameterList","parameters":[],"src":"2592:2:17"},"returnParameters":{"id":5283,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5282,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5287,"src":"2624:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5281,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2624:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2623:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5295,"nodeType":"FunctionDefinition","src":"2757:105:17","nodes":[],"body":{"id":5294,"nodeType":"Block","src":"2822:40:17","nodes":[],"statements":[{"expression":{"id":5292,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"2839:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5291,"id":5293,"nodeType":"Return","src":"2832:23:17"}]},"functionSelector":"3554642a","implemented":true,"kind":"function","modifiers":[],"name":"profile2_anchor","nameLocation":"2766:15:17","parameters":{"id":5288,"nodeType":"ParameterList","parameters":[],"src":"2781:2:17"},"returnParameters":{"id":5291,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5290,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5295,"src":"2813:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5289,"name":"address","nodeType":"ElementaryTypeName","src":"2813:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2812:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5134,"name":"RegistrySetup","nameLocations":["863:13:17"],"nodeType":"IdentifierPath","referencedDeclaration":5132,"src":"863:13:17"},"id":5135,"nodeType":"InheritanceSpecifier","src":"863:13:17"}],"canonicalName":"RegistrySetupFull","contractDependencies":[],"contractKind":"contract","documentation":{"id":5133,"nodeType":"StructuredDocumentation","src":"699:134:17","text":"@title RegistrySetupFull\n @notice This contract is used to setup a Registry contract with two identities for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5296,5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetupFull","nameLocation":"842:17:17","scope":5297,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":17} \ No newline at end of file +{"abi":[{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"allo_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"allo_treasury","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address payable"}],"stateMutability":"nonpayable"},{"type":"function","name":"excludeArtifacts","inputs":[],"outputs":[{"name":"excludedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"excludeContracts","inputs":[],"outputs":[{"name":"excludedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"excludeSenders","inputs":[],"outputs":[{"name":"excludedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"failed","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"local","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"no_recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"nullProfile_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"nullProfile_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"pure"},{"type":"function","name":"poolProfile_anchor","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"poolProfile_id","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"pool_admin","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_manager2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_managers","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"pool_notAManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_anchor","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"profile1_id","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"profile1_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile1_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_anchor","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"profile2_id","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"profile2_member1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_member2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_members","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_notAMember","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"profile2_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"randomAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipient2","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"recipientAddress","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"registry","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract Registry"}],"stateMutability":"view"},{"type":"function","name":"registry_owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"targetArtifactSelectors","inputs":[],"outputs":[{"name":"targetedArtifactSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetArtifacts","inputs":[],"outputs":[{"name":"targetedArtifacts_","type":"string[]","internalType":"string[]"}],"stateMutability":"view"},{"type":"function","name":"targetContracts","inputs":[],"outputs":[{"name":"targetedContracts_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"targetInterfaces","inputs":[],"outputs":[{"name":"targetedInterfaces_","type":"tuple[]","internalType":"struct StdInvariant.FuzzInterface[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"artifacts","type":"string[]","internalType":"string[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSelectors","inputs":[],"outputs":[{"name":"targetedSelectors_","type":"tuple[]","internalType":"struct StdInvariant.FuzzSelector[]","components":[{"name":"addr","type":"address","internalType":"address"},{"name":"selectors","type":"bytes4[]","internalType":"bytes4[]"}]}],"stateMutability":"view"},{"type":"function","name":"targetSenders","inputs":[],"outputs":[{"name":"targetedSenders_","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"event","name":"log","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_address","inputs":[{"name":"","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_array","inputs":[{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_bytes","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_bytes32","inputs":[{"name":"","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_int","inputs":[{"name":"","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_address","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256[]","indexed":false,"internalType":"uint256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256[]","indexed":false,"internalType":"int256[]"}],"anonymous":false},{"type":"event","name":"log_named_array","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"log_named_bytes","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"log_named_bytes32","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"log_named_decimal_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_decimal_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"decimals","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_named_int","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"int256","indexed":false,"internalType":"int256"}],"anonymous":false},{"type":"event","name":"log_named_string","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_named_uint","inputs":[{"name":"key","type":"string","indexed":false,"internalType":"string"},{"name":"val","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"log_string","inputs":[{"name":"","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"log_uint","inputs":[{"name":"","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"logs","inputs":[{"name":"","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false}],"bytecode":{"object":"0x6080604052600c8054600160ff199182168117909255601e8054909116909117905534801561002d57600080fd5b506115418061003d6000396000f3fe608060405234801561001057600080fd5b506004361061022f5760003560e01c8062b1fad714610234578063030e4006146102595780630688b135146102615780630f166ad414610269578063174eedde1461026f578063176effb31461027657806318540361146102875780631b96dce6146102995780631e7bcb2e146102a15780631ed7831c146102a95780632ade3880146102be5780633554642a146102d357806339f56f7f146102e45780633e5e3c23146102ec5780633f7286f4146102f45780634bf4ba21146102fc578063587c1243146103045780635aff59991461030c57806366d003ac1461031457806366d9a9a01461031c5780636a38dd0a1461033157806370a329441461033957806374d9284e1461026f578063759c9a861461034157806379e62d0d146103495780637b103999146103515780637b2edf32146103675780637cbe79ed1461036f578063829e423f1461026f57806385226c81146103775780638c7408c41461026f5780638e0d1a501461038c5780638e3c249314610394578063916a17c61461039c578063a407c67a146103a4578063aa3744bd146103ac578063b5508aa9146103b4578063ba414fa6146103bc578063c5d7d73b146103d4578063d1e82b58146103e5578063d1f2cd88146103ed578063d5bee9f5146103f5578063da4bf087146103fd578063dac4eb1614610405578063e20c9f711461040d578063ef0d790f14610415578063fa7626d41461041d578063fd325c601461042a575b600080fd5b61023c610432565b6040516001600160a01b0390911681526020015b60405180910390f35b61023c610467565b61023c61049d565b3061023c565b600061023c565b6020546001600160a01b031661023c565b6023545b604051908152602001610250565b61023c6104ca565b61023c6104fb565b6102b161052e565b60405161025091906111b8565b6102c6610590565b6040516102509190611255565b6024546001600160a01b031661023c565b60215461028b565b6102b16106d2565b6102b1610732565b6102b1610792565b61023c6107b5565b61023c6107e8565b61023c61081b565b610324610847565b6040516102509190611315565b61023c61092d565b6102b161095d565b61023c6109f5565b6102b1610a24565b601e5461010090046001600160a01b031661023c565b61023c610a8c565b61023c610abf565b61037f610aec565b60405161025091906113c8565b61023c610bbc565b61023c610be9565b610324610c1c565b6102b1610d02565b61023c610d6a565b61037f610d97565b6103c4610e67565b6040519015158152602001610250565b6022546001600160a01b031661023c565b61023c610f0b565b61023c610f3e565b61023c610f6f565b61023c610f9d565b61023c610fcd565b6102b1610ffe565b61023c61105e565b601e546103c49060ff1681565b601f5461028b565b60006104626040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250611090565b905090565b600061046260405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250611090565b60006104626040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250611090565b60006104626040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250611090565b6060601680548060200260200160405190810160405280929190818152602001828054801561058657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610568575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b828210156106c957600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b828210156106b25783829060005260206000200180546106259061142a565b80601f01602080910402602001604051908101604052809291908181526020018280546106519061142a565b801561069e5780601f106106735761010080835404028352916020019161069e565b820191906000526020600020905b81548152906001019060200180831161068157829003601f168201915b505050505081526020019060010190610606565b5050505081525050815260200190600101906105b4565b50505050905090565b60606018805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b60606017805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006104626040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250611090565b60006104626040518060400160405280601081526020016f726563697069656e744164647265737360801b815250611090565b6000610462604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250611090565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561091557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108d75790505b5050505050815250508152602001906001019061086b565b60006104626040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250611090565b6040805160028082526060808301845292600092919060208301908036833701905050905061098a6104fb565b8160008151811061099d5761099d611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610a8c565b816001815181106109d8576109d8611464565b6001600160a01b0390921660209283029190910190910152919050565b60006104626040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250611090565b60408051600280825260608083018452926000929190602083019080368337019050509050610a51610432565b81600081518110610a6457610a64611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c561092d565b60006104626040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250611090565b60006104626040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250611090565b6060601a805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610b2f9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b9061142a565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b505050505081526020019060010190610b10565b60006104626040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250611090565b60006104626040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250611090565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610cea57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610cac5790505b50505050508152505081526020019060010190610c40565b60408051600280825260608083018452926000929190602083019080368337019050509050610d2f6107b5565b81600081518110610d4257610d42611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610be9565b60006104626040518060400160405280600a815260200169726563697069656e743160b01b815250611090565b60606019805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610dda9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610e069061142a565b8015610e535780601f10610e2857610100808354040283529160200191610e53565b820191906000526020600020905b815481529060010190602001808311610e3657829003601f168201915b505050505081526020019060010190610dbb565b60085460009060ff1615610e7f575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f04919061147a565b1415905090565b60006104626040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250611090565b60006104626040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250611090565b60006104626040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250611090565b60006104626040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250611090565b60606015805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b600061046260405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b600061109b826110a2565b5092915050565b600080826040516020016110b69190611493565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015611121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061114591906114af565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061118190859087906004016114df565b600060405180830381600087803b15801561119b57600080fd5b505af11580156111af573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111f95783516001600160a01b0316835292840192918401916001016111d4565b50909695505050505050565b60005b83811015611220578181015183820152602001611208565b50506000910152565b60008151808452611241816020860160208601611205565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561130557603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b818110156112ef57605f198985030183526112dd848651611229565b948e01949350918d01916001016112c1565b505050978a01979450509188019160010161127c565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b848110156113b957898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b808310156113a45783516001600160e01b0319168252928b019260019290920191908b019061137a565b50978a0197955050509187019160010161133d565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561141d57603f1988860301845261140b858351611229565b945092850192908501906001016113ef565b5092979650505050505050565b600181811c9082168061143e57607f821691505b60208210810361145e57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561148c57600080fd5b5051919050565b600082516114a5818460208701611205565b9190910192915050565b6000602082840312156114c157600080fd5b81516001600160a01b03811681146114d857600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061150390830184611229565b94935050505056fea2646970667358221220d1704b56182a9dae6cf5414a8ec3070aff253231f22d4ee76e1afbfaea1e49d464736f6c63430008130033","sourceMap":"833:2031:17:-:0;;;3126:44:22;;;3166:4;-1:-1:-1;;3126:44:22;;;;;;;;1016:26:32;;;;;;;;;;;833:2031:17;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061022f5760003560e01c8062b1fad714610234578063030e4006146102595780630688b135146102615780630f166ad414610269578063174eedde1461026f578063176effb31461027657806318540361146102875780631b96dce6146102995780631e7bcb2e146102a15780631ed7831c146102a95780632ade3880146102be5780633554642a146102d357806339f56f7f146102e45780633e5e3c23146102ec5780633f7286f4146102f45780634bf4ba21146102fc578063587c1243146103045780635aff59991461030c57806366d003ac1461031457806366d9a9a01461031c5780636a38dd0a1461033157806370a329441461033957806374d9284e1461026f578063759c9a861461034157806379e62d0d146103495780637b103999146103515780637b2edf32146103675780637cbe79ed1461036f578063829e423f1461026f57806385226c81146103775780638c7408c41461026f5780638e0d1a501461038c5780638e3c249314610394578063916a17c61461039c578063a407c67a146103a4578063aa3744bd146103ac578063b5508aa9146103b4578063ba414fa6146103bc578063c5d7d73b146103d4578063d1e82b58146103e5578063d1f2cd88146103ed578063d5bee9f5146103f5578063da4bf087146103fd578063dac4eb1614610405578063e20c9f711461040d578063ef0d790f14610415578063fa7626d41461041d578063fd325c601461042a575b600080fd5b61023c610432565b6040516001600160a01b0390911681526020015b60405180910390f35b61023c610467565b61023c61049d565b3061023c565b600061023c565b6020546001600160a01b031661023c565b6023545b604051908152602001610250565b61023c6104ca565b61023c6104fb565b6102b161052e565b60405161025091906111b8565b6102c6610590565b6040516102509190611255565b6024546001600160a01b031661023c565b60215461028b565b6102b16106d2565b6102b1610732565b6102b1610792565b61023c6107b5565b61023c6107e8565b61023c61081b565b610324610847565b6040516102509190611315565b61023c61092d565b6102b161095d565b61023c6109f5565b6102b1610a24565b601e5461010090046001600160a01b031661023c565b61023c610a8c565b61023c610abf565b61037f610aec565b60405161025091906113c8565b61023c610bbc565b61023c610be9565b610324610c1c565b6102b1610d02565b61023c610d6a565b61037f610d97565b6103c4610e67565b6040519015158152602001610250565b6022546001600160a01b031661023c565b61023c610f0b565b61023c610f3e565b61023c610f6f565b61023c610f9d565b61023c610fcd565b6102b1610ffe565b61023c61105e565b601e546103c49060ff1681565b601f5461028b565b60006104626040518060400160405280600d81526020016c706f6f6c5f6d616e616765723160981b815250611090565b905090565b600061046260405180604001604052806013815260200172383937b334b63298afb737ba20a6b2b6b132b960691b815250611090565b60006104626040518060400160405280600a8152602001693932b1b4b834b2b73a1960b11b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b632992fb7bbb732b960911b815250611090565b60006104626040518060400160405280601081526020016f70726f66696c65315f6d656d6265723160801b815250611090565b6060601680548060200260200160405190810160405280929190818152602001828054801561058657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610568575b5050505050905090565b6060601d805480602002602001604051908101604052809291908181526020016000905b828210156106c957600084815260208082206040805180820182526002870290920180546001600160a01b03168352600181018054835181870281018701909452808452939591948681019491929084015b828210156106b25783829060005260206000200180546106259061142a565b80601f01602080910402602001604051908101604052809291908181526020018280546106519061142a565b801561069e5780601f106106735761010080835404028352916020019161069e565b820191906000526020600020905b81548152906001019060200180831161068157829003601f168201915b505050505081526020019060010190610606565b5050505081525050815260200190600101906105b4565b50505050905090565b60606018805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b60606017805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b604080516002808252606080830184529260208301908036833701905050905090565b60006104626040518060400160405280601081526020016f70726f66696c65325f6d656d6265723160801b815250611090565b60006104626040518060400160405280601081526020016f726563697069656e744164647265737360801b815250611090565b6000610462604051806040016040528060098152602001681c9958da5c1a595b9d60ba1b815250611090565b6060601b805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b0316835260018101805483518187028101870190945280845293949193858301939283018282801561091557602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b031916815260200190600401906020826003010492830192600103820291508084116108d75790505b5050505050815250508152602001906001019061086b565b60006104626040518060400160405280600d81526020016c3837b7b62fb6b0b730b3b2b91960991b815250611090565b6040805160028082526060808301845292600092919060208301908036833701905050905061098a6104fb565b8160008151811061099d5761099d611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610a8c565b816001815181106109d8576109d8611464565b6001600160a01b0390921660209283029190910190910152919050565b60006104626040518060400160405280600c81526020016b1b9bd7dc9958da5c1a595b9d60a21b815250611090565b60408051600280825260608083018452926000929190602083019080368337019050509050610a51610432565b81600081518110610a6457610a64611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c561092d565b60006104626040518060400160405280601081526020016f383937b334b63298afb6b2b6b132b91960811b815250611090565b60006104626040518060400160405280600a81526020016930b63637afb7bbb732b960b11b815250611090565b6060601a805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610b2f9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610b5b9061142a565b8015610ba85780601f10610b7d57610100808354040283529160200191610ba8565b820191906000526020600020905b815481529060010190602001808311610b8b57829003601f168201915b505050505081526020019060010190610b10565b60006104626040518060400160405280600a8152602001693837b7b62fb0b236b4b760b11b815250611090565b60006104626040518060400160405280601081526020016f383937b334b632992fb6b2b6b132b91960811b815250611090565b6060601c805480602002602001604051908101604052809291908181526020016000905b828210156106c95760008481526020908190206040805180820182526002860290920180546001600160a01b03168352600181018054835181870281018701909452808452939491938583019392830182828015610cea57602002820191906000526020600020906000905b82829054906101000a900460e01b6001600160e01b03191681526020019060040190602082600301049283019260010382029150808411610cac5790505b50505050508152505081526020019060010190610c40565b60408051600280825260608083018452926000929190602083019080368337019050509050610d2f6107b5565b81600081518110610d4257610d42611464565b60200260200101906001600160a01b031690816001600160a01b0316815250506109c5610be9565b60006104626040518060400160405280600a815260200169726563697069656e743160b01b815250611090565b60606019805480602002602001604051908101604052809291908181526020016000905b828210156106c9578382906000526020600020018054610dda9061142a565b80601f0160208091040260200160405190810160405280929190818152602001828054610e069061142a565b8015610e535780601f10610e2857610100808354040283529160200191610e53565b820191906000526020600020905b815481529060010190602001808311610e3657829003601f168201915b505050505081526020019060010190610dbb565b60085460009060ff1615610e7f575060085460ff1690565b604051630667f9d760e41b8152737109709ecfa91a80626ff3989d68f67f5b1dd12d600482018190526519985a5b195960d21b602483015260009163667f9d7090604401602060405180830381865afa158015610ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f04919061147a565b1415905090565b60006104626040518060400160405280601081526020016f3837b7b62fb737ba20a6b0b730b3b2b960811b815250611090565b60006104626040518060400160405280600e81526020016d383937b334b63298afb7bbb732b960911b815250611090565b60006104626040518060400160405280600b81526020016a1c985b991bdb4818da185960aa1b815250611090565b60006104626040518060400160405280600d81526020016c616c6c6f5f747265617375727960981b815250611090565b60006104626040518060400160405280600e81526020016d3932b3b4b9ba393cafb7bbb732b960911b815250611090565b60606015805480602002602001604051908101604052809291908181526020018280548015610586576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311610568575050505050905090565b600061046260405180604001604052806013815260200172383937b334b632992fb737ba20a6b2b6b132b960691b8152505b600061109b826110a2565b5092915050565b600080826040516020016110b69190611493565b60408051808303601f190181529082905280516020909101206001625e79b760e01b03198252600482018190529150737109709ecfa91a80626ff3989d68f67f5b1dd12d9063ffa1864990602401602060405180830381865afa158015611121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061114591906114af565b6040516318caf8e360e31b8152909250737109709ecfa91a80626ff3989d68f67f5b1dd12d9063c657c7189061118190859087906004016114df565b600060405180830381600087803b15801561119b57600080fd5b505af11580156111af573d6000803e3d6000fd5b50505050915091565b6020808252825182820181905260009190848201906040850190845b818110156111f95783516001600160a01b0316835292840192918401916001016111d4565b50909695505050505050565b60005b83811015611220578181015183820152602001611208565b50506000910152565b60008151808452611241816020860160208601611205565b601f01601f19169290920160200192915050565b602080825282518282018190526000919060409081850190600581811b8701840188860187805b8581101561130557603f198b8503018752825180516001600160a01b031685528901518985018990528051898601819052908a0190606081881b870181019190870190855b818110156112ef57605f198985030183526112dd848651611229565b948e01949350918d01916001016112c1565b505050978a01979450509188019160010161127c565b50919a9950505050505050505050565b60006020808301818452808551808352604092508286019150828160051b8701018488016000805b848110156113b957898403603f19018652825180516001600160a01b03168552880151888501889052805188860181905290890190839060608701905b808310156113a45783516001600160e01b0319168252928b019260019290920191908b019061137a565b50978a0197955050509187019160010161133d565b50919998505050505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561141d57603f1988860301845261140b858351611229565b945092850192908501906001016113ef565b5092979650505050505050565b600181811c9082168061143e57607f821691505b60208210810361145e57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561148c57600080fd5b5051919050565b600082516114a5818460208701611205565b9190910192915050565b6000602082840312156114c157600080fd5b81516001600160a01b03811681146114d857600080fd5b9392505050565b6001600160a01b038316815260406020820181905260009061150390830184611229565b94935050505056fea2646970667358221220d1704b56182a9dae6cf5414a8ec3070aff253231f22d4ee76e1afbfaea1e49d464736f6c63430008130033","sourceMap":"833:2031:17:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1763:107:15;;;:::i;:::-;;;-1:-1:-1;;;;;178:32:136;;;160:51;;148:2;133:18;1763:107:15;;;;;;;;2429:119;;;:::i;4045:101::-;;;:::i;226:92::-;306:4;226:92;;905:138;968:7;905:138;;2159:111:17;2244:19;;-1:-1:-1;;;;;2244:19:17;2159:111;;2572:97;2650:12;;2572:97;;;368:25:136;;;356:2;341:18;2572:97:17;222:177:136;3126:109:15;;;:::i;2554:113::-;;;:::i;2452:134:25:-;;;:::i;:::-;;;;;;;:::i;3360:151::-;;;:::i;:::-;;;;;;;:::i;2757:105:17:-;2839:16;;-1:-1:-1;;;;;2839:16:17;2757:105;;2276:97;2354:12;;2276:97;;3221:133:25;;;:::i;2922:141::-;;;:::i;1331:118:15:-;;;:::i;3366:113::-;;;:::i;4257:::-;;;:::i;4152:99::-;;;:::i;2738:178:25:-;;;:::i;:::-;;;;;;;:::i;1876:107:15:-;;;:::i;2792:241::-;;;:::i;4376:105::-;;;:::i;1989:232::-;;;:::i;610:85:17:-;678:10;;;;;-1:-1:-1;;;;;678:10:17;610:85;;2673:113:15;;;:::i;439:101::-;;;:::i;2592:140:25:-;;;:::i;:::-;;;;;;;:::i;1537:101:15:-;;;:::i;3485:113::-;;;:::i;3069:146:25:-;;;:::i;3604:241:15:-;;;:::i;3938:101::-;;;:::i;2157:141:25:-;;;:::i;1243:204:21:-;;;:::i;:::-;;;6119:14:136;;6112:22;6094:41;;6082:2;6067:18;1243:204:21;5954:187:136;2461:105:17;2543:16;;-1:-1:-1;;;;;2543:16:17;2461:105;;1644:113:15;;;:::i;2314:109::-;;;:::i;4571:105::-;;;:::i;546:124::-;;;:::i;324:109::-;;;:::i;2304:142:25:-;;;:::i;3241:119:15:-;;;:::i;1016:26:32:-;;;;;;;;;2050:103:17;2131:15;;2050:103;;1763:107:15;1812:7;1838:25;;;;;;;;;;;;;;-1:-1:-1;;;1838:25:15;;;:8;:25::i;:::-;1831:32;;1763:107;:::o;2429:119::-;2484:7;2510:31;;;;;;;;;;;;;;-1:-1:-1;;;2510:31:15;;;:8;:31::i;4045:101::-;4091:7;4117:22;;;;;;;;;;;;;;-1:-1:-1;;;4117:22:15;;;:8;:22::i;3126:109::-;3176:7;3202:26;;;;;;;;;;;;;;-1:-1:-1;;;3202:26:15;;;:8;:26::i;2554:113::-;2606:7;2632:28;;;;;;;;;;;;;;-1:-1:-1;;;2632:28:15;;;:8;:28::i;2452:134:25:-;2499:33;2563:16;2544:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2544:35:25;;;;;;;;;;;;;;;;;;;;;;;2452:134;:::o;3360:151::-;3409:42;3485:19;3463:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3463:41:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3360:151;:::o;3221:133::-;3267:33;3331:16;3312:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3312:35:25;;;;;;;;;;;;;;;;;;;;;;3221:133;:::o;2922:141::-;2970:35;3038:18;3017:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3017:39:25;;;;;;;;;;;;;;;;;;;;;;2922:141;:::o;1331:118:15:-;1426:16;;;1440:1;1426:16;;;1391;1426;;;;;1391;1426;;;;;;;;;;-1:-1:-1;1426:16:15;1419:23;;1331:118;:::o;3366:113::-;3418:7;3444:28;;;;;;;;;;;;;;-1:-1:-1;;;3444:28:15;;;:8;:28::i;4257:113::-;4309:7;4335:28;;;;;;;;;;;;;;-1:-1:-1;;;4335:28:15;;;:8;:28::i;4152:99::-;4197:7;4223:21;;;;;;;;;;;;;;-1:-1:-1;;;4223:21:15;;;:8;:21::i;2738:178:25:-;2794:48;2883:26;2854:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2854:55:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1876:107:15;1925:7;1951:25;;;;;;;;;;;;;;-1:-1:-1;;;1951:25:15;;;:8;:25::i;2792:241::-;2900:16;;;2914:1;2900:16;;;2844;2900;;;;;2844;2872:25;;2900:16;2914:1;2900:16;;;;;;;;;;-1:-1:-1;2900:16:15;2872:44;;2940:18;:16;:18::i;:::-;2926:8;2935:1;2926:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;2926:32:15;;;-1:-1:-1;;;;;2926:32:15;;;;;2982:18;:16;:18::i;:::-;2968:8;2977:1;2968:11;;;;;;;;:::i;:::-;-1:-1:-1;;;;;2968:32:15;;;:11;;;;;;;;;;;:32;3018:8;2792:241;-1:-1:-1;2792:241:15:o;4376:105::-;4424:7;4450:24;;;;;;;;;;;;;;-1:-1:-1;;;4450:24:15;;;:8;:24::i;1989:232::-;2094:16;;;2108:1;2094:16;;;2038;2094;;;;;2038;2066:25;;2094:16;2108:1;2094:16;;;;;;;;;;-1:-1:-1;2094:16:15;2066:44;;2134:15;:13;:15::i;:::-;2120:8;2129:1;2120:11;;;;;;;;:::i;:::-;;;;;;:29;-1:-1:-1;;;;;2120:29:15;;;-1:-1:-1;;;;;2120:29:15;;;;;2173:15;:13;:15::i;2673:113::-;2725:7;2751:28;;;;;;;;;;;;;;-1:-1:-1;;;2751:28:15;;;:8;:28::i;439:101::-;485:7;511:22;;;;;;;;;;;;;;-1:-1:-1;;;511:22:15;;;:8;:22::i;2592:140:25:-;2640:34;2707:18;2686:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1537:101:15;1583:7;1609:22;;;;;;;;;;;;;;-1:-1:-1;;;1609:22:15;;;:8;:22::i;3485:113::-;3537:7;3563:28;;;;;;;;;;;;;;-1:-1:-1;;;3563:28:15;;;:8;:28::i;3069:146:25:-;3117:40;3190:18;3169:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3169:39:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3604:241:15;3712:16;;;3726:1;3712:16;;;3656;3712;;;;;3656;3684:25;;3712:16;3726:1;3712:16;;;;;;;;;;-1:-1:-1;3712:16:15;3684:44;;3752:18;:16;:18::i;:::-;3738:8;3747:1;3738:11;;;;;;;;:::i;:::-;;;;;;:32;-1:-1:-1;;;;;3738:32:15;;;-1:-1:-1;;;;;3738:32:15;;;;;3794:18;:16;:18::i;3938:101::-;3984:7;4010:22;;;;;;;;;;;;;;-1:-1:-1;;;4010:22:15;;;:8;:22::i;2157:141:25:-;2206:34;2273:18;2252:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1243:204:21;1302:7;;1282:4;;1302:7;;1298:143;;;-1:-1:-1;1332:7:21;;;;;1243:204::o;1298:143::-;1377:39;;-1:-1:-1;;;1377:39:21;;:7;:39;;;7193:51:136;;;-1:-1:-1;;;7260:18:136;;;7253:34;1428:1:21;;1377:7;;7166:18:136;;1377:39:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:53;;1370:60;;1243:204;:::o;1644:113:15:-;1696:7;1722:28;;;;;;;;;;;;;;-1:-1:-1;;;1722:28:15;;;:8;:28::i;2314:109::-;2364:7;2390:26;;;;;;;;;;;;;;-1:-1:-1;;;2390:26:15;;;:8;:26::i;4571:105::-;4620:7;4646:23;;;;;;;;;;;;;;-1:-1:-1;;;4646:23:15;;;:8;:23::i;546:124::-;595:15;637:25;;;;;;;;;;;;;;-1:-1:-1;;;637:25:15;;;:8;:25::i;324:109::-;374:7;400:26;;;;;;;;;;;;;;-1:-1:-1;;;400:26:15;;;:8;:26::i;2304:142:25:-;2353:35;2421:18;2400:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2400:39:25;;;;;;;;;;;;;;;;;;;;;;2304:142;:::o;3241:119:15:-;3296:7;3322:31;;;;;;;;;;;;;;-1:-1:-1;;;3322:31:15;;;20439:125:23;20503:12;20537:20;20552:4;20537:14;:20::i;:::-;-1:-1:-1;20527:30:23;20439:125;-1:-1:-1;;20439:125:23:o;20158:242::-;20228:12;20242:18;20320:4;20303:22;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;20303:22:23;;;;;;;20293:33;;20303:22;20293:33;;;;-1:-1:-1;;;;;;20344:19:23;;;;;368:25:136;;;20293:33:23;-1:-1:-1;20344:7:23;;;;341:18:136;;20344:19:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20373:20;;-1:-1:-1;;;20373:20:23;;20337:26;;-1:-1:-1;20373:8:23;;;;:20;;20337:26;;20388:4;;20373:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20158:242;;;:::o;404:658:136:-;575:2;627:21;;;697:13;;600:18;;;719:22;;;546:4;;575:2;798:15;;;;772:2;757:18;;;546:4;841:195;855:6;852:1;849:13;841:195;;;920:13;;-1:-1:-1;;;;;916:39:136;904:52;;1011:15;;;;976:12;;;;952:1;870:9;841:195;;;-1:-1:-1;1053:3:136;;404:658;-1:-1:-1;;;;;;404:658:136:o;1067:250::-;1152:1;1162:113;1176:6;1173:1;1170:13;1162:113;;;1252:11;;;1246:18;1233:11;;;1226:39;1198:2;1191:10;1162:113;;;-1:-1:-1;;1309:1:136;1291:16;;1284:27;1067:250::o;1322:271::-;1364:3;1402:5;1396:12;1429:6;1424:3;1417:19;1445:76;1514:6;1507:4;1502:3;1498:14;1491:4;1484:5;1480:16;1445:76;:::i;:::-;1575:2;1554:15;-1:-1:-1;;1550:29:136;1541:39;;;;1582:4;1537:50;;1322:271;-1:-1:-1;;1322:271:136:o;1598:1744::-;1833:2;1885:21;;;1955:13;;1858:18;;;1977:22;;;1804:4;;1833:2;2018;;2036:18;;;;2073:1;2116:15;;;2101:31;;2097:40;;2160:15;;;1804:4;;2224:1089;2240:6;2235:3;2232:15;2224:1089;;;-1:-1:-1;;2309:22:136;;;2305:36;2293:49;;2365:13;;2452:9;;-1:-1:-1;;;;;2448:35:136;2433:51;;2523:11;;2517:18;2555:15;;;2548:27;;;2636:19;;2405:15;;;2668:24;;;2849:21;;;;2715:2;2797:17;;;2785:30;;2781:39;;;2739:15;;;;2894:1;2908:296;2924:8;2919:3;2916:17;2908:296;;;3030:2;3026:7;3017:6;3009;3005:19;3001:33;2994:5;2987:48;3062:42;3097:6;3086:8;3080:15;3062:42;:::i;:::-;3133:17;;;;3052:52;-1:-1:-1;3176:14:136;;;;2952:1;2943:11;2908:296;;;-1:-1:-1;;;3291:12:136;;;;3227:6;-1:-1:-1;;3256:15:136;;;;2266:1;2257:11;2224:1089;;;-1:-1:-1;3330:6:136;;1598:1744;-1:-1:-1;;;;;;;;;;1598:1744:136:o;3347:1569::-;3551:4;3580:2;3620;3609:9;3605:18;3650:2;3639:9;3632:21;3673:6;3708;3702:13;3739:6;3731;3724:22;3765:2;3755:12;;3798:2;3787:9;3783:18;3776:25;;3860:2;3850:6;3847:1;3843:14;3832:9;3828:30;3824:39;3898:2;3890:6;3886:15;3919:1;3940;3950:937;3966:6;3961:3;3958:15;3950:937;;;4035:22;;;-1:-1:-1;;4031:36:136;4019:49;;4091:13;;4178:9;;-1:-1:-1;;;;;4174:35:136;4159:51;;4249:11;;4243:18;4281:15;;;4274:27;;;4362:19;;4131:15;;;4394:24;;;4484:21;;;;4529:1;;4452:2;4440:15;;;4543:236;4559:8;4554:3;4551:17;4543:236;;;4640:15;;-1:-1:-1;;;;;;4636:42:136;4622:57;;4748:17;;;;4587:1;4578:11;;;;;4705:14;;;;4543:236;;;-1:-1:-1;4865:12:136;;;;4802:5;-1:-1:-1;;;4830:15:136;;;;3992:1;3983:11;3950:937;;;-1:-1:-1;4904:6:136;;3347:1569;-1:-1:-1;;;;;;;;;3347:1569:136:o;5146:803::-;5308:4;5337:2;5377;5366:9;5362:18;5407:2;5396:9;5389:21;5430:6;5465;5459:13;5496:6;5488;5481:22;5534:2;5523:9;5519:18;5512:25;;5596:2;5586:6;5583:1;5579:14;5568:9;5564:30;5560:39;5546:53;;5634:2;5626:6;5622:15;5655:1;5665:255;5679:6;5676:1;5673:13;5665:255;;;5772:2;5768:7;5756:9;5748:6;5744:22;5740:36;5735:3;5728:49;5800:40;5833:6;5824;5818:13;5800:40;:::i;:::-;5790:50;-1:-1:-1;5898:12:136;;;;5863:15;;;;5701:1;5694:9;5665:255;;;-1:-1:-1;5937:6:136;;5146:803;-1:-1:-1;;;;;;;5146:803:136:o;6370:380::-;6449:1;6445:12;;;;6492;;;6513:61;;6567:4;6559:6;6555:17;6545:27;;6513:61;6620:2;6612:6;6609:14;6589:18;6586:38;6583:161;;6666:10;6661:3;6657:20;6654:1;6647:31;6701:4;6698:1;6691:15;6729:4;6726:1;6719:15;6583:161;;6370:380;;;:::o;6887:127::-;6948:10;6943:3;6939:20;6936:1;6929:31;6979:4;6976:1;6969:15;7003:4;7000:1;6993:15;7298:184;7368:6;7421:2;7409:9;7400:7;7396:23;7392:32;7389:52;;;7437:1;7434;7427:12;7389:52;-1:-1:-1;7460:16:136;;7298:184;-1:-1:-1;7298:184:136:o;7487:289::-;7618:3;7656:6;7650:13;7672:66;7731:6;7726:3;7719:4;7711:6;7707:17;7672:66;:::i;:::-;7754:16;;;;;7487:289;-1:-1:-1;;7487:289:136:o;7963:290::-;8033:6;8086:2;8074:9;8065:7;8061:23;8057:32;8054:52;;;8102:1;8099;8092:12;8054:52;8128:16;;-1:-1:-1;;;;;8173:31:136;;8163:42;;8153:70;;8219:1;8216;8209:12;8153:70;8242:5;7963:290;-1:-1:-1;;;7963:290:136:o;8258:317::-;-1:-1:-1;;;;;8435:32:136;;8417:51;;8504:2;8499;8484:18;;8477:30;;;-1:-1:-1;;8524:45:136;;8550:18;;8542:6;8524:45;:::i;:::-;8516:53;8258:317;-1:-1:-1;;;;8258:317:136:o","linkReferences":{}},"methodIdentifiers":{"IS_TEST()":"fa7626d4","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","excludeArtifacts()":"b5508aa9","excludeContracts()":"e20c9f71","excludeSenders()":"1ed7831c","failed()":"ba414fa6","local()":"0f166ad4","no_recipient()":"759c9a86","nullProfile_member1()":"829e423f","nullProfile_member2()":"8c7408c4","nullProfile_members()":"4bf4ba21","nullProfile_notAMember()":"174eedde","nullProfile_owner()":"74d9284e","poolProfile_anchor()":"176effb3","poolProfile_id()":"fd325c60","pool_admin()":"8e0d1a50","pool_manager1()":"00b1fad7","pool_manager2()":"6a38dd0a","pool_managers()":"79e62d0d","pool_notAManager()":"d1e82b58","profile1_anchor()":"c5d7d73b","profile1_id()":"39f56f7f","profile1_member1()":"1e7bcb2e","profile1_member2()":"7b2edf32","profile1_members()":"70a32944","profile1_notAMember()":"030e4006","profile1_owner()":"d1f2cd88","profile2_anchor()":"3554642a","profile2_id()":"18540361","profile2_member1()":"587c1243","profile2_member2()":"8e3c2493","profile2_members()":"a407c67a","profile2_notAMember()":"ef0d790f","profile2_owner()":"1b96dce6","randomAddress()":"d5bee9f5","recipient()":"66d003ac","recipient1()":"aa3744bd","recipient2()":"0688b135","recipientAddress()":"5aff5999","registry()":"7b103999","registry_owner()":"dac4eb16","targetArtifactSelectors()":"66d9a9a0","targetArtifacts()":"85226c81","targetContracts()":"3f7286f4","targetInterfaces()":"2ade3880","targetSelectors()":"916a17c6","targetSenders()":"3e5e3c23"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"log_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"log_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"name\":\"log_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"name\":\"log_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"val\",\"type\":\"address\"}],\"name\":\"log_named_address\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"val\",\"type\":\"uint256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256[]\",\"name\":\"val\",\"type\":\"int256[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"val\",\"type\":\"address[]\"}],\"name\":\"log_named_array\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"val\",\"type\":\"bytes\"}],\"name\":\"log_named_bytes\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"val\",\"type\":\"bytes32\"}],\"name\":\"log_named_bytes32\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"decimals\",\"type\":\"uint256\"}],\"name\":\"log_named_decimal_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"val\",\"type\":\"int256\"}],\"name\":\"log_named_int\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"val\",\"type\":\"string\"}],\"name\":\"log_named_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"key\",\"type\":\"string\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"val\",\"type\":\"uint256\"}],\"name\":\"log_named_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"log_string\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"log_uint\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"logs\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"allo_treasury\",\"outputs\":[{\"internalType\":\"address payable\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"excludedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"excludeSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"excludedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"failed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"local\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"no_recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"nullProfile_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"poolProfile_anchor\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"poolProfile_id\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_manager2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_managers\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"pool_notAManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_anchor\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_id\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile1_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_anchor\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_id\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_member2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_members\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_notAMember\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"profile2_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipient2\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"recipientAddress\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry\",\"outputs\":[{\"internalType\":\"contract Registry\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"registry_owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifactSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedArtifactSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetArtifacts\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"targetedArtifacts_\",\"type\":\"string[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetContracts\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedContracts_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetInterfaces\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"string[]\",\"name\":\"artifacts\",\"type\":\"string[]\"}],\"internalType\":\"struct StdInvariant.FuzzInterface[]\",\"name\":\"targetedInterfaces_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSelectors\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"bytes4[]\",\"name\":\"selectors\",\"type\":\"bytes4[]\"}],\"internalType\":\"struct StdInvariant.FuzzSelector[]\",\"name\":\"targetedSelectors_\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"targetSenders\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"targetedSenders_\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"title\":\"RegistrySetupFull\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"This contract is used to setup a Registry contract with two identities for testing purposes.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":\"RegistrySetupFull\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":0},\"remappings\":[\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/\",\":@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/\",\":@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/\",\":@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":@sablier/v2-core/=lib/allo-v2/lib/v2-core/\",\":@src/=pkg/contracts/src/\",\":ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/\",\":__safe-smart-account/=lib/__safe-smart-account/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/\",\":eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/\",\":erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/\",\":forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/\",\":forge-std/=lib/forge-std/src/\",\":hats-protocol/=lib/allo-v2/lib/hats-protocol/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts/\",\":openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/\",\":openzeppelin/=lib/openzeppelin-contracts/contracts/\",\":permit2/=lib/allo-v2/lib/permit2/\",\":prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/\",\":prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/\",\":safe-smart-account/=lib/safe-smart-account/\",\":solady/=lib/allo-v2/lib/solady/\",\":solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/\",\":solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/\",\":solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/\",\":solmate/=lib/allo-v2/lib/permit2/lib/solmate/\",\":utils/=lib/allo-v2/lib/hats-protocol/lib/utils/\",\":v2-core/=lib/allo-v2/lib/v2-core/\"]},\"sources\":{\"lib/allo-v2/contracts/core/Anchor.sol\":{\"keccak256\":\"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139\",\"dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H\"]},\"lib/allo-v2/contracts/core/Registry.sol\":{\"keccak256\":\"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283\",\"dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR\"]},\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/libraries/Errors.sol\":{\"keccak256\":\"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf\",\"dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"lib/allo-v2/contracts/core/libraries/Native.sol\":{\"keccak256\":\"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a\",\"dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv\"]},\"lib/allo-v2/contracts/core/libraries/Transfer.sol\":{\"keccak256\":\"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11\",\"dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5\"]},\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol\":{\"keccak256\":\"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298\",\"dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt\"]},\"lib/allo-v2/test/foundry/shared/Accounts.sol\":{\"keccak256\":\"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b\",\"dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m\"]},\"lib/allo-v2/test/foundry/shared/RegistrySetup.sol\":{\"keccak256\":\"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb\",\"dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j\"]},\"lib/forge-std/src/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"lib/forge-std/src/StdAssertions.sol\":{\"keccak256\":\"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c\",\"dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k\"]},\"lib/forge-std/src/StdChains.sol\":{\"keccak256\":\"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b\",\"dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj\"]},\"lib/forge-std/src/StdCheats.sol\":{\"keccak256\":\"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2\",\"dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc\"]},\"lib/forge-std/src/StdError.sol\":{\"keccak256\":\"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6\",\"dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj\"]},\"lib/forge-std/src/StdInvariant.sol\":{\"keccak256\":\"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d\",\"dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz\"]},\"lib/forge-std/src/StdJson.sol\":{\"keccak256\":\"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54\",\"dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp\"]},\"lib/forge-std/src/StdMath.sol\":{\"keccak256\":\"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92\",\"dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC\"]},\"lib/forge-std/src/StdStorage.sol\":{\"keccak256\":\"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678\",\"dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft\"]},\"lib/forge-std/src/StdStyle.sol\":{\"keccak256\":\"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8\",\"dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK\"]},\"lib/forge-std/src/StdToml.sol\":{\"keccak256\":\"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d\",\"dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy\"]},\"lib/forge-std/src/StdUtils.sol\":{\"keccak256\":\"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61\",\"dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX\"]},\"lib/forge-std/src/Test.sol\":{\"keccak256\":\"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e\",\"dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK\"]},\"lib/forge-std/src/Vm.sol\":{\"keccak256\":\"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456\",\"license\":\"MIT OR Apache-2.0\",\"urls\":[\"bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a\",\"dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK\"]},\"lib/forge-std/src/console.sol\":{\"keccak256\":\"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70\",\"dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec\"]},\"lib/forge-std/src/console2.sol\":{\"keccak256\":\"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973\",\"dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF\"]},\"lib/forge-std/src/interfaces/IERC165.sol\":{\"keccak256\":\"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc\",\"dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT\"]},\"lib/forge-std/src/interfaces/IERC20.sol\":{\"keccak256\":\"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7\",\"dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9\"]},\"lib/forge-std/src/interfaces/IERC721.sol\":{\"keccak256\":\"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f\",\"dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm\"]},\"lib/forge-std/src/interfaces/IMulticall3.sol\":{\"keccak256\":\"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0\",\"dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2\"]},\"lib/forge-std/src/mocks/MockERC20.sol\":{\"keccak256\":\"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f\",\"dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw\"]},\"lib/forge-std/src/mocks/MockERC721.sol\":{\"keccak256\":\"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b\",\"dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN\"]},\"lib/forge-std/src/safeconsole.sol\":{\"keccak256\":\"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae\",\"dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol\":{\"keccak256\":\"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1\",\"dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol\":{\"keccak256\":\"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c\",\"dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol\":{\"keccak256\":\"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e\",\"dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol\":{\"keccak256\":\"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b\",\"dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol\":{\"keccak256\":\"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95\",\"dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol\":{\"keccak256\":\"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a\",\"dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol\":{\"keccak256\":\"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89\",\"dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol\":{\"keccak256\":\"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758\",\"dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol\":{\"keccak256\":\"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91\",\"dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB\"]},\"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol\":{\"keccak256\":\"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4\",\"dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec\",\"dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol\":{\"keccak256\":\"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519\",\"dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h\"]},\"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol\":{\"keccak256\":\"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d\",\"dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol\":{\"keccak256\":\"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708\",\"dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV\"]},\"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol\":{\"keccak256\":\"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c\",\"dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol\":{\"keccak256\":\"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d\",\"dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43\"]},\"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f\",\"dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log","anonymous":false},{"inputs":[{"internalType":"address","name":"","type":"address","indexed":false}],"type":"event","name":"log_address","anonymous":false},{"inputs":[{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_array","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"log_bytes","anonymous":false},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32","indexed":false}],"type":"event","name":"log_bytes32","anonymous":false},{"inputs":[{"internalType":"int256","name":"","type":"int256","indexed":false}],"type":"event","name":"log_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address","name":"val","type":"address","indexed":false}],"type":"event","name":"log_named_address","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256[]","name":"val","type":"uint256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256[]","name":"val","type":"int256[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"address[]","name":"val","type":"address[]","indexed":false}],"type":"event","name":"log_named_array","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes","name":"val","type":"bytes","indexed":false}],"type":"event","name":"log_named_bytes","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"bytes32","name":"val","type":"bytes32","indexed":false}],"type":"event","name":"log_named_bytes32","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false},{"internalType":"uint256","name":"decimals","type":"uint256","indexed":false}],"type":"event","name":"log_named_decimal_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"int256","name":"val","type":"int256","indexed":false}],"type":"event","name":"log_named_int","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"string","name":"val","type":"string","indexed":false}],"type":"event","name":"log_named_string","anonymous":false},{"inputs":[{"internalType":"string","name":"key","type":"string","indexed":false},{"internalType":"uint256","name":"val","type":"uint256","indexed":false}],"type":"event","name":"log_named_uint","anonymous":false},{"inputs":[{"internalType":"string","name":"","type":"string","indexed":false}],"type":"event","name":"log_string","anonymous":false},{"inputs":[{"internalType":"uint256","name":"","type":"uint256","indexed":false}],"type":"event","name":"log_uint","anonymous":false},{"inputs":[{"internalType":"bytes","name":"","type":"bytes","indexed":false}],"type":"event","name":"logs","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_TEST","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"allo_treasury","outputs":[{"internalType":"address payable","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeArtifacts","outputs":[{"internalType":"string[]","name":"excludedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeContracts","outputs":[{"internalType":"address[]","name":"excludedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"excludeSenders","outputs":[{"internalType":"address[]","name":"excludedSenders_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"failed","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"local","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"no_recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"nullProfile_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"poolProfile_anchor","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"poolProfile_id","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_admin","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_manager2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_managers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"pool_notAManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile1_anchor","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile1_id","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile1_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile2_anchor","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"profile2_id","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_member2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_members","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_notAMember","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"profile2_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"randomAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipient2","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"recipientAddress","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"registry","outputs":[{"internalType":"contract Registry","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"registry_owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifactSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedArtifactSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetArtifacts","outputs":[{"internalType":"string[]","name":"targetedArtifacts_","type":"string[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetContracts","outputs":[{"internalType":"address[]","name":"targetedContracts_","type":"address[]"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetInterfaces","outputs":[{"internalType":"struct StdInvariant.FuzzInterface[]","name":"targetedInterfaces_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"string[]","name":"artifacts","type":"string[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSelectors","outputs":[{"internalType":"struct StdInvariant.FuzzSelector[]","name":"targetedSelectors_","type":"tuple[]","components":[{"internalType":"address","name":"addr","type":"address"},{"internalType":"bytes4[]","name":"selectors","type":"bytes4[]"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"targetSenders","outputs":[{"internalType":"address[]","name":"targetedSenders_","type":"address[]"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/","@openzeppelin/foundry/=lib/openzeppelin-foundry-upgrades/src/","@prb/math/=lib/allo-v2/lib/v2-core/lib/prb-math/","@prb/test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","@sablier/v2-core/=lib/allo-v2/lib/v2-core/","@src/=pkg/contracts/src/","ERC1155/=lib/allo-v2/lib/hats-protocol/lib/ERC1155/","__safe-smart-account/=lib/__safe-smart-account/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/openzeppelin-contracts/lib/forge-std/lib/ds-test/src/","eas-contracts/=lib/allo-v2/lib/eas-contracts/contracts/","erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/","forge-gas-snapshot/=lib/allo-v2/lib/permit2/lib/forge-gas-snapshot/src/","forge-std/=lib/forge-std/src/","hats-protocol/=lib/allo-v2/lib/hats-protocol/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts/","openzeppelin-foundry-upgrades/=lib/openzeppelin-foundry-upgrades/src/","openzeppelin/=lib/openzeppelin-contracts/contracts/","permit2/=lib/allo-v2/lib/permit2/","prb-math/=lib/allo-v2/lib/v2-core/lib/prb-math/src/","prb-test/=lib/allo-v2/lib/v2-core/lib/prb-test/src/","safe-smart-account/=lib/safe-smart-account/","solady/=lib/allo-v2/lib/solady/","solarray/=lib/allo-v2/lib/v2-core/lib/solarray/src/","solbase/=lib/allo-v2/lib/hats-protocol/lib/solbase/src/","solidity-stringutils/=lib/openzeppelin-foundry-upgrades/lib/solidity-stringutils/","solmate/=lib/allo-v2/lib/permit2/lib/solmate/","utils/=lib/allo-v2/lib/hats-protocol/lib/utils/","v2-core/=lib/allo-v2/lib/v2-core/"],"optimizer":{"enabled":true,"runs":0},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":"RegistrySetupFull"},"evmVersion":"paris","libraries":{}},"sources":{"lib/allo-v2/contracts/core/Anchor.sol":{"keccak256":"0x6f470a8d0bab0848d3c3b7fb076b4001ff8b6bfd18f4bd6691a50ee6a13910cd","urls":["bzz-raw://4ed2ae6e417c282a07088fa9a30325fe5b2fa6d406ec02dc1df63027e82ec139","dweb:/ipfs/QmdVDTJKzjJqkygZ9768krrVQicLZTJVrZXbvet7KsmT8H"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/Registry.sol":{"keccak256":"0xb4fb0c6d9eb0f27dd6f6099f2832054a0b194ce420c6870deb5a7a94dd88b998","urls":["bzz-raw://0e82595dcff5471f50e67cc35f73dbc1c9344eac1ee9b42235372bd23ceee283","dweb:/ipfs/QmS34kQKRBaE7ih8c5upBb11bg3QtjunvctxKYNrtfGWhR"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/interfaces/IRegistry.sol":{"keccak256":"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f","urls":["bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e","dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA"],"license":"MIT"},"lib/allo-v2/contracts/core/libraries/Errors.sol":{"keccak256":"0x114aa83c98eff68576c06a073357e2ead6910e1a4195cf720eb579ef701afa15","urls":["bzz-raw://c92fd5843368c9d66f7d0321932c0a9dc0919b292f51bd3aefad066548c622cf","dweb:/ipfs/QmZ8N4tToDEaNh9gSyR2J7JCAGPHQUSrs1iyrmzEDHkHEA"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Native.sol":{"keccak256":"0x23dacace24a8c570a659dcc7e52fca2d39cc7577c6cfa674820cafaf194b29d5","urls":["bzz-raw://0727880a600b1803f02b58ad002938462dc61aacf841f5e1ee38f296fdd67e8a","dweb:/ipfs/QmdrEiJxFFnUfn2QUNxRAUMS1qwCnRtGeWPChaGzhAkRnv"],"license":"AGPL-3.0-only"},"lib/allo-v2/contracts/core/libraries/Transfer.sol":{"keccak256":"0xb7b2bb9e47965ba74753f58544fe5f168a28970798720675ca7ba97fb0c79286","urls":["bzz-raw://47968985fb2900f1a930fb53038971bd092a09b71c7247f9fb50253b41db1d11","dweb:/ipfs/QmXYQmJ8jZpiCXKySGZqPmdkSUqvTFpi7Wfd23boTKEYQ5"],"license":"AGPL-3.0-only"},"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"lib/allo-v2/lib/solady/src/utils/SafeTransferLib.sol":{"keccak256":"0x06d3261d13cf5a08f9bcda05e17be0a6a0380193116298fdf8eabf9bf80d3624","urls":["bzz-raw://96965a8a2b1bd2d6cff4a8f78bcb33b0de8848834f8e4be28c03609ae08e9298","dweb:/ipfs/QmSoNDxaEozMZgNdVEygfEvnk26Tu4UeFeapvtMsoUFftt"],"license":"MIT"},"lib/allo-v2/test/foundry/shared/Accounts.sol":{"keccak256":"0x47c754ab744c6c9894aaff23cfbbe44bc30879a53fbbe8d36b1fee26137f2e3a","urls":["bzz-raw://8e457b7adaf1ea79cc707e8a3e2989855f51ff98ebc1947b3239d7d410d5a07b","dweb:/ipfs/QmSXASZ4u435D29T4UzKuh6kd8vLSrbSSgZzjnnhfwyv1m"],"license":"AGPL-3.0-only"},"lib/allo-v2/test/foundry/shared/RegistrySetup.sol":{"keccak256":"0xb771e6d89c173abc626b0e6d30d1b2d8efed2c2b27cec3f49e9447c07b92622b","urls":["bzz-raw://990cf93f5c90db3ab160c8a3b68b03561a7c2812b4c9763c901a3ac8b121ccdb","dweb:/ipfs/QmeSruv7KW2ZeRe4iQnt1HA6jkAyu5GrohC4YRVZYMNz6j"],"license":"AGPL-3.0-only"},"lib/forge-std/src/Base.sol":{"keccak256":"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c","urls":["bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224","dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"],"license":"MIT"},"lib/forge-std/src/StdAssertions.sol":{"keccak256":"0xf513292ab066e6017db48ca749c1e63a44dfc5cba0326fc65c718f96e029d361","urls":["bzz-raw://02d715ae2898f1fabd08133f80e6a7a3b87a2796ca5d23d1cb3fed9f4367f34c","dweb:/ipfs/QmfESqa4j3PQAvvdfrnDQ1xUH1TnVCfvZYHsAEDK8z4X4k"],"license":"MIT"},"lib/forge-std/src/StdChains.sol":{"keccak256":"0x9cc29c28f49d0b7f7b2f1aa32d8273f8a087bf62eb3fb22d893df824052c25ef","urls":["bzz-raw://42dcb36cb10b878a0d5b20ce3a4a3ba4f51f44d7731a66ac1133c699bc80b31b","dweb:/ipfs/QmY6q7SaHQMLBb3rS6xZdArPaXoskWeqF6oJwUeZ3gKLZj"],"license":"MIT"},"lib/forge-std/src/StdCheats.sol":{"keccak256":"0xb72f3519e0bf7d31df5d68557525f4fc55d861c3fb3b0f7793144ef7c94cbeb7","urls":["bzz-raw://f3456d0f78e6f61203fa7871ba2df0d35925f10db3baee14be623ce2a35b84e2","dweb:/ipfs/QmWE6QQSBvJifHMraisBTrf1x4WCwrDoTPLX8UKajTiApc"],"license":"MIT"},"lib/forge-std/src/StdError.sol":{"keccak256":"0xbf477b11a42d7611696956546bcfaa29317d1166bf65e402344599c05943fc77","urls":["bzz-raw://bc2e117d1135e030862b96a6526a43feb38d396cc79857f1fb696d4eff0e5fd6","dweb:/ipfs/QmdSuQ5RrQudTLsNmWXGEeVJX8gR5U9XPm6m4dwwuQnJrj"],"license":"MIT"},"lib/forge-std/src/StdInvariant.sol":{"keccak256":"0x67299bfacd77fddfa2a67b8e2b901e0e333618a4975fb94850b07475e51f6de6","urls":["bzz-raw://1b61121d310f4053ce344b345b4a9ccf43b059daf9097ec2647f594beaca896d","dweb:/ipfs/QmZUCoTtXBM9zfAZVbj2dFPPnKaV1CSZzXE7zictyg3Gfz"],"license":"MIT"},"lib/forge-std/src/StdJson.sol":{"keccak256":"0x62bed173cb126f6d5006706cf249bac8a2d51bfa18f773f314784ff18adc622d","urls":["bzz-raw://5acc33dddbf2492e37dc32e89cd56ce917272d303a6874805f3a5768a6bfbf54","dweb:/ipfs/QmTsgFhcpUf16gAVazUXU3WspgX8nHke2hzVCvoqS25WEp"],"license":"MIT"},"lib/forge-std/src/StdMath.sol":{"keccak256":"0xd90ad4fd8aeaeb8929964e686e769fdedd5eded3fc3815df194a0ab9f91a3fb2","urls":["bzz-raw://7919b70f636c7b805223992f28ad1ad0145d6c1385b5931a3589aface5fe6c92","dweb:/ipfs/QmY7FRaULwoGgFteF8GawjQJRfasNgpWnU2aiMsFrYpuTC"],"license":"MIT"},"lib/forge-std/src/StdStorage.sol":{"keccak256":"0x651d84d948832f0ef45686417aa68ffb871378fa788a4123dbf37844903c66f3","urls":["bzz-raw://ff20f5ac9de3dc3ba86b1bf1f2723174e82ce3499ad67cb0ccfa7d28baeee678","dweb:/ipfs/QmRZkUFKz7AmF7yk6o317sk822HHhGVPXZQgX8G4LfYfft"],"license":"MIT"},"lib/forge-std/src/StdStyle.sol":{"keccak256":"0x43e2a8a9b9c2574dabe74f11adf6f782df218f463540e3b5b563609fe108597d","urls":["bzz-raw://51363ca97404cf4128e1141428949768c31929e75e014b02c85e887fbbb4f1b8","dweb:/ipfs/QmVhtbQc2fU4rRmbcfBtz34mAgG4BAZBsbna1Ca4SkoPsK"],"license":"MIT"},"lib/forge-std/src/StdToml.sol":{"keccak256":"0xc8a57915ace96f5b6a85b57e57690fc038cad9034a3dc368c11828a3707c61ab","urls":["bzz-raw://fa880a1a6e5d94005dcf4811b4c0df8d9c06407017ae111bd351483e2b76a72d","dweb:/ipfs/QmcxkEE58gE1vDcZofTr8QpvdjXjgR72yYg7o4vTPSLCsy"],"license":"MIT"},"lib/forge-std/src/StdUtils.sol":{"keccak256":"0x502b18a4becda6ecd91fa8b419d8034946bfa80e6cc7f6497f51f8565bfadae0","urls":["bzz-raw://bf499ee483a1dfd02023d4ce78ed4029a49794ccd5b849aaab912faea0d2ba61","dweb:/ipfs/QmP6hwNZW7sYbQK9fBzuZWxfLm6Swx2nKzvZ54qWNqQkzX"],"license":"MIT"},"lib/forge-std/src/Test.sol":{"keccak256":"0x3b4bb409a156dee9ce261458117fe9f81080ca844a8a26c07c857c46d155effe","urls":["bzz-raw://5792c69fe24bdc063a14e08fe68275007fdb1e5e7e343840a77938cb7e95a64e","dweb:/ipfs/QmcAMhaurUwzhytJFYix4vRNeZeV8g27b8LnV3t7dvYtiK"],"license":"MIT"},"lib/forge-std/src/Vm.sol":{"keccak256":"0x51fec240abc6dd23e0ee6de7c65106379aef732cad6c4ae5df6b55db886e7456","urls":["bzz-raw://a47d9c0a9876e7f9e411843b994a741d4ac1a87d8459ffc3c56359de691ddc1a","dweb:/ipfs/QmQiFN9b3Y2azrD1RBfAKEuAG3YeJkMzA2DGzgEE9kMeEK"],"license":"MIT OR Apache-2.0"},"lib/forge-std/src/console.sol":{"keccak256":"0x91d5413c2434ca58fd278b6e1e79fd98d10c83931cc2596a6038eee4daeb34ba","urls":["bzz-raw://91ccea707361e48b9b7a161fe81f496b9932bc471e9c4e4e1e9c283f2453cc70","dweb:/ipfs/QmcB66sZhQ6Kz7MUHcLE78YXRUZxoZnnxZjN6yATsbB2ec"],"license":"MIT"},"lib/forge-std/src/console2.sol":{"keccak256":"0x954646445d1014c3cd85c7918f5e7adeeca5ee44b68c00bafa237e597a4e35ea","urls":["bzz-raw://516fa3be52da4763147175bfba4be0aa011fadbb0c1afb01f97265bd4cee7973","dweb:/ipfs/QmdixAyMJefx7qePChgdxcBH5MxhmN7vsqPuPLx3CgrVmF"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC165.sol":{"keccak256":"0x414b2861b1acbf816ccb7346d3f16cf6c1e002e9e5e40d2f1f26fa5ddc2ea600","urls":["bzz-raw://698352fb240868ea8f1d1fe389993035eeab930f10d06934f80ccfb2b6ccbfbc","dweb:/ipfs/QmT6WLHAgXxFhh12kWym895oTzXid1326iZiwT3pyfggoT"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC20.sol":{"keccak256":"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947","urls":["bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7","dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9"],"license":"MIT"},"lib/forge-std/src/interfaces/IERC721.sol":{"keccak256":"0xf069262a264fdb69f8f37a10d2df7374649e9ba73f8414c9c8a3b51184625f15","urls":["bzz-raw://924a41ca82a68ffbd503a5faf2f76d13e9938f10501a71094716f12bb64b4b7f","dweb:/ipfs/QmdWnqfKc5ZGhmxNPTde4zrFchnv9Yk9MpCMb2rdhXE5gm"],"license":"MIT"},"lib/forge-std/src/interfaces/IMulticall3.sol":{"keccak256":"0x7aac1389150499a922d1f9ef5749c908cef127cb2075b92fa17e9cb611263d0a","urls":["bzz-raw://d95ebb7c7c463e08ebc12dab639945752fb2480acfc6e86da32f72732a7fd0c0","dweb:/ipfs/QmNXK8P8oPWwajsQHvAHw3JPyQidPLCGQN3hWu1Lk6PBL2"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC20.sol":{"keccak256":"0xadbdfc6639edec00ba94bb1133a0fd8de31ccafe45c2ef5df9b3ca61b60b559b","urls":["bzz-raw://bc766f01bccf669abac8cc7b2096cc1352a66471ca3772ae61b1801dedc4ed4f","dweb:/ipfs/QmNigaPj1LYkP7Z5xr4ijkUxr2K66fDGeoifG3WoM9ruyw"],"license":"MIT"},"lib/forge-std/src/mocks/MockERC721.sol":{"keccak256":"0x3293dcbb7acd28df553c954e4e39e288bf10aab7ecda8d50ef21b4f4a91a28d9","urls":["bzz-raw://9eb374daf6df34f4392f8926f1fddbce9f22c423066aeaefdfbe77395f77967b","dweb:/ipfs/QmWR81zBJRX2uyRjveGzikYPj6ZwKppWsU49YEQXTLWUsN"],"license":"MIT"},"lib/forge-std/src/safeconsole.sol":{"keccak256":"0xbaf41fdc6c54297e7cd8250e48b0f20eaac918e342a1028cef3f9a52ac086381","urls":["bzz-raw://a500ad81dea226f9910e6b50f99a9ff930105e393a692cbfb2185e4cdb4424ae","dweb:/ipfs/QmVbUQpXNMmMWRiy4FvBNczzq46BMGfUoBikvSHNiCxVTq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol":{"keccak256":"0x2fea70db88af55d379cf5f6d747b488d9e7c3a32ae096f7f62639a9a705aeb80","urls":["bzz-raw://893f4cf886d454fb7b3e185ab7dd1a85db0cf5298bdecfccd549e0889e748ba1","dweb:/ipfs/QmawFBiaDXvbfHthhkfWBPLZSauaNJbza9JLqLgrc1UDAB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/access/IAccessControlUpgradeable.sol":{"keccak256":"0xb8f5302f12138c5561362e88a78d061573e6298b7a1a5afe84a1e2c8d4d5aeaa","urls":["bzz-raw://740cf4dc535e3082560cf5a031473029f322690fc8037fe9d5e3a8bef42e757c","dweb:/ipfs/QmTQxFdfxcaueQa23VX34wAPqzruZbkzyeN58tZK2yav2b"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/proxy/utils/Initializable.sol":{"keccak256":"0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794","urls":["bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e","dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/AddressUpgradeable.sol":{"keccak256":"0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422","urls":["bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b","dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/ContextUpgradeable.sol":{"keccak256":"0x75097e35253e7fb282ee4d7f27a80eaacfa759923185bf17302a89cbc059c5ef","urls":["bzz-raw://8b06267c5f80bad727af3e48b1382333d591dad51376399ef2f6b0ee6d58bf95","dweb:/ipfs/QmdU5La1agcQvghnfMpWZGDPz2TUDTCxUwTLKmuMRXBpAx"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/StringsUpgradeable.sol":{"keccak256":"0xb96dc79b65b7c37937919dcdb356a969ce0aa2e8338322bf4dc027a3c9c9a7eb","urls":["bzz-raw://f8613145881436fc0480fff22da4868d611e2b0c0c3da083334eb4362ce1945a","dweb:/ipfs/QmPqpP3YeRbBdTJRe6Gv2eGsUaANf4J6RwTNRW36iYahfV"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/ERC165Upgradeable.sol":{"keccak256":"0xd90d7723512df65ae417adaf0801042940f0dabd60039ceeaffe34aa5b238da1","urls":["bzz-raw://1b13befeb3413749292f9fb229de1c7a509a5ce2c8047d9094fc004ca9d3af89","dweb:/ipfs/QmRzJ2hZSwRtMejHUZAYTPRKgZsnfb112Fno9Jf3EiDfwA"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/introspection/IERC165Upgradeable.sol":{"keccak256":"0xc6cef87559d0aeffdf0a99803de655938a7779ec0a3cd5d4383483ad85565a09","urls":["bzz-raw://92ad7e572cf44e6b4b37631b44b62f9eb9fb1cf14d9ce51c1504d5dc7ccaf758","dweb:/ipfs/QmcnbqX85tsWnUXPmtuPLE4SczME2sJaTfmqEFkuAJvWhy"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/MathUpgradeable.sol":{"keccak256":"0x2bc0007987c229ae7624eb29be6a9b84f6a6a5872f76248b15208b131ea41c4e","urls":["bzz-raw://2b2835c737d073ef8b82a4cc246495a9740f43e7ff2cf130906b2449ff9bfb91","dweb:/ipfs/QmSCWfNoSvvTN57ic7o1RW6NqSxxGAqbBTnLKc7QHe27qB"],"license":"MIT"},"lib/openzeppelin-contracts-upgradeable/contracts/utils/math/SignedMathUpgradeable.sol":{"keccak256":"0x88f6b7bba3ee33eeb741f9a0f5bc98b6e6e352d0fe4905377bb328590f84095a","urls":["bzz-raw://88ace2d60f265752f18903d839910be4e4e104340b2957678585b812447825d4","dweb:/ipfs/QmXFkNxMc3AAGzhs2wUEZyErWQjsvoTGyYjuU5oZkFki5Z"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol":{"keccak256":"0xeb373f1fdc7b755c6a750123a9b9e3a8a02c1470042fd6505d875000a80bde0b","urls":["bzz-raw://0e28648f994abf1d6bc345644a361cc0b7efa544f8bc0c8ec26011fed85a91ec","dweb:/ipfs/QmVVE7AiRjKaQYYji7TkjmTeVzGpNmms5eoxqTCfvvpj6D"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol":{"keccak256":"0x2e024ca51ce5abe16c0d34e6992a1104f356e2244eb4ccbec970435e8b3405e3","urls":["bzz-raw://a74009db3c6fc8db851ba69ddb6795b5c1ef1120c5a00fd1a8dc3a717dd9d519","dweb:/ipfs/QmZMk8Yh2X3gPS51ckUVLEXjZUhMSEeGApnA53WtjvLb9h"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Receiver.sol":{"keccak256":"0x3dd5e1a66a56f30302108a1da97d677a42b1daa60e503696b2bcbbf3e4c95bcb","urls":["bzz-raw://0808de0ae4918c664643c885ca7fa6503e8ef2bd75609dfc85152c0128a3422d","dweb:/ipfs/QmNrhFC1XgBKuuxfahFeiwi1MCdu3FLNpHj2uStgmf4iJj"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol":{"keccak256":"0xa82b58eca1ee256be466e536706850163d2ec7821945abd6b4778cfb3bee37da","urls":["bzz-raw://6e75cf83beb757b8855791088546b8337e9d4684e169400c20d44a515353b708","dweb:/ipfs/QmYvPafLfoquiDMEj7CKHtvbgHu7TJNPSVPSCjrtjV8HjV"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol":{"keccak256":"0x67ef46fef257faae47adb630aad49694dda0334e5f7a7c5fb386243b974886b5","urls":["bzz-raw://c63284cf05ff845109190961e72ca27bd6a7b997f053d2ce21db83e9e285085c","dweb:/ipfs/QmQBQVYJRzscToP6YaTRDvwYeLmr4V7kD1PjoG9mRpUYzU"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol":{"keccak256":"0xd10975de010d89fd1c78dc5e8a9a7e7f496198085c151648f20cba166b32582b","urls":["bzz-raw://fb0048dee081f6fffa5f74afc3fb328483c2a30504e94a0ddd2a5114d731ec4d","dweb:/ipfs/QmZptt1nmYoA5SgjwnSgWqgUSDgm4q52Yos3xhnMv3MV43"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x447a5f3ddc18419d41ff92b3773fb86471b1db25773e07f877f548918a185bf1","urls":["bzz-raw://be161e54f24e5c6fae81a12db1a8ae87bc5ae1b0ddc805d82a1440a68455088f","dweb:/ipfs/QmP7C3CHdY9urF4dEMb9wmsp1wMxHF6nhA2yQE5SKiPAdy"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":5830,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"stdstore","offset":0,"slot":"0","type":"t_struct(StdStorage)13196_storage"},{"astId":5987,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_failed","offset":0,"slot":"8","type":"t_bool"},{"astId":8488,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"stdChainsInitialized","offset":1,"slot":"8","type":"t_bool"},{"astId":8509,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"chains","offset":0,"slot":"9","type":"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)"},{"astId":8513,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"defaultRpcUrls","offset":0,"slot":"10","type":"t_mapping(t_string_memory_ptr,t_string_storage)"},{"astId":8517,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"idToAlias","offset":0,"slot":"11","type":"t_mapping(t_uint256,t_string_storage)"},{"astId":8520,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"fallbackToDefaultRpcUrls","offset":0,"slot":"12","type":"t_bool"},{"astId":9278,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"gasMeteringOff","offset":1,"slot":"12","type":"t_bool"},{"astId":11315,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"stdstore","offset":0,"slot":"13","type":"t_struct(StdStorage)13196_storage"},{"astId":12183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_excludedContracts","offset":0,"slot":"21","type":"t_array(t_address)dyn_storage"},{"astId":12186,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_excludedSenders","offset":0,"slot":"22","type":"t_array(t_address)dyn_storage"},{"astId":12189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedContracts","offset":0,"slot":"23","type":"t_array(t_address)dyn_storage"},{"astId":12192,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedSenders","offset":0,"slot":"24","type":"t_array(t_address)dyn_storage"},{"astId":12195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_excludedArtifacts","offset":0,"slot":"25","type":"t_array(t_string_storage)dyn_storage"},{"astId":12198,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedArtifacts","offset":0,"slot":"26","type":"t_array(t_string_storage)dyn_storage"},{"astId":12202,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedArtifactSelectors","offset":0,"slot":"27","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12206,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedSelectors","offset":0,"slot":"28","type":"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage"},{"astId":12210,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_targetedInterfaces","offset":0,"slot":"29","type":"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage"},{"astId":17795,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"IS_TEST","offset":0,"slot":"30","type":"t_bool"},{"astId":5104,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_registry_","offset":1,"slot":"30","type":"t_contract(Registry)2295"},{"astId":5137,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_poolProfileId_","offset":0,"slot":"31","type":"t_bytes32"},{"astId":5139,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_poolProfileAnchor_","offset":0,"slot":"32","type":"t_address"},{"astId":5141,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile1Id_","offset":0,"slot":"33","type":"t_bytes32"},{"astId":5143,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile1Anchor_","offset":0,"slot":"34","type":"t_address"},{"astId":5145,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile2Id_","offset":0,"slot":"35","type":"t_bytes32"},{"astId":5147,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_profile2Anchor_","offset":0,"slot":"36","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_address)dyn_storage":{"encoding":"dynamic_array","label":"address[]","numberOfBytes":"32","base":"t_address"},"t_array(t_bytes32)dyn_storage":{"encoding":"dynamic_array","label":"bytes32[]","numberOfBytes":"32","base":"t_bytes32"},"t_array(t_bytes4)dyn_storage":{"encoding":"dynamic_array","label":"bytes4[]","numberOfBytes":"32","base":"t_bytes4"},"t_array(t_string_storage)dyn_storage":{"encoding":"dynamic_array","label":"string[]","numberOfBytes":"32","base":"t_string_storage"},"t_array(t_struct(FuzzInterface)12180_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzInterface[]","numberOfBytes":"32","base":"t_struct(FuzzInterface)12180_storage"},"t_array(t_struct(FuzzSelector)12174_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzSelector[]","numberOfBytes":"32","base":"t_struct(FuzzSelector)12174_storage"},"t_bool":{"encoding":"inplace","label":"bool","numberOfBytes":"1"},"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes4":{"encoding":"inplace","label":"bytes4","numberOfBytes":"4"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_contract(Registry)2295":{"encoding":"inplace","label":"contract Registry","numberOfBytes":"20"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))":{"encoding":"mapping","key":"t_address","label":"mapping(address => mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))"},"t_mapping(t_bytes32,t_struct(FindData)13171_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)13171_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)13171_storage)"},"t_mapping(t_string_memory_ptr,t_string_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => string)","numberOfBytes":"32","value":"t_string_storage"},"t_mapping(t_string_memory_ptr,t_struct(Chain)8504_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => struct StdChains.Chain)","numberOfBytes":"32","value":"t_struct(Chain)8504_storage"},"t_mapping(t_uint256,t_string_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => string)","numberOfBytes":"32","value":"t_string_storage"},"t_string_memory_ptr":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Chain)8504_storage":{"encoding":"inplace","label":"struct StdChains.Chain","numberOfBytes":"128","members":[{"astId":8497,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":8499,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"chainId","offset":0,"slot":"1","type":"t_uint256"},{"astId":8501,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"chainAlias","offset":0,"slot":"2","type":"t_string_storage"},{"astId":8503,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"rpcUrl","offset":0,"slot":"3","type":"t_string_storage"}]},"t_struct(FindData)13171_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":13164,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":13166,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":13168,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":13170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(FuzzInterface)12180_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzInterface","numberOfBytes":"64","members":[{"astId":12176,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12179,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"artifacts","offset":0,"slot":"1","type":"t_array(t_string_storage)dyn_storage"}]},"t_struct(FuzzSelector)12174_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzSelector","numberOfBytes":"64","members":[{"astId":12170,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":12173,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"selectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_struct(StdStorage)13196_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":13180,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)13171_storage)))"},{"astId":13183,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":13185,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":13187,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":13189,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":13191,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":13193,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":13195,"contract":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol:RegistrySetupFull","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"lib/allo-v2/test/foundry/shared/RegistrySetup.sol","id":5297,"exportedSymbols":{"Accounts":[5026],"Metadata":[3098],"Registry":[2295],"RegistrySetup":[5132],"RegistrySetupFull":[5296],"StdAssertions":[8464],"StdChains":[9246],"StdCheats":[12099],"StdInvariant":[12424],"StdStorage":[13196],"StdStyle":[16366],"StdUtils":[17744],"Test":[17796],"TestBase":[5834],"Vm":[21446],"console":[29510],"console2":[37635],"safeconsole":[52360],"stdError":[12165],"stdJson":[13016],"stdMath":[13158],"stdStorage":[15155],"stdToml":[16958]},"nodeType":"SourceUnit","src":"42:2823:17","nodes":[{"id":5089,"nodeType":"PragmaDirective","src":"42:24:17","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":5090,"nodeType":"ImportDirective","src":"68:28:17","nodes":[],"absolutePath":"lib/forge-std/src/Test.sol","file":"forge-std/Test.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":17797,"symbolAliases":[],"unitAlias":""},{"id":5092,"nodeType":"ImportDirective","src":"98:62:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Registry.sol","file":"../../../contracts/core/Registry.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":2296,"symbolAliases":[{"foreign":{"id":5091,"name":"Registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2295,"src":"106:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5094,"nodeType":"ImportDirective","src":"161:72:17","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../../../contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":5093,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"169:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5096,"nodeType":"ImportDirective","src":"234:40:17","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"./Accounts.sol","nameLocation":"-1:-1:-1","scope":5297,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":5095,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"242:8:17","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5132,"nodeType":"ContractDefinition","src":"393:304:17","nodes":[{"id":5104,"nodeType":"VariableDeclaration","src":"440:28:17","nodes":[],"constant":false,"mutability":"mutable","name":"_registry_","nameLocation":"458:10:17","scope":5132,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5103,"nodeType":"UserDefinedTypeName","pathNode":{"id":5102,"name":"Registry","nameLocations":["440:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"440:8:17"},"referencedDeclaration":2295,"src":"440:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"},{"id":5122,"nodeType":"FunctionDefinition","src":"475:129:17","nodes":[],"body":{"id":5121,"nodeType":"Block","src":"511:93:17","nodes":[],"statements":[{"expression":{"id":5112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5107,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"521:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"id":5110,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"534:12:17","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_Registry_$2295_$","typeString":"function () returns (contract Registry)"},"typeName":{"id":5109,"nodeType":"UserDefinedTypeName","pathNode":{"id":5108,"name":"Registry","nameLocations":["538:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"538:8:17"},"referencedDeclaration":2295,"src":"538:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}}},"id":5111,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"534:14:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"src":"521:27:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5113,"nodeType":"ExpressionStatement","src":"521:27:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5117,"name":"registry_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4675,"src":"580:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"580:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5114,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"558:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"569:10:17","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":1578,"src":"558:21:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"558:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5120,"nodeType":"ExpressionStatement","src":"558:39:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetup","nameLocation":"484:15:17","parameters":{"id":5105,"nodeType":"ParameterList","parameters":[],"src":"499:2:17"},"returnParameters":{"id":5106,"nodeType":"ParameterList","parameters":[],"src":"511:0:17"},"scope":5132,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5131,"nodeType":"FunctionDefinition","src":"610:85:17","nodes":[],"body":{"id":5130,"nodeType":"Block","src":"661:34:17","nodes":[],"statements":[{"expression":{"id":5128,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"678:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"functionReturnParameters":5127,"id":5129,"nodeType":"Return","src":"671:17:17"}]},"functionSelector":"7b103999","implemented":true,"kind":"function","modifiers":[],"name":"registry","nameLocation":"619:8:17","parameters":{"id":5123,"nodeType":"ParameterList","parameters":[],"src":"627:2:17"},"returnParameters":{"id":5127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5126,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5131,"src":"651:8:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"},"typeName":{"id":5125,"nodeType":"UserDefinedTypeName","pathNode":{"id":5124,"name":"Registry","nameLocations":["651:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":2295,"src":"651:8:17"},"referencedDeclaration":2295,"src":"651:8:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"visibility":"internal"}],"src":"650:10:17"},"scope":5132,"stateMutability":"view","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5098,"name":"Test","nameLocations":["419:4:17"],"nodeType":"IdentifierPath","referencedDeclaration":17796,"src":"419:4:17"},"id":5099,"nodeType":"InheritanceSpecifier","src":"419:4:17"},{"baseName":{"id":5100,"name":"Accounts","nameLocations":["425:8:17"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"425:8:17"},"id":5101,"nodeType":"InheritanceSpecifier","src":"425:8:17"}],"canonicalName":"RegistrySetup","contractDependencies":[],"contractKind":"contract","documentation":{"id":5097,"nodeType":"StructuredDocumentation","src":"276:117:17","text":"@title RegistrySetup\n @notice This contract is used to setup an empty Registry contract for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetup","nameLocation":"402:13:17","scope":5297,"usedErrors":[]},{"id":5296,"nodeType":"ContractDefinition","src":"833:2031:17","nodes":[{"id":5137,"nodeType":"VariableDeclaration","src":"883:32:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId_","nameLocation":"900:15:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5136,"name":"bytes32","nodeType":"ElementaryTypeName","src":"883:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5139,"nodeType":"VariableDeclaration","src":"921:36:17","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileAnchor_","nameLocation":"938:19:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5138,"name":"address","nodeType":"ElementaryTypeName","src":"921:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5141,"nodeType":"VariableDeclaration","src":"964:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Id_","nameLocation":"981:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5140,"name":"bytes32","nodeType":"ElementaryTypeName","src":"964:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5143,"nodeType":"VariableDeclaration","src":"999:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile1Anchor_","nameLocation":"1016:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5142,"name":"address","nodeType":"ElementaryTypeName","src":"999:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5145,"nodeType":"VariableDeclaration","src":"1039:29:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Id_","nameLocation":"1056:12:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5144,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1039:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":5147,"nodeType":"VariableDeclaration","src":"1074:33:17","nodes":[],"constant":false,"mutability":"mutable","name":"_profile2Anchor_","nameLocation":"1091:16:17","scope":5296,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5146,"name":"address","nodeType":"ElementaryTypeName","src":"1074:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":5247,"nodeType":"FunctionDefinition","src":"1114:930:17","nodes":[],"body":{"id":5246,"nodeType":"Block","src":"1154:890:17","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":5150,"name":"__RegistrySetup","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5122,"src":"1164:15:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":5151,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1164:17:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5152,"nodeType":"ExpressionStatement","src":"1164:17:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5156,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1201:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1201:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5153,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1192:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1195:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1192:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5158,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1192:22:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5159,"nodeType":"ExpressionStatement","src":"1192:22:17"},{"expression":{"id":5174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5160,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1224:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5163,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1280:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"506f6f6c2050726f66696c652031","id":5164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1283:16:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":5166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1321:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":5167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1333:14:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""},"value":"PoolProfile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f67171f94b553bc18f3436392ab5b1a6c6075d142911addaba07f9932e807028","typeString":"literal_string \"PoolProfile1\""}],"id":5165,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1301:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5168,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1311:8:17","1324:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1301:48:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5169,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"1351:10:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5170,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1351:12:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5171,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4817,"src":"1365:13:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5172,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1365:15:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5161,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1242:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1253:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1242:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1242:148:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1224:166:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5175,"nodeType":"ExpressionStatement","src":"1224:166:17"},{"expression":{"id":5182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5176,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"1400:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5179,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"1448:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5177,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1422:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5178,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1433:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1422:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5180,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1422:42:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5181,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1465:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1422:49:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1400:71:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5183,"nodeType":"ExpressionStatement","src":"1400:71:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5187,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1491:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5188,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1491:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5184,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1482:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1485:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1482:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1482:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5190,"nodeType":"ExpressionStatement","src":"1482:26:17"},{"expression":{"id":5205,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5191,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1518:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5194,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1571:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652031","id":5195,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1574:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},"value":"Profile 1"},{"arguments":[{"hexValue":"31","id":5197,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1607:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6531","id":5198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1619:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""},"value":"Profile1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_d28bcd24e2e164eb1cb6c81d71a03069dd8b48e2f319680c98ba010be8944d6d","typeString":"literal_string \"Profile1\""}],"id":5196,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1587:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1597:8:17","1610:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1587:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5200,"name":"profile1_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4827,"src":"1633:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1633:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5202,"name":"profile1_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4891,"src":"1651:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1651:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_7a4d1a86b77644d9aa7e12702075d0cc1d67dd228b7576543777572405c3e57d","typeString":"literal_string \"Profile 1\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5192,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1533:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5193,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1544:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1533:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1533:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1518:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5206,"nodeType":"ExpressionStatement","src":"1518:161:17"},{"expression":{"id":5213,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5207,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"1689:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5210,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"1734:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5208,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1708:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1719:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1708:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1708:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1748:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1708:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1689:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5214,"nodeType":"ExpressionStatement","src":"1689:65:17"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":5218,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1774:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1774:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":5215,"name":"vm","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5827,"src":"1765:2:17","typeDescriptions":{"typeIdentifier":"t_contract$_Vm_$21446","typeString":"contract Vm"}},"id":5217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1768:5:17","memberName":"prank","nodeType":"MemberAccess","referencedDeclaration":21099,"src":"1765:8:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":5220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1765:26:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5221,"nodeType":"ExpressionStatement","src":"1765:26:17"},{"expression":{"id":5236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5222,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"1801:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"30","id":5225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1854:1:17","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"50726f66696c652032","id":5226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1857:11:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},"value":"Profile 2"},{"arguments":[{"hexValue":"31","id":5228,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1890:1:17","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"50726f66696c6532","id":5229,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1902:10:17","typeDescriptions":{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""},"value":"Profile2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_stringliteral_f54d7fb3952364f7566be93625e44393de35ac48ada574494f41163506f729ca","typeString":"literal_string \"Profile2\""}],"id":5227,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1870:8:17","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":5230,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1880:8:17","1893:7:17"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1870:44:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5231,"name":"profile2_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4901,"src":"1916:14:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":5232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1916:16:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":5233,"name":"profile2_members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4965,"src":"1934:16:17","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () returns (address[] memory)"}},"id":5234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1934:18:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_stringliteral_937ec7a665f78170bc3bb3b9c6576f30e49f3c58eb7105b0778843f3f72198b2","typeString":"literal_string \"Profile 2\""},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":5223,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1816:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1827:13:17","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":1756,"src":"1816:24:17","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$3098_memory_ptr_$_t_address_$_t_array$_t_address_$dyn_memory_ptr_$returns$_t_bytes32_$","typeString":"function (uint256,string memory,struct Metadata memory,address,address[] memory) external returns (bytes32)"}},"id":5235,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1816:146:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1801:161:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5237,"nodeType":"ExpressionStatement","src":"1801:161:17"},{"expression":{"id":5244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5238,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"1972:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"arguments":[{"id":5241,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2017:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":5239,"name":"_registry_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5104,"src":"1991:10:17","typeDescriptions":{"typeIdentifier":"t_contract$_Registry_$2295","typeString":"contract Registry"}},"id":5240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2002:14:17","memberName":"getProfileById","nodeType":"MemberAccess","referencedDeclaration":1592,"src":"1991:25:17","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_struct$_Profile_$2629_memory_ptr_$","typeString":"function (bytes32) view external returns (struct IRegistry.Profile memory)"}},"id":5242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1991:39:17","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile memory"}},"id":5243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2031:6:17","memberName":"anchor","nodeType":"MemberAccess","referencedDeclaration":2628,"src":"1991:46:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1972:65:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":5245,"nodeType":"ExpressionStatement","src":"1972:65:17"}]},"implemented":true,"kind":"function","modifiers":[],"name":"__RegistrySetupFull","nameLocation":"1123:19:17","parameters":{"id":5148,"nodeType":"ParameterList","parameters":[],"src":"1142:2:17"},"returnParameters":{"id":5149,"nodeType":"ParameterList","parameters":[],"src":"1154:0:17"},"scope":5296,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":5255,"nodeType":"FunctionDefinition","src":"2050:103:17","nodes":[],"body":{"id":5254,"nodeType":"Block","src":"2114:39:17","nodes":[],"statements":[{"expression":{"id":5252,"name":"_poolProfileId_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5137,"src":"2131:15:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5251,"id":5253,"nodeType":"Return","src":"2124:22:17"}]},"functionSelector":"fd325c60","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id","nameLocation":"2059:14:17","parameters":{"id":5248,"nodeType":"ParameterList","parameters":[],"src":"2073:2:17"},"returnParameters":{"id":5251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5250,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5255,"src":"2105:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5249,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2105:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2104:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5263,"nodeType":"FunctionDefinition","src":"2159:111:17","nodes":[],"body":{"id":5262,"nodeType":"Block","src":"2227:43:17","nodes":[],"statements":[{"expression":{"id":5260,"name":"_poolProfileAnchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5139,"src":"2244:19:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5259,"id":5261,"nodeType":"Return","src":"2237:26:17"}]},"functionSelector":"176effb3","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_anchor","nameLocation":"2168:18:17","parameters":{"id":5256,"nodeType":"ParameterList","parameters":[],"src":"2186:2:17"},"returnParameters":{"id":5259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5258,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5263,"src":"2218:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5257,"name":"address","nodeType":"ElementaryTypeName","src":"2218:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2217:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5271,"nodeType":"FunctionDefinition","src":"2276:97:17","nodes":[],"body":{"id":5270,"nodeType":"Block","src":"2337:36:17","nodes":[],"statements":[{"expression":{"id":5268,"name":"_profile1Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5141,"src":"2354:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5267,"id":5269,"nodeType":"Return","src":"2347:19:17"}]},"functionSelector":"39f56f7f","implemented":true,"kind":"function","modifiers":[],"name":"profile1_id","nameLocation":"2285:11:17","parameters":{"id":5264,"nodeType":"ParameterList","parameters":[],"src":"2296:2:17"},"returnParameters":{"id":5267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5266,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5271,"src":"2328:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5265,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2328:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2327:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5279,"nodeType":"FunctionDefinition","src":"2461:105:17","nodes":[],"body":{"id":5278,"nodeType":"Block","src":"2526:40:17","nodes":[],"statements":[{"expression":{"id":5276,"name":"_profile1Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5143,"src":"2543:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5275,"id":5277,"nodeType":"Return","src":"2536:23:17"}]},"functionSelector":"c5d7d73b","implemented":true,"kind":"function","modifiers":[],"name":"profile1_anchor","nameLocation":"2470:15:17","parameters":{"id":5272,"nodeType":"ParameterList","parameters":[],"src":"2485:2:17"},"returnParameters":{"id":5275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5274,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5279,"src":"2517:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5273,"name":"address","nodeType":"ElementaryTypeName","src":"2517:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2516:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5287,"nodeType":"FunctionDefinition","src":"2572:97:17","nodes":[],"body":{"id":5286,"nodeType":"Block","src":"2633:36:17","nodes":[],"statements":[{"expression":{"id":5284,"name":"_profile2Id_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5145,"src":"2650:12:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":5283,"id":5285,"nodeType":"Return","src":"2643:19:17"}]},"functionSelector":"18540361","implemented":true,"kind":"function","modifiers":[],"name":"profile2_id","nameLocation":"2581:11:17","parameters":{"id":5280,"nodeType":"ParameterList","parameters":[],"src":"2592:2:17"},"returnParameters":{"id":5283,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5282,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5287,"src":"2624:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5281,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2624:7:17","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2623:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":5295,"nodeType":"FunctionDefinition","src":"2757:105:17","nodes":[],"body":{"id":5294,"nodeType":"Block","src":"2822:40:17","nodes":[],"statements":[{"expression":{"id":5292,"name":"_profile2Anchor_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5147,"src":"2839:16:17","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":5291,"id":5293,"nodeType":"Return","src":"2832:23:17"}]},"functionSelector":"3554642a","implemented":true,"kind":"function","modifiers":[],"name":"profile2_anchor","nameLocation":"2766:15:17","parameters":{"id":5288,"nodeType":"ParameterList","parameters":[],"src":"2781:2:17"},"returnParameters":{"id":5291,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5290,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5295,"src":"2813:7:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":5289,"name":"address","nodeType":"ElementaryTypeName","src":"2813:7:17","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2812:9:17"},"scope":5296,"stateMutability":"view","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":5134,"name":"RegistrySetup","nameLocations":["863:13:17"],"nodeType":"IdentifierPath","referencedDeclaration":5132,"src":"863:13:17"},"id":5135,"nodeType":"InheritanceSpecifier","src":"863:13:17"}],"canonicalName":"RegistrySetupFull","contractDependencies":[],"contractKind":"contract","documentation":{"id":5133,"nodeType":"StructuredDocumentation","src":"699:134:17","text":"@title RegistrySetupFull\n @notice This contract is used to setup a Registry contract with two identities for testing purposes."},"fullyImplemented":true,"linearizedBaseContracts":[5296,5132,5026,17796,17744,12424,12099,11306,9246,8464,5834,5831],"name":"RegistrySetupFull","nameLocation":"842:17:17","scope":5297,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":17} \ No newline at end of file diff --git a/pkg/contracts/src/diamonds/BaseDiamond.sol b/pkg/contracts/src/diamonds/BaseDiamond.sol index c48b3be9..8a54d9de 100644 --- a/pkg/contracts/src/diamonds/BaseDiamond.sol +++ b/pkg/contracts/src/diamonds/BaseDiamond.sol @@ -5,6 +5,7 @@ pragma solidity ^0.8.19; import {BaseDiamond} from "@src/diamonds/BaseDiamond.sol"; import {LibDiamond} from "@src/diamonds/libraries/LibDiamond.sol"; import {IDiamondCut} from "@src/diamonds/interfaces/IDiamondCut.sol"; +import {IDiamond} from "@src/diamonds/interfaces/IDiamond.sol"; import {IERC1822Proxiable} from "@openzeppelin/contracts/interfaces/draft-IERC1822.sol"; // When no function exists for function called @@ -27,12 +28,21 @@ contract BaseDiamond is IERC1822Proxiable, IDiamondCut { constructor() payable { } - function initializeOwner(address _owner) external { + function initializeOwnerCut(address _owner,IDiamond.FacetCut[] memory _diamondCut, address _init, bytes memory _calldata) external { + _initializeOwner(_owner, _diamondCut, _init, _calldata); + } + function _initializeOwner(address _owner,IDiamond.FacetCut[] memory _diamondCut, address _init, bytes memory _calldata) internal { if (LibDiamond.isInitialized()) { revert DiamondAlreadyInitialized(); } LibDiamond.setContractOwner(_owner); LibDiamond.setInitialized(); + LibDiamond.diamondCut(_diamondCut, _init, _calldata); + + } + + function initializeOwner(address _owner) external { + _initializeOwner(_owner, new FacetCut[](0), address(0), new bytes(0)); } diff --git a/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol b/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol index 87bd610b..909ffa9b 100644 --- a/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol +++ b/pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol @@ -14,6 +14,7 @@ import {IDiamond} from "@src/diamonds/interfaces/IDiamond.sol"; import {IDiamondCut} from "@src/diamonds/interfaces/IDiamondCut.sol"; import {DiamondCutFacet} from "@src/diamonds/facets/DiamondCutFacet.sol"; import {DiamondLoupeFacet} from "@src/diamonds/facets/DiamondLoupeFacet.sol"; +import {LibDiamond} from "@src/diamonds/libraries/LibDiamond.sol"; import {BaseDiamond} from "@src/diamonds/BaseDiamond.sol"; @@ -41,6 +42,8 @@ contract RegistryFactoryFacet is RegistryFactoryV0_0 { registryCommunityTemplate = _registryCommunityTemplate; strategyTemplate = _strategyTemplate; collateralVaultTemplate = _collateralVaultTemplate; + + for (uint i = 0; i < _cuts.length; i++) { cutsCommunity.push(IDiamond.FacetCut({ facetAddress: _cuts[i].facetAddress, @@ -63,10 +66,11 @@ contract RegistryFactoryFacet is RegistryFactoryV0_0 { ERC1967Proxy proxy = new ERC1967Proxy( address(registryCommunityTemplate), - abi.encodeWithSelector(BaseDiamond.initializeOwner.selector, owner()) + abi.encodeWithSelector(BaseDiamond.initializeOwnerCut.selector, owner(), cutsCommunity, address(0), new bytes(0)) ); + // LibDiamond.grantRoleDiamond(LibDiamond.DEFAULT_ADMIN_ROLE, address(proxy)); - IDiamondCut(address(proxy)).diamondCut(cutsCommunity, address(0), ""); // @TODO put init address for add supportInterfaces with DiamondInit.sol + // IDiamondCut(address(proxy)).diamondCut(cutsCommunity, address(0), ""); // @TODO put init address for add supportInterfaces with DiamondInit.sol RegistryCommunityV0_0 registryCommunity = RegistryCommunityV0_0(payable(address(proxy))); diff --git a/pkg/contracts/src/diamonds/libraries/LibDiamond.sol b/pkg/contracts/src/diamonds/libraries/LibDiamond.sol index c50c3d97..a07da5d8 100644 --- a/pkg/contracts/src/diamonds/libraries/LibDiamond.sol +++ b/pkg/contracts/src/diamonds/libraries/LibDiamond.sol @@ -32,6 +32,7 @@ error InitializationFunctionReverted(address _initializationContractAddress, byt library LibDiamond { bytes32 constant DIAMOND_STORAGE_POSITION = keccak256("diamond.standard.diamond.storage"); bytes32 constant _IS_INITALIZED_SLOT = keccak256("diamond.contract.isInitialized"); + // bytes32 public constant DEFAULT_ADMIN_ROLE = 0x00; struct FacetAddressAndSelectorPosition { @@ -39,6 +40,7 @@ library LibDiamond { uint16 selectorPosition; } + struct DiamondStorage { // function selector => facet address and selector position in selectors array mapping(bytes4 => FacetAddressAndSelectorPosition) facetAddressAndSelectorPosition; @@ -47,7 +49,12 @@ library LibDiamond { // owner of the contract address contractOwner; bool isInitialized; + // mapping(bytes32 => AccessRoleData) roles; } + // struct AccessRoleData { + // mapping(address => bool) members; + // bytes32 adminRole; + // } function diamondStorage() internal pure returns (DiamondStorage storage ds) { bytes32 position = DIAMOND_STORAGE_POSITION; @@ -72,14 +79,28 @@ library LibDiamond { emit OwnershipTransferred(previousOwner, _newOwner); } + // function grantRoleDiamond(bytes32 role, address account) internal { + // if (!hasRoleDiamond(role, account)) { + // diamondStorage().roles[role].members[account] = true; + // // emit RoleGranted(role, account, msg.msg.sender); + // } + // } + // function hasRoleDiamond(bytes32 role, address account) internal view returns (bool) { + // return diamondStorage().roles[role].members[account]; + // } + function contractOwner() internal view returns (address contractOwner_) { contractOwner_ = diamondStorage().contractOwner; } function enforceIsContractOwner() internal view { - if (msg.sender != diamondStorage().contractOwner) { + // if (diamondStorage().roles[DEFAULT_ADMIN_ROLE].members[msg.sender] == false) { + // revert NotContractOwner(msg.sender, address(0x0)); + // } + if(msg.sender != diamondStorage().contractOwner){ revert NotContractOwner(msg.sender, diamondStorage().contractOwner); } + } event DiamondCut(IDiamondCut.FacetCut[] _diamondCut, address _init, bytes _calldata);